- Arduino教程
- Arduino - 主页
- Arduino - 概述
- Arduino - 板描述
- Arduino - 安装
- Arduino - 程序结构
- Arduino - 数据类型
- Arduino - 变量和常量
- Arduino - 操作员
- Arduino - 控制语句
- Arduino - 循环
- Arduino - 功能
- Arduino - 字符串
- Arduino - 字符串对象
- Arduino - 时间
- Arduino - 数组
- Arduino 函数库
- Arduino - I/O 函数
- Arduino - 高级 I/O 功能
- Arduino - 字符函数
- Arduino - 数学库
- Arduino - 三角函数
- Arduino高级版
- Arduino - 到期与归零
- Arduino - 脉宽调制
- Arduino - 随机数
- Arduino - 中断
- Arduino - 通信
- Arduino - 内部集成电路
- Arduino - 串行外设接口
- Arduino 项目
- Arduino - LED 闪烁
- Arduino - LED 褪色
- Arduino - 读取模拟电压
- Arduino - LED 条形图
- Arduino - 键盘注销
- Arduino - 键盘消息
- Arduino - 鼠标按钮控制
- Arduino - 键盘串口
- Arduino 传感器
- Arduino - 湿度传感器
- Arduino - 温度传感器
- Arduino - 水检测器/传感器
- Arduino - PIR 传感器
- Arduino - 超声波传感器
- Arduino - 连接开关
- 电机控制
- Arduino - 直流电机
- Arduino - 伺服电机
- Arduino - 步进电机
- Arduino 和声音
- Arduino - 音调库
- Arduino - 无线通信
- Arduino - 网络通信
- Arduino 有用资源
- Arduino - 快速指南
- Arduino - 有用的资源
- Arduino - 讨论
Arduino - 高级 I/O 功能
在本章中,我们将学习一些高级的输入和输出函数。
函数
配置用于模拟输入的参考电压(即用作输入范围上限的值)。选项是 -
DEFAULT - 默认模拟参考电压为 5 伏(在 5V Arduino 板上)或 3.3 伏(在 3.3V Arduino 板上)
内部- 内置参考,等于 ATmega168 或 ATmega328 上的 1.1 伏,以及 ATmega8 上的 2.56 伏(Arduino Mega 上不可用)
INTERNAL1V1 - 内置 1.1V 参考电压(仅限 Arduino Mega)
INTERNAL2V56 - 内置2.56V参考电压(仅限Arduino Mega)
外部- 施加到 AREF 引脚的电压(仅限 0 至 5V)用作参考
AnalogReference() 函数语法
analogReference (type);
type - 可以使用以下任何类型(DEFAULT、INTERNAL、INTERNAL1V1、INTERNAL2V56、EXTERNAL)
请勿在 AREF 引脚上使用低于 0V 或高于 5V 的外部参考电压。如果您在 AREF 引脚上使用外部参考,则必须在调用AnalogRead()函数之前将模拟参考设置为 EXTERNAL 。否则,您会将有源参考电压(内部生成)和 AREF 引脚短路,可能会损坏 Arduino 板上的微控制器。
或者,您可以通过 5K 电阻将外部参考电压连接到 AREF 引脚,从而允许您在外部和内部参考电压之间切换。
请注意,该电阻器将改变用作参考的电压,因为 AREF 引脚上有一个内部 32K 电阻器。两者充当分压器。例如,通过电阻施加的 2.5V 将在 AREF 引脚处产生 2.5 * 32 / (32 + 5) = ~2.2V。
例子
int analogPin = 3;// potentiometer wiper (middle terminal) connected to analog pin 3 int val = 0; // variable to store the read value void setup() { Serial.begin(9600); // setup serial analogReference(EXTERNAL); // the voltage applied to the AREF pin (0 to 5V only) // is used as the reference. } void loop() { val = analogRead(analogPin); // read the input pin Serial.println(val); // debug value }