<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 為低功耗應用選擇正確的uC外圍器件

為低功耗應用選擇正確的uC外圍器件

作者: 時(shí)間:2013-12-13 來(lái)源:網(wǎng)絡(luò ) 收藏

  看門(mén)狗定時(shí)器監視故障情況。雖然在典型的嵌入式應用中,內嵌的系統程序器往往禁用看門(mén)狗定時(shí)器,但是在系統中,在電源電壓不穩定的情況下,看門(mén)狗定時(shí)器是一種有用的工具??撮T(mén)狗定時(shí)器會(huì )執行預先設定功能,例如在符合某些條件時(shí),比如電壓過(guò)低或有內存問(wèn)題時(shí),向處理器發(fā)出 RESET 指令。所選擇的處理器應該能夠生成已知的 ISR,使處理器無(wú)需執行 RESET 而恢復聯(lián)機狀態(tài);因為執行 RESET,必須啟動(dòng)外圍設備,因而會(huì )消耗更多的處理器功率。

  
UART 通信

  將一個(gè)數字時(shí)鐘與另一個(gè)數字時(shí)鐘精確到秒地同步是不可能的,因為每個(gè)時(shí)鐘均與其內部晶體同步。在 MCU 驅動(dòng)的系統中,模式下使用的 32kHz 實(shí)時(shí)時(shí)鐘晶體與用于生成UART 波特率的普通 38.4kHz 頻率之間會(huì )出現類(lèi)似的同步問(wèn)題。因為實(shí)時(shí)時(shí)鐘的 32,768 頻率使 15 位寄存器每秒溢出一次,所以非常適合時(shí)間保持(TIme-keeping) 應用。比較而言,在UART 中使用相同的頻率,則在典型的 10 位(起始位、8 位數據和 1 個(gè)奇偶校驗位)傳輸中保證至少有一位讀取不正確。這是由于 32,768Hz 時(shí)鐘必須除以 3.4,才能得到 9,600 波特率。由于沒(méi)有 3.4 這一選擇,因此必須選擇除以 3 或除以 4(參見(jiàn)圖2)。

  將一個(gè)數字時(shí)鐘與另一個(gè)數字時(shí)鐘精確到秒地同步是不可能的,因為每個(gè)時(shí)鐘均與其內部晶體同步。在 MCU 驅動(dòng)的系統中,模式下使用的 32kHz 實(shí)時(shí)時(shí)鐘晶體與用于生成UART 波特率的普通 38.4kHz 頻率之間會(huì )出現類(lèi)似的同步問(wèn)題。因為實(shí)時(shí)時(shí)鐘的 32,768 頻率使 15 位寄存器每秒溢出一次,所以非常適合時(shí)間保持(time-keeping) 應用。比較而言,在UART 中使用相同的頻率,則在典型的 10 位(起始位、8 位數據和 1 個(gè)奇偶校驗位)傳輸中保證至少有一位讀取不正確。這是由于 32,768Hz 時(shí)鐘必須除以 3.4,才能得到 9,600 波特率。由于沒(méi)有 3.4 這一選擇,因此必須選擇除以 3 或除以 4(參見(jiàn)圖2)。

為低功耗應用選擇正確的uC外圍器件
圖 2:9600 波特傳輸時(shí) 32Khz 驅動(dòng) UART Rx 錯誤

  UART 數據用 10,922 波特或 8,192 波特的 UART 接收。由于 UART 在傳輸中間點(diǎn)對數據進(jìn)行采樣以補償抖動(dòng),因此該點(diǎn)已經(jīng)被選擇為接收 UART 的采樣點(diǎn)。在沒(méi)有行抖動(dòng)的理想情況下,10,922 波特 UART 對第三數據位的開(kāi)始兩次讀數都會(huì )是錯誤的而8,192 波特的UART 由于會(huì )完全遺漏第三位,很快就將出錯。由于低功耗應用的理想時(shí)鐘是低功耗實(shí)時(shí)時(shí)鐘模式,這使得在低功耗環(huán)境中處理很困難。解決這一問(wèn)題的最好辦法就是將 μC 與調制技術(shù)結合使用,用 32kHz 振蕩器提供非常精確的 2,400 波特,并完全能支持9,600 波特(參見(jiàn)圖 3)。

為低功耗應用選擇正確的uC外圍器件
圖 3:在 9600 波特傳輸時(shí)采用時(shí)鐘調制的 32Khz 驅動(dòng) UART

  通過(guò)混合兩個(gè)時(shí)鐘除數解決錯誤,總體積累的錯誤消失,數據接收正確。這種方法對于9,600 波特或以下的 UART 通信很有效。對于高速通信,幾個(gè) μC 監視 UART Rx 行的邊緣躍遷并觸發(fā) ISR 啟動(dòng)內部高速振蕩器,驅動(dòng) CPU 并處理中斷。這使 μC UART 能夠接收高速數據,而不必在 UART 空閑期間保持一個(gè)啟動(dòng)的高速時(shí)鐘。如果使用外部振蕩器或內部振蕩器頻率太低,則由于啟動(dòng)高速振蕩器需要一定的時(shí)間,第一次傳輸將失效。為克服這一限制和效率損失,設計人員應該考慮使用能夠喚醒并及時(shí)從 32kHz 或停機模式激活的處理器,從正在傳輸的 UART 恢復首次傳輸的數據。例如,系統時(shí)鐘需要在 25μs 內啟動(dòng),才能拾取起始位的中間點(diǎn),從而正確接收 19,200 位的傳輸。


