電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>降低Arduino功耗開源分享

降低Arduino功耗開源分享

2022-12-28 | zip | 0.03 MB | 次下載 | 免費

資料介紹

描述

通過成為 patreon的贊助人來支持我,幫助我今天成長并開展新項目。

談到便攜式電子產(chǎn)品,最重要的特性之一就是如何最大限度地延長電池壽命。用于 SparkFun RedBoard、Arduino Uno 和 Pro Mini 等流行電路板的 ATmega328P 實際上非常耗電。RedBoard 和 Arduino Uno,最小消耗 15mA 左右,這聽起來并不多,但正如您將在本項目中看到的那樣,我們只需一些技巧就可以大大降低它。在本指南中,我們將看看是否可以通過一些硬件和軟件技巧將電源電流降低到 10uA 以下。

刪除額外的硬件!

擁有很多組件似乎很困難。不,實際上 Arduino 板的大部分組件都是用于防止短路、損壞控制等。但是,如果您具有使用 Arduino 的基本知識和經(jīng)驗,那么您可以避開這些部件并檢查電路是否有任何問題.

那么,讓我們看看我們可以移除什么來降低自制 Arduino 的功耗。

取下編程IC

每個集成電路 (IC) 都需要電源才能運行。通過減少所需的 IC 數(shù)量,您可以節(jié)省一點電力。Arduino Uno 有一個 USB 橋接器,可將 USB 信號轉換為 Arduino 的通用異步接收器發(fā)送器 (UART) 可以使用的信號。僅此一項就消耗大約 10mA。稍后我會告訴您對微控制器進行編程的其他選擇。

沒有電源 LED!

我們也可以移除電源 LED。它只是為了顯示Arduino 是開還是關。因此,它不會降低 Arduino 的功能。

拋棄線性穩(wěn)壓器

線性穩(wěn)壓器很棒。它們價格低廉,只需 3 個引腳(Vin、接地 Vout)即可將較高電壓調節(jié)為較低電壓。然而,線性穩(wěn)壓器的缺點是,當輸入電壓和輸出電壓之間存在較大差異,或者消耗大量電流時,它們會變得很熱。您可以使用一個簡單的公式計算以熱量形式浪費的功率:

Pwasted = (Vin - Vout) * I

對于 5V 輸出,7V 輸入作為調節(jié)器的輸入。表示 Vin - Vout 為 2V,通常消耗的電流為 1A。Pwasted 為 2 瓦。

線性穩(wěn)壓器充其量只有 70% 左右的效率。消耗的電流越大,效率越低。

對于提供 5V 和 1A 電源,我們可以使用上面列表中提到的電池,也可以使用 3 節(jié) AA 電池。這使得 4.5V 和 ATmega328 可以在 1.8V 到 5.5V 上工作。

降低時鐘速度

在 Arduino 不需要在短時間內(nèi)執(zhí)行大量指令的項目中,或者在時序不是問題的項目中,降低微控制器的時鐘速度可以減少幾毫安的電源當前的。例如,在 5V 下運行 Arduino 并將時鐘速度從 16 MHz 降低到僅 8 MHz 可以將所需的電流從 12 mA 降低到大約 8.5 mA。

為了更好地理解時鐘速度與微控制器的關系,讓我們看一下下圖。

?
pYYBAGOrnqyAHgakAABAFQX-6zs793.png
?

如您所見,降低時鐘速度可以使電池壽命延長三倍。當然,代價是您將無法每秒執(zhí)行那么多指令,并且對于某些應用程序,此解決方案不是一個選項。

要了解如何完成,請單擊此處。

用軟件省電

到目前為止,我們已經(jīng)討論了如何降低 Arduino 的功率,但我們還沒有討論它為什么要使用它的功率。在 ATmega328P 內(nèi)部,有一系列電路協(xié)同工作以卸載處理器的工作,并且每個電路都會消耗一定的電量。

例如, Arduino 的analogWrite() 功能沒有讓處理器通過計算時鐘周期本身來創(chuàng)建 PWM 信號。相反,Arduino 使用內(nèi)置定時器之一來計算時鐘周期并向處理器發(fā)送中斷請求。從那里,處理器停止它正在做的事情,并通過切換引腳的狀態(tài)來處理中斷。通過卸載一些工作,微控制器能夠同時做多件事。

