部品屋根性(97) OST4ML5B32A、シリアル制御カラーLED、Neopixelと違う

Joseph Halfmoon

シリアル通信で数珠繋ぎに制御できるフルカラーLEDといえばNeoPixelが有名です。今回実験してみるOST4ML5B32AというフルカラーLEDもシリアルで数珠繋ぎ制御できるのですがNeoPixelとは決定的に違います。OST4ML5B32Aは1本の信号線に中間電位を含めた3値を「載せて」通信。波形が気になる一品。

※「部品屋根性」投稿順Indexはこちら

OST4ML5B32A

Adafruit社のNeoPixelといえば1本の信号線に数珠繋ぎにLEDを接続して発色を制御できるので用途が広い製品群です。デバイスとしてはWS2812という型番のデバイスみたいです。WS2812のシリアル通信は、0と1を表現するのにパルス幅で規定してます。またRESETコードもありです。

一方、今回実験してみるOST4M5B32Aは、トポロジカルにはNeoPixelと同様の数珠繋ぎなシリアル接続が可能なのですが、0と1の規定は過激っす。

    • ハイ、VDD電圧
    • ロー、0V
    • 通信してないとき、VDD/2

デジタル信号といっても3値論理です。複数の電位を使いわけるのはLCDパネルの制御などではフツーですが、マイコンで制御する「シリアル」通信としては異色の存在かもしれません。Optosupply社(香港)のホームページが以下に。

https://www.optosupply.com/

よゐこは「デジタル入力端子」に中間電位をダラダラかけ続けるのは貫通電流ヤバイんじゃね、と思うに違いありません。また「デジタル出力端子」で中間電位を作るには2本の信号を「ぶつけて」作り出す必要もあります。ぶつけたときに流れる電流、どんだけ?

規定はちょっち過激ではあるものの、動いております。毎度お世話になっております、秋月電子通商殿の通販ページが以下に。

マイコン内蔵RGBLED 5mm OST4ML5B32A (10個入)

LED1個をArduino接続

今回は、まずはお試しということで、上記の秋月電子通商殿のページに置かれているサンプルプログラム(Arduino用)をそのまま使わせていただくことにいたしました。とりあえず接続するLEDは1個だけ。やはりこういうときには、

Arduino UNO機

が業界標準。サンプルプログラムをそのまま書き込めば一撃で動作するハズ。

Arduino UNOとの接続回路は以下のとおり、「3値」信号を作り出すためにPin2とPin3を抵抗を介してですがショートさせています。やっぱりちょっと過激。OST4ML5B32_ARDUINO

 

LED点灯確認

さて、Arduino UNO機とブレッドボード上に配置したOST4ML5B32Aが以下に。テストパターン的にはフルカラーLEDを3原色いれかわり点灯させてます。以下写真では青点灯みたいです。OST4ML5B32A_ArduinoUno

気になる通信波形を観察したものが以下に。確かに中間電位がデフォで、1と0のときにパルスが出ております。OST4ML5B32A_waveform

ちょっと気になるのは頭に0が出ているところ。サンプルプログラムのコード的には頭から1111と4発「1」が出てよさそうなんだが。なぜに?

部品屋根性(96) RTL-SDRドングル入手、Tokyo FM受信まで1撃じゃね へ戻る

部品屋根性(98) DS18B20 デジタルサーモメータ。1-Wireプロトコル信号観察 へ進む