本文來(lái)源電子發(fā)燒友社區(qū),作者:HonestQiao, 帖子地址:https://bbs.elecfans.com/jishu_2287630_1_1.html
流水燈效果(開發(fā)板體驗(yàn)視頻,詳見作者原文鏈接)
賽昉科技昉·星光RISC-V單板計(jì)算機(jī)上,為我們提供了40Pin接口,其中就要SPI接口。
今天的實(shí)例分享,就是使用SPI來(lái)驅(qū)動(dòng)WS2812B炫彩燈珠。
WS2812B是個(gè)好東西,在很多場(chǎng)合,都能使用。
節(jié)假日,有很多地方,也用到了上面這種炫彩燈帶裝點(diǎn)氣氛。
另外,還有下面這種點(diǎn)陣炫彩燈板:
作為技術(shù)宅男,情人節(jié)or七夕做一個(gè),保準(zhǔn)抱得美人夜歸!
另外,在很多開發(fā)板上,也提供了一顆WS2812B燈珠,方便測(cè)試使用:
除了上面的單顆、點(diǎn)陣、條帶等,還能根據(jù)自己需要,給整成各種各樣的形狀。
因?yàn)椋举|(zhì)上,都是有一顆顆小燈珠給連起來(lái)的:
可以單顆使用,也可以上千顆使用。
今天不玩復(fù)雜的,就先分享,驅(qū)動(dòng)WS2812B燈板上的單顆燈珠(第一顆)的方法。
首先,請(qǐng)參考官方文檔,啟用SPI:
啟用成功后,登錄系統(tǒng),執(zhí)行命令 ls -lh /dev/spi*,就能看到/dev/spidev0.0:
然后設(shè)置/dev/spidev0.0可被普通用戶使用:
WS2812B的電源,需要單獨(dú)的5V供電,不要使用40Pin的接口,輸出電流有限制,避免產(chǎn)生副作用。
我使用的是用USB接口接了一個(gè)USB2TTL,把其中的電源+給WS2812B燈板供電。
參考官方文檔,后,具體的連線如下:
連好后如下:
然后,就可以使用python進(jìn)行編程,通過(guò)spi控制WS2812B燈珠了。
首先,需要安裝spidev:
安裝后spidev后,我們就在python中,通過(guò)spidev控制WS2812B了。
其次,通過(guò)網(wǎng)上眾多的WS2812B資料,了解到,要控制一顆燈珠,需要發(fā)送24bits的數(shù)據(jù),每8bits為一組,分別用于控制GRB三種顏色。
而控制設(shè)備發(fā)送數(shù)據(jù)的時(shí)候,通常需要發(fā)送24bytes,具體如下:
第一行,WS2812B自身的控制器收到后,每byte會(huì)解析為0或者1,以上0x80解析為0,0xf8解析為1,最終為8bits:00000001,表示G的亮度為0x01。
如果第一行,全部為0xf8,則最終為11111111,表示G的亮度為0xff,也就是255。
如果第一行,全部為0x80,則最終為00000000,表示G的亮度為0x00,也就是0,熄滅。
以上的0x80和0xf8為經(jīng)驗(yàn)數(shù)值,大家可以查看網(wǎng)上的資料了解。
除了發(fā)送的數(shù)據(jù),SPI還需要設(shè)置發(fā)送的速度,經(jīng)驗(yàn)值為6.4MHz,也就是6400000。
最終的代碼如下:
上面的代碼,重點(diǎn)只有下面三條:
- spidev.SpiDev():實(shí)例化一個(gè)spidev設(shè)備
- spi.open(0, 0):打開/dev/spi0.0
- spi.xfer(ledArray, speed_hz):以指定的速率發(fā)送需要的數(shù)據(jù)
然后,就是交替發(fā)送[0,0,0]和[1,0,0]來(lái)控制第一顆燈珠GRB,從而形成亮滅效果了。
在發(fā)送數(shù)據(jù)的定義數(shù)組中:
前面說(shuō)了,可以通過(guò)設(shè)置0x80和0xf8,來(lái)控制G的亮度。
同樣的,還可以設(shè)置第二行、第三行,來(lái)控制GRB三中顏色的力度,從而達(dá)到炫彩的目的。
具體的顏色數(shù)目:255 * 255 * 255 = 16581375,160多萬(wàn),真得很炫彩。
以上展示的,是控制第一顆燈珠,需要24bytes的數(shù)據(jù);而發(fā)送2組24bytes數(shù)據(jù),就可以控制兩顆;以此類推,要控制更多的,就發(fā)送24倍數(shù)組bytes了。
附帶的視頻,就是控制了64顆,形成了簡(jiǎn)單流水燈的效果。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
RISC-V
+關(guān)注
關(guān)注
45文章
2292瀏覽量
46198 -
賽昉科技
+關(guān)注
關(guān)注
3文章
154瀏覽量
14296
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
賽昉科技亮相世界互聯(lián)網(wǎng)大會(huì),精彩呈現(xiàn)RISC-V創(chuàng)新成果
豐富的RISC-V創(chuàng)新成果,包括昉·驚鴻-7110(JH-7110)RISC-V應(yīng)用處理器,昉·星光2(VisionFive2)
預(yù)售啟動(dòng)!昉·星光 2 AI套件正式發(fā)布,基于RISC-V構(gòu)建AI算力
10月24日,昉·星光2(VisionFive2)AI套件正式開啟預(yù)售。該套件由中國(guó)RISC-V軟硬件生態(tài)領(lǐng)導(dǎo)者賽昉科技攜手邊緣人工智能(A
Ubuntu現(xiàn)已適配RISC-V單板計(jì)算機(jī)Milk-V Mars
近期,Canonical宣布優(yōu)化的Ubuntu24.04鏡像已可用于RISC-V單板計(jì)算機(jī)Milk-VMars。Milk-VMars由深圳市群芯閃耀科技有限公司(Milk-V)設(shè)計(jì)并推出,搭載
信用卡大小的 RISC-V 單板計(jì)算機(jī)介紹
信用卡大小的 RISC-V 單板計(jì)算機(jī) —— Mars
Mars 由深圳市群芯閃耀科技有限公司(Milk-V)設(shè)計(jì)并推出,搭載賽昉科技
發(fā)表于 04-12 16:39
賽昉科技為RISC-V人才培育賦能
中國(guó)RISC-V軟硬件生態(tài)領(lǐng)導(dǎo)者,賽昉科技受邀在峰會(huì)發(fā)表主題演講,并正式加入RISC-V國(guó)際人才培養(yǎng)認(rèn)證中心。賽
賽昉科技VisionFive 2生態(tài)進(jìn)展雙周報(bào)(2.1-2.29)
Image for VisionFive 2)
社區(qū)開發(fā)者發(fā)布4篇【昉·星光 2高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】系列文章,內(nèi)容包括:為Ubuntu安裝Docker及常用軟件;以容器
發(fā)表于 02-29 15:45
RISC-V智能化網(wǎng)絡(luò)解決方案|賽昉科技昉·星光 2成功運(yùn)行OpenWrt
。近期,賽昉科技在昉·星光2(VisionFive2)RISC-V單板計(jì)算機(jī)上成功運(yùn)行OpenW
【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】以容器的方式安裝 HomeAssistant
【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】以容器的方式安裝 HomeAssistant
下載并啟動(dòng)容器
HomeAssisatant 官方并沒(méi)有提供基于
發(fā)表于 02-21 18:07
【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】為 Ubuntu 安裝 Docker 及常用軟件
【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】為 Ubuntu 安裝 Docker 及常用軟件
目的
為了更好的利用星光2,決定使用容器
發(fā)表于 02-21 17:54
【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】VisionFive2開箱+安裝Ubuntu
【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】VisionFive2開箱+安裝Ubuntu
前言
很感謝賽
發(fā)表于 02-21 17:49
昉·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(三) - SSH連接
昉·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(三) - SSH連接 一、官方資料 RISC-V官網(wǎng): [https://rvspace.org]
昉·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(二) - 系統(tǒng)環(huán)境
昉·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(二) - 系統(tǒng)環(huán)境 一、官方資料 RISC-V官網(wǎng): [https://rvspace.org]
昉·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(一) - 開箱
昉·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(一) - 開箱 一、開箱 昉·星光2( VisionFi
【昉·星光 2 高性能RISC-V單板計(jì)算機(jī)試用體驗(yàn)】開箱及裝載Debian系統(tǒng)
上周收到了昉·星光 2高性能RISC-V單板計(jì)算機(jī)開發(fā)板,在此非常感謝賽昉科技提供的
發(fā)表于 01-24 00:32
評(píng)論