部品屋根性(100) WS2812B、NeoPixel、シリアル制御フルカラーLED

WS2812B_x3units
Joseph Halfmoon

このところ、DS18B20、OST4ML5B32Aと1本の信号線で通信するペリフェラルを動かしてきました。そこにNeoPixel、デバイス的にはWS2812が入ってないのはマズいだろ~。ということで今回はシリアル制御LEDの代表選手、NeoPixelことWS2812Bを動かしてその通信波形を眺めてみたいと思います。

“部品屋根性(100) WS2812B、NeoPixel、シリアル制御フルカラーLED” の続きを読む

MicroPython的午睡(112) ESP32版、heapqで乱雑タプルを昇順にとりだす

heapqScriptEC
Joseph Halfmoon

前回は先入れ先出しが可能なデータ構造 deque を使ってみました。今回は入れる順序には関係なく、入れたデータの大小関係によって取り出しの順番が変わる heapq を使ってみます。まさにヒープソートのアルゴリズムみたいです。端からデータをしまっていけば、取り出すときには大小関係順序通りに取り出せるので便利。ホントか? “MicroPython的午睡(112) ESP32版、heapqで乱雑タプルを昇順にとりだす” の続きを読む

ぐだぐだ低レベルプログラミング(123)ARM64(AArach64)LDNP/STNP

fldnpEC
Joseph Halfmoon

前回はレジスタ・ペアをロード/ストアするLDPとSTP命令を練習しました。今回のLDNP/STNP、「表向きの機能」はLDPとSTPとクリソツです。アドレシングモードが少ないことを除けば見分けがつきません。しかしこの命令の真の機能は無駄にキャッシュラインをアサインしないことにあります。確かめるのはムツカシーです。

“ぐだぐだ低レベルプログラミング(123)ARM64(AArach64)LDNP/STNP” の続きを読む