国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

使用 CW32 實現電池備份(VBAT)功能

武漢芯源半導體有限公司 ? 2023-08-15 13:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


前言

電池備份(VBAT)功能的實現方法,一般是使用 MCU 自帶的 VBAT 引腳,通過在該引腳連接鈕扣電池,當系統電源因故掉電時,保持 MCU 內部備份寄存器內容和 RTC 時間信息不會丟失。

本文檔介紹了如何基于 CW32 系列 MCU,通過增加簡單的外部電路配合軟件實現 VBAT 功能,在系統電源掉 電后仍能保持 RTC 時鐘正常計時,以及如何降低系統功耗,從而延長后備電池的使用壽命。

1 、電路設計

對于自帶 VBAT 引腳的 MCU,MCU 內部有對 VBAT 電源和系統電源的管理單元,保證在系統電源掉電后,及 時切換 VBAT 引腳電源給備份域供電,保證 RTC 正常工作。

對于沒有 VBAT引腳的 CW32,要實現類似的功能,可以在外部進行后備帶電池和系統電源的切換,如下圖所示:

wKgZomTbCF6AQY5pAAA59eeKwOM150.png

后備電池(B1)提供的備用電源 VBAT 和系統電源 VDDIN 通過 2 個肖特基二極管(D1)合路,合路后的 電源 VDD 給 MCU 的數字域 DVCC 和模擬域 AVCC 進行供電。系統電源 VDDIN 通過 R3、R4 電阻分壓得到 WAKEIO 信號,連接到 MCU 的 IO 引腳。注意遵循如下規則:

1. Vwakeio 要大于 MCU IO 口的 Vih;

2. VDDIN 必須高于 Vb1 在 0.4V 以上,否則如果 VDDIN 和 Vb1 相等,在系統電源正常時,后備電池也會有一定 的泄放電流,不利于節省后備電池電量。

2 、程序設計

程序啟動后正常初始化時鐘、IO、RTC 以及 OELD,循環中檢測系統電源是否存在,如存在則讀取 RTC 時間 并顯示。

當系統電源 VDDIN 因故掉電,則關閉 OLED 電源,并進入 DeepSleep 低功耗睡眠模式。

當系統電源 VDDIN 恢復供電時,產生高電平中斷,喚醒 MCU,退出 DeepSleep 低功耗睡眠模式。

3 、參考代碼

