このMLの皆さん、初めまして。鬼海(おにうみ)と申します。 数ヶ月前、秋月で3052F LANキットを購入し、H8のプログラミングの世界へと 足を踏み込み込んだ者です。以後、よろしくお願いいたします。 hamayanさん,Ryzさんには既にお世話になっておりますね。ありがとうございます。 さて、下記の件、ご存じの方がおりましたら、対策をアドバイスして頂けると 助かります。遅ればせながら、モニタを入れてdebugをしてみようとは思って おります... 【現象】 割り込み処理からタスクにsendmailをしたところ、リセットしてしまう。 【環境等】 ・OS:HOS-H8h(ver0.07) ・ITUはCh0(1ms)とCh1(10ms)が動作し、Ch1でLEDを1S周期で点滅させて、 動作していることを表示。タイマタスクは実装済みだが、動作は未確認 ・UARTから割り込みで文字列を受信し、[CR]でタスクに文字列をsendmailする。 文字が正常に取り込まれていることは確認。 ・割り込み処理では、割り込み・ディスパッチを禁止にしていない。(loc_cpu未使用) ・開発環境未整備のため、モニタは未使用(やっぱ必要か) ・OSにDIP-SWのOnを検出するまで処理を待つというパッチを各所に当て、 sendmail以降の動作をトレースしてみた。 【解析結果】 ・OSの動作は下記の通り snd_msg -> wup_dsp -> __tsk_dsp -> _sta_dsp -> reset? ・本来ですと、__tsk_dspのところでsysstatを参照して遅延ディスパッチとなる ハズなんですが、すぐにディスパッチしてしまいます。 ・割り込み処理内でこの変数を書き換える必要等あるでしょうか。 ・割り込みからの通知をイベントフラグに変えたところで、同じように ディスパッチしてしまいそうですので、こちらの実装は未確認です。 以上。 よろしくお願いいたします。