NodeMCU : WS2812 RGB Led Kontrolü

Merhaba Arkadaşlar,

Bu uygulamada sizlere WS2812 Adreslenebilir RGB ledin nasıl kontrol edileceğini anlatacağım.
Öncelikle daha önceki NodeMCU notlarımı okuyup LUA için WS2812 modülünü açıp BIN dosyasını ESP8266 ya yüklemelisiniz.

NodeMCU : LUA ile Program yazmak (LED blink)

Gerekli yüklemeleri ESP8266 ya yaptıktan sonra LUA için WS2812 lib kullanacağız. Bu lib de bize gerekli bütün komutlar mevcuttur. Tek renk gönderme, buffer gönderme gibi.

Komutları:

  • ws2812.init()
  • ws2812.write()
  • ws2812.newBuffer()
  • ws2812.buffer:set()
  • ws2812.buffer:size()
  • ws2812.buffer:fill()
  • ws2812.buffer:dump()
  • ws2812.buffer:replace()
  • ws2812.buffer:mix()
  • ws2812.buffer:power()
  • ws2812.buffer:fade()
  • ws2812.buffer:shift()
  • ws2812.buffer:sub()
  • ws2812.buffer:__concat()

Kaynak: https://nodemcu-build.com

İlk önce ayarları yapmak için

ws2812.init()

kullanılır. Daha sonra elimizdeki ledlerin sayısına ve rengine göre buffer oluşturulur.

buffer = ws2812.newBuffer(12, 3)

Buffer ayarlandıktan sonra  sonra göndermek istediğimiz led indexi ve 3 renkli rgb kodu ile birlikte buffer a set edilir.

buffer:set(10, {0, 0, 255})

daha sonra elde edilen buffer gönderilir.

ws2812.write(buffer)

Komutları incelerseniz buffer işlemi içinde full doldur, fade, kaydır efektleri gibi bir çok komutu göreceksiniz. deneyip uygulayabilirsiniz.

Ben size kendi örneği olan iz bırakma şeklinde kaydırma örneğini vereceğim. Ben piyasada satılan halka şekilde olan 12 ledli ürün üzerinden örneği yapacağım.

Bir başka uygulamada görüşmek üzere,
Kolay gelsin…

Bir Cevap Yazın