目次>6章 第3ステップ(実用品)

PICテストボード(スイッチ,LED) (PIC16F84Aなど)

更新日2006.10.21

PIC16F84A用の簡単なテストボードを作成します。

入力は、スイッチ3つ、出力はLED8個の簡単なものですが、PIC16F84Aの他にPIC16F819PIC16F88など でもそのまま使えます。
ですので、PIC16F88を初めて使う時の動作確認などでも役に立つと思います。

回路
回路図は以下の通りです。

RA2〜4はスイッチを接続します。
RA2〜4の入力は、通常ON(Hレベル)になっており、スイッチを押すとOFF(Lレベル)になります。

PORTBは、LEDを8本接続しています。
680Ωの抵抗8本は集合抵抗を使いました。

16ピンのICと同じ形をしており、写真の下のピンから上のピンの間に1本づつ抵抗が入っています。

組み立て
ユニバーサルボードを使って組みました。

表面 (当然ですが、PICはICソケットで取り付けます)

裏面 (上の写真とは左右が逆)

サンプルプログラム
このテストボードだけでも色々な動作確認ができます。

いくつかの機能を組み込んだサンプルプログラムをこちらに載せておきます。(PIC16F84A用)

このサンプルプログラムの動作は以下の表の通りです。
説明では、RA2のスイッチをSW1、同様にRA3はSW2、RA4はSW3としています。

スイッチ動 作
電源投入時RB0のLEDを0.5秒間隔で点滅。RB7のLEDを点灯。
SW1SW1を押す毎にLEDを1つづつ右から左に点灯移動させる。
SW2SW2を1回押すと、8個のLEDを2進数として100mS毎に+1した結果を表示する。
もう一度押すと全てのLEDを消灯する。
SW3SW3を1回押すと、LEDを1つを100mS毎に右から左に点灯移動する。
もう一度押すと、その時ONだったLEDを徐々に暗く〜徐々に明るくを繰り返す。

このプログラムで使っているPICの機能,テクニック(と言うほどでもありませんが)
TMR0割込み
スイッチのチャタリングキャンセル
プログラムによるPWM機能の実現(LEDの明るさを変える)
減算を加算命令で実現(負の値を足す)