找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5636|回复: 0
收起左侧

RGB灯颜色的渐变算法

[复制链接]
ID:105323 发表于 2016-2-21 15:43 | 显示全部楼层 |阅读模式
      在血压计项目中,要实现呼吸灯效果,就是让灯在某种颜色下,逐步从暗到亮,然后在逐步变暗直到熄灭。在实际项目中使用了STM32的PWM功能,通过逐步调整驱动信号的占空比来实现这种渐变效果。
       首先假设初始颜色值为RGBi,终止颜色值为RGBe,三色灯的步长分别为STEPr,STEPg,STEPb。
于是
STEPr = (Re-Ri)/4
STEPg = (​Ge-Gi)/4
STEPb = (Be-Bi)/4
那么在中断中每次设置CCR的值为Ri+STEPr×i,每发生一次PWM中断,i的值加1,到Re时,STEPr变为负值,递减到Ri时,熄灭R灯,其它的两个灯以此类推。
         实验效果证明,这种算法效果不错

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表