打印
[国产单片机]

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

[复制链接]
375|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 Dick Hou 于 2023-6-17 11:07 编辑

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

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已可提供样片,​可联系闪芯微索取。

使用特权

评论回复

相关帖子

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

本版积分规则

17

主题

219

帖子

4

粉丝