关于使用gd32f303cc来驱动ws2812,但灯珠数太多,内存不够,不能驱动后面的灯珠

[复制链接]
1640|10
 楼主| arosyyy 发表于 2022-10-9 09:45 | 显示全部楼层 |阅读模式
通过pwm+dma的方式去驱动ws2812,但芯片内存不够,dma的基地址的内存有uint16_t,不够控制后面的灯珠,听我导师说可以用dma的包发送方法,使一个包一个包这样发送,但是这操作我听都没听过,在网上也找不到方法,请各位大佬指教一下。
andygirl 发表于 2022-10-11 20:35 | 显示全部楼层
内存不够?跟控制灯珠有联系么
tpgf 发表于 2022-11-1 08:55 | 显示全部楼层
我看过实际的灯珠连接 但是没有详细了解 但是感觉并不是一个芯片来控制的
aoyi 发表于 2022-11-1 09:33 | 显示全部楼层
请问在硬件上是如何连接的呢  难道是一个引脚控制一个ws2812吗
nawu 发表于 2022-11-1 10:07 | 显示全部楼层
我觉得楼主完全可以更改一下算法 因为每一篇ws2812的原理都一样所以写一个函数来回调用就可以了
zljiu 发表于 2022-11-1 10:21 | 显示全部楼层
可以想象如果数量过多的话  光是计数用的变量就得需要不老少的
gwsan 发表于 2022-11-1 10:39 | 显示全部楼层
如果内存都不够用了的话  那么首先纯硬件引脚肯定也已经不够用了
tfqi 发表于 2022-11-1 11:23 | 显示全部楼层
WS2812/2811只需一根信号线就能控制灯带上所有led。多个灯带间可以通过串联轻松延长。在30hz的刷新频率下一个信号线能够控制至多500个led
Pretext 发表于 2022-11-1 18:25 | 显示全部楼层
我觉得一个灯珠3个字节,你这是有多少个灯珠才会内存不够?
朝生 发表于 2022-11-1 18:26 | 显示全部楼层
你怕是对DMA有什么误解吧。。。
Undshing 发表于 2022-11-6 22:12 | 显示全部楼层
这个可以用专门的驱动芯片吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

13

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部