2018/5/17(THU) 【後方排気】SI:シフトインジケーターをプログラム実装A
はい、引き続きプログラミング。
仕事中にやっているのは内緒の方向でwww

まずは「2)割り込み処理」
フォト

入力割り込みか?タイマー割り込みか?を判断して
それぞれの処理をコールします。
ソフトウェア設計で「5)ホールIC入力処理」としておりましたが
単にカウントアップするだけなので、この中でやってます。
分けるのをやめました。
SPDをカウントアップしているところです。
エンジン回転数は、いろいろ処理が必要なので
サブルーチンとして外に出しました。
あと「4)タイマー割り込み処理 」も外だしです。

あ、いろいろと変数の宣言が必要です。
フォト


5)ホールIC入力処理
エンジンの回転数をカウントする処理です。
フォト

パルスは2倍入ってくると思うので
2回に1回カウントするようにします。
E_FLGで判断しています。
あと255つまり1バイトを超えたら
MAX値の255とするようにしています。


1)メイン処理 の初期化部分について
フォト

各レジスタの初期設定をしています。
PORTAとPORTBの設定
タイマーの設定
あと各変数を初期化します。
で最後の割り込みをオンにしてメインループへ。

で、あと「4)タイマー割り込み処理 」だけなんですが・・・
だけなんですが・・・
やっぱりいろいろ検討してみると
割り算を使わないとダメっぽい。
アセンブラで割り算って面倒なんだよねぇ〜
もうちょいここは悩んでみます。