サインボード 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を移動させるクロックパルスを発生させています。 可変抵抗器で移動速度を変えられるようにしています。
今回の回路ではRA=1.2KΩ、RB=3.3KΩ、VR=20kΩ、C=10μFですので、発振周波数は以下のようになります。
上記の値は計算値ですので、実際の回路では抵抗、コンデンサなどの誤差により多少異なります。 電源回路 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を点灯状態にしなければ問題ないと思います。 |