PWM(Pulse Width Modulation)简介
PWM,也就是脉冲宽度调制,用于将一段信号编码为脉冲信号,也就是方波信号。多用于在数字电路中驱动负载随时间变化的电子元件,如LED,电机等。
在单片机中,我们常用PWM来驱动LED的暗亮程度,电机的转速等。
我们知道,在数字电路中,电压信号是离散的: 不是 0(0V) 就是 1(5V或者3.3V), 那么如何输出介于 0v 和 5V之间的某个电压值呢?
我们先来举个实际的例子,一看就懂,胜过千言万语。
如下图,要让让数字信号模拟出 3.7V 的电压输出。可以先假想:3.7V的电压输出是由多个周期时间为T ,电压值 都 为3.7V的信号 持续输出形成的。
根据PWM原理,我画出下面等效脉冲信号波形图(红色) 。PWM的理念是:连续的信号可以使用独立的方波信号模拟出来,手段就是调整输出的脉冲宽度,以达到同样的效果。你会怀疑:这真的可以达到同样的效果吗?
别急,让我们继续往后看。
如果一个周期T内的均值电压等于3.7V,那么,整体的输出就是3.7V,因为整体只不过是n个周期不断的重复而已。那么我们的主要问题就是如何让一个调制周期T时间内的均值电压等于3.7V。下面就开始计算。
设:脉冲信号的值随时间变化的函数为:

