7セグメントLEDを点灯するプログラム。
今回から、7セグメントLEDを点灯するプログラムを書きます。
まず、7セグメントLED表示器の各セグメントを点灯させるために、ポートBに書き込む値を決めます。前回で7セグメント表示器をポートBに下のように接続しました。
これを表にして、ポートBに書き込む値を決めたのが下の図です。
一行目と二行目は、セグメントとPORTBのビットとの対応です。
左側に、点灯する数字と点灯するセグメントの対応を書きました。
その右側に対応するビットのH(1)L(0)を書き、これがポートBに設定する2進数の値となります。
一番右側が、ポートBに設定する2進数の値を16進数に変換したものです。
例;
1を表示する場合は、ビット7とビット1に1をセット、他は0をセットすればよいので、”0b 1000 0010" となり、16進数では0x82となります。
もし、単独でDPを点灯したいなら、0x01 を書き込み、数字と一緒に点灯したいなら、数字の設定値に1を加えて(1.にしたいなら0x82に1足して0x83)書き込めばよい。
下が、7セグメントLED表示器の点灯プログラムです、LEDチカチカのプログラムを少し書き換えて作成しました、基本的には同じことなのです。
LEDチカチカプログラムからの変更は、ポートAは使わないので、0x00を指定、7セグメントLED表示器の数字の変化が分かりやすいように、待ち時間を長くしました、
ポートBに設定した0x76と0xFFは、5と8.を交互に表示します。
PICに焼いて、動作させてみました。
上手くいきましたが、プログラムは簡単でした、次回は、プログラムを変えて、数字を1から順番に9へ、そして、0を表示し、元に戻って、同じ表示を繰り返すプログラムを作りたいと思います、今回は、ここまでです。