[H8-ML(666)] Re: 割り込み処理について
From: SIMAMOTO Kenrou <kenrou@xxxxxxxxxxxxx>
Date: 2000年07月09日(日)14時02分49秒
Kouhei Ito wrote [H8-ML(664)]:
> メインプログラムはほとんどなくて、プログラムのほとんどが
> 割り込み処理と言うのも少なくないのです。
> 
> 私が考えつく問題としては、Aと言う割り込み処理が長くなればその間は
> 他の割り込み処理は出来なくなりますので、あまりいいことではありません。
御意。

> それに、プログラムの大部分が割り込み処理とでメインは無限ループ
> (けっこう私のプログラムにはあります。)
> というのもエレガントでないかなと思ってます。
迷信ですな。

 
> やはり、割り込み処理は短くしたほうがよいような気がするのですが
> 皆様方がプログラムする際はなにかそのための定石のようなものがあるん
> でしょうか?

処理そのものが短くできない場合は
分割します。
出力までの遅れ時間はどれだけ許容するか?
例えば
処理A:1ms毎に実行、遅れ許容10ms
処理B:1ms毎に実行、遅れ許容1ms
処理C:10msごとに実行、遅れ許容1ms
であるなら
処理Aを10個の細分処理A'[0-9]に分割して
1ms毎に順番に処理していく。
処理Bは1ms毎に処理していく。
処理Cは10ms毎に処理していく。

遅れ許容は
押しボタンの入力とりこみ : 10ms
LEDの点灯 : 10ms
リレー駆動 : 100ms
PWMの制御 : 1ms
という値で造ったことがあります。

--
島本健郎
スレッド概略
[664(R)](起点)
 └[表示中]


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


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