int32_t main(void) { RCC_Configuration();?????// 時鐘配置 GPIO_Configuration();????//GPIO配置 OLED_Init();?????????//OLED顯示屏初始化配置 dis_err("RTC_TestBoard");?? // 顯示 FirmwareDelay(5000000);??// 增加延時防止過早休眠影響程序燒寫 RTC_init();??????????//RTC時鐘初始化 //DeepSleep 喚醒時,保持原系統時鐘來源 RCC_WAKEUPCLK_Config(RCC_SYSCTRL_WAKEUPCLKDIS); ShowTime();???????// 獲取時間數據 displaydatetime();????// 顯示當前時間 while(1) { if( 0==PB05_GETVALUE() )? // 循環檢測是否掉電 { PA05_SETHIGH();???// 關 OLED 電源 SCB->SCR = 0X04;??//DeepSleep __WFI();???????//MCU 進入DeepSleep模式以節省功耗 OLED_Init();?????// 外部電源接入后喚醒,重新初始化 OLED } else { ShowTime();??????// 獲取時間數據 displaydatetime();???// 顯示當前時間 } } } void GPIO_Configuration(void) { GPIO_InitTypeDef GPIO_InitStruct= {0}; __RCC_GPIOB_CLK_ENABLE();???????? // 開 GPIOB 時鐘 GPIO_InitStruct.IT = GPIO_IT_RISING;????// 使能上升沿中斷 GPIO_InitStruct.Mode = GPIO_MODE_INPUT;??// 輸入模式 GPIO_InitStruct.Pins = GPIO_PIN_5 ;????//PB05,連接 WAKEIO 網絡 GPIO_Init(CW_GPIOB, &GPIO_InitStruct);??// 初始化 IO GPIOB_INTFLAG_CLR(bv5);????????// 清除 PB05 中斷標志 NVIC_EnableIRQ(GPIOB_IRQn);??????// 使能 PB05 中斷 }

4 、實際測試

使用 CW32L031C8T6 設計了用于測試后備電池功能的評估板,實物如下圖所示:

wKgZomTbCIOALsejAAocsLmZaiM740.png

使用 3V 的 CR2032 鈕扣電池,實測電池電壓為 3.14V;VDDIN 使用可調節數字電源,設置為 3.54V,保證 VDDIN >= Vb1 + 0.4V;D1 實測合路后的電源電壓為 3.21V。

wKgZomTbCJOAHP7VAAojTs9kXBs730.png

4.1 測試數據

實際測試時,斷開 J4 跳線接入萬用表,設置萬用表為電流測試檔位。

1. 關閉 VDDIN 電源輸入,MCU 檢測到無外電輸入,關閉 OLED 顯示,進入 DeepSleep 模式,實測此時 B1 電流為 +0.95μA。

2. 打開 VDDIN電源輸入,MCU被高電平中斷從 DeepSleep狀態喚醒到正常狀態,OLED正常顯示當前時間, 實測此時 B1 電流為 -75nA(負電流是因為 D1 處于反向偏置狀態,有小的反向漏電流)。

測試結果符合電路設計預期,以 CR2032 電池容量為 200mAH 計算,則電池可用時間為 210526 小時,合計 24 年(不考慮電池和產品壽命),可實現超長待機時間,完全滿足各種低功耗產品對 RTC 后備電池容量需求。

5 、附件


5.1 RTC_TestBoard 單板原理圖

wKgaomTbCLGAQTNUAAFevw6lJvs033.pngwKgZomTbCMKAJbboAADwDaODQ6Q218.png
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6076

    文章

    45494

    瀏覽量

    670245
  • mcu
    mcu
    +關注

    關注

    147

    文章

    18924

    瀏覽量

    397994
  • 電池
    +關注

    關注

    85

    文章

    11519

    瀏覽量

    143371
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    請問CW32中的CW是啥意思?

    CW32中的CW是啥意思?
    發表于 02-02 07:10

    CW32仿真器是什么?

    CW32仿真器是什么
    發表于 01-05 08:04

    使用 CW32 實現電池備份VBAT功能

    檔介紹了如何CW32基于 CW32 系列 MCU,通過增加簡單的外部電路配合軟件實現 VBAT 功能,在系統電源掉 電后仍能保持 RTC 時
    發表于 01-04 06:34

    請問CW32芯片有哪些功能模塊?

    CW32芯片有哪些功能模塊?
    發表于 12-26 08:11

    CW32單片機如何讓生活更便捷

    這是一種全新的生活方式,它通過接收并處理傳感器的數據,以控制智能馬桶的所有功能。感謝CW32單片機,我們可以在日常生活中無縫地融入這種新的科技。 決定我們如何生活的,已經不再只是我們的選擇,更是我們
    發表于 12-11 06:11

    可以使用CW32的ChirpIOT來實現芯片固件升級嗎

    可以使用CW32的ChirpIOT來實現芯片固件升級嗎?這種升級每包有限制嗎?一般是多少,可以實現組網內的所有設備同時這種升級嗎?
    發表于 12-05 06:51

    CW32單片機在智能馬桶的應用

    水泵的工作和停止。 3.智能電量監控與節能功能 智能馬桶內置電池或電源模塊,CW32單片機可以實時監測電池的電量,并根據電量情況進行智能的調節。當電量不足時,單片機會通過控制模塊對電源
    發表于 12-04 08:01

    基于芯源CW32 MCU的LED閃爍示例及代碼分析

    準備: 芯源CW32開發板 一個LED 電阻及基礎連接線 開發環境:我使用的是Keil作為開發環境,同時利用官方提供的CW32庫函數,這使得代碼更加簡潔清晰。 代碼實現:這段代碼實現
    發表于 12-04 06:52

    CW32實現VBAT功能案例的參考代碼

    CW32 實現VBAT功能案例參考代碼: int32_t main(void) { RCC_Configuration(); // 時鐘配置 GPIO_Configuration
    發表于 12-04 06:06

    CW32 MCU溫度監測應用

    最近,我在項目中使用CW32 MCU,來實現一個簡單的溫度監測系統。CW32的靈活性和性能讓我在這個應用中得心應手。以下是我的實現過程和代碼示例。 應用簡介本項目通過連接一個溫度傳感器
    發表于 12-03 08:03

    基于芯源CW32 MCU智能家居照明控制系統設計與實現

    高性能、低功耗及豐富的外設資源,成為智能照明系統設計的理想選擇。 系統功能設計本系統的核心功能是通過CW32 MCU對燈光的開關和亮度進行智能控制。用戶可以通過手機應用、語音助手等方式進行遠程操作。此外
    發表于 12-03 06:06

    cw32 systick怎么用?

    cw32 systick怎么用
    發表于 12-01 08:10

    CW32 MCU用什么IDE開發?

    推薦使用IAR Embedded Workbench for ARM、Keil μVision for ARM等IDE開發CW32 MCU應用,其中新版本IAR EWARM直接支持CW32 MCU,Keil MDK-ARM則需要安裝CW
    發表于 11-12 07:52

    CW32 MCU有哪些系列?

    目前CW32 MCU有通用高性能MCU、安全低功耗MCU、無線射頻MCU等3個系列。其中射頻MCU集成了無線收發器,主要包括CW32R031(2.4GHz BLE-Lite)系列和CW32W031(Sub-1G)系列。
    發表于 11-12 07:34

    CW32 MCU用什么仿真器開發?

    理論上各主流IDE枚舉的、支持ARM Cortex內核的所有硬件仿真器,比如:J-LINK,ULINK,DAP,ST-Link等,都可以仿真、下載CW32 MCU的應用代碼。如果想實現量產或者離線下載應用代碼,則必須配套支持CW32
    發表于 11-12 06:01