微控制器的PWM引脚,它的用途是什么?

时间:2011-02-18 04:04:59

标签: embedded microcontroller

我总是在微控制器中看到PWM引脚,就像在PIC中使用它一样?

9 个答案:

答案 0 :(得分:9)

虽然PWM确实用于电机控制,但我认为PWM的主要用途是数模转换,以防MCU上没有DAC(最常见的情况)。如果将PWM输出连接到运算放大器,PWM占空比可用于表示模拟值。这是各种应用中非常常见的设计。

大多数类型的系统调节使用PWM +运算放大器来提供模拟输出,可用于控制某种硬件。然后,这个模拟输出可以通过模数转换器读回MCU,MCU可以相应地改变PWM占空比。

答案 1 :(得分:8)

它代表脉冲宽度调制。这是一种使用数字设备发送模拟信号模拟的方法,因此您可以模拟高压和低压之间的电压。

所有我知道如何处理它是Arduino点亮的LED: - )

答案 2 :(得分:6)

PWM的主要用途是控制电机。您(通常)这样做是为了控制电机运行的速度。有两个促成这项工作的因素。首先,电机具有相当大的物理惯性,因此当您打开和关闭电压时,它不会减速或加速非常快。其次,当电压通过线圈时产生的磁场也具有一定程度的“惯性” - 也就是说,当你关闭电流时,磁场需要一点点崩溃,并且需要一段时间才能恢复当你打开电流时。

这些意味着您可以在相当宽的范围内改变电机的速度,并且它仍然可以相当平稳地运行,而不是在您更改PWM信号的占空比时进行大幅加速/减速。

但请注意,在大多数情况下,你需要一个单独的驱动芯片才能运行,而不是真正微小的电机 - 尽管PWM允许你生成正确类型的信号来控制a电动机很好,一个典型的微控制器不是为了供电或吸收那种电流而构建的。

答案 3 :(得分:4)

某些设备(如电机和LED)在特定输入电压下运行效率更高(或者根本没有),因此当您想要可变速度或亮度时,改变模拟电压通常是一种不能令人满意的解决方案,并且对于使用数字设备实现。在这些情况下,通常使用PWM。

如果您确实需要来自PWM的模拟电压,那么您可以在输出上应用低通滤波器,但这不会产生真正DAC输出的线性响应。

答案 4 :(得分:3)

无论是电机控制,调整LED的亮度等,基本上它都用作1位DAC。如果你有一些理想情况下需要直流电压的东西,但系统中的某些东西没有快速反应(如你的眼睛看着一个LED,或者电机上的转子)如果你给它一个波形(通常是正弦或pwm),你基本上会得到积分。 pwm并不像你在立体声系统中看到的那样真实的一点点dac(一位dac是当天播放的CD播放器的广告功能),你没有用它来改变输出循环基础,但超过许多pwm周期。如果你认为方波占50%占空比的半高,半低,取其平均值或积分值,你可以看出它在高压和低压之间的中间点之上的一半时间。如果你的pwm输出高达周期的3 / 4s那么低1/4的周期平均值现在是低电压和高电平之差的3/4。如果您输入直流电机或LED或类似的东西,如果您将输出设置为高电压,您将得到的输出的3/4。 25%的高电平,75%的低电平将为您提供总电压的25%,依此类推。

所以,是的,PWM主要用作DAC,但在某种意义上它用作驱动电机和背光灯和LED以及其他可能需要电压控制且在系统某处的东西,无论是集成的电容器,具有物理响应时间限制的电机或无法看到LED闪烁的人眼。所以主要用作DAC并且主要用于电机控制都是正确的陈述。

出于这个原因,你可以在微控制器上找到它们,想想你使用微控制器的地方,并找到你想用pwm控制某些东西的地方。

答案 5 :(得分:2)

一种常见的用途是伺服电机控制。 PWM信号的宽度将控制伺服输出的程度。

答案 6 :(得分:1)

脉冲宽度调制,在电机速度控制中使用相当多。任何需要电压不是高电压或低电压的东西。

答案 7 :(得分:1)

在所有良好的调味品中,PWM的另一个新颖用法很简单,也许是低音,声音生成。最简单的方法是转换原始声音信号幅度的幅度,并将其映射到PWM输出的占空比。

这个页面是一个很好的例子,但它适用于Atmel AVR微型而非PIC微型。 http://aquaticus.info/pwm-music

答案 8 :(得分:1)

您可以使用可编程PWM来创建方波。

在更大的微控制器(LM3s9l97等)上,你可以真正复杂的波形。

基本上,你可以为计数器的每个周期获得四到六个事件(零,A,B,负载以及上下模式下A和B两个以上),你可以决定在每个事件上做什么:切换输出,将输出设置为低并将输出设置为高。

你可以做那些非常漂亮的东西。