基本的に、USB経由でデータをマイクロコントローラーに送信するだけで、マイクロプロセッサーがデータをデコードし、5Vで動作するLEDライトストリップを駆動します。仕事に適したマイクロコントローラを見つけるのに苦労しています。
マイクロコントローラーは、USB通信用に2つのシリアル入力ポート、LEDストリップとの通信用に2つのシリアル出力ポートを備え、5Vで動作できる必要があります。シリアルCOMポートを設定するだけでUSB通信専用のICを用意する必要がないようです。
たとえば、LPD8806ストリップにバイトを書き込むArduinoコードのスニペットは次のとおりです。
void write8(uint8_t d) {
for (uint8_t i=0; i<8; i++) {
if (d & _BV(7-i))
digitalWrite(dataPin, HIGH);
else
digitalWrite(dataPin, LOW);
digitalWrite(clockPin, HIGH);
digitalWrite(clockPin, LOW);
}
}
データをラッチするには、ストリップにゼロを送信します。