開発のヒント

リセット、クロック、電源制御

HSIのキャリブレーション

HSIは8MHz(STM32F103の場合)の内蔵RC発振回路です。HSI RC発振回路には、外部部品が不要であるので、低コストでクロックソースを供給することができます。HSE水晶発振器より発振開始時間が早いですが、水晶発振子やセラミック振動子ほど正確な周波数を得ることはできません。

しかし、ある程度ならばユーザが周波数補正を行うことができます。具体的には次のようにして補正を行います。

各デバイスはTA= 25℃時に±1%の精度を保つために、工場出荷時に校正されています。

リセットされた後に、工場での校正値はクロックコントロールレジスタRCC_CRのHSICAL[7:0]ビットに格納されます。

ユーザ補正は、RCC_CRレジスタのHSITRIM[4:0]ビットを設定することによって行われます。

これらのビットで、電圧と温度が変化したときのHSI RC発振周波数変化を補正するようにプログラムを作ることが出来ます。

デフォルト値は16です。(HSICAL値に補正値が入ると、HSI発振周波数は8MHz±1%に調整されます。)

トリミングステップ(Fhsitrim)は2つの連続したHSICALステップの間の約40kHzになります。

詳細についてはアプリケーションノートAN2868をご覧ください。

過去の開発のヒントはこちら