找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 877|回復(fù): 8
打印 上一主題 下一主題
收起左側(cè)

請(qǐng)教一種程序?qū)崿F(xiàn)方法的問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:891876 發(fā)表于 2024-11-20 09:31 | 只看該作者 回帖獎(jiǎng)勵(lì) |正序?yàn)g覽 |閱讀模式

看見(jiàn)大神們制作的ws2812燈板流光溢彩,光效多變!本人也想仿制,目的是利用此學(xué)習(xí)編程!
請(qǐng)教的問(wèn)題如下:一條ws2812燈條共60珠,用SPI+DMA+1個(gè)IO控制,分6段、每組10顆ws2812,在此請(qǐng)教編程思路,萬(wàn)分感謝!

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

9#
ID:891876 發(fā)表于 2024-11-20 19:52 | 只看該作者
本帖最后由 芙蓉焊料 于 2024-11-21 07:58 編輯
Y_G_G 發(fā)表于 2024-11-20 16:14
你要先去看一下WS2812的規(guī)格書,不要直接就下手
5#已經(jīng)說(shuō)明白了,這個(gè)芯片是一定要從第一傳遞數(shù)據(jù)過(guò)去的,沒(méi) ...

現(xiàn)在不會(huì)寫各種燈效的函數(shù)


13-UART1-SPI-DMA發(fā)送-直接驅(qū)動(dòng)WS2812彩燈.rar

270.47 KB, 下載次數(shù): 0

STC32

回復(fù)

使用道具 舉報(bào)

8#
ID:891876 發(fā)表于 2024-11-20 19:11 | 只看該作者
Y_G_G 發(fā)表于 2024-11-20 16:14
你要先去看一下WS2812的規(guī)格書,不要直接就下手
5#已經(jīng)說(shuō)明白了,這個(gè)芯片是一定要從第一傳遞數(shù)據(jù)過(guò)去的,沒(méi) ...

已經(jīng)可以點(diǎn)亮簡(jiǎn)單流水燈了,但函數(shù)亂七八糟一大堆,不知咋弄
回復(fù)

使用道具 舉報(bào)

7#
ID:401564 發(fā)表于 2024-11-20 16:14 | 只看該作者
你要先去看一下WS2812的規(guī)格書,不要直接就下手
5#已經(jīng)說(shuō)明白了,這個(gè)芯片是一定要從第一傳遞數(shù)據(jù)過(guò)去的,沒(méi)有分什么段這個(gè)說(shuō)法了
比如,第只要這第二個(gè)燈,那么,你就要寫先寫第一個(gè)燈亮度是三個(gè)燈色都是0,然后再寫第2燈亮度
最終的效果就是只這第2個(gè)燈了
學(xué)習(xí)這個(gè)東西,要一步一步來(lái),先按照自己的想法去點(diǎn)幾個(gè)燈,換幾個(gè)顏色,只要知道是基本原理,后面的花樣其實(shí)就是代碼量大了點(diǎn)而已,并沒(méi)有太大的難度
回復(fù)

使用道具 舉報(bào)

6#
ID:69038 發(fā)表于 2024-11-20 15:44 | 只看該作者
芙蓉焊料 發(fā)表于 2024-11-20 11:53
一個(gè)二維數(shù)組話,又如何分段調(diào)用顏色裝載函數(shù)和spi發(fā)字節(jié)函數(shù)呢?

不存在分段的,一串燈珠多少個(gè),你必需全串每珠都要發(fā)一次,比如60珠,就要發(fā)60*3=180Byte,即使某一刻,某珠、某色的值不改變,也要原樣發(fā)出去,而且是順序發(fā)出,從第一珠,第二珠,,,,第60珠,這樣才能有效果。
發(fā)數(shù)據(jù)時(shí),強(qiáng)制把二維數(shù)組的指針轉(zhuǎn)為一維數(shù)組指針,就可以了。
回復(fù)

使用道具 舉報(bào)

5#
ID:21455 發(fā)表于 2024-11-20 15:39 | 只看該作者
文檔:docs.keysking/docs/stm32/example

視頻:https://space.bilibili.com/6100925


Author:波特律動(dòng) | Keysking | 波哥在學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

地板
ID:961114 發(fā)表于 2024-11-20 14:18 | 只看該作者
WS2812 煙花燈
晚上的效果還是杠杠嘀!
Ai8051U, 燈光控制板,
PWM-DMA 直接驅(qū)動(dòng) WS2812
回復(fù)

使用道具 舉報(bào)

板凳
ID:891876 發(fā)表于 2024-11-20 11:53 | 只看該作者
zhuls 發(fā)表于 2024-11-20 11:11
定義一個(gè)二維數(shù)組:
u8 ws_buf[60][3];
前一個(gè)60 就是燈珠地址,后一個(gè)3就每個(gè)燈珠的3基色值。。

一個(gè)二維數(shù)組話,又如何分段調(diào)用顏色裝載函數(shù)和spi發(fā)字節(jié)函數(shù)呢?
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:69038 發(fā)表于 2024-11-20 11:11 | 只看該作者
定義一個(gè)二維數(shù)組:
u8 ws_buf[60][3];
前一個(gè)60 就是燈珠地址,后一個(gè)3就每個(gè)燈珠的3基色值。。
或定義一個(gè)180個(gè)成員的數(shù)組:

u8 ws_buf[180];
依次是第一珠的G、第一珠的R、第一珠的B ,第二珠的G、第二珠的R、第二珠的B,,,,,
ws2812順序不是RGB,而是GRB,在寫代碼是多注意一下哈。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表