完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用 STM32F091。
我在想是否可以通过用一个足够大的电容器缓冲 VBAT 来检测 VDD 会被短暂中断的某种启动/电源问题,用一个低 Vforward 的二极管与 VDD 隔开,这样盖子就不会被吸住当 VDD 出现故障时,由电路的其余部分干燥。 这是一件常见的事情/有意义吗?(假定系统无法使用电池永久为 VBAT 供电) 我还想知道当我写入备份寄存器时会发生什么,并且在其中,VDD 发生故障。 有没有办法利用备份寄存器来可靠地检测启动循环/电源不稳定问题?乱码的寄存器内容无济于事。 我正在考虑这样的方案来处理这个问题: 我使用 2 个备份寄存器作为时间值(我从连接的 I2C 总运行时间计数器芯片获得)的双缓冲区(即对于每个下一帧,两个中的另一个被写入)。我使用一个 3.register 作为索引,以判断两者中的哪一个是当前的。这个索引总是写在时间值之后。 我正在尝试的是:如果在写入索引时电源出现故障,它将有一些奇怪的值,而不是 0 或 1。所以我假设电源写入失败并且 2 个时间值必须有效,因为电源编写它们并没有失败,因此两者中较大的一个是当前的(运行时间最长)。如果索引具有有效值,则它必须指向最后有效写入的时间值。如果因为断电而写入时间值失败,它还没有开始写入索引,这就是索引仍然很好的原因,即使它指向一个稍旧的值。 因此,在启动时,我可以将当前读出的总运行时间值与备份寄存器的值进行比较,从而确定应用程序是否只运行了一小会儿。 使用另一个寄存器作为这种情况的计数器,我将查看应用程序在重启之前是否有非常短暂的运行时间并重复,从而避免打开任何可能导致电源问题的设备,而是直接进入错误状态. 这行得通吗,或者即使行得通,这是一个好方法吗? |
|
相关推荐
1个回答
|
|
最好通过检查 RCC_CSR 重置标志来测试断电问题。查看设备是否具有断电检测和 PVD。
|
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2642 浏览 1 评论
3208 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1783 浏览 1 评论
3611 浏览 6 评论
5989 浏览 21 评论
939浏览 4评论
1316浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
584浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1303浏览 3评论
1361浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 22:50 , Processed in 1.265751 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号