痞酷網_PIGOO

 取回密碼
 立即註冊
搜尋
12
返回清單 發表主題
樓主: xiaolaba

[實做與討論] 有漏电的自制红外线遥控器

[複製連結]
發表於 2016-12-23 15:39:14 | 顯示全部樓層
本文章最後由 jojoling 於 2016-12-23 06:14 PM 編輯

interrupt of PIN change 是說其它 I/O 腳可以在信號改變時產生中斷。M328有3隻 PCINT0,1,2~
使用時機上是信號的狀況改變,而不是特定信號發生。

INT0/INT1 interrupt only use level trigger.
就是一般常用的外部中斷,可設成 low level trigger or high level trigger

watchdog wake up 就是一種計時器的 wake up ,你可以設定幾秒鐘後自動 wake up ~
可以用來實作成底下類似的系統行為:
1. X86 的 wake up from RTC,設定時間後就會在那個時間醒來。
2. IOS 的推播,機器在睡覺時固定一個時間周期醒來連網收取訊息再睡~
3. intel 的 AOAC, Always On Alway Connected( Smart Connect Technology,ISCT)~ notebook睡覺時還能收信件~
4. 胎壓偵側器,一段時間才醒來檢查胎壓,沒事都在睡覺。

評分

1

檢視全部評分

 樓主| 發表於 2016-12-24 10:48:54 | 顯示全部樓層
jojoling 發表於 2016-12-23 01:57 PM
應該可以。
我那個測試程式是用 INT0 產生 wake up 動作。

J大, 測試了M8, 上電閃燈了3次, 但是一睡不起
是不是M8和328不同, 這不行叫醒
發表於 2016-12-26 11:15:14 | 顯示全部樓層
xiaolaba 發表於 2016-12-24 10:48 AM
J大, 測試了M8, 上電閃燈了3次, 但是一睡不起
是不是M8和328不同, 這不行叫醒 ...


報告 xiaolaba大~

我剛好沒有庫存這顆,不過我確定這顆是可以在 power down mode 底下經由 INT0/INT1 wake up的~
可以貼上來你的測試電路圖嗎?
發表於 2016-12-27 11:37:31 | 顯示全部樓層
本文章最後由 jojoling 於 2016-12-27 03:30 PM 編輯

更新~

M8把 INT0 改成 low level trigger就好~
我的測試數據 16Mhz
Vcc = 5V,I = 0.26mA
相片 2016-12-27 上午11 15 15.jpg

Vcc=3.49V , I = 0.10mA
相片 2016-12-27 上午11 14 48.jpg

此顆如硬要再省電,可能需要再去調整關閉裏面的一些功能。


M8 spec:
External Interrupts
The external interrupts are triggered by the INT0, and INT1 pins. Observe that, if enabled, the interrupts
will trigger even if the INT0:1 pins are configured as outputs. This feature provides a way of generating a
software interrupt. The external interrupts can be triggered by a falling or rising edge or a low level. This is
set up as indicated in the specification for the MCU Control Register – MCUCR. When the external
interrupt is enabled and is configured as level triggered, the interrupt will trigger as long as the pin is held
low. Note that recognition of falling or rising edge interrupts on INT0 and INT1 requires the presence of an
I/O clock, described in Clock Systems and their Distribution. Low level interrupts on INT0/INT1 are
detected . This implies that these interrupts can be used for waking the part also from
sleep modes other than Idle mode. The I/O clock is halted in all sleep modes except Idle mode.


reference videos:
Vcc = 5V影片

Vcc = 3.49V影片


test program:
PowerDown-M8-Mod-3.zip (6.88 KB, 下載次數: 4)

評分

1

檢視全部評分

 樓主| 發表於 2016-12-30 12:48:06 | 顯示全部樓層
jojoling 發表於 2016-12-26 11:15 AM
報告 xiaolaba大~

我剛好沒有庫存這顆,不過我確定這顆是可以在 power down mode 底下經由 INT0/INT1 wa ...

J大, 抱歉出差忙著
沒空照
其實就是把用MCU本身, 一個LED接IO
用內置RC震盪器
沒有了UNO那些 USB/COM, LED, 5V SDO 等等
 樓主| 發表於 2016-12-30 12:49:29 | 顯示全部樓層
jojoling 發表於 2016-12-27 11:37 AM
更新~

