金さん、こんにちは。
メールの設定はテキストモードの方が返信を書き易いので
変更をお願いします。
(メーリングリストの投稿の後半が意味不明の数字が添付さ
れる現象はテキストモードでないためでしょうか?)
金さん>
void int_imia1(void)
{
ITU1.TIER.BYTE = 0xf8; /*割り込み禁止*/
ITU1.TSR.BYTE = 0xf8; /* 割り込みフラグ0 */
/*ここから 1行くらいの割り込み処理ルーチン*/
ITU1.TIER.BYTE = 0xfb; /*割り込み許可*/
}
int_imia1()関数は ITU1 によって起動される割り込み関数と
思います。
その入口と出口で ITU1 の割り込みを禁止、解除されていま
すが、これは特に必要ないように思います。
私の場合は、割り込みの先頭で割り込みフラグを読んで、0
をライトしているだけです。
特に気になるのが、最後のITU1の割り込み許可の行です。
もし、この行の後ろに他の処理があると、この時点でITU1は
自分のインプットキャプチャ割り込みを受け付ける状態にな
っていますから、自分自身の多重割り込みによってループす
る可能性があるように思います。(インプットキャプチャの周
期が非常に短い場合)
この割り込みの議論は最近の投稿でもありましたが、外して
いるかも知れません。その時はご容赦下さい。
PS.
日立HEWなどでは、割り込み関数と普通の関数との区別は
ないんでしょうか?
鈴木(正)