マイクロコントローラー-8051割り込み
割り込みは、メインプログラムを一時的に中断し、制御を外部ソースに渡し、それらのタスクを実行するイベントです。次に、中断したメインプログラムに制御を渡します。
8051には、INT0、TFO、INT1、TF1、RI / TIの5つの割り込み信号があります。各割り込みはIEレジスタのビットを設定することで有効または無効にでき、割り込みシステム全体は同じレジスタのEAビットをクリアすることで無効にできます。
IE(割り込みイネーブル)レジスタ
このレジスタは、割り込みの有効化と無効化を担当します。EAレジスタは、割り込みを有効にする場合は1に設定され、割り込みを無効にする場合は0に設定されます。そのビットシーケンスとその意味を次の図に示します。
EA | IE.7 | すべての割り込みを無効にします。EA = 0の場合、割り込みは確認されず、EA = 1では個別に割り込みが有効になります。 |
- | IE.6 | 将来の使用のために予約されています。 |
- | IE.5 | 将来の使用のために予約されています。 |
ES | IE.4 | シリアルポート割り込みを有効/無効にします。 |
ET1 | IE.3 | timer1オーバーフロー割り込みを有効/無効にします。 |
EX1 | IE.2 | 外部割り込みを有効/無効にします1。 |
ET0 | IE.1 | timer0オーバーフロー割り込みを有効/無効にします。 |
EX0 | IE.0 | 外部割り込み0を有効/無効にします。 |
IP(割り込み優先度)レジスタ
次の図に示すように、割り込み優先度(IP)レジスタの対応するビットを変更することにより、割り込みの優先度レベルを変更できます。
優先度の低い割り込みは、優先度の高い割り込みによってのみ中断できますが、優先度の低い別の割り込みによって中断することはできません。
優先度の異なる2つの割り込みを同時に受信した場合、優先度の高い要求に対応します。
同じ優先度レベルの要求が同時に受信された場合、内部ポーリングシーケンスによって、処理される要求が決定されます。
- | IP.6 | 将来の使用のために予約されています。 |
- | IP.5 | 将来の使用のために予約されています。 |
PS | IP.4 | シリアルポート割り込みの優先度を定義します。 |
PT1 | IP.3 | 1優先度のタイマー割り込みを定義します。 |
PX1 | IP.2 | 外部割り込みの優先度を定義します。 |
PT0 | IP.1 | timer0割り込み優先度レベルを定義します。 |
PX0 | IP.0 | 優先度0の外部割り込みを定義します。 |
TCONレジスタ
TCONレジスタは、マイクロコントローラへの外部割り込みのタイプを指定します。