色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【晶心科技ADP-Corvette-T1開發(fā)板試用體驗(yàn)】使用Arduino的SPI庫,直接驅(qū)動(dòng)WS2812B炫彩點(diǎn)陣板

開發(fā)板試用精選 ? 來源:開發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-11-11 11:31 ? 次閱讀

本文來源電子發(fā)燒友社區(qū),作者:HonestQiao, 帖子地址:https://bbs.elecfans.com/jishu_2287848_1_1.html

效果演示(開發(fā)板體驗(yàn)視頻,詳見作者原帖子文章)

昨天我在 DFRobot Beetle ESP32-C3開發(fā)板開發(fā)板上,成功用 Adafruit NeoPixel 擴(kuò)展庫,驅(qū)動(dòng)了WS2812B炫彩點(diǎn)陣。具體可見文章:Arduino編程控制WS2812B炫彩LED既然ADP-Corvette-T1開發(fā)板也能用Arduino,那應(yīng)該可以把類似的程序,按照ADP-Corvette-T1開發(fā)板的Arduino支持,使用Adafruit NeoPixel 擴(kuò)展庫來驅(qū)動(dòng)WS2812B。

說干就干,先在Adafruit NeoPixel 擴(kuò)展庫的Arduino開發(fā)環(huán)境中,安裝Adafruit NeoPixel 擴(kuò)展庫,方法如下:
poYBAGKv8u6AMKDtAAMzO4CEeRM505.png


安裝完成后,開發(fā)板選擇ADP-Corvette-T1,然后點(diǎn)擊編譯。
沒想到,杯具的事情發(fā)生了,錯(cuò)誤提示:Adafruit NeoPixel 擴(kuò)展庫不支持該開發(fā)板。
不甘心,這么通用的WS2812B,一定要辦法驅(qū)動(dòng)起來。

仔細(xì)看了 ADP-Corvette-T1 的官方資料,了解到如下信息:
poYBAGKv9EmAKbE0AAAxnuWe8AA802.png

在開發(fā)板上,提供了SPI數(shù)據(jù)傳輸接口,而WS2812B真是使用SPI來驅(qū)動(dòng)的。

詳細(xì)查看板子的定義:
pYYBAGKv8u-AW9_UAAthN4ClyXU969.png

IO11可復(fù)用為SPI/MOSI,剛好可以用作WS2812B的數(shù)據(jù)控制。

參考開頭提供的文章,最終具體的連線如下:
poYBAGKv8vGABASGABPHxQlDoa4637.png


具體的實(shí)物連線如下:
pYYBAGKv8vSAH9plAFdgibYwXs858.jpeg


直接使用SPI底層設(shè)備來驅(qū)動(dòng),需要使用到Arduino官方的SPI庫,其官方網(wǎng)址為:SPI - Arduino Reference

而在此之前,我還分享過另外一篇控制WS2812B的文章:Debian-StarFive下的SPI驅(qū)動(dòng)WS2812B炫彩燈珠,在該篇文章中,就詳細(xì)的說明了,想要控制,應(yīng)該如何發(fā)送數(shù)據(jù)。
在上面的這篇分享中,控制的是單顆LED燈珠。在ADP-Corvette-T1開發(fā)板上,這次我們要控制8*8點(diǎn)陣共64顆LED燈珠。

通過對(duì)Arduino官方的SPI庫資料的學(xué)習(xí),最終完成了演示代碼,實(shí)現(xiàn)了流水燈的效果。
在該演示代碼中,同時(shí)包括:
1. 串口調(diào)試輸出
2. 板載LED控制
3. SPI控制WS2812B

具體代碼文件:
?ADP-Corvette-T1_SPI_WS2812B.zip(1.32 KB, 下載次數(shù): 3 )

代碼展示:
pYYBAGKv9i6AKVVvABecAPWHWHQ412.png


上述代碼的具體說明:
1. 全局定義:
1). 使用SPI.h,確定使用SPI庫
2). 定義燈珠、引腳信息
3). 定義要發(fā)送的數(shù)據(jù)信息;關(guān)于其具體的定義,可以查看Debian-StarFive下的SPI驅(qū)動(dòng)WS2812B炫彩燈珠
4). 定義當(dāng)前要點(diǎn)亮的燈珠
5. 定義lgiht_n函數(shù),表示通過SPI發(fā)送控制數(shù)據(jù),當(dāng)前燈珠發(fā)送點(diǎn)亮數(shù)據(jù),其他的發(fā)送熄滅數(shù)據(jù);具體顏色,根據(jù)i值取余取前面定義的顏色。

