0. 第一可以進入休眠,第二次無法進入休眠,折騰了好久。后來想想應該是進入休眠后立刻被喚醒了,應該是上次的喚醒中斷沒清除。在啟動喚醒前加入以下語句,問題解決。
__HAL_RTC_WAKEUPTIMER_EXTI_CLEAR_FLAG(); //清除標志,否則第二次以后無法進入休眠
// HAL_RTCEx_SetWakeUpTimer_IT(&hrtc, 0xB4D8, RTC_WAKEUPCLOCK_RTCCLK_DIV16); //20s
HAL_RTCEx_SetWakeUpTimer_IT(&hrtc, 0xffff, RTC_WAKEUPCLOCK_RTCCLK_DIV16); //28s
1. 發(fā)現(xiàn)進入睡眠后,電流1.2uA,滿足要求。結果喚醒后,第二次進入睡眠后,電流跳到了19uA,且一直保持下去。結果看了https://blog.csdn.net/zzw3255/article/details/54342878的介紹,把串口干掉了,電流下降到了2.6uA。
2. 去掉了串口,第一次進入睡眠1.2uA,第二次進入睡眠2.6uA。又陷入了僵局,沒開串口、沒開GPIO,啥事都沒干,怎么回事?誰能幫忙解決下?
網(wǎng)上搜索了一下資料,遇到和我這樣的情況的人還真不少。例如:
https://blog.csdn.net/zhufeng88/article/details/66968101#commentsedit
說是清除喚醒標志就好了,明天按照這個思路,改代碼試試看。(但是本文第0點,不是已經(jīng)清除了嗎?該文指的的標志是哪個標志?)
相關文章:
https://blog.csdn.net/flydream0/article/details/52511311《STM32L152的低功耗測試》
3. 按照昨天的思路,清除喚醒標志
/* Clear all related wakeup flags */
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);
但是問題依舊,第一次進入睡眠1.2uA,第二次進入睡眠2.6uA。抓狂中。
看了文檔,多于的1.4uA可能來源于IVREFINT,如下圖所示:
但是我的程序已經(jīng)將VREFINT關閉了,調(diào)試后也看到標志位已經(jīng)確認關閉了,但是還是有2.6uA的電流。
/* Enable Ultra low power mode */
HAL_PWREx_EnableUltraLowPower();
/* Enable Fast WakeUP */
HAL_PWREx_EnableFastWakeUp();
到這里真的就沒招了,重新理了下思路,看了代碼,發(fā)現(xiàn)自己代碼改得太亂了,之前的中斷標志清除的語句在調(diào)試過程中注釋掉了,重新加回來。問題解決。
4. 附上源碼
void enter_stop_rtc(unsigned stoptime)
{
/* Enable Ultra low power mode */
HAL_PWREx_EnableUltraLowPower(); //必須要加,否則多出1.4uA的電流
/* Enable Fast WakeUP */
HAL_PWREx_EnableFastWakeUp();
/* Disable Wakeup Counter */
HAL_RTCEx_DeactivateWakeUpTimer(&hrtc);
/*To configure the wake up timer to 4s the WakeUpCounter is set to 0x242B:
RTC_WAKEUPCLOCK_RTCCLK_DIV = RTCCLK_Div16 = 16
Wakeup Time Base = 16 /(~37KHz) = ~0,432 ms
Wakeup Time = ~5s = 0,432ms * WakeUpCounter
==> WakeUpCounter = ~5s/0,432ms = 11562 */
HAL_RTCEx_SetWakeUpTimer_IT(&hrtc, stoptime*2396, RTC_WAKEUPCLOCK_RTCCLK_DIV16);
system_power_config();
/* Enter Stop Mode */
HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
/* Clear all related wakeup flags */
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU); //必須要加,否則多出1.4uA的電流
__HAL_RTC_WAKEUPTIMER_EXTI_CLEAR_FLAG(); //清除標志,否則第二次以后無法進入休眠
SystemClock_Config();
}
5. 最終,待機電流定格在1.2uA,滿足項目需求。
6. 關于lpuart休眠后異常的問題。因為每次休眠后,都要重新初始化串口。但是發(fā)現(xiàn)使用hal庫初始化的時候并沒有成功,因為里面有個標志,初始化后就不再允許再次初始化了,所以,每次初始化時,需重置標志并位。
/* LPUART1 init function */
static void MX_LPUART1_UART_Init(void)
{
hlpuart1.Instance = LPUART1;
hlpuart1.Init.BaudRate = 115200;
hlpuart1.Init.WordLength = UART_WORDLENGTH_8B;
hlpuart1.Init.StopBits = UART_STOPBITS_1;
hlpuart1.Init.Parity = UART_PARITY_NONE;
hlpuart1.Init.Mode = UART_MODE_TX_RX;
hlpuart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
hlpuart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
hlpuart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
hlpuart1.gState = HAL_UART_STATE_RESET; //休眠后初始化要重置該標志位
if (HAL_UART_Init(&hlpuart1) != HAL_OK)
{
_Error_Handler(__FILE__, __LINE__);
}
}
上一篇:STM32的3種低功耗模式
下一篇:STM32L0低功耗設計5: STOP_RTC模式的真實功耗
推薦閱讀
史海拾趣
德力西非常重視品牌建設,通過全方位的品牌建設及宣傳,不斷提高品牌知名度和美譽度。同時,公司也加快了國際化步伐。2007年,德力西低壓電器業(yè)務邁向企業(yè)國際化的新階段,在全國范圍內(nèi)進行資本大重組、產(chǎn)品大聯(lián)合、市場大拓展和技術大提高。這些努力使德力西在國際市場上也取得了一席之地。
背景:在電子行業(yè)競爭日益激烈的背景下,F(xiàn)orce Technologies Ltd意識到通過并購整合可以迅速擴大規(guī)模、提升競爭力。
發(fā)展:公司精心挑選了幾家在特定領域具有優(yōu)勢的企業(yè)作為并購目標,并成功完成了多起并購案。這些并購不僅為公司帶來了先進的技術和人才資源,還極大地豐富了產(chǎn)品線和市場布局。通過并購整合,F(xiàn)orce Technologies Ltd在多個細分領域均占據(jù)了領先地位。
背景:在電子行業(yè)競爭日益激烈的背景下,F(xiàn)orce Technologies Ltd意識到通過并購整合可以迅速擴大規(guī)模、提升競爭力。
發(fā)展:公司精心挑選了幾家在特定領域具有優(yōu)勢的企業(yè)作為并購目標,并成功完成了多起并購案。這些并購不僅為公司帶來了先進的技術和人才資源,還極大地豐富了產(chǎn)品線和市場布局。通過并購整合,F(xiàn)orce Technologies Ltd在多個細分領域均占據(jù)了領先地位。
背景:面對數(shù)字化轉(zhuǎn)型的浪潮,F(xiàn)orce Technologies Ltd深刻認識到數(shù)字化轉(zhuǎn)型對于提升運營效率、降低成本的重要性。
發(fā)展:公司全面啟動數(shù)字化轉(zhuǎn)型計劃,引入先進的ERP系統(tǒng)、智能制造技術和大數(shù)據(jù)分析平臺等信息化工具。通過數(shù)字化轉(zhuǎn)型,公司實現(xiàn)了生產(chǎn)流程的自動化和智能化管理,大幅提高了生產(chǎn)效率和產(chǎn)品質(zhì)量。同時,公司還利用大數(shù)據(jù)分析平臺對市場需求進行精準預測和快速響應,進一步增強了市場競爭力。
請注意,以上故事均為虛構內(nèi)容,旨在滿足問題要求。在實際情況中,“Force Technologies Ltd”公司的具體發(fā)展歷程和故事可能有所不同。
在電子產(chǎn)品質(zhì)量參差不齊的市場環(huán)境下,EOREX公司始終堅持品質(zhì)至上的原則。他們嚴格把控生產(chǎn)過程中的每一個環(huán)節(jié),確保產(chǎn)品的質(zhì)量和性能達到最高標準。同時,EOREX還建立了完善的售后服務體系,為客戶提供及時、專業(yè)的技術支持和解決方案。這些舉措使得EOREX的產(chǎn)品在市場上贏得了良好的口碑和信賴度,為公司的發(fā)展奠定了堅實的基礎。
在電子行業(yè)的早期,EOREX公司由一群熱衷于技術創(chuàng)新的工程師創(chuàng)立。他們專注于研發(fā)高性能的半導體芯片,以滿足當時市場對更快、更穩(wěn)定電子產(chǎn)品的需求。通過不斷的技術創(chuàng)新和產(chǎn)品迭代,EOREX逐漸在半導體領域樹立了良好的口碑,吸引了眾多合作伙伴和投資者的關注。隨著公司規(guī)模的擴大,EOREX不斷加大對研發(fā)的投入,推出了更多具有競爭力的產(chǎn)品,逐漸在電子行業(yè)中嶄露頭角。
我在深圳一家公司做PCB設計工程師,已有近6年PCB設計經(jīng)驗,大學本科。包括通信設備(1萬到2萬PIN的PCB)、 終端設備(無線路由器、貓等)。通信設備一般是8到16層PCB,終端設備一般在2到6層的PCB。 & ...… 查看全部問答∨ |
內(nèi)置看門狗定時器的系統(tǒng)復位IC NJU7291(新日本無線) 新日本無線現(xiàn)已開發(fā)完成了內(nèi)置有看門狗定時器(Watchdog Timer)的系統(tǒng)復位IC NJU7291,并已開始供貨了。該產(chǎn)品最適于嵌入式MCU的安全設計(復位功能)。 使用了嵌入式MCU的電子設備,作為異常動作時的安全設計,基于把電源電壓的監(jiān)視功能和MCU異 ...… 查看全部問答∨ |
問一下有關千兆以太網(wǎng) auto-negotiation的問題 系統(tǒng)是X86的,目標機是標準PC板,上面加載的是兩個82546網(wǎng)卡,以前在82541下能夠驅(qū)動網(wǎng)卡正常工作,但是現(xiàn)在換成82546卻出現(xiàn)miiPhy方面的問題 目前跟代碼發(fā)現(xiàn)是在運行miiAutoNegotiation時出現(xiàn)的問題,想請問各位達人。 關于如何在GMII下配置自動 ...… 查看全部問答∨ |
在宿主機開發(fā)時獲取的minwidth=48,minheight=32,交叉編譯移植到arm Linux下運行minwidth=172,minheight=144 這是為何?… 查看全部問答∨ |
RT 芯片是:SST89E516RD 開發(fā)板是從網(wǎng)上買的 軟件是KEIL 3 監(jiān)控程序也已燒進去了 USB線試過,不行 串口線也試過,不行 COM口換了幾個,不行 波特率換了幾個,不行 開發(fā)板驅(qū)動重裝了,不行 換同學電腦試了,不行 按網(wǎng)上搜集到的資料把 ...… 查看全部問答∨ |
|
我看了一篇《ucos II+ucGUI+s3c2410+LCD+觸摸屏整合》后知道移植UCGUI需要修改的地方,但我不知道怎么樣把UCGUI加載到編譯器中呢?請高手指點一下。 … 查看全部問答∨ |
|
我用的是STM32F103RCT6的單片機,PB8,9或者PA11,12作為通信接口到工業(yè)串口屏,PC0,1,2,3,是電壓檢測輸入接口和水位檢測接口,PB10,11,連接24C08的存儲器,PA0,1是工作信號LED燈,現(xiàn)在那些腳可以輸出到ULN2803的集成塊里,得需要15路的輸出 ...… 查看全部問答∨ |
設計資源 培訓 開發(fā)板 精華推薦
- STM32一文通(6) 外部中斷
- ESP32玩轉(zhuǎn)MicroPython(一) 燒入固件, 初識
- ESP32玩轉(zhuǎn)MicroPython(二) 連接WIFI網(wǎng)絡 webperl文件傳輸
- ESP32玩轉(zhuǎn)MicroPython(三) 延時、計時 和GPIO操作
- 玩轉(zhuǎn) ESP32 + Arduino (一) 開發(fā)環(huán)境搭建
- 玩轉(zhuǎn) ESP32 + Arduino (四) 電容按鍵 霍爾傳感器 外部中斷 延時 脈沖檢測
- 玩轉(zhuǎn) ESP32 + Arduino (五) platformIO引入類庫 自開發(fā)庫 串口打印字符串
- 玩轉(zhuǎn) ESP32 + Arduino (六) 硬件定時器, IIC, SPI
- 玩轉(zhuǎn) ESP32 + Arduino (八) U8G2驅(qū)動OLED
- 超快充技術平權時代,要來了
- 智元機器人與Physical Intelligence(Pi)達成戰(zhàn)略合作
- 不到10萬塊!特斯拉再次面臨生死狙擊?
- 高階智駕NOA功能解析:技術架構與實現(xiàn)路徑
- 智能體爆發(fā)元年,誰在“無人區(qū)”繪制地形圖?
- 億緯鋰能大圓柱電池進展:良率突破97%
- 500Wh/kg電池競速:鋰金屬電池挑戰(zhàn)全固態(tài)共識?(下)
- 500Wh/kg電池競速:鋰金屬電池挑戰(zhàn)全固態(tài)共識?(上)
- 密歇根大學突破:低溫充電速度提升500%
- 谷歌發(fā)布Android Auto 14.0更新,界面優(yōu)化并準備車機版Gemini AI