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中に実行されます。