- 締切済み
PICの割り込みフラグについて
PIC18F4550を使用して、RB0とRB1への入力の立ち上がり、立下りエッジを検出しようとしています。 素直に割り込み処理へ入れば実現できるのですが、他の処理との兼ね合いの問題もあり、出来れば割り込みを使用したくありません。 そこで思ったのですが、割り込みを禁止にしていても、各割り込みフラグは変化するのでしょうか? 回答よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- bug_bug
- ベストアンサー率78% (36/46)
回答No.2
> INT0,1の割り込みを使おうと思ってます。 p.99右列中段に個々の割り込みフラグは許可ビットやGIEの状態に拠らずセットされる旨が記載されています. Individual interrupt flag bits are set regardless of the status of their corresponding enable bit or the GIE bit. その直後のNote項も目を通しておいた方が良いでしょう.
- bug_bug
- ベストアンサー率78% (36/46)
回答No.1
変化します. 参考URLのpage.100 FIGURE9-1に図解がありますが, PICでの割り込み禁止は, 単にandゲートでマスクしているだけです. RBIE=0の状態であってもRBIFはリセットしてあげれば, 次の変化でセットされます. ※リセット方法はpage.101のNote1を参照 RB0, RB1への入力の変化を結果的にポーリングするならどのみちポートの実値を読まなければ判定できないので, 別段RBIFフラグを参照する必要は無いと思いますが・・・・ (RBIF[7:2]の変化でもRBIFはセットされてしまう)
お礼
回答ありがとうございます。 早速プログラムを組んで試してみたいと思います。 ちなみに、PORTB変化割り込みではなく、INT0,1の割り込みを使おうと思ってます。