第1步:需要的材料/使用的電路板
使用什么電路板?
在本教程中,我們將使用Arduino Uno,因?yàn)樗且粋€(gè)更簡(jiǎn)單的原型板。在一個(gè)真實(shí)的現(xiàn)場(chǎng)項(xiàng)目中,我會(huì)使用Arduino Pro Mini。 Arduino Uno和Arduino Pro Mini具有非常相似的特性,Arduino pro mini具有更少的硬件供電(例如USB部分,額外的LED和其他一些東西),因此功耗更低。這就是為什么Arduino Pro mini是更好的選擇。舉一個(gè)例子,Uno在清醒時(shí)使用30-40 mA,在睡眠時(shí)使用約19 mA。 Pro Mini在喚醒時(shí)使用25mA,在睡眠時(shí)使用0.57 mA。由于每個(gè)mA在連接到電池時(shí)都很重要,你可以看到?jīng)]有比賽,Arduino Pro Mini是贏家。
注意:作為初學(xué)者,Arduino Pro Mini可能有點(diǎn)令人生畏,但沒有理由。是的,您需要將標(biāo)題焊接到電路板上,并且需要使用FTDI電纜上傳草圖,但除此之外沒有重大差異。
第2步:睡眠模式
當(dāng)您查看ATmega328p的文檔時(shí)(單擊此鏈接獲取本文檔的副本)處理器用于Arduino Uno和Arduino Pro mini,您會(huì)注意到那里有許多不同的睡眠模式可用。但在現(xiàn)實(shí)世界中,實(shí)際上只有一種模式很有用;掉電模式(SLEEP_MODE_PWR_DOWN)。
當(dāng)您將Arduino置于休眠狀態(tài)時(shí),它會(huì)關(guān)閉所有不必要的組件,從而降低MCU(微控制器單元)的功耗。在這種模式下,你可以喚醒它的唯一方法是使用外部影響(例如我們輕輕喚醒它)。我們將在本教程稍后討論如何執(zhí)行此操作。
步驟3:中斷
在我們進(jìn)入代碼放置Arduino之前睡覺我們需要了解中斷概念。描述它的最佳方式是;你正在研究你真正需要關(guān)注的事情。你戴著耳機(jī)大聲爆破你的音樂,淹沒你的余情。你如此專注于外面世界對(duì)你失去了。引起你注意的唯一方法就是給你一個(gè)輕推。在你收到這個(gè)輕推之后,你要注意中斷的內(nèi)容,并在處理之后你重新打開音樂并繼續(xù)你的任務(wù)。
注意:我不打算深入了解中斷有什么用處,但如果您想了解有關(guān)此概念的更多信息,請(qǐng)查看我的教程( 使用中斷來改善項(xiàng)目的功能 )
大多數(shù)真正的Arduino都有幾個(gè)引腳可以做到這一點(diǎn)。 Uno和Pro Mini有2個(gè)引腳(d2和d3),能夠中斷Arduino正在做的事情。有了這個(gè),我們可以將Arduino推回到清醒狀態(tài)。
第4步:代碼/草圖
您可以從我的下載已完成的完成草圖網(wǎng)站點(diǎn)擊此鏈接要獲得完整的描述和解釋代碼如何工作,您可以點(diǎn)擊鏈接:讓您的Arduino進(jìn)入睡眠狀態(tài)的指南進(jìn)入我的博客。
第5步:EXERCISE 1
步驟1)
現(xiàn)在是時(shí)候上傳草圖了。但在此之前,在d2中放了一根跳線?,F(xiàn)在就把它拔掉另一端。加載草圖并等待5秒鐘,LED指示燈熄滅,Arduino進(jìn)入休眠狀態(tài)。
步驟2)
LED熄滅后插入跳線的另一端連接Arduino Uno上的GND引腳。這將拉低引腳2 LOW觸發(fā)中斷,從而喚醒正在睡眠的Arduino。 LED重新亮起后,您可以將跳線從GND中取出,5秒鐘后,Arduino會(huì)重新進(jìn)入睡眠狀態(tài)。
對(duì)于我使用實(shí)時(shí)時(shí)鐘(RTC)喚醒的示例項(xiàng)目濕度和溫度數(shù)據(jù)記錄器只需單擊以下鏈接:使用RTC喚醒ARDUINO數(shù)據(jù)記錄器的示例。它是如何在現(xiàn)實(shí)世界中發(fā)揮作用的一個(gè)很好的例子
-
Arduino
+關(guān)注
關(guān)注
187文章
6458瀏覽量
186504
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論