电位器(或者叫滑动电阻)是大家比较熟悉的典型的模拟值输出元件,本实验就用它来完成
1实验原理 我们将使用模拟I/O口,Arduino有模拟口—模拟5共计6个模拟接口,这6个接口也可以算作为接口功能复用,除模拟接口功能以外,这6个接口可作为数字接口使用,编号为数字14 – 数字19 。
2硬件电路 模拟值读取实验器件表参考4-8-1表
3程序设计 analogRead();语句就可以读出模拟口的值,Arduino UNO控制器是10位的A/D采集,所以读取的模拟值范围是0-1023 。首先我们在void setup()里面设置波特率,显示数值属于Arduino 与PC机通信,所以Arduino的波特率应与PC机软件设置的相同才能显示正确的数值,否则将会显示乱码或者不显示。在Arduino软件的串口工具监视窗口右下角有一个可以设置波特率的按钮,选中与程序中设置的波特率语句相同的波特率,Serial.begin();括号中为波特率的值。 实例程序: - /****************************************************
- 模拟值读取实验程序
- 旋转电位计串口监视器中模拟值连续变化
- http://www.landzo.com/
- This example code is in the public domain.
- ****************************************************/
- //定义模拟接口0
- int potpin = 0 ;
- //将定义变量val,并赋初值0
- int val = 0 ;
- /****************************************************
- 初始化部分_setup()函数
- ****************************************************/
- void setup()
- {
- Serial.begin(9600);
- }
- /****************************************************
- 初始化部分_setup()函数
- ****************************************************/
- void loop()
- {
- val = analogRead(potpin);
- Serial.println(val) ;
- }
4实验操作1) 按照图4-8-2将电路连接到landzoduino开发板上。电位器不区分正负极性,中间引脚接在模拟口即可。 2) 插上编程线,把程序下载到Landzoduino控制板。 3) 观察运行情况。
5实验结果 每读取一次值,Arduino会通过串口发送到串口监视器上显示,下图为读出的值(注意只做参考) :本实验中,当您旋转电位计旋钮的时候就可以看到屏幕上的数值变化了。这种模拟值读取是我们很常用的功能。因为在很多的传感器,都是模拟值输出,我们读出模拟值后再进行相应的算法处理,就可以应用到我们需要实现的功能里了。
|