サイト内検索

Silicon Labs EFM32:外部オシレータ(発振器)を使用する場合、ピンはどのように設定すれば良いですか?

EFx32

外部オシレータをHFXOとして使用する場合、HFXTAL_Nを使用します。ピン設定(Pin XXXをNFXTAL_Nとして使用する、という明示)は不要ですので、デフォルトのまま(Pinmode = disable)で結構です。
以下はサンプルコードです。なお、LFXOの場合も考え方は同様です。

  • Sin波の場合

/* Use external sine wave for HFXO */
CMU->CTRL |= CMU_CTRL_HFXOMODE_BUFEXTCLK;
/* Enable HFXO as high frequency clock, HFCLK */
CMU_ClockSelectSet(cmuClock_HF,cmuSelect_HFXO);
/* Turn off HFRCO if not required */
CMU_OscillatorEnable(cmuOsc_HFRCO, false, false);

  • 矩形波の場合
/* Use external digital clock for HFXO */
CMU->CTRL |= CMU_CTRL_HFXOMODE_DIGEXTCLK;
/* Enable HFXO as high frequency clock, HFCLK */
CMU_ClockSelectSet(cmuClock_HF,cmuSelect_HFXO);
/* Turn off HFRCO if not required */
CMU_OscillatorEnable(cmuOsc_HFRCO, false, false);

なお、外部クリスタルを使用する場合の設定については、別トピック(外部クリスタルを使用する場合、ピンはどのように設定すれば良いですか?)を参照してください。

経験豊富なFAEが
無料でご相談を承ります。

特定製品の仕様からパーツの選定まで、当社のFAEが皆様のテクニカルなお悩みに無料で回答します。ぜひ、お気軽にご相談ください。