本FAQは、MSP430F1xx/F2xx/F4xx/G2xx/i2xxファミリーについての説明となります。
上記MSP430ファミリーのNMI(ノンマスカブル割込み)は、下記3種類の要因によって生成される割込みとなります。
・ NMI端子のエッジ変化を検出した割込み
・ 発振器の異常を検出した割込み
・ Flashメモリへのアクセス違反による割込み
NMIは上から2番目の優先度で、ベクタアドレス 0x0FFCh番地に設定されたアドレスから始まる割込み処理ルーチンで処理されます。
【割込みの制御(禁止/許可)】
各割込みを制御するビットがあります。
NMIの割込み許可ビットは、PUC(Power Up Clear)後の初期状態ですべてクリア(0)されています。
各割込みを発生させるには、プログラムで割込み許可ビットをセット(1)する必要があります。
【多重割込み】
NMIを受け付けるとNMIに関連するすべての割込み許可ビット(NMIIE、OFIE、ACCVIE)と
SR[GIE](General Interrupt Enable)ビットはクリア(0)され、
リセットを除くすべての割込みが禁止されるので多重割込みは発生しない状態になります。
* 注意事項 *
NMIの割り込み要因フラグ(NMIIFG、OFIFG、ACCVIFG)は、自動的にクリア(0)されません。
NMIの割込み許可ビットをセットする前にプログラムで割込み要因フラグをクリア(0)する必要があります。
■NMI端子のエッジ変化を検出した割込みの割り込み要因フラグと割込み許可ビット
■発振器の異常を検出した割込みの割り込み要因フラグと割込み許可ビット
■Flashメモリへのアクセス違反による割込みの割り込み要因フラグと割込み許可ビット
出典:MSP430x4xx Family User’s Guide (SLAU056L)