FCMSZ 发表于 2023-6-19 14:59

最简WS2812类似RGB灯条驱动方法

本帖最后由 FCMSZ 于 2023-6-19 15:03 编辑

目前RGB彩灯用途非常广泛,从玩具类、键鼠的背光、绿化景观​到大厦外墙灯光等,都有应用。RGB彩灯内部由一颗驱动芯片+RGB LED构成,再由这样的彩灯串联构成灯条,由更多的灯条组成矩阵,从而由点至线再至面,达成​各种绚丽的效果。
https://bbs.21ic.com/data/attachment/forum/202306/17/105445x44awrzpp0n8e6in.png.thumb.jpgLED灯的驱动IC一般采用单线、归零码协议。​其数据格式的基础是0码、1码和RESET码,如下图所示:
https://bbs.21ic.com/data/attachment/forum/202306/17/105453cvof3kw74ztzrrrw.png.thumb.jpg驱动IC接收以上述格式码组成的RGB数据,​用来驱动LED灯以及进行转发。
https://bbs.21ic.com/data/attachment/forum/202306/17/105504ivftjfgk2v00jtt8.png.thumb.jpgMCU在驱动此种类型的灯条时,​一般采用以下三种方式:

优劣
MCU+CPLD
CPLD并行处理,支持更多的灯条条数
成本高

PWM
成本低
* 软件复杂* ROM占用大

SPI成本低
​* 软件复杂* ROM占用大* MCU的SPI资源紧张
注:ROM占用大的原因是RGB的1位,在MCU使用PWM或SPI时,至少占用4bit以上的空间​。由上表可见,三种方式都不是最优​。
为了提高MCU驱动RGB灯条的效率、降低成本,闪芯微自主设计了RGB灯条驱动接口(LLSI),其​主要特征如下:

[*]7个LLSI通道(可驱动7个LED灯条),带空闲极性控制
[*]每个LLSI通道包含4级深度的发送FIFO
[*]可配置的数据周期和编码
[*]可配置的复位宽度
[*]可配置的空间电平
[*]支持RGB、GRB、RGBW、GRBW数据格式
[*]支持自由数据格式(可兼容未来任何协议!)
[*]支持自动发送附加数据(例如增益控制等)
[*]支持DMA
[*]节省FLASH空间

有了上述特点的加持,使得闪芯微的MCU在不增加外部器件的情况下,轻松驱动最多2048*7​=14K个RGB LED!并且软件的开发极其简单,也不加重MCU的​程序负担。

需要了解哪些MCU集成了LLSI接口,以及各型号MCU的资源情况,可至闪芯微官网​:http://www.flashchip.com.cn/fcm32f0xx.html ​。目前这一系列新的FCM32 MCU已可提供样片,​可联系闪芯微索取。

Diyer123 发表于 2023-6-19 23:23

带这个接口的几个型号,官网貌似还没有datasheet、例程、开发板放出来?

Dick Hou 发表于 2023-6-20 09:52

Diyer123 发表于 2023-6-19 23:23
带这个接口的几个型号,官网貌似还没有datasheet、例程、开发板放出来?

从F072开始带LLSI,都有放规格,除了F096。
(F096因为带HUB原因,暂时不开放规格,可申请。)

IC在7月份会批量上市,即可提供开发板。
现在也可以申请测试版的开发板。

coody 发表于 2023-6-21 10:51

灯数不多、刷新不很快的,普通MCU就可以了。
我用2812做得最多的是音乐电平指示,2x72灯(因为买的一串灯调144个灯)。

Dick Hou 发表于 2023-6-25 09:34

coody 发表于 2023-6-21 10:51
灯数不多、刷新不很快的,普通MCU就可以了。
我用2812做得最多的是音乐电平指示,2x72灯(因为买的一串灯调 ...

没错,简单点的,肯定普通MCU能直接驱动,否则没有这个接口之前类似的灯条是怎么用起来的?

这个专用接口主要有2个好处:
驱动更多数目的灯条
提高效率,减轻MCU负担

就像SPI、IIC、UART等,IO也可以模拟,但不如硬件接口方便。

coody 发表于 2023-6-25 20:07

最简单的就是IO驱动。我做了大量的音频电平条,就用2812.

Dick Hou 发表于 2023-6-26 10:14

好吧,大哥,感觉我俩对“简单”的理解不一样。

您大概指的是硬件的简单吧,只用IO口,确实什么MCU都具备这个条件。如果从这个维度来说,SPI、IIC、UART等也都是软件可以实现的,甚至在AVR上,连USB都实现了,但我们不能凭软件实现USB,就说明比硬件USB来得简单,对吧?
页: [1]
查看完整版本: 最简WS2812类似RGB灯条驱动方法