目次PIC回路集サインボード 2


サインボード 2 回路説明




サインボードLED制御回路


CPLDにラッチレジスタ機能を作り、LEDの点灯状態を保持するようにしています。
PICからは7ビット(縦一列分)の点灯データが出力されます。また、列の指定データをRAポートに出力し、16列の特定な列を指定しています。
データのラッチはRA4に出力するクロック信号の立ち下がりで行うようにしています。
112個のLEDをラッチするためにXC9572-PC84を2個使用しています。

RA4は他のRAポートと違い、外部にプルアップ抵抗器を付ける必要があります。





周囲LED制御回路






文字等を表示するLEDの周囲には飾りのLEDを配置しています。
XC9536-PC44で5進カウンタを構成し、OSCからのクロック信号でLEDの表示位置を移動するようにしています。
PICのRB7のレベルでLEDの移動方向が変わるようにしています。
RIGHTをLレベルにすると左回転になります。
XC9500シリーズのCPLDは一つのピンに24mAまでの電流を流すことができます。ですから、一つのピンで2つのLEDを制御するようにしています。LEDの数は50個ですので、5進カウンタの出力を5組設け、一組で2つのLEDを制御すると丁度良い数になります。
左のアニメーションは約200ミリ秒周期のクロック信号を使用した場合に相当します。







クロック発振器回路



この発振器では周囲のLEDを移動させるクロックパルスを発生させています。
可変抵抗器で移動速度を変えられるようにしています。

発振器の周波数は以下の式で計算することができます。

f:出力周波数(Hz)
RA:抵抗器(Ω)
RB:抵抗器(Ω)
VR:可変抵抗器(Ω)
C:コンデンサ(F)




今回の回路ではRA=1.2KΩ、RB=3.3KΩ、VR=20kΩ、C=10μFですので、発振周波数は以下のようになります。
・VR=0Ωの場合
f=1.49 / (( RA + 2(RB+VR) ) x C )

=1.49 / (( 1.2 x 103 + 2 ( 3.3 x 103 ) x 10 x 10-6 )

=1.49 / 0.078

= 19.1 Hz (周期:約52ミリ秒)
5カウントに約260ミリ秒を要します。


・VR=20KΩの場合
f=1.49 / (( RA + 2(RB+VR) ) x C )

=1.49 / (( 1.2 x 103 + 2 ( 3.3 x 103 + 20 x 103 ) x 10 x 10-6 )

=1.49 / 0.478

= 3.1 Hz (周期:約323ミリ秒)
5カウントに約1.6ミリ秒を要します。

上記の値は計算値ですので、実際の回路では抵抗、コンデンサなどの誤差により多少異なります。








電源回路


CPLDの端子にかけられる電圧は5Vまでです。ですから、LEDの点灯電圧も5Vにする必要があります。
1つのLEDの電流が10mAの場合、全てのLEDが点灯すると約1.2Aの電流が流れます。
今回の装置では電源をコンパクトにするためにACアダプタを使用することにしました。12V/1A(12Wタイプ)が安価に入手できたので、内部で5Vの電圧に変換しています。シリーズレギュレータを使用するとかなりの熱が出るので、スイッチングレギュレータで5Vに変換しています。
PICおよびCPLDへの電源には2次フィルタを使用して、脈流の軽減を図っています。
このスイッチングレギュレータは「+5V スイッチング・レギュレータ(1)」で紹介している回路です。
LM2575の最大電流は1Aです。LEDが全て点灯すると1A以上の電流になりますが、長時間全てのLEDを点灯状態にしなければ問題ないと思います。