MSP430F2xxが搭載するBasic Clock Module+は、
LFXT1発振器(LFXT1CLK)あるいはXT2発振器(XT2CLK)の
異常を検出すると、
BCSCTL3[XT2OF/LFXT1OF](発振器異常フラグ)をセット(1)し、
IFG1[OFIFG](発振器異常割り込みフラグ)をセット(1)します。
出典:MSP430x2xx Family User’s Guide (SLAU144J)
* 注意事項 *
発振器の異常(クロック周波数の異常低下)が解消されると
発振器異常フラグは自動にクリア(0)されますが、
発振器異常割り込みフラグは自動にはクリア(0)されません。
IFG1[OFIFG](発振器異常割り込みフラグ)がセット(1)され、
IE1[OFIE](発振器異常割り込み許可フラグ)がセット(1)
されていると、割り込みが生成されます。
出典:MSP430x2xx Family User’s Guide (SLAU144J)
発振器異常割り込みフラグをセット(1)する条件は以下となります。
1. LFXT1発振器が作動中(SR[OSCOFF] = 0)、LFXT1CLKの周波数異常低下を検出。
2. POR(Power On Reset)の直後。
3. XT2発振器が作動中(BCSCTL1[XT2OFF] = 0)、XT2CLKの周波数異常低下を検出。
出典:MSP430x2xx Family User’s Guide (SLAU144J)
* 注意事項 *
発振器異常割り込みフラグがセット(1)される条件の2にあるように、
POR後BCSCTL3[LFXT1OF]はセット(1)され、
発振器異常割り込みフラグIFG1[OFIFG]がセット(1)されます。
そこで、発振器異常割り込み許可フラグ(IE1[OFIE])をセット(1)する前に、
必ずプログラムで発振器異常割り込みフラグをクリア(0)する必要があります。