ArduinoでFull Color LED Arrayを試す

 
 

秋月で「高輝度10ポイントRGB LEDアレイ」が発売になりました。

これまでLEDを10個並べたLEDアレイはありましたが、新しく発売されたものは一つのLEDの中にRGB3原色のLEDをいれたものです。10個あるLEDの色を自由に設定することができます。例えば、オーディオのレベルメータなどの応用が考えられます。


面白そうなデバイスなので、早速入手してArduinoで試してみました。


1.LEDの構造

LEDが10x3のマトリックスになっています。カソードが共通につながっている、「コモン」型です。ダイナミック点灯が前提です。

色によってLEDの特性が異なるため、色ごとに電流制限抵抗の値を調整する必要があります。このため、電流制限抵抗はカソード側に入れて、アノード側を順番に切換えて表示する必要があります。



2.配線

カソード側(1、2、3番ピン)に電流制限抵抗をいれました。アノード側はArduinoにそのままつなぎます。

Arduino側は全部ソフトで制御しますので、取り回しの楽なように最も近いピンつなぎました。配線図は省略しますが、以下のようにつないでいます。

電流制限抵抗も全部470Ωを使っていますが、色ごとに調整した方が良いでしょう。特に青が暗いようでした。





3.プログラム

7segduinoのライブラリを流用して、ライブラリ化しました。以下のリンクからラウンロードできます。


ライブラリダウンロード:FullColorLEDArray.zip


基本的な使い方

・ピン番号を引数にしてFCLAのインスタンスを作成

・setSeg(セグメントNO, R, G, B)でセグメントの色を決定

・定期的にupdate()またはupdateWithDelay()メソッドを呼び出す


4.サンプルプログラム


サンプルプログラムもライブラリに同梱しています。


/*

  Full Color LED Array drive test 1


  2011/07/15 morecat_lab

 

*/


#include <FCLA.h>


FCLA myFCLA = FCLA(11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 14, 15, 16);


void setup()

{

  myFCLA.begin();

}



void loop()

{

  myFCLA.setSeg(0, 0 ,  0,  0);

  myFCLA.setSeg(1, 15,  0,  0);

  myFCLA.setSeg(2, 0 ,  15, 0);

  myFCLA.setSeg(3, 15,  15, 0);

  myFCLA.setSeg(4, 0 ,  0,  15);

  myFCLA.setSeg(5, 15,  0,  15);

  myFCLA.setSeg(6, 0 ,  15, 15);

  myFCLA.setSeg(7, 15,  15, 15);


  myFCLA.updateWithDelay(500);

}



プログラム8行目のFCLAの初期化パラメータは、上記の配線に対応しています。

配線を変更した場合には、変更が必要になります。



5.応用

色で数値を表すことで、カラーコードの表示器や時計を作れます。

次の写真は抵抗のカラーコードにあわせて色を表示してみたものです。茶色(1)、赤(2)、オレンジ(3)の区別が難しいので、実用には向かない気がしました。。。






(続く)

 

2011年7月18日月曜日

Full Color LED Array

 
 
Made on a Mac

次へ >

< 前ヘ