- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:H8/3048Fの外部割り込みで,割り込み処理が止まってしまいます.)
H8/3048Fの外部割り込みで割り込み処理が止まってしまう問題
このQ&Aのポイント
- H8/3048Fの外部割り込みで割り込み処理が止まってしまう問題について相談です。
- 私はH8の外部割り込み機能を動作させる必要があり、困っています。
- 割り込み処理を行った後にメインの処理に戻らずに止まってしまいます。どうすれば解決できるでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
あー、あとwait_ms()って標準のGCC Developer Liteにはないようですが、どんな実装ですか? タイマ制御入れてたりすると、そこが危険かも。
その他の回答 (2)
- samtomsan
- ベストアンサー率55% (1060/1897)
回答No.3
疑問点が二箇所あります。 ・int_irq0 が割り込みルーチンであることの指定 #pragma interrupt がなくても良いか ・wait_msがメインと割り込み処理の両方で使われている メインでwait_msに入っている時に割り込み処理が働いてwait_msに入ったらどうなるか 再入可? 下記が参考になるかと思います。 http://soudan1.biglobe.ne.jp/qa5478034.html
質問者
お礼
回答ありがとうございます!2番目のご指摘の通り,wait_ms()でタイマの割り込みが使われており,irq割り込みの処理内でもwait_ms()が使われていたことが原因だったようです.本当に助かりました.ありがとうございました!
- D-Matsu
- ベストアンサー率45% (1080/2394)
回答No.1
なんとなく省かれたSCIのところにカギがありそうな気がしますが…… とりあえず割り込みハンドラでSCIへの出力やめてみたらどうなります?
お礼
回答ありがとうございます!確認したところ,wait_msでタイマ制御しておりました.ここをはずしたら動作致しました!!wait_ms()に関しては自分で作った関数ではなかったので盲点でした... 本当にありがとうございました!