你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于STM8L052芯片在停机halt模式下RTC是否运行的问题

[复制链接]
zykzyk-93033 提问时间:2019-9-25 16:47 /
问题:STM8L052芯片在停机halt模式下RTC还能够正常运行吗?现在的情况是运行状态RTC时钟运行正常,但是进入停机状态后发现定时没有正常走。
收藏 评论6 发布时间:2019-9-25 16:47

举报

6个回答
七哥 回答时间:2019-9-25 18:22:57
手册上说,halt模式是RTC是不工作的,除此之外的其它模式,RTC都可以正常工作。

20190925182122.jpg

20190925182134.jpg


zykzyk-93033 回答时间:2019-9-26 08:51:26
经过进一步观察,发现是进入halt模式唤醒后,不能正常读取时间数据,软件复位后,是可以读取时间的,且时间是在halt模式下载运行的。难不成要想正常唤醒后读取必须采用活跃停机模式?
zykzyk-93033 回答时间:2019-9-26 12:03:02
toofree 发表于 2019-9-25 18:22
手册上说,halt模式是RTC是不工作的,除此之外的其它模式,RTC都可以正常工作。

但是是数据手册上有这么一段描述:As long as the supply voltage is maintained in the operating range, the RTC never stops,regardless of the MCU status (Run mode, low power mode or under reset).

大概意思:只要电源电压保持在工作范围内,RTC就不会停止,而不管MCU状态(运行模式、低功耗模式或处于复位状态)。
七哥 回答时间:2019-9-26 12:32:49
zykzyk-93033 发表于 2019-9-26 12:03
但是是数据手册上有这么一段描述:As long as the supply voltage is maintained in the operating range ...

不懂球的了,手册总是写的这么让人费解。最终还是以实验结果为准吧
zykzyk-93033 回答时间:2019-9-26 13:58:21
toofree 发表于 2019-9-26 12:32
不懂球的了,手册总是写的这么让人费解。最终还是以实验结果为准吧

是的。现在的情况是从halt唤醒后,不能正确读取时间数据,卡死在如下语句这里:        while (RTC_WaitForSynchro() != SUCCESS){}   如果启用了软件狗,在这里软件狗不进行喂狗复位后是可以正确读取时间数据的。 就是从halt唤醒后,不能正确读取时间数据。
butterflyspring 回答时间:2019-9-29 18:29:55
个人理解是在HALT模式下,开启低速时钟运行RTC 叫做“active halt”. 从测试结果看,唤醒后读取时钟是要按一定的方式才能读到,因为总线时钟的差异。所以楼主检查一下,唤醒后系统时钟是否恢复成高速,同时估测一下读取时钟要耗费多少时间再决定看门狗的处理吧
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版