2. 啟動(dòng)設(shè)置部分:setup()
1). 設(shè)置串口速度
2). 設(shè)置D13為輸出,用于控制板載的LED3(在板子背面)
3). 定義SPI的傳送參數(shù);具體的參數(shù)說明,后面詳細(xì)的說。

3. 循環(huán)部分:loop()
1). 串口輸出當(dāng)前要點(diǎn)亮的LED燈珠
2). 根據(jù)當(dāng)前要點(diǎn)亮的燈珠序號(hào)取2的余,來亮滅LED3
3). 點(diǎn)亮指定的LED燈珠
4). 延時(shí)
5). 指向下一刻燈珠;如果達(dá)到最大,則從頭開始。

在上面的代碼中,SPI參數(shù)設(shè)置部分,尤為重要。
要設(shè)置SPI參數(shù),有兩種辦法:
1). SPI.setClockDivider():相對(duì)于系統(tǒng)時(shí)鐘設(shè)置SPI時(shí)鐘分頻器。
關(guān)于分頻器的基本知識(shí),我在定時(shí)器使用基礎(chǔ):使用系統(tǒng)時(shí)基定時(shí)器和基本定時(shí)器閃爍LED分享中,有講過。
因?yàn)?ADP-Corvette-T1開發(fā)板 的最高頻率為 96MHz,我們找一個(gè)接近 6.4MHz的分頻。
分頻器可以使用的系統(tǒng)定義為:
SPI_CLOCK_DIV2,SPI_CLOCK_DIV4,SPI_CLOCK_DIV8, SPI_CLOCK_DIV16,SPI_CLOCK_DIV32,SPI_CLOCK_DIV64,SPI_CLOCK_DIV128
在其中,16分之一接近6.4MHz,所以這里可以使用SPI_CLOCK_DIV16。
在該方式下,其他的參數(shù)使用默認(rèn)值即可。

2). SPI.beginTransaction()
通過傳入SPISettings()獲取的定義參數(shù)來初始化SPI設(shè)備;
SPISettings()具體定義為:SPISettings(speedMaximum,dataOrder,dataMode)
其中:
speedMaximum:表示時(shí)鐘
dataOrder:表示數(shù)據(jù)發(fā)送優(yōu)先順序,MSBFIRST表示高位優(yōu)先,LSBFIRST表示低位優(yōu)先。
dataMode:表示SPI的四種操作模式:
2.1) 模式0:默認(rèn)值,時(shí)鐘通常為低電平(CPOL = 0),數(shù)據(jù)在從低電平到高電平(前沿)(CPHA = 0)的轉(zhuǎn)換時(shí)采樣。
2.2)模式1時(shí)鐘通常為低電平(CPOL = 0),數(shù)據(jù)在從高電平到低電平(后沿)(CPHA = 1)的轉(zhuǎn)換時(shí)采樣。
2.3)模式2時(shí)鐘通常為高電平(CPOL = 1),數(shù)據(jù)在從高電平到低電平(前沿)(CPHA = 0)的轉(zhuǎn)換時(shí)采樣。
2.4)模式3時(shí)鐘通常為高電平(CPOL = 1),數(shù)據(jù)在從低電平到高電平(后沿)(CPHA = 1)的轉(zhuǎn)換時(shí)采樣。

演示代碼中,具體傳入的為:SPISettings(6400000, MSBFIRST, SPI_MODE0),表示時(shí)鐘為6.4MHz對(duì)應(yīng)值,高位優(yōu)先,操作模式為默認(rèn)值。

編寫好代碼后,編譯下載,就能運(yùn)行起來:
poYBAGKv8vmAd57DAAqRTwFNl78041.png

打開串口,Ardunio的串口工監(jiān)視器,就能看到串口輸出的信息,會(huì)顯示當(dāng)前要點(diǎn)亮的燈珠;
把板子翻過來,可以看到背后的LED3在狂閃,因?yàn)榇a中設(shè)置的delay為100毫秒,1秒得有10次。
再看WS2812B炫彩8*8點(diǎn)陣,燈珠按順序點(diǎn)亮并熄滅。
具體效果,如視頻所示。

