[发明专利]一种可驱动多组RGB灯的MCU及其驱动方法有效
申请号: | 202110992917.4 | 申请日: | 2021-08-27 |
公开(公告)号: | CN113434199B | 公开(公告)日: | 2021-11-23 |
发明(设计)人: | 王春华 | 申请(专利权)人: | 南京沁恒微电子股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/445;H05B45/325 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210012 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 驱动 rgb mcu 及其 方法 | ||
本发明公开了一种可驱动多组RGB灯的MCU及其驱动方法,实现在MCU上对多组RGB灯进行灵活驱动,设置消隐定时器和中断,显示驱动周期结束时触发中断,硬件关闭列引脚输出,消隐定时器开始定时,执行中断用软件加载下一行灯效对应的列引脚驱动信号的PWM波数据;消隐周期结束时硬件同步开启所有PWM模块工作,进入下一轮显示驱动周期。在显示驱动周期和消隐周期,PWM波模块与消隐定时器分别轮流接续工作。充分利用消隐周期加载下一行PWM波数据,解决RGB灯各引脚的同步驱动问题,在完全不影响驱动效果的条件下,还可以更加灵活地配置驱动时间和数据到每一轮扫描中,对缓冲区的大小要求极低,硬件电路更加简单,成本更低。
技术领域
本发明涉及单片机领域,尤其涉及一种可驱动多组RGB灯的MCU及其驱动方法。
背景技术
绚丽多彩的灯效不仅带给用户视觉享受,同时会让产品看起来更酷炫、有科技感,所以现在很多电子产品厂家将此作为一个卖点来提升产品档次。多组RGB灯组合被常用来实现灯效,通过对每一个RGB灯中红、绿、蓝三光的调节达到各种色彩明暗的灯光。
早期通过软件代码驱动多组RGB灯,但这种方式对软件执行时间要求很高,不但要动态改变驱动引脚的PWM占空比,而且要求一个RGB的3端同步驱动,占用CPU资源大,定时间隔也无法保证,导致显示易闪烁且效果差。所以现有常规方式都是由硬件电路实现RGB的扫描驱动功能,但该方法不够灵活,扫描时间固定,需要定义包含全部所有行周期的较大RAM区域来存储扫描数据,通过硬件DMA自动调取数据对应驱动一轮完整的RGB灯,占用空间大、成本高、灵活性差。
发明内容
发明目的:为了解决现有技术中,通过硬件方法实现RGB扫描驱动不够灵活,扫描时间固定,存储空间大的问题,本发明提供一种在MCU上驱动多组RGB灯的方法。
本发明另一目的是提供一种可驱动多组RGB灯的MCU。
技术方案:一种在MCU上驱动多组RGB灯的方法,包括以下步骤:
步骤一、定义消隐定时器,所述消隐定时器用于对消隐周期定时;
步骤二、初始化所有行引脚与列引脚,开启扫描,开启所有PWM模块工作;
步骤三、硬件开启所有列引脚输出,PWM模块同步输出三组PWM波驱动列引脚,进入显示驱动周期;
步骤四、待三组PWM波周期结束时,触发中断,软件执行中断事件,硬件关闭所有列引脚输出,消隐定时器开始定时,进入消隐周期;所述中断事件为:选择另一个GPIO口作为下一个行引脚;执行软件加载指令,将下一行对应的列引脚的PWM波数据传入PWM模块中,中断返回;
步骤五、消隐定时器控制消隐周期结束,开启所有PWM模块工作,返回步骤三。
进一步地,步骤四中,执行软件加载指令的具体方法为:软件加载指令仅包含将源缓冲区中的PWM波数据读取至内部寄存器;同时PWM模块对数据传输进行监测,当在消隐期间监测到有PWM波数据传输时,自动将PWM波数据送入PWM硬件锁存器中,且源缓冲区指针自动增量。
进一步地,步骤四中,所述PWM波数据包括控制亮度、红色、绿色、蓝色四组PWM数据,PWM模块用于分别将控制亮度的PWM数据与控制红色、绿色、蓝色的PWM数据逻辑与计算,形成R、G、B三组PWM波并输出。
进一步地,步骤四中,还包括按键扫描检测,检测行引脚、列引脚上连接的按键是否被按下。
一种可驱动多组RGB灯的MCU,包括:
至少两个行引脚及行引脚驱动电路;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京沁恒微电子股份有限公司,未经南京沁恒微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110992917.4/2.html,转载请声明来源钻瓜专利网。