WS2812B驅動實現之PWM+DMA |
發布時間:2022-03-30 10:22:03 |
1、模板工程 不管是(shi)在(zai)GD官方(fang)的驅(qu)動庫程(cheng)(cheng)(cheng)序(GD32L23x_Firmware_Library_V1.0.0),還是(shi)對應的開(kai)發板(ban)(ban)資源包(GD32L23x_Demo_Suites_V1.1.0)中,都提供了(le)基(ji)(ji)(ji)(ji)礎GD32L233x系列的基(ji)(ji)(ji)(ji)礎工(gong)程(cheng)(cheng)(cheng)和各個(ge)外(wai)設的基(ji)(ji)(ji)(ji)礎例程(cheng)(cheng)(cheng),方(fang)便熟悉、驗證我們需要(yao)使用(yong)到的外(wai)設功能(neng)、基(ji)(ji)(ji)(ji)于開(kai)發板(ban)(ban)的程(cheng)(cheng)(cheng)序,可以(yi)讓(rang)我們快速(su)的上手,以(yi)最快的速(su)度投入開(kai)發; 參(can)照官(guan)方(fang)的(de)提供的(de)KEIL模板工(gong)程,重(zhong)新(xin)新(xin)建立(li)了(le)一個適用于(yu)自(zi)己的(de)通用工(gong)程模板,基于(yu)開發板的(de)硬件原理圖,將LED、KEY和USART0這幾個外(wai)設進行了(le)配置,添加了(le)自(zi)編(bian)的(de)TASK任(ren)務調度程序;為了(le)方(fang)便(bian)調試,基于(yu)USART0實(shi)現了(le)Letter-shell的(de)移(yi)植和應用,示(shi)意圖如(ru)下所(suo)示(shi):
程序編譯無誤后(hou),下(xia)載到開發板,復位并運行;通(tong)過CH340的USB接口,結(jie)合(he)電(dian)腦終端(duan)軟件(jian),開發板上電(dian)后(hou)打印如下(xia)所示的信息,并且4個LED燈(deng)間隔(ge)閃爍(shuo),按(an)下(xia)和(he)抬(tai)起按(an)鍵都會有相應的狀態(tai)信息輸出:
2、實現(xian)功能 在(zai)GD32L233C-START模(mo)板(ban)工程的(de)基(ji)礎上實現通過GPIO來驅(qu)動(dong)WS2812B燈帶,顯示炫(xuan)彩的(de)效果。 WS2812B的(de)控制時序圖和(he)邏輯如下圖所示(shi),具體的(de)可(ke)以參考第(di)5小節的(de)數據(ju)手冊(ce):
|