が、テキサス・インスツルメンツのTLC5940NTを繋げば、5ピンを使ってもっとたくさんのLEDを同時に制御できるらしいです。
Arduino.ccの公式解説
スイッチサイエンス:TLC5940NT
回路図は公式解説に分かりやすいイラストがあるので、それを参考にするといいかも。
こちらでライブラリをインストールし、以下のような感じでコードを書きます。
#include "Tlc5940.h" int time; void setup() { Tlc.init(); // 初期化 } void loop() { time++; pos = time % 16; Tlc.clear(); // Tlcオブジェクトの全チャンネルを0に設定 Tlc.set(pos,4095); Tlc.update(); // PWMの値を同時に更新 delay(25); }
clear()で一度全てのチャンネルを初期化、set()でチャンネルと出力値を設定して、updateで状態を更新しているようです。
これはシリアル通信を制御してシーケンサーとしてMIDI信号と同期させてます。
ICを連結すると、16チャンネル毎にどんどん増やせるらしい、、、けど速度とか電力とかの問題でArduino単体では限度があると思います。
ただ、この動画実は3個連結してあります。公式サイトの通りに回路を組んだんですが、n個ICを連結させ、一個目のICを光らせると何故かn個目のICの出力まで変わってしまう奇妙な現象が発生。色々変えてみたんですが原因分かりません。。。どこか間違えてるのかな。
スイッチサイエンスではLED制御用とうたってますが、普通にPWM出力なんで、サーボ制御とかにも使えるんじゃないかと期待。
0 件のコメント:
コメントを投稿