ホーム > 家族のギャラリー > PIC電子工作 > LEDフラッシャ

2008.5.4
2010.12.28追記

4ピン で LED 10個を制御するフラッシャ

8ピン PIC12F675の4ピンで10個のLEDを点灯させるフラッシャの実験。 元ネタは、microchip社のアプリケーションノート TB029 Complementary LED Drive(PDF) です。

主要部品は、PIC12F67510バーLEDアレイ、いずれも秋月で120円。PIC12F675はIOピンが6ピンあるが、一つは入力専用なので出力に使えるのは5ピン。

アプリケーションノートにあるように5ピン使うと20個のLEDを点灯できるが、今回はLEDアレイが10バー1個なので4ピン使用。4ピンでも最大12個のLEDを繋げられる。

少ないピンで多数のLEDを点灯させる原理は、点灯させたいLEDが繋がるピンのI/O属性のみを「出力」にし、他は「入力」にしてしまうこと。同時には1個のLEDしか点灯できない

LEDフラッシャ回路図 ブレッドボード上のフラッシャ

回路はアプリケーションノートのまま。プログラムはコレ。無保証です。

プログラムはアプリケーションノートにあるようにI/O属性の設定と、出力ピンをHighにすることで特定の1つのLEDを点灯させる。さらに、それをダイナミック点灯させ、残像現象で同時に複数のLEDが光っているように見せている

実験なのでフラッシャのパターンは簡単なもの。以下、4パターンとバイナリカウンタの繰り返し。

10個のLEDのダイナミック点灯なのでデューティ比は10%になる。回路図の抵抗をもう少し小さくして輝度を上げたほうがよいかも。

以下、動画です。

入力ピンが残っているので、スイッチで表示を切り替えたりできる。入出力ピンも1ピン余っているので何か他のものを制御することも可能。そのうち、何かに組み込みたい。


2010.12.28

本ページを見て頂いた方とメールでやり取りし、フラッシャの左右の流れ制御と、スピード制御ができるようにしたものを作ってみました。

スピード制御は、可変抵抗で分圧した電圧をPIC12F675のA/D変換で測定して、電圧値に応じてLED点灯のウェイト時間を変えて制御しています。電圧が0Vに近い(約0.2V以下)時には、フラッシュを停止。また、A/D変換を使うためにピンアサインが上記の回路と違います。

LEDフラッシャ回路図(クリックで拡大)

プログラムはコレです。無保証です。

以上


from Metal Woods(c) 2008,2010