RTC杂谈

来源:互联网 发布:linux访问网页命令 编辑:程序博客网 时间:2024/06/05 18:06

这两天看RTC部分。平台为MIPS的JZ4770平台。

主要考察RTC对于机器关机,重启等部分的控制。


关机操作:先sync文件系统,接着PMU的外设部分断电,接着进行设置RTC使CPU进入Hibernate Mode.

这里要注意的是,RTC被集成到CPU内部,当然也有很多电路的RTC部门是外置的。rtc的供电部分不受PMU的控制。也就是说PMU掉电的情况下,RTC也可以正常工作。(这是肯定的,不然在关机状态下,怎么开机啊?)



该寄存器的BIT0就是控制CPU进入Hibernate Mode的。在关机操作的最后一步,就是将该位置 1.


对于重启部分,在代码中,我看到有两种办法让系统重启,一是设RTC的alarm位,另一个是用Watchdog

看看RTC alarm部分


这里的BIT0如果设为1,则系统会重启。如果设为0,则不会。


还有一个,就是在关机状态下,需要按住power键多长时间才能开机呢?这个也是RTC控制的。


该寄存器的BIT5~BIT15是控制该时间的,最长为2s,可以改为100ms,这样在关机状态下,只需要按下power键,系统就起来了,不需要长按。

原创粉丝点击