• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:H8/3048Fの外部割り込みで,割り込み処理が止まってしまいます.)

H8/3048Fの外部割り込みで割り込み処理が止まってしまう問題

このQ&Aのポイント
  • H8/3048Fの外部割り込みで割り込み処理が止まってしまう問題について相談です。
  • 私はH8の外部割り込み機能を動作させる必要があり、困っています。
  • 割り込み処理を行った後にメインの処理に戻らずに止まってしまいます。どうすれば解決できるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.2

あー、あとwait_ms()って標準のGCC Developer Liteにはないようですが、どんな実装ですか? タイマ制御入れてたりすると、そこが危険かも。

pockeychoco
質問者

お礼

回答ありがとうございます!確認したところ,wait_msでタイマ制御しておりました.ここをはずしたら動作致しました!!wait_ms()に関しては自分で作った関数ではなかったので盲点でした... 本当にありがとうございました!

その他の回答 (2)

  • samtomsan
  • ベストアンサー率55% (1060/1897)
回答No.3

疑問点が二箇所あります。 ・int_irq0 が割り込みルーチンであることの指定   #pragma interrupt がなくても良いか ・wait_msがメインと割り込み処理の両方で使われている   メインでwait_msに入っている時に割り込み処理が働いてwait_msに入ったらどうなるか   再入可? 下記が参考になるかと思います。 http://soudan1.biglobe.ne.jp/qa5478034.html

pockeychoco
質問者

お礼

回答ありがとうございます!2番目のご指摘の通り,wait_ms()でタイマの割り込みが使われており,irq割り込みの処理内でもwait_ms()が使われていたことが原因だったようです.本当に助かりました.ありがとうございました!

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

なんとなく省かれたSCIのところにカギがありそうな気がしますが…… とりあえず割り込みハンドラでSCIへの出力やめてみたらどうなります?

関連するQ&A