M8把 INT0 改成 low level trigger就好~

好的
謝謝
歐再試試看
 樓主| 發表於 2017-1-1 21:53:30 | 顯示全部樓層
jojoling 發表於 2016-12-27 11:37 AM
更新~

M8把 INT0 改成 low level trigger就好~

J大, 抽空实验了你给的MOD-3, 这个不会睡觉不停闪动, 可能有 RE-ENTRY 的问题
lfuse = 0xd4, 用内置 8MHz RC

2017-07-01-M8-Sleep-Test-NG

2017-07-01-M8-Sleep-Test-NG

發表於 2017-1-1 23:40:55 | 顯示全部樓層
xiaolaba 發表於 2017-1-1 09:53 PM
J大, 抽空实验了你给的MOD-3, 这个不会睡觉不停闪动, 可能有 RE-ENTRY 的问题
lfuse = 0xd4, 用内置 8MHz ...

報告 xiaolabadiy 大~

Yes~這種就是腳位在 folating 狀態~
我是在 INT0 腳有加pull-up電阻(connect to Vcc)~
或你可用內建的:
    pinMode(2, INPUT_PULLUP);

PS: 不用特意百忙去試,有空再試,工作家庭重要~
 樓主| 發表於 2017-1-2 10:44:05 來自手機 | 顯示全部樓層
jojoling 發表於 2017-1-1 11:40 PM
報告 xiaolabadiy 大~

Yes~這種就是腳位在 folating 狀態~

j大
有 pull up 就歐好了
int 常式給他加了delay 故意做debounce 成功了
這是有點實用性的玩具
發表於 2017-1-2 15:10:42 | 顯示全部樓層
xiaolaba 發表於 2017-1-2 10:44 AM
j大
有 pull up 就歐好了
int 常式給他加了delay 故意做debounce 成功了

X大好~

另外,SLEEP 我的測試結果是 M328P 優很多,我改天再做 Attiny的睡眠電流測試,我之前沒完整的測過。
另外你圖上經由電阻10K接開關到地,需要小心如果本來有 pull up resistor 的話,輸入準位會被成分壓喔。
需注意阻值不能過大。
 樓主| 發表於 2017-1-2 19:36:29 | 顯示全部樓層
jojoling 發表於 2017-1-2 03:10 PM
X大好~

另外,SLEEP 我的測試結果是 M328P 優很多,我改天再做 Attiny的睡眠電流測試,我之前沒完整的測 ...


J大
有了 PULL UP, 那個外界10K就取消了, 直接 0 OHM, 已經改圖.
M328 要用你的第一版, 大約0.6uA
M8 也是這個數
不過用的是砲灰表, 跟你提供 0.46uA 沒差太多, 有點意外這個砲灰表的表現
所以就只能差不多
確定你提供的 LIBRARY 可以用, 這樣就很方便改設計, 謝謝你的協助
進一步在準備慢慢改設計, 不再外接 MOSFET SWITCH 關電源, 希望直接讓MCU睡覺就好了
不過有7個按鍵都獨佔一個IO, 正在研究怎樣讓它們都可以接到 INT0 叫醒 MCU
DIODE OR GATE 是其中一個方向, 不過還沒實驗, 要元件到了才可以繼續玩

M8-0.6uA

M8-0.6uA

發表於 2017-1-2 22:11:54 | 顯示全部樓層
xiaolaba 發表於 2017-1-2 07:36 PM
J大
有了 PULL UP, 那個外界10K就取消了, 直接 0 OHM, 已經改圖.
M328 要用你的第一版, 大約0.6uA

X大好~

有關共用 INT0的部份,每一個按鍵需加2個diode及可達到這個功能,都產生同一組中斷,又可以不互相影響。
我之前是參考一些別人改機電路設計的方式。
你可參考一下之前我用 Attiny 的電路,2個按鍵 4顆 diode去產生INTx~
你需要登入後才可以回覆 登入 | 立即註冊

本版積分規則

關閉

站長推薦上一筆 /1 下一筆

禁閉室|手機版|Archiver|連繫我們|痞酷網電子技術論壇

GMT+8, 2017-5-29 07:34 PM , Processed in 0.160550 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.3 Licensed

© 2001-2017 Comsenz Inc.

快速回覆 返回頂端 返回清單