chipKIT Uno32板的PWM引脚说明

电子说

1.3w人已加入

描述

脉冲宽度调制(PWM)是一种使用开关数字信号来控制传递到电子负载的功率量的技术。该技术背后的关键思想是,可以通过改变信号的占空比来改变数字信号的平均DC值,从而改变传递给负载的功率。该方法通常用于控制直流电动机的速度和灯的亮度。开关电源也基于PWM技术。在本教程中,我们将讨论chipKIT Uno32板的PWM引脚,并通过控制两个外部LED的亮度来说明该概念。

开发板

PWM

理论

脉宽调制(PWM)是一种通过能量传递能量的方式脉冲而不是连续变化的信号。通过增加或减少脉冲宽度(频率保持不变),可以控制输出功率。信号打开的时间周期的一部分称为占空比。信号的平均DC值可以通过改变占空比来改变。占空比可以在0(信号始终关闭)到1(信号一直打开)之间的任何位置。假设,如果信号在开启时为+5 V,在关闭状态时为0 V,则通过更改信号的占空比,可以模拟0-5 V之间的任何电压。该方法通常用于控制直流电动机的速度和灯的亮度。 PWM的原理如下图所示。

开发板

PWM

电路设置

在chipKIT Uno32板上,可以将I/O引脚3、5、6、9和10配置为提供PWM输出。我们将两个LED(红色和绿色)连接到PWM引脚3和5,并通过改变驱动这些LED的PWM信号的占空比来控制它们的亮度。两个100电阻用于限制通过LED的电流。

开发板

电路设置

开发板

在面包板上的实际设置

写草图

可以使用 analogWrite生成Arduino平台中的PWM信号()命令。在括号内,您可以指定引脚号和所需的占空比(0-255)。占空比“ 0”表示始终关闭,“ 255”表示始终打开。调用 analogWrite()时,将在指定的PWM引脚上生成具有指定占空比的稳定方波。下图使用变化的占空比PWM信号来控制传递到两个LED的输出功率。两个LED交替淡入和淡出,这意味着当一个LED处于峰值强度时,另一个LED变暗,反之亦然。

int redLED = 3; // Red LED is connected to pin 3

int greenLED = 5; // Green LED is connected to pin 5

int redCount = 255; // Initial PWM values, RED is full

int greenCount = 1; // Green is dim

int i = 0;

void setup()

{

pinMode(redLED, OUTPUT);

pinMode(greenLED, OUTPUT);

}

void loop()

{

if (i 《 255) // First phase

{

redCount = redCount-1; // Red down

greenCount = greenCount+1; // Green up

}

else if (i 《 509) // Second phase

{

redCount = redCount+1; // Red up

greenCount = greenCount-1; // Green down

}

else // Re-set

{

i = 0;

}

i += 1;

analogWrite(redLED, redCount); // Write current values to LED pins

analogWrite(greenLED, greenCount);

delay(10); // Pause for 10 millisecond

}

输出

在程序中的职责周期以1为步长从1更改为255。首先,红色LED由占空比为255的PWM信号驱动,这意味着它将完全打开。驱动绿色LED的PWM信号的占空比为1,这意味着其强度最小。在每10 ms中,驱动红色LED的PWM信号的占空比减小1,而绿色LED的占空比则增大1。大约2550 ms之后,亮度条件反转,并且绿色LED完全点亮。重复此操作以交替产生淡入和淡出效果。

开发板

淡入和淡出

开发板

红色LED处于最大强度,而绿色则变暗了

开发板

绿色处于最大强度而红色却变淡

LED的工作电流非常低,因此,可以直接通过UNO32板的PWM输出驱动它们。对于直流电动机控制,需要一个外部电动机驱动器电路(例如H桥),该电路基本上将从微控制器引脚发出的低电流PWM信号放大为能够提供足够电流来驱动电动机的高电流PWM信号。
       责任编辑:wv

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分