PWM(Pulse Width Modulation)
脉冲宽度调制,用数字信号模拟模拟信号。
占空比:高电平时间占整个周期的比例。
原理:通过调节占空比控制通电时间与断电时间比例,间接控制灯亮度,电机转速等功能。
一个中断实现PWM:
定义一个变量tem指示当前电平
中断时间首先设置为高电平时间,进入中断后检测变量值tem当前为高电平,
设置中断时间为低电平时间,并使变量值tem指示低电平
通过不断改变中断时间和检测tem的值来实现PWM功能。
注:进入中断需要一定时间,并且还要进行中断压栈操作,需要进行补偿。
两个中断实现呼吸灯
第一个中断控制PWM的占空比,每隔固定时间改变占空比
第二个中断根据占空比调节小灯亮灭时间来控制小灯亮度