单板是采用外部纽扣电池3V通过电源芯片转换成1.8V给AM3358的内部RTC供电,电池电量充足的时候,系统启动正常。取下电池的时候,系统也启动正常。但是在电池使用一段时间以后,系统有时候在启动过程中会内核卡死在RTC初始化附近,而且不容易复现,请问下有什么解决方案不?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
单板是采用外部纽扣电池3V通过电源芯片转换成1.8V给AM3358的内部RTC供电,电池电量充足的时候,系统启动正常。取下电池的时候,系统也启动正常。但是在电池使用一段时间以后,系统有时候在启动过程中会内核卡死在RTC初始化附近,而且不容易复现,请问下有什么解决方案不?
如果RTC部分的供电不正常,但是在内核中需要去进行RTC的初始化,对RTC模块进行读写操作是有可能发生这种问题的。
之前在debug的时候,就曾经提到过,如果不使用RTC的话,需要把内核中的RTC相关模块给注释掉,这样就不会导致RTC卡主内核了。参考如下:
http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/51326.aspx
从外部硬件设计的角度出发,确保你的RTC的相关供电电压工作态是正常的。总不能在硬件设计有供电异常的可能下,期待软件方面给你把这个问题修复吧。
PS: RTC那一路,在我们EVM板的设计上,RTC的1.8V,是直接通过外部的PMIC产生给的。
确认一下,你是希望使用AM335x内部的RTC做掉电时钟保存啊,还是只是为了外部的RTC 32K时钟。如果是后者,可以和EVM保持一样的设计。