如在前兩篇分享的控制WS2812B的文章中所說,你可以根據(jù)自己的需要,讓這塊WS2812B炫彩8*8點(diǎn)陣呈現(xiàn)出更復(fù)雜的效果,行動(dòng)起來吧!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 晶心科技
    +關(guān)注

    關(guān)注

    0

    文章

    105

    瀏覽量

    18294
  • 開發(fā)板試用
    +關(guān)注

    關(guān)注

    3

    文章

    301

    瀏覽量

    2203
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    有獎(jiǎng)試用!!RA-Eco-RA4M2-100PIN-V1.0開發(fā)板試用活動(dòng)報(bào)名

    RA-Eco-RA4M2-100PIN-V1.0開發(fā)板試用活動(dòng)
    的頭像 發(fā)表于 03-13 12:10 ?73次閱讀
    有獎(jiǎng)<b class='flag-5'>試用</b>!!RA-Eco-RA4M2-100PIN-V1.0<b class='flag-5'>開發(fā)板</b><b class='flag-5'>試用</b>活動(dòng)報(bào)名

    零知開源——使用 GPIO 模擬時(shí)序驅(qū)動(dòng) WS2812B LED 燈帶

    的控制。這種技術(shù)允許我們避開專用驅(qū)動(dòng)直接與硬件進(jìn)行交互,理解并掌握 WS2812B 的通信機(jī)制。 一、工具原料 電腦、Windows系統(tǒng) 零知增強(qiáng)版
    的頭像 發(fā)表于 02-20 15:43 ?337次閱讀
    零知開源——使用 GPIO 模擬時(shí)序<b class='flag-5'>驅(qū)動(dòng)</b> <b class='flag-5'>WS2812B</b> LED 燈帶

    零知開源——使用 GPIO 模擬時(shí)序驅(qū)動(dòng) WS2812B LED 燈帶

    WS2812B LED 燈帶的信號(hào)傳輸時(shí)序,從而實(shí)現(xiàn)對(duì)單色或多彩 LED 燈帶的控制。這種技術(shù)允許我們避開專用驅(qū)動(dòng)直接與硬件進(jìn)行交互,理解并掌握
    發(fā)表于 02-20 14:31

    零知開源——玩轉(zhuǎn)WS2812B燈條模塊

    DELAYVAL 500 // 定義延遲時(shí)間(單位:毫秒),用于在不同效果之間的暫停時(shí)間 /* * 注意:該使用SPI1進(jìn)行數(shù)據(jù)傳輸 * 將WS2812B的數(shù)據(jù)信號(hào)輸入引腳連接到
    發(fā)表于 02-19 17:25

    零知開源——玩轉(zhuǎn)WS2812B燈條模塊

    WS2812RGB燈帶 ????? 通過零知標(biāo)準(zhǔn)開發(fā)板平臺(tái)上驅(qū)動(dòng)WS2812RGB燈珠,包括WS2812B的供電電壓、接線和代碼實(shí)現(xiàn)。通過創(chuàng)
    的頭像 發(fā)表于 02-19 15:09 ?456次閱讀
    零知開源——玩轉(zhuǎn)<b class='flag-5'>WS2812B</b>燈條模塊

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南Linux中通用SPI設(shè)備驅(qū)動(dòng)

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南Linux中通用SPI設(shè)備驅(qū)動(dòng)
    的頭像 發(fā)表于 01-23 11:02 ?2042次閱讀
    迅為RK3568<b class='flag-5'>開發(fā)板</b><b class='flag-5'>驅(qū)動(dòng)</b>指南Linux中通用<b class='flag-5'>SPI</b>設(shè)備<b class='flag-5'>驅(qū)動(dòng)</b>

    迅為RK3568開發(fā)板SPI驅(qū)動(dòng)指南-mcp2515驅(qū)動(dòng)編寫:讀寄存器函數(shù)

    迅為RK3568開發(fā)板SPI驅(qū)動(dòng)指南-mcp2515驅(qū)動(dòng)編寫:讀寄存器函數(shù)
    的頭像 發(fā)表于 01-20 14:43 ?540次閱讀
    迅為RK3568<b class='flag-5'>開發(fā)板</b><b class='flag-5'>SPI</b><b class='flag-5'>驅(qū)動(dòng)</b>指南-mcp2515<b class='flag-5'>驅(qū)動(dòng)</b>編寫:讀寄存器函數(shù)

    【敏矽微ME32G070開發(fā)板免費(fèi)體驗(yàn)】點(diǎn)亮WS2812B

    0001 1001 0000 0000 0000 1100]驅(qū)動(dòng)方式 目前關(guān)于WS2812B大概有三種驅(qū)動(dòng)方法: 1)GPIO配合機(jī)器空周期直接
    發(fā)表于 01-07 23:58

    有獎(jiǎng)丨米爾 全志T536開發(fā)板免費(fèi)試用

    米爾與全志合作發(fā)布的新品基于全志T536應(yīng)用處理器的MYD-LT536-GK開發(fā)板免費(fèi)試用活動(dòng)來啦~~米爾提供了3塊價(jià)值750元的MYD-LT536-GK開發(fā)板發(fā)起
    的頭像 發(fā)表于 12-26 08:05 ?428次閱讀
    有獎(jiǎng)丨米爾 全志<b class='flag-5'>T</b>536<b class='flag-5'>開發(fā)板</b>免費(fèi)<b class='flag-5'>試用</b>

    基于瑞薩FPB-RA4E2智能床頭燈項(xiàng)目——1編譯環(huán)境搭建與點(diǎn)亮驅(qū)動(dòng)ws2812全彩LED

    (FSP_SUCCESS== err); sci_spi_extended_cfg_tsci_spi_extended_cfg_t1; WS2812B
    發(fā)表于 11-22 21:34

    追加名額丨米爾瑞芯微RK3576開發(fā)板有獎(jiǎng)試用

    米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3576應(yīng)用處理器的MYD-LR3576開發(fā)板免費(fèi)試用活動(dòng)加碼啦~~米爾追加了2塊價(jià)值849元的MYD-LR3576開發(fā)板發(fā)起試用活動(dòng)您不僅可以
    的頭像 發(fā)表于 11-22 01:00 ?362次閱讀
    追加名額丨米爾瑞芯微RK3576<b class='flag-5'>開發(fā)板</b>有獎(jiǎng)<b class='flag-5'>試用</b>

    【RA8D1試用活動(dòng)】RA8D1B-CPKCOR開發(fā)板移植linux

    【RA8D1試用活動(dòng)】RA8D1B-CPKCOR開發(fā)板移植linux
    的頭像 發(fā)表于 11-16 01:02 ?434次閱讀
    【RA8D<b class='flag-5'>1</b><b class='flag-5'>試用</b>活動(dòng)】RA8D<b class='flag-5'>1B</b>-CPKCOR<b class='flag-5'>開發(fā)板</b>移植linux

    Andes科技推出QiLai系統(tǒng)芯片和Voyager開發(fā)板

    高效能低功耗32/64位RISC-V處理器核心領(lǐng)導(dǎo)供貨商暨RISC-V國際協(xié)會(huì)創(chuàng)始首席會(huì)員Andes 科技(TWSE:6533)今日宣布推出QiLai (奇萊)系統(tǒng)芯片(SoC)和Voyager開發(fā)板,以進(jìn)一步加速大規(guī)模RI
    的頭像 發(fā)表于 07-26 10:46 ?832次閱讀

    在AvaotaA1全志T527開發(fā)板驅(qū)動(dòng)WS2812 RGB LCD

    在 Avaota SBC 的開發(fā)板中,通常會(huì)有幾個(gè) WS2812 RGB LED 燈。例如 Avaota A1 的如下位置: 對(duì)于 AvaotaOS,提供了硬件的 LEDC(Light
    發(fā)表于 07-22 10:45

    STM32F030 MDA+PWM驅(qū)動(dòng)ws2812b,起始的50US的低電平是怎么產(chǎn)生?

    STM32F030 MDA+PWM 驅(qū)動(dòng) ws2812b,起始的50US的低電平怎么產(chǎn)生? 現(xiàn)在dma+pwm,倒是可以產(chǎn)生一個(gè)800K hz的驅(qū)動(dòng)數(shù)據(jù),但是WS2812要求有50US
    發(fā)表于 04-12 07:23
    主站蜘蛛池模板: 日本午夜福利无码高清 | 东京热无码中文字幕av专区 | 欧美一区二区三区男同 | 国产成人一区二区三中文 | 100国产精品人妻无码 | z0000性欧美| 国产精品18久久久久久白浆. | 国产欧美日韩综合精品一区二区 | 亚洲中文字幕欧美自拍一区 | 三级全黄的视频在线观看 | 久久国产视频网站 | 台湾佬休闲中性娱乐网 | 中国hdxxxx医院护士 | 国产在线视频在线观看 | 少妇连续高潮抽搐痉挛昏厥 | 亚洲一卡二卡三卡四卡无卡麻豆 | 91区国产福利在线观看午夜 | 亚洲精品无码午夜福利在线观看 | 秋霞成人午夜鲁丝一区二区三区 | 日韩欧美国产免费看清风阁 | 使劲别停好大好深好爽动态图 | YELLOW视频直播在线观看 | 日本zljzljzlj精品 | 亚洲国产在线综合018 | 边做边爱免费视频播放 | 欧式午夜理伦三级在线观看 | 亚洲中文字幕在线第六区 | 无颜之月5集全免费看无删除 | 99re热精品视频国产免费 | 日韩亚洲视频一区二区三区 | 中文字幕网站在线观看 | 琪琪see色原网站在线观看 | 人妻少妇69式99偷拍 | 国产日韩精品一区二区在线观看 | caoporn 在线视频 | 亚洲免费福利在线视频 | 波多野结衣的AV一区二区三区 | 亲爱的妈妈6韩国电影免费观看 | RUNAWAY韩国动漫免费官网版 | 羞羞漫画免费漫画页面在线看漫画秋蝉 | 久久亚洲这里只有精品18 |