arduino基础实验教程6-Arduino 电位计调节LED亮度

之前介绍了使用软件编程来实现呼吸灯的效果,本次我们来借助一个硬件 — 旋转角度电位计来实现LED呼吸灯。
1、工具原料

2、方法步骤
2.1 准备实验需要用到的硬件,如图所示:

2.2 按照下图中的电路,进行实验硬件的连接

2.3 将下列程序复制到Arduino IDE中,如下图所示:



				
#define led 10

void setup()

{

pinMode(led,OUTPUT);

}

void loop()

{

  int val = analogRead(0);

  val = map(val, 0, 1023, 0, 255);

  analogWrite(10, val);

}
				



2.4 使用USB数据线连接Arduino UNO 控制器和电脑,选择正确的板型(Arduino UNO 和)、端口,点击上传,无误情况下软件会显示如下结果。

2.5 代码回顾:如下图所示中的代码
val = map(val, 0, 1023, 0, 255);语法:long map  ( long  x,    long  in_min,    long  in_max,    long  out_min,    long  out_max    )  
参数:
x 要映射的值
in_min 映射前区间
in_max 映射前区间
out_min 映射后区间
out_max 映射后区间
作用:等比映射
将位于[in_min, in_max]之间的x映射到[out_min, out_max]
例如本例中
val = map(val, 0, 1023, 0, 255); 作用是将模拟量从[0,1023]映射到[0,255]区间。


2.6 硬件回顾:

旋转角度电位计,又称为可变电阻,范围比较小,一般为几欧姆至几千欧姆之间,阻值允许偏差±5%和±10%。这种电位器通常用于电源调节或大电流分压电路中。由于它是电阻丝绕制而成(相当于线圈),其电感量较大,故线绕电位器很少用于高频电路。原理图中符号及引脚定义如下图所示,电位计左右(原理图中的1、2)端点间阻值为可变电阻的总阻值,通过旋转电位计,可以改变任意端点到变化端(3)的阻值大小。
 
2.7 实验效果:当旋转角度电位计从左侧端点到右侧端点时,LED由亮逐渐变化到灭;当旋转角度电位计从右侧端点回到左侧端点时,LED由灭到亮。如下图所示,为LED的最亮状态和熄灭状态,在旋转角度电位计变化过程中,小灯有一个由亮变灭的过程。
 


注:旋转角度电位计的中间引脚需要连接到Arduino UNO控制器的模拟输入引脚,否则电位计的旋转不能改变LED的亮度。