- Arduino - 教程
- Arduino - 概述
- Arduino - Board Description
- Arduino - 安装
- Arduino - 程序结构
- Arduino - 数据类型
- Arduino - Variables & 常量
- Arduino - 运算符
- Arduino - 控制声明( Control Statements)
- Arduino - 循环
- Arduino - 功能( Functions)
- Arduino - 字符串( Strings)
- Arduino - String对象( String Object)
- Arduino - Time
- Arduino - 阵列( Arrays)
- Arduino - I/O Functions
- Arduino - Advanced I/O Function
- Arduino - 字符函数( Character Functions)
- Arduino - 数学图书馆( Math Library)
- Arduino - 三角函数( Trigonometric Functions)
- Arduino - Due & Zero
- Arduino - 脉冲宽度调制( Pulse Width Modulation)
- Arduino - 随机数( Random Numbers)
- Arduino - 中断( Interrupts)
- Arduino - 沟通( Communication)
- Arduino - 内部集成电路( Inter Integrated Circuit)
- Arduino - 串行外设接口( Serial Peripheral Interface)
- Arduino - 闪烁LED( Blinking LED)
- Arduino - 褪色LED( Fading LED)
- Arduino - 读取模拟电压( Reading Analog Voltage)
- Arduino - LED条形图( LED Bar Graph)
- Arduino - 键盘注销( Keyboard Logout)
- Arduino - 键盘消息( Keyboard Message)
- Arduino - 鼠标按钮控制( Mouse Button Control)
- Arduino - 键盘串口( Keyboard Serial)
- Arduino - 湿度传感器( Humidity Sensor)
- Arduino - 温度传感器( Temperature Sensor)
- Arduino - Water Detector / Sensor
- Arduino - PIR传感器( PIR Sensor)
- Arduino - 超声波传感器( Ultrasonic Sensor)
- Arduino - 连接开关( Connecting Switch)
- Arduino - 直流电机( DC Motor)
- Arduino - 伺服电机( Servo Motor)
- Arduino - 步进电机( Stepper Motor)
- Arduino - 音调库( Tone Library)
- Arduino - 无线通信( Wireless Communication)
- Arduino - 网络通信( Network Communication)
- Arduino - 有用的资源
- Arduino - 讨论
- Show Example 1
- Show Example 2
- Show Example 3
- Show Example 4
- Show Example 5
- If statement
- If …else statement
- If…else if …else statement
- switch case statement
- Conditional Operator ? :
- while循环
- do…while循环
- for循环
- Nested循环
- Infinite循环
- delay () function
- delayMicroseconds () function
- millis () function
- micros () function
- 将数组传递给函数(Passing Arrays to Functions)
- 多维数组(Multi-Dimensional Arrays)
Arduino - 读取模拟电压( Reading Analog Voltage)
此示例将向您展示如何读取模拟引脚0上的模拟输入。输入从analogRead()转换为电压,并打印到Arduino软件(IDE)的串行监视器。
组件的要求 (Components Required)
您将需要以下组件 -
- 1 × Breadboard
- 1×Arduino Uno R3
- 1×5K可变电阻(电位器)
- 2 × Jumper
过程 (Procedure)
按照电路图并连接面包板上的组件,如下图所示。
电位器(Potentiometer)
电位计(或电位器)是一种简单的机电传感器。 它将来自输入运算符的旋转或线性运动转换为电阻变化。 这种变化是(或可以)用于控制从高保真音响系统的音量到巨大的集装箱船的方向。
我们所知道的锅最初被称为变阻器(一种可变线绕电阻器)。 各种可用的盆现在非常惊人,并且初学者(特别是)可能很难确定哪种类型适合于给定的任务。 一些不同的罐类型,可以全部用于相同的任务,使工作更难。
左侧的图像显示了锅的标准示意符号。 右边的图像是电位计。
草图 (Sketch)
在您的计算机上打开Arduino IDE软件。 用Arduino语言编码将控制你的电路。 单击“新建”打开新的草图文件。
Arduino代码 (Arduino Code)
/*
ReadAnalogVoltage
Reads an analog input on pin 0, converts it to voltage,
and prints the result to the serial monitor.
Graphical representation is available using serial plotter (Tools > Serial Plotter menu)
Attach the center pin of a potentiometer to pin A0, and the outside pins to +5V and ground.
*/
// the setup routine runs once when you press reset:
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
}
// the loop routine runs over and over again forever:
void loop() {
// read the input on analog pin 0:
int sensorValue = analogRead(A0);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * (5.0/1023.0);
// print out the value you read:
Serial.println(voltage);
}
Code to Note
在下面给出的程序或草图中,您在设置功能中所做的第一件事就是在电路板和计算机之间以每秒9600位的速度开始串行通信 -
Serial.begin(9600);
在代码的主循环中,您需要建立一个变量来存储来自电位计的电阻值(介于0和1023之间,非常适合int数据类型) -
int sensorValue = analogRead(A0);
要将值从0-1023更改为与电压对应的范围,引脚正在读取,您需要创建另一个变量,浮点数并进行一些计算。 要缩放0.0到5.0之间的数字,将5.0除以1023.0并乘以sensorValue -
float voltage= sensorValue * (5.0/1023.0);
最后,您需要将此信息打印到串行窗口。 您可以使用最后一行代码中的Serial.println()命令执行此操作 -
Serial.println(voltage)
现在,通过单击顶部绿色栏右侧的图标或按Ctrl + Shift + M打开Arduino IDE中的串行监视器。
结果 (Result)
您将看到稳定的数字流,范围从0.0到5.0。 当你转动电位器时,数值会改变,对应于引脚A0的电压。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论