找回密码
 立即注册

QQ登录

只需一步,快速开始

点击进入授权页面

只需一步,快速开始

  • QQ空间
  • 回复
  • 收藏

参加活动: 0

组织活动: 0

该用户从未签到

zhaicool 新手上路 2017-10-12 10:28 楼主
10金币
本帖最后由 zhaicool 于 2017-10-12 11:18 编辑

如何用arduino同时点亮大量的灯带,比如100米长的WS2812灯带。我用arduino pro mini 一个针脚一次性只能操作灯带上的255颗灯,再多就操作不了了。
如果arduino不行的话有没有其他方案?比如树莓派什么的。我觉得arduino应该可以,毕竟都能做3d打印机。
最好是可以用电脑直接点亮,哈哈哈,我觉得应该可行,只是对电脑的串口什么的根本不了解。


我有个思路不知道可不可行,就是把灯带闪亮效果的颜色数值写入数据库,这样arduino就不用计算灯带是怎么亮的,只要负责从数据库中读颜色数据就行,然后根据读的数据点亮对应的灯。但是因为灯带太长,灯太多,所以颜色数值占据的空间太大,基本得几十kb,这样数据传输上就会有问题,会导致灯带闪烁卡顿。


就是这种效果
QQ图片20171012111822.png

你提到的“我用arduino pro mini 一个针脚一次性只能操作灯带上的255颗灯,再多就操作不了了。” 这个限制是什么意思? WS2811 都是在 400K/800K 这样的频率下操作的,我觉得不会有问题啊?你碰到的是多了之后会闪烁还是什么?
打赏作者鼓励一下!
2812可以512或者1024以上的级联吧?  或者ARDUINO有那么多脚,随便弄几个出来也够用了~
打赏一点,努力一点
Zoologist 发表于 2017-10-12 11:12
你提到的“我用arduino pro mini 一个针脚一次性只能操作灯带上的255颗灯,再多就操作不了了。” 这个限制 ...

就是点不亮 我写的for循环 当i大于255之后 前255颗都亮  后面的就点不亮了
sun910231 发表于 2017-10-12 11:15
2812可以512或者1024以上的级联吧?  或者ARDUINO有那么多脚,随便弄几个出来也够用了~ ...

难道是我代码错误?我的感觉就是arduino内存不够 处理不过来。。。
zhaicool 发表于 2017-10-12 11:20
就是点不亮 我写的for循环 当i大于255之后 前255颗都亮  后面的就点不亮了

你这么一说还真可能是库的问题,有可能设计的时候没有考虑这么多的情况,或者是哪个变量误用了 byte

不过应该不是内存限制导致的问题。

要不你就拆成2个,一个控制 256个LED
打赏作者鼓励一下!
Zoologist 发表于 2017-10-12 12:07
你这么一说还真可能是库的问题,有可能设计的时候没有考虑这么多的情况,或者是哪个变量误用了 byte

不 ...

只能考虑拆  但是灯带数量太多了 工作量不小啊

这种大规模的该怎么实现啊 是不是arduino不适合
你只要在中间拆开一下就好了啊,

不需要把所有的都拆开
打赏作者鼓励一下!
声明多个strip对象,然后每个对象对应arduino不同的引脚,灯带每256个一组不就可以了,那样以arduino十多个引脚可以控制好多了
typ 发表于 2017-10-13 13:17
声明多个strip对象,然后每个对象对应arduino不同的引脚,灯带每256个一组不就可以了,那样以arduino十多个 ...

原则上可以 但是架不住灯带太多 需要很多个arduino板子拼凑出一个完整的效果 那么这几个arduino之间则需要交互  交互的话 就需要相互传递数据 我可能是在通信这一环节上的代码不过关

实际上就是想用灯带做一个大型的光立方 能力支撑不起这个想法。。。
12下一页
发新帖
发表评论
高级模式  
您需要登录后才可以回帖 登录 | 立即注册  
关闭

推荐主题 上一条 /2 下一条