我正在使用 NXP LPC17xx 系列微控制器(LPC1759 和 LPC1768)。
如何确定 RTC 是否正在运行?
我正在做一个测试
LPC_RTC->CCR & RTC_CCR_CLKEN
但这似乎不太可靠。打开我的设备时,我已经看到了 3197 年左右的值。
如何判断 RTC 是否正在运行并且其值是否未损坏?
编辑:
我最终在 RTC 值中添加了一个简单的完整性检查:
bool DateTime::validate( const RTC_TIME_Type &time_info )
{
if ( time_info.YEAR > 2100
|| time_info.DOY > 366
|| time_info.MONTH > 12
|| time_info.DOM > 31
|| time_info.HOUR > 23
|| time_info.MIN > 59
|| time_info.SEC > 59 )
return false;
return true;
}
它在我的 POST 期间运行,如下所示。