許多低功耗應用通過(guò) UART 將 μC 連接到 RS-485 傳感器網(wǎng)絡(luò )。支持尋址和多處理器(9 位)模式的 UART 非常適合于這種網(wǎng)絡(luò )。當第 9 位為 1(代表是一個(gè)地址)時(shí),這些 UART 會(huì )生成一個(gè) ISR,讓處理器能夠在其它傳感器通過(guò)系統發(fā)送數據時(shí)保持狀態(tài)。某些 μC 會(huì )更進(jìn)一步,在 UART 中加入地址匹配,僅在第 9 位是 1 且地址與在剩余 8 位中收到的數據匹配時(shí)才喚醒系統。

  
模擬器件

  模擬器件模擬器件是最早的操作器件。模擬器件已經(jīng)發(fā)展數十年,它是穩定電源、為高速晶體電路提供過(guò)濾和穩定性的必要器件,對監控來(lái)自自然界的輸入信號也必不可少。

  模擬器件模擬器件是最早的操作器件。模擬器件已經(jīng)發(fā)展數十年,它是穩定電源、為高速晶體電路提供過(guò)濾和穩定性的必要器件,對監控來(lái)自自然界的輸入信號也必不可少。

  在待機模式下,模擬器件實(shí)際上不消耗功率。模擬-數字轉換器 (ADC) 斷電快,在待機模式下,甚至可以被視為一種低功耗應用。

  一旦加電,缺點(diǎn)即暴露無(wú)遺。一般來(lái)說(shuō),模擬器件在工作時(shí)需要的電流很大。例如,ADC 工作時(shí)需要的電流達數百微安。另外,模擬器件(例如內部基準時(shí)鐘)會(huì )使啟動(dòng)時(shí)間增加幾毫秒,因為穩定模擬器件需要相對較大的外部電容。另一種經(jīng)常被集成的器件-集成溫度傳感器-通常是隨溫度改變的二極管電路,也需要相當大的電流。

  在低功耗應用中有幾個(gè)需要考慮的標準。如果 ADC 有內部振蕩器,就沒(méi)有必要對其它系統振蕩器加電來(lái)進(jìn)行轉換。在這種情況下,處理器保持斷電狀態(tài),只有轉換完成時(shí)起,才需要開(kāi)始工作。像 CPU 一樣,我們可以通過(guò)縮短執行時(shí)間來(lái)降低功耗。ADC 轉換的速度越快,器件進(jìn)入待機模式的速度越快。對于內部基準時(shí)鐘也是這樣?;鶞蕰r(shí)鐘啟動(dòng)和穩定得越快,轉換完成和模擬系統斷電的速度也越快。如果只是偶爾使用 ADC,某些處理器允許采樣時(shí)鐘斷電,讓跟蹤電路保持加電。這樣 ADC 就能夠進(jìn)入較淺的模式。這種功能的負面影響是,在進(jìn)行轉換前,需要花較長(cháng)時(shí)間來(lái)讓采樣和保持電路達到穩定。

  轉換完成之后,有幾個(gè) μC 集成了直接內存訪(fǎng)問(wèn) (DMA) 或先入先出 (FIFO) 緩沖存儲器,能夠將多個(gè)轉換存儲在RAM 中,而無(wú)需喚醒處理器。在一定數量的轉換到達之前,處理器會(huì )保持待機狀態(tài),而不是在每個(gè)轉換后喚醒處理器來(lái)將數據移入 RAM,這樣就可以降低功耗。

  許多低功耗 μC 內置內部模擬比較器,可以執行簡(jiǎn)單的模擬任務(wù)。有些制造商的比較器允許編程,可以通過(guò)延長(cháng)響應時(shí)間降低功耗。

  
起始點(diǎn)

  總之,μC 外圍設備的選擇是由終端應用最終決定的,因此我們應從全面評估系統功能及其功率要求著(zhù)手。許多處理器制造商宣稱(chēng)其器件具備低功耗工作能力,但是不同的應用對“低功耗”一詞有不同的定義。是需要大量集成的速度更高的處理器,還是需要具有極深度睡眠模式的速度更低的處理器,更多地取決于內嵌系統的要求,而不是內嵌處理器所謂的“低功耗”工作能力。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 低功耗 外圍器件 休眠

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>