開発のヒント
リセット、クロック、電源制御
RTCの自動キャリブレーション
STM32F4のRTCには、デジタルでクロックの誤差を較正する手段が2種類(粗較正、スムーズ較正)あります。これら 2 種類の較正手法は合わせて使用することは想定されておらず、アプリケーションは 2 種類の操作方法のうち、いずれかを選択する必要があります。
粗較正は、STM32F2シリーズ等の従来製品との互換性を確保するために搭載されています。粗較正を実施するには、RTC 較正レジスタ(RTC_CALIBR)を使用します。
スムーズ較正を使用すると、RTC 周波数は、-487.1 ppm から +488.5 ppm の範囲で、分解能約 0.954 ppm でデジタル的に較正できます。スムーズデジタル較正は、入力周波数が 32768 Hz の場合、RTCCLK 約 220 パルスの周期または32 秒の間で行われます。スムーズ較正を実施するには、RTC 較正レジスタ(RTC_CALR)を使います。
一方、RTC カレンダの更新は、基準クロックである RTC_REFIN に同期させることができます。通常は商用電源(50 または 60 Hz)を使います。RTC_REFIN 基準クロックには、32.768 kHz LSE クロックよりも高い精度が必要です。RTC_REFIN 検出が有効(RTC_CR の REFCKON ビットが 1 にセット)になると、カレンダは LSE によって駆動されていますが、RTC_REFIN を使用してカレンダ更新周波数(1 Hz)の不正確さを補償することができます。
RTCの較正の詳細は、アプリケーションノートAN3371(Using the hardware real-time clock (RTC)in STM32 F0, F2, F3, F4 and L1 series of MCUs)を参照してください。
過去の開発のヒントはこちら