你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

NUCLEO-F042K6驱动的彩色灯环(WS2812)  

[复制链接]
zoomdy 发布时间:2017-1-21 09:28
本帖最后由 zoomdy 于 2017-1-22 12:24 编辑

运行效果图

运行效果图

运行效果图

面包板接线

面包板接线

面包板接线

材料清单

材料清单

材料清单
NUCLEO-F042K6一块,https://detail.tmall.com/item.htm?id=524897143044
WS2812灯环一个(24盏灯),https://detail.tmall.com/item.htm?id=525645384067
面包板一个,https://detail.tmall.com/item.htm?id=16513870165
我用上述链接购买的,供有需要的同学参考,我与卖家仅有买卖关系。

分享一下我采用的方案
WS2812的时序非常特殊,见下图,没有办法使用标准的外设来驱动,得使用模拟实现。我采用的方案是SPI+DMA,用一个字节的SPI数据来表示WS2812的一位数据,SPI时钟频率调整到6.4M(800K * 8,WS2812的速率要求为800K,SPI每8个位长表示1位WS2812数据),SPI数据0x70(3个1,5个0,符合WS2812低电平的时序要求)表示WS2812的0,SPI数据0x7C(5个1,3个0,符合WS2812高电平的时序要求)表示WS2812的1。一个WS2812需要24位数据,首先将这24位RGB数据转换成24字节的SPI数据,然后使用DMA将24字节SPI数据发出去,这样就可以驱动WS2812了。我这个灯环有24盏LED,那么需要24*24=576字节的SPI缓存,用DMA可以一次性操作。这种方法比较耗内存,但是实现起来比较简单,输出时序一致性非常高。源代码已经上传至OSChina:http://git.oschina.net/zoomdy/BlueSoRing

WS2812时序

WS2812时序



评分

参与人数 1 ST金币 +10 收起 理由
zero99 + 10

查看全部评分

收藏 10 评论26 发布时间:2017-1-21 09:28

举报

26个回答
yanhaijian 回答时间:2017-1-21 10:16:44
加个电机转动。
zoomdy 回答时间:2017-1-21 10:26:53

哈哈,想法不错,不过不用电机的,移动像素位置就旋转了,实际效果就是在旋转的,静态图片看不出来
超級稻草人 回答时间:2017-1-21 10:39:51
有点意思。。
leo121_3006061 回答时间:2017-1-21 11:07:40
谢谢分享
s7631001 回答时间:2017-1-21 11:53:44
板猪做的不错
jackten 回答时间:2017-1-21 12:04:53
厉害厉害                                
草民星空 回答时间:2017-1-21 13:50:46
有圆形灯的原理图吗
zoomdy 回答时间:2017-1-21 19:46:20
草民星空 发表于 2017-1-21 13:50
有圆形灯的原理图吗

你是说PCB原理图吗?没有啊,不过很简单的,就是把多颗WS2812串联起来,参考WS2812数据手册就可以了。
wu1169668869 回答时间:2017-1-21 22:11:45
既然写了,传个代码呗
123下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版