寝台急行はまなす

札幌駅 22:00発 増結12両編成 青森行き

micropythonでneopixel

qiita.com

 

MicroPython Advent Calender 6日目です。

 

今日はneopixelのLEDリングを光らせます。

 

 

micro:bitでやろうと思ったのですが、どっかいってしまったのでESP32で行いました。

 

11. Controlling NeoPixels — MicroPython 1.9.3 documentation

 

チュートリアルに沿ってまずREPLで動かしてみます。

 

>>> from machine import Pin
>>> from neopixel import NeoPixel
>>> np = NeoPixel(Pin(5), 20)
>>> np[0] = (255, 0, 0)
>>> np[1] = (0, 128, 0)
>>> np[2] = (64, 0, 0)
>>>
>>> np.write()

 

写真のように赤と緑が出ました。

 

チュートリアルにはbppパラメータでRGBWのカラースケールが指定できることが

書かれています。

 

>>> from machine import Pin
>>> from neopixel import NeoPixel
>>>
>>> np = NeoPixel(Pin(5), 20, bpp=4)
>>>
>>> np[0] = (255, 0, 0, 128)
>>> np[1] = (0, 255, 0, 128)
>>> np[2] = (0, 0, 255, 128)
>>>
>>> np.write()

 

ちょっとカラフルになりました。

 

1日目で紹介したオライリー本に記載のコードを動かすと1枚目の写真のようになります。

randomモジュールで色のRGBを指定してくるくると回りながらLEDが光りました。

 

これからの季節、クリスマスツリーの装飾とかにいいですね!

 

gist777af058d1d68ad02395b9c804057f9d