采用PWM波,改变其占空比,来调节LED灯的亮度,占空比大,则灯亮,占空比小,则灯暗。
Arduino程序如下图
点击图片放大
可以从Proteus的虚拟示波器看出,随着程序函数 analogWrite(ledPin, fadeValue) 的执行,数字接口9发出的PWM波占空比不断变化,LED灯的亮度也再实时变化。这个实验用真的示波器做,成本很高,而且效率没有仿真高!
这个例子也可以看出用Arduino编程,不需要对AVR单片机寄存器设置参数,只用个analogWrite( )函数,就玩转了PWM。
Arduino和Proteus的这个例子程序下载:PWM调节LED光.rar