完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
前言 电池备份(VBAT)功能的实现方法,一般是使用 MCU 自带的 VBAT 引脚,通过在该引脚连接钮扣电池,当系统电源因故掉电时,保持 MCU 内部备份寄存器内容和 RTC 时间信息不会丢失。 本文档介绍了如何基于 CW32 系列 MCU,通过增加简单的外部电路配合软件实现 VBAT 功能,在系统电源掉 电后仍能保持 RTC 时钟正常计时,以及如何降低系统功耗,从而延长后备电池的使用寿命。 1、电路设计 对于自带 VBAT 引脚的 MCU,MCU 内部有对 VBAT 电源和系统电源的管理单元,保证在系统电源掉电后,及 时切换 VBAT 引脚电源给备份域供电,保证 RTC 正常工作。 对于没有 VBAT引脚的 CW32,要实现类似的功能,可以在外部进行后备带电池和系统电源的切换,如下图所示: 后备电池(B1)提供的备用电源 VBAT 和系统电源 VDDIN 通过 2 个肖特基二极管(D1)合路,合路后的 电源 VDD 给 MCU 的数字域 DVCC 和模拟域 AVCC 进行供电。系统电源 VDDIN 通过 R3、R4 电阻分压得到 WAKEIO 信号,连接到 MCU 的 IO 引脚。注意遵循如下规则:
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 设计了用于测试后备电池功能的评估板,实物如下图所示: 使用 3V 的 CR2032 钮扣电池,实测电池电压为 3.14V;VDDIN 使用可调节数字电源,设置为 3.54V,保证 VDDIN >= Vb1 + 0.4V;D1 实测合路后的电源电压为 3.21V。 4.1 测试数据 实际测试时,断开 J4 跳线接入万用表,设置万用表为电流测试档位。
测试结果符合电路设计预期,以 CR2032 电池容量为 200mAH 计算,则电池可用时间为 210526 小时,合计 24 年(不考虑电池和产品寿命),可实现超长待机时间,完全满足各种低功耗产品对 RTC 后备电池容量需求。 5、附件 5.1 RTC_TestBoard 单板原理图 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
CW32L010安全低功耗MCU,树立M0+产品行业新标杆!
793 浏览 0 评论
897 浏览 0 评论
1332 浏览 0 评论
1227 浏览 0 评论
965 浏览 0 评论
2470浏览 1评论
1006浏览 1评论
【CW32饭盒派开发板试用体验】与CW32饭盒派的第一次亲密接触
385浏览 1评论
264浏览 0评论
401浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 10:25 , Processed in 0.734876 second(s), Total 70, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号