アプリ版:「スタンプのみでお礼する」機能のリリースについて

PIC18F4550を使用して、RB0とRB1への入力の立ち上がり、立下りエッジを検出しようとしています。

素直に割り込み処理へ入れば実現できるのですが、他の処理との兼ね合いの問題もあり、出来れば割り込みを使用したくありません。

そこで思ったのですが、割り込みを禁止にしていても、各割り込みフラグは変化するのでしょうか?

回答よろしくお願いします。

A 回答 (2件)

変化します.



参考URLのpage.100 FIGURE9-1に図解がありますが, PICでの割り込み禁止は, 単にandゲートでマスクしているだけです.
RBIE=0の状態であってもRBIFはリセットしてあげれば, 次の変化でセットされます.
※リセット方法はpage.101のNote1を参照

RB0, RB1への入力の変化を結果的にポーリングするならどのみちポートの実値を読まなければ判定できないので, 別段RBIFフラグを参照する必要は無いと思いますが・・・・
(RBIF[7:2]の変化でもRBIFはセットされてしまう)

参考URL:http://ww1.microchip.com/downloads/en/DeviceDoc/ …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
早速プログラムを組んで試してみたいと思います。

ちなみに、PORTB変化割り込みではなく、INT0,1の割り込みを使おうと思ってます。

お礼日時:2010/03/21 21:25

> 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項も目を通しておいた方が良いでしょう.
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!