デバッグする・・・その2
前回の続きに入る前に、回路とプログラムについて…
PICのプログラムを動作させる為には、回路からの入力により、基準になる電圧が入力されなければならない。
実際の回路上で行うスイッチの ON、OFF の場合を考えて見る。
右の図で、RB7への入力電圧がCPUが判断する為の電圧にあたる!
次に、電圧の切り替わりに付いて考える。
RB7には、電源(VCC)の5Vが、プルアップ抵抗を通し供給されているので、常時 Set High の状態となっている。
スイッチをONにすると、抵抗の低い方へ電流は流れる為
RB7の電荷は、OVとなり、Set Low になります。
プログラムは、この電圧の変化を認識する事で動作する。
今回のプログラムは、LEDを点灯、消灯させる為のプログラムです。
プログラムの条件は…
もし、RB7が、5VでSet High(1)なら、RB6は、0V(0)出力
RB7が、0VでSet Low(0)なら、RB6は、5V(1)出力 する、です。
RB7の状態によって、RB6の電圧を切り替えるプログラムです。
LEDはマイナス制御なので、RB6が5Vの時には、電荷が同位になり、電流が流れないので点灯しません。
もし、RB7が、5VでSet High(1)なら、RB6は、0V(0)出力
RB7が、0VでSet Low(0)なら、RB6は、5V(1)出力 する、です。
RB7の状態によって、RB6の電圧を切り替えるプログラムです。
LEDはマイナス制御なので、RB6が5Vの時には、電荷が同位になり、電流が流れないので点灯しません。
よって、今回のプログラムで実際のスイッチ ON、OFF での動作は…
スイッチOFF時、RB7は、5V入力となり、RB6は、0V入力で、LEDは点灯
スイッチONで、RB7は、0V入力となり、RB6は、5V出力で、LEDは消灯する。
つまり…
LEDは、常時点灯(SW:OFF)で、スイッチONで消灯するプログラムになります。
スイッチOFF時、RB7は、5V入力となり、RB6は、0V入力で、LEDは点灯
スイッチONで、RB7は、0V入力となり、RB6は、5V出力で、LEDは消灯する。
つまり…
LEDは、常時点灯(SW:OFF)で、スイッチONで消灯するプログラムになります。
では、ここから前回からの続きです。
PORTBを選択し、左側の
「Add SFR」をクリック。
「Format」 のところが「Hex」 になっているので、「Binary」を選択して
「OK」をクリック
2進表記に変わりました。
一番左からRB7、RB6 を表しています。
この数字が1か0に変わる事で電圧が切り替わるのを見る事が出来ます。