1、程序实现上应该不难,假设用3个8位变量来调节这三个灯,理想上可以得到256单色灰度效果。但通常能做到16等级灰度,也能看到一定效果。
2、这三个PWM周期相同,占空比不同,亮度就各有不同。
3、确保单片机管脚输出1时(100%,或单独调节满刻度),三个LED灯的驱动电流均达到饱和。并且合成色为白色。且根据最佳观测距离,选择相应视角的灯管。并考虑其安装位置。
4、若为256等级灰度,总共有2^24个组合渐变。且渐变过程还有更多组合。建议16等级实现先。
5、三个for循环,逐个调节PWMR、PWMG、PWMB参量。在定时器的最小定时管理单元中逐个判断,是否达到翻转调节。并控制各LED的亮灭。
【以上纯属理论分析,程序及效果自行完成】
为啥一定是汇编的,如果你一定要用汇编我可以告诉你一个办法。编写好C代码,在软件仿真时就会出现生产的汇编代码。这样你也可直接拷贝出来用。其实C代码是一样用的
用汇编语言控制PWM,编写起来很简单。
不用考虑C语言里面杂七杂八的概念,只是研究单片机本身的东西就行了。
让这3个LED灯产生均色变化,是什么意思?
对不住,我没有听说过PWM汇编语言!