某工程師反饋:他們的板子當(dāng)初始化串口后,進(jìn)入低功耗模式時(shí),電流會(huì)有幾百個(gè)uA;如果不初始化串口進(jìn)入低功耗,電流則正常為幾個(gè)uA。
此現(xiàn)象自然是不正常的,為此我用開發(fā)板搭建了測試環(huán)境,板子飛線外接了一個(gè)USB轉(zhuǎn)串口(芯片是CH340,連接了TX、RX、GND)
當(dāng)進(jìn)入低功耗模式后,實(shí)測電流確實(shí)是幾百uA。
但是當(dāng)把USB轉(zhuǎn)串口插到電腦上時(shí),電流就一下子小了很多。
上述現(xiàn)象是什么原因呢?
當(dāng)MCU串口初始化后,在串口不發(fā)送數(shù)據(jù)時(shí)TX引腳是高電平,當(dāng)USB轉(zhuǎn)串口沒有供電時(shí),此時(shí)MCU TX引腳會(huì)給這一部分電路供電,從而消耗能量,產(chǎn)生了幾百uA的電流,從上圖它的指示燈亮也能驗(yàn)證這一點(diǎn)。
上述其實(shí)現(xiàn)象叫倒灌,即USB轉(zhuǎn)串口RX引腳上的電壓倒灌到其VCC上。同理反方向,如果USB轉(zhuǎn)串口一直接著電腦,MCU主電源斷了,USB轉(zhuǎn)串口也會(huì)通過它的TX引腳電壓使MCU產(chǎn)生倒灌。雖然倒灌有時(shí)看起來也能工作,但是實(shí)際使用中要避免這種情況的產(chǎn)生,因?yàn)樗枪ぷ髟诜钦顟B(tài)的。不僅串口引腳,GPIO引腳也會(huì)經(jīng)常引起倒灌的產(chǎn)生。
倒灌可通過外部加保護(hù)電路避免,舉個(gè)栗子,比如為了防止MCU通過串口RX引腳產(chǎn)生倒灌,可以加一個(gè)邏輯器件,當(dāng)3.3V斷開時(shí)就不會(huì)產(chǎn)生倒灌。
另外很多芯片內(nèi)部也會(huì)做防倒灌的設(shè)計(jì)。
當(dāng)USB轉(zhuǎn)串口正常供電時(shí),它所需能量由外部電源提供,RX引腳阻抗大,此時(shí)雖然MCU TX引腳為高電平,也不會(huì)額外增加多少電流。
后來和該工程師溝通得知,他就是因?yàn)樵谶M(jìn)入低功耗前把串口相連接的通訊模塊斷了電,導(dǎo)致TX引腳漏電引腳的上述電流大的問題。
要解決他的問題也很簡單,在進(jìn)入低功耗模式前,重新配置MCU TX引腳(配置為輸入或者模擬模式),不讓其輸出高電平即可。
最后總結(jié)一下,MCU進(jìn)入低功耗前要確保各IO引腳處于合適的引腳狀態(tài),避免漏電引起功耗的增加,避免倒灌現(xiàn)象的產(chǎn)生。
-
電源
+關(guān)注
關(guān)注
185文章
18363瀏覽量
256165 -
芯片
+關(guān)注
關(guān)注
459文章
52471瀏覽量
440424 -
usb
+關(guān)注
關(guān)注
60文章
8177瀏覽量
272679 -
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7255瀏覽量
91806
原文標(biāo)題:初始化串口后,低功耗模式下電流高是怎么回事?
文章出處:【微信號:TopSemic,微信公眾號:TopSemic嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
RT-Thread自動(dòng)初始化詳解

esp8266_rtos_sdk串口初始化異常是什么原因呢?
STM32串口燒錄時(shí),串口初始化和LCD初始化的先后問題
請問協(xié)調(diào)器初始化后,節(jié)點(diǎn)仍舊不能入網(wǎng)是什么原因?
請問初始化TIM寫不進(jìn)去是什么原因?
arm調(diào)用c函數(shù)初始化失敗
為什么串口初始化程序會(huì)影響LCD?
沒有初始化UART1
初始化串口后低功耗模式下電流高是什么原因呢?
STM32F446 RTC初始化失敗是什么原因?
Itc250032初始化的時(shí)候DRL不變化,初始化一直失敗的原因?
STM32開發(fā)筆記76: 初始化RTC后死機(jī)的原因

關(guān)于lcd1602初始化后只有第一行有黑塊的問題

評論