完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我想你可以为两者使用相同的电池。
|
|
|
|
为什么需要外部RTC(DS3231)?什么是STM32F407不能提供?
|
|
|
|
当没有外部电池和外部超级电容器时,VBAT引脚允许从外部电池,外部超级电容器或VDD为器件VBAT域供电。
当VDD不存在时,BAT操作被激活。VBAT引脚为RTC,备份寄存器和备份SRAM供电。 |
|
|
|
DS3231更准确
|
|
|
|
实际上,我不确定MCU是否可以直接计算DateTime,我认为它需要进行一些编程,顺便说一下,我需要MCU的RTC只在特定的持续时间内唤醒它而不用于计算时间。
|
|
|
|
那么你根本不需要将电池连接到MCU。RTC可以通过其报警支持提供所有必要的唤醒事件。
|
|
|
|
你的意思是我应该将DS3231的中断引脚连接到MCU的数字输入,然后通过设置中断将其唤醒,对吗?使用其内部RTC还有其他不同之处吗?
|
|
|
|
这是XY问题的完美例子。
在没有研究数据表的情况下,您做出了几个不正确的假设,并决定使用外部RTC,这为您带来了新的电源问题。以下是假设: DS3231更加准确。 DS3231的精度为±2 ppm。STM32F407 的基本精度为5 ppm。然而,它还具有数字校准功能,允许您将时钟输出到外部引脚进行测量,然后以0.95 ppm的步长进行后续校准。 因此,MCU RTC的可实现精度比外部RTC高2倍。 外部RTC的功耗较低。 DS3231在待机模式下功耗为110μA。STM32F407在备用模式下仅需4μA(SRAM备份)或3.3μA(无备份)。请注意,即使您使用外部中断唤醒MCU,它们也会在待机状态下消耗功率。 因此,DS3231的功耗仅为内部RTC的33倍。 MCU无法直接计算日期时间。 以下是数据表中的引用:“ 两个32位寄存器包含秒,分钟,小时(12或24小时格式),日(星期几),日期(星期几),月份和年份。自动执行28,29(闰年),30天和31天月的补偿。 “不仅如此,它还可以编程为夏令时补偿,这是DS3231无法做到的。 因此,STM32F407中的RTC可以完成DS3231所做的一切,等等。 总而言之,没有必要将DS3231与STM32F407一起使用。 话虽如此,通过使用纳米功率外部定时器,如TPL5110完全切断MCU电源,有一种方法可以进一步降低功耗。在这种情况下(称为VBAT模式),RTC将继续运行,备用电池仅消耗0.96μA。定时器本身增加了可忽略不计的35 nA,总功耗低于1μA(与待机模式相比节省3μA)。 |
|
|
|
我想你可能想要考虑你提出这个论点的力度。将STM32的RTC校准到2ppm以内并非易事。您需要一个好的频率计数器(昂贵的),并且在生产中需要定期校准/检查的设备。实现温度补偿更加复杂(你需要一个温度室和精密频率计数器来表征你所选择的晶体),STM32在备用电池运行时无法做任何补偿
|
|
|
|
即使没有校准,我们也在讨论2 ppm和5 ppm之间的差异。考虑到有多少MCU快乐地使用10~50 ppm晶体运行,我认为使用110μA外部RTC有点适得其反,你不觉得吗?特别是市场上有精确的纳米功率时钟芯片(无日历)。请注意,我的论点是关于DS3231,而不是RTC芯片
|
|
|
|
但我有一个问题,如果我的MCU断电,我的意思是供电(比如LiPo电池),它还能保留时间吗?正如我测试的DS3231可以用一枚硬币运行6个月左右
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
991 浏览 0 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
970 浏览 2 评论
2080 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1177 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1599 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 17:04 , Processed in 0.826489 second(s), Total 92, Slave 75 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号