打印
[单片机资料]

使用WS2812拼板开发游戏(一)——开箱

[复制链接]
883|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tobot|  楼主 | 2022-4-9 19:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

感谢二姨家活动(https://bbs.21ic.com/icview-3200138-1-1.html),用于参加活动还是我最为拿手的WS2812。WS2812实际上可以认为是通过WS2811芯片+5050灯珠实现单线控制全彩LED,它的改进版是WS2812B,二者并无特别差异。关于WS2811的信号时序在不同版本的规格书各有不同,之前已经在论坛上吐槽过了(https://bbs.21ic.com/icview-3200798-1-1.html),这里不再啰嗦。
这次入手的是8*8板,在某宝上可以淘到最便宜的商家:简易包装,无配套手册,无例程(幸好还可以给**),价格就不提了,免得说我打广告。闲话少说,直接开箱(实际只有一个防静电袋),拆开防静电袋,拿出没有接线的板子,如下图:
1、正面
2、背面
前面已经提到,一般来说这种单线控制的灯板,使用的LED灯珠有WS2812和WS2812B两种,这两种灯珠的各项参数基本类似,使用时编写的代码也是通用的,但引脚数量和定义有所区别。
3WS2812BWS2812的外观区别
灯板上可以很清晰看到每个灯珠的引脚是四个,而且背面丝印上写的是WS2812B,基本可以肯定这块板子上所用灯珠就是WS2812B。
在网上找到任意一份WS2812B的手册,都会介绍典型的应用连接方式是彼此串接,如下图所示:
4、典型应用电路
可以看到,对应每颗灯珠,都需要一颗104电容,从板上看,有64颗灯珠,但只使用了56个贴片电容(偷工减料?),实测也是可正常运行的。
为了便于调试,在In侧焊上针脚,间距是2.54mm。在吐槽一句,虽然覆铜板上有孔,但实在太浅基本没法插进去,所以焊的是直针(手残,焊点丑,见笑)。
5、手工焊上输入针脚后的灯板(丑)
根据卖家的介绍,这款灯板是3.3V/5V兼容的,为了测试,拿出某款珍藏开发板(可提供3.3V和5V输出)将64颗灯珠一并点亮,并尝试使用usb功率计测量开发板和灯板的整体功耗。
很容易想象到,灯板的功耗主要是灯珠发光,所以必然与灯珠的颜色有关,实测结果如下表:
表一、颜色和功耗
在表中,各颜色的英文名来自“原色辞典”,其中magenta中文翻译应该是洋红或者品红,而不是我们通常认为的紫色(purple),绿色分量在全值时是青柠(lime),半值时才是绿(green)。
从上表中可以看到,组成颜色的RGB分量数值越大,整体功耗也越大,但各颜色的功耗之间并不存在线性关系。
输入电压越大,功耗越大,也没有明显的线性关系。
另外,灯珠点亮红色(red)时,明显比蓝色(blue)和青柠色(lime)更加耗电。对于不同颜色LED功耗的差异,似乎没有谁分析过,我这里不妨尝试解释一二。
可以在某个5050手册中可以找到:
表二、三色LED电压
在这个说明中,三原色使用不同型号的LED,其中用于显示红色的13CBAUP正向导通电压范围为1.8V~2.2V,而用于显示绿色的13CGAUP正向导通电压范围为3.0V~3.2V,用于显示蓝色10R1MUX正向导通电压范围为3.0V~3.4V。
如之前所述,WS2812(WS2812B)可以认为是WS2811+5050组成。推测为了限流和防止过压烧坏器件,在每个WS2812B器件内部,每个LED上应该串联了一个分压电阻。从正向导通电压的数值推测,红色LED正向压降会比绿色蓝色LED更低(不知道哪位网友有兴趣能找到上述三种型号的LED实测一下),因此在外部电压相同,且流经LED的电流也相同的情况下,红色LED上串联的电阻会分得更高电压,分压大意味着功耗大,如果组成白光的红绿蓝功率相等,那么用于驱动红色LED所用的电流肯定是大于蓝色和绿色的。不知这种解释是否为真,但至少听起来有点道理。
如前文所述,我尝试了使用了来自开发板提供的3.3V和直接从USB输出的5V作为本灯板的Vdd输入,实测的确都能够点亮整块灯板,但效果却大不相同:在使用3.3V供电时,灯板上的显示明显存在色偏。如下(我也不知道为什么照片效果会是这样,但至少颜色可以看出来偏红):
6、使用3.3V点亮白色
7、使用5V点亮白色
8、使用3.3V点亮洋红
9、使用5V点亮洋红
10、使用3.3V点亮黄色
11、使用5V点亮黄色
这个原因,当然可以说是因为使用了不合适电压引起的。在某个WS2812B的datasheet中是有明确说明驱动电压Vdd的要求为+3.5V~+5.3V,也就是说,直接从开发板上引出+3.3V是低于该要求的。如下:
表三、某个WS2812B手册中对电源电压的要求
卖家说这块板子能在3.3V下工作,我们暂且相信他。继续分析色偏现象的原因,猜测可能和我刚才提到的限流电阻有关。
因为没有找到相关资料,大胆假设,WS2812B标准输入电压要求是5V,假设需要点亮LED呈现白色(0xFFFFFF),红、绿、蓝三色LED的电流相同,都是10mA;又假设红色LED导通正向压降为2V,绿色和蓝色LED导通正向压降为3V。
可以简单计算一下对应颜色LED串联的限流电阻值。过程比较简单,略。结果分别是300ohm、200ohm、200ohm。
再假设该限流电阻阻值不因外部供电电压改变而变化,将外部供电降低至3.3V时,继续点亮白色(0xFFFFFF),各LED的正向压降几乎是不变的,仍然为3V、2V、2V,那么通过各色LED的电流重新计算,结果为4.3mA、1.5mA、1.5mA,红色LED上电流的数值明显比蓝色绿色要高一些,意味着会更亮。在低电压下,合成光源的颜色偏红也得到合理的解释了!
         大胆假设、小心求证,以上是参加活动的第一篇(开箱),虽迟但到。欢迎大家关注我!

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

44

主题

3838

帖子

7

粉丝