ホールICの数値をはかるためのプログラム

24Mar - by Joe-90 - 0 - In HOPE2020 Maker Faire HOゲージ制御

ホールICの数値をはかるためのプログラムを書きました。
なぜこのプログラムを作ったかというと、僕の使っているマイコンは8Bitマイコンなので、マイコンの入力端子に接続したとき、入力信号が2進数の8Bitとなってしまいます。なので、8番ピンがHIになると、
( 1 0 0 0 0 0 0 0 )←(2進数)
つまり、
( 128×1 ) + ( 64×0 ) + ( 32×0 ) + ( 16×0 ) + ( 8×0 ) + ( 4×0 ) + ( 2×0 ) +( 1×0 ) = 128
よって、128という信号が入力されてしまうのです。
これをいちいち計算するのは大変なので、信号が入力すると数値が簡単にわかるようなプログラムを作りました。

HOLEICの数値をはかるためのプログラム

以下がそのプログラムです。

HOLEICTST.TXT

10 DEFIN%=0
20 OUT $E3,$82
30 EOIN%=IN($E1)
40 IF EOIN%=DEFIN% GOTO 30
50 PRINT EOIN%
60 DEFIN%=EOIN%
70 GOTO 30
プログラム説明

注:このプログラムはすべてCopy&Pasteが可能です。
嫌なのであれば ’> が書いてある行だけを消して使ってください。

10 DEFIN%=0
'>変数"DEFIN%"を0にする
20 OUT $E3,$82
'>PPIポートからの入出力を設定(A・Cポートは出力、Bポートは入力) 
30 EOIN%=IN($E1) 
'>変数"EOIN%"をBポートからの入力にする
40 IF EOIN%=DEFIN% GOTO 30
'>もし変数"EOIN%"が変数"DEFIN%"ならば、行番号30に移動
50 PRINT EOIN% 
'>変数"EOIN%"をプリント
60 DEFIN%=EOIN%
'>変数"DEFIN%"を変数"EOIN%"にする
70 GOTO 30
'>行番号30に移動
変数名

DEFIN%:文字をプリントするときに何度も読み取られるので、それを防止するための変数
EOIN%:Bポートからの入力

◀ 前のページへ戻る

◀ 未来の投稿過去の投稿▶