[H8-ML(2547)] Re: 多重割り込みが上手くいきませんが..?
From: hamayan <hamayan@xxxxxxxxxxxxxxx>
Date: 2002年12月12日(木)09時30分10秒
お世話になっています。濱原です。

Shinya>  0.1msecのITU0コンペアマッチ割り込み(優先)と 5msecのITU1コンペアマッチ割
Shinya> り込みを使って制御プログラムを開発していますが、ITU1の割り込みの途中でEIを行
Shinya> うとプログラムがおかしな動き?になってしまいます。
Shinya>  EIを入れなければ正しく動くのですが、ITU1の割り込み終了までITU0の割り込み処
Shinya> 理が待たされてしまい、制御が上手く行えないのです。
Shinya>  因みに使用しています環境は、ベストテクノロジー社のGCC Developer Lite(ver1)
Shinya> です。
Shinya>  ご指導頂ければ幸甚です。

私自身、H8で多重割り込みを使ったり、またGCC環境で開発した事が無いので、
確実にこうすれば解決する。と言うアドバイスを行う事ができませんが、基本的な
確認事項を書かせて頂きます。

まず、割り込み処理はCPUに大きく依存する処理で、C言語だけで解決できるとは
限らないと思います。お使いのC言語仕様が多重割り込みをサポートしていますでし
ょうか。

サポートされていない時は、ハードウエアマニュアルの例外処理と、割り込みコント
ローラの記事を熟読される事をお勧めします。

多重割り込みを行うには、CCRレジスタや、SYSCRレジスタ、プライオリティ
レジスタを操作する必要が有る筈です。

なお余談ですが、ビット操作命令は、これもハードウエアマニュアルに記載されている
事ですが、一旦読み出して、演算処理をしてから、書き戻す、と言う操作をしますので
、空読みは必要有りません。

------------------------------------------------------------
)^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^(
☆☆☆☆☆☆☆☆☆☆☆☆designed by hamayan☆☆☆☆☆☆☆☆☆
from はまやん
アドレスは
	hamayan@xxxxxxxxxxxxxxxx
★★★★★★★★★end of message and thank you★★★★★★★

スレッド概略
[2526(R)](起点)
 └[2544(U)]
   └[表示中]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]