ATmega328P 內(nèi)置的其他一些電路包括:

  • 3個定時器
  • 看門狗定時器
  • 掉電檢測
  • 模數(shù)轉換

這些獨立組件中的每一個都需要電源才能工作,除非您手動禁用它們,否則它們將繼續(xù)消耗電源。掉電檢測會主動監(jiān)控系統(tǒng)電壓,以確保它不會降至閾值以下。如果是這樣,控制器將斷電,直到電壓增加到該閾值以上。模數(shù)轉換器 (ADC) 顧名思義,它采用模擬電壓(可以是從 0V 到 VCC 的任何值)并將其轉換為微控制器可以使用的數(shù)字值(0-1023對于 10 位轉換器)。如果您的項目不需要使用 ADC,禁用它會大大減少功耗。

但是,如果您仍然需要 ADC 怎么辦?值得慶幸的是,您可以在其中使用軟件禁用其中一些電路的寄存器使用軟件可以讓您在需要時啟用所需的電路,并且在完成后可以再次禁用它們。所有寄存器都在 ATmega328P 的數(shù)據(jù)表中有詳細記錄,但是,如果直接寫入寄存器讓您感到不舒服,您可以從鏈接下載一個可用的庫。

該庫允許您設置進入睡眠模式的時間,從幾毫秒到無限期。它還允許您指定要禁用微處理器的哪些部分,使其成為一個功能強大且用途廣泛的庫,可滿足您的低功耗需求。

在面包板上制作 Arduino

獲取列表中上面列出的所有內(nèi)容。此外,在制作電路時,可以方便地獲取 ATmega328P 的引腳映射。

?
poYBAGOrnq6AFrinAABR5DkK_wU135.png
?
  • 將 ATmega328P 微控制器(如果你有一個已經(jīng)使用 Arduino UNO 引導加載程序引導加載的更好)放在面包板的中間。
  • 現(xiàn)在,將 16 MHz 晶體放在引腳 9 (PB6)引腳 10 (PB7) 之間。
  • 此外,將兩個 22pF 電容器引腳9接地 (GND)以及從引腳 10接地 (GND)。[如果你沒有22 pF的電容,那么,用四個100 pF的電容串聯(lián)起來做成25 pF的電容,做兩個這樣的組合]
  • 將 GND 和 VCC 連接到面包板上的電源軌。

而且,它已經(jīng)準備好了!

將草圖上傳到 Arduino?

惰性方法

只需從面包板上拔下微控制器,然后將其替換為原始 Arduino 板中的微控制器即可。上傳草圖并取出微控制器,然后像最初一樣將其插入面包板。如果你不想記住位置,在設置電路時使用28針IC插座插入微控制器。

將微控制器插回后,將面包板的電源線連接到電池端子。如果根據(jù)草圖和引腳映射將其他組件插入引腳,則草圖將在幾秒鐘內(nèi)運行。

使用 FTDI 232RL 分線板!

想知道 FT232RL 分線板的所有引腳輸出是什么,只需將其翻轉過來即可!在這種情況下,我將使用 VCC(從 USB 端口向您的電路板提供 5V 電壓)、GND、TXD 和 RXD。[參考示意圖]

?
pYYBAGOrnrGAe8UvAACVnT-QLBo395.jpg
?
  • 從市場上購買時,該板沒有接頭。因此,焊接公頭并將其插入面包板。
  • 將ATmega芯片的RX連接到板子的TX,將Atmega芯片的TX連接到板子的RX。
  • 將 VCC 和 GND 連接到面包板上的電源軌。
  • 插入 USB 迷你型 - B 并將其連接到您的計算機并上傳草圖。它將從 USB 獲取電源,但在斷開 USB 后,您可以將電池端子插入面包板的電源軌。

而且,Arduino 已經(jīng)準備就緒。現(xiàn)在,如果您在待機狀態(tài)下檢查我的 ATmega 的電流,它約為 0.07 mA,低于原始 Arduino。

上傳素描!

將附件中給出的代碼作為閃爍程序上傳,觀察 Arduino 將通過關閉所有外圍設備進入睡眠模式 8 秒。[記得從 GitHub 安裝 Low Power 庫,鏈接如下]

您可以訪問此鏈接以獲取更多信息https ://github.com/LowPowerLab/LowPower/tree/master/Examples


評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費