前々回、数珠繋ぎにできるシリアル制御フルカラーLED(インタフェースはNeoPixelとは違うケド)ということで実験したOST4M5B32Aですが、「数珠繋ぎ」にできるといいつつ1個だけでした。別シリーズでTinyGo言語で制御してみた回も同じっす。「数珠繋ぎ」してないじゃん、ということで今回はそこんトコロだけ。
※「部品屋根性」投稿順Indexはこちら
1線式のインタフェース
前回は1線式「バス」の代表選手「1-Wire」でした。1本の線に多数のデバイスを接続し、それぞれ独立した制御を行うためにプロトコルは結構複雑。その上、信号線から電源を得て動作するなど電気的にもちょっと過激でした。
一方、前々回のOST4ML5B32AフルカラーLEDは、多数のデバイスを1本のシリアル線にデイジーチェーン接続。上流から下流へと発光データが流れていきます。似たような方式としてはNeoPixelが有名ですが、そちらはあくまで「ピュア・デジタル」です。電気的にヤバイ感じはまったくいたしませぬ。一方、OST4ML5B32Aの方は、過激な3値論理っす。0V、VDD以外に電位としてはVDD/2も使うと。かなりヤバイ奴です。
前々回記事は以下に。
部品屋根性(97) OST4ML5B32A、シリアル制御カラーLED、Neopixelと違う
上記ではArduino UNO R3用の「スケッチ」サンプルプログラムを走らせてました。
別シリーズ記事が以下に。
GoにいればGoに従え(23) TinyGo、シリアル接続LED、micro:bit v2
TinyGo
上記ではTinyGo用のプログラムを自前作成して micro:bit v2機 で動かしてました。
しかし、どちらの記事も、OST4M5B32Aは1個でした。数珠繋ぎに制御できるといいながらやってなかったです。
再実験用の回路
TinyGoベースのテストプログラムを使って、micro:bit v2 ホストで再実験しました。数珠繋ぎといってもちんまりと3個だけですが。まあ、赤、青、緑の3原色で光らせることはできる筈。
現物の様子
別シリーズ記事で、すでにオブジェクトコードが microbit:v2機には書き込まれています。ソフトウエアに何の変更を加えなくても、物理的にLEDを接続していくだけで、上流から下流へとデータが流れていくので、電源が許す限りの個数のデバイスを接続可能なハズ。こんな感じ。
目の前の現物みると、もっと色味が綺麗に、赤、青、緑で点灯しているのだけれど、写真だとイマイチだね。。。