本篇介紹ESP8266使用NeoPixel庫來驅動IOT Kit板載WS2812彩燈。
1. WS2812彩燈介紹
WS2812是一個集控制電路與發光電路于一體的智能外控LED光源,外型與5050LED燈珠相同,每個燈珠都是一個像素點。像素點內包含數字接口、數據鎖存、信號整形放大驅動電路,還包含高精度的內部振蕩器和12V高壓可編程定電流控制部分。
數據協議采用單線歸零碼的通訊方式,像素點在上電復位以后,DIN端接受從控制器傳輸過來的數據,首先送過來的24bit數據被第一個像素點提取后,送到像素點內部的數據鎖存器,剩余的數據經過內部整形處理電路整形放大后通過DO端口開始轉發輸出給下一個級聯的像素點,每經過一個像素點的傳輸,信號減少24bit。像素點采用自動整形轉發技術,使得該像素點的級聯個數不受信號傳送的限制,僅僅受限信號傳輸速度要求。
時序波形
按照數據傳輸協議即可對WS2812進行驅動,當然對于WS2812有許多開源的驅動庫,下面進行Adafruit_NeoPixel驅動庫的安裝。
2. 安裝驅動庫
在Arduino IDE中點擊「項目」—「加載庫」—「管理庫」,查找Adafruit_NeoPixel庫,選擇最新版本,點擊安裝。
查找庫
在彈出的對話框中選擇Install all,安裝全部的關聯庫。
安裝關聯庫
3. 硬件連接及程序下載
在IOT Kit上,WS2812通過跳線帽連接到ESP8266的GPIO0。
硬件連接
在Arduino IDE中新建sketch,拷貝如下代碼保存并下載到開發板。
/*
* ws2812b
* ESP8266驅動WS2812彩燈
* 板載接口GPIO0
*/
#include
上傳成功后,板載WS2812彩燈將紅綠藍交替顯示。
實驗現象
4.常用庫函數介紹
下面對Adafruit_NeoPixel庫常用函數進行介紹:
-
led
+關注
關注
242文章
23153瀏覽量
658621 -
彩燈
+關注
關注
4文章
65瀏覽量
33652 -
驅動電路
+關注
關注
152文章
1521瀏覽量
108386 -
Arduino
+關注
關注
187文章
6464瀏覽量
186681 -
ESP8266
+關注
關注
50文章
962瀏覽量
44852
發布評論請先 登錄
相關推薦
評論