位置:L6 调光台灯 -> 参考资源

模拟输出与PWM调制

发布人:张建辉发布时间:2018-01-24 17:50:47

模拟信号输出的电压值在0~5V变化,但Arduino UNO板的输出端口都是数字端口,仅能输出高(5V)和低(0V)两种电压值,所以ArduinoUNO板无法输出真正的模拟信号

Arduino程序内建的模拟输出是通过PWM(Pulse Width Modulation)脉冲宽度调制的方法,用高低电平不断切换的数字脉冲信号来模拟模拟信号在讲解PWM之前要先了解两个概念:脉冲周期占空比

脉冲周期:相邻两次脉冲之间的时间间隔,周期的倒数即脉冲频率。

占空比:在一次脉冲周期内高电平持续时间与脉冲周期的比值。

PWM实际是通过高低电平的快速切换来实现模拟信号的输出效果的。在一个脉冲周期内,若占空比为50%,则相当于灯全亮半个周期,之后灯熄灭半个周期。Arduino的PWM信号脉冲周期仅有0.002s,即每秒500个脉冲周期,由于人眼的视觉残留效果,呈现出的视觉效果相当于50%的亮度。而此时PWM等效输出电压V=5V×占空比=5V×50%=2.5V。