返回介绍

Arduino - Advanced I/O Function

发布于 2021-05-21 05:45:03 字数 1590 浏览 1130 评论 0 收藏 0

在本章中,我们将学习一些高级输入和输出功能。

analogReference() Function

配置用于模拟输入的参考电压(即用作输入范围顶部的值)。 选项是 -

  • DEFAULT - 默认模拟参考电压为5伏(在5V Arduino电路板上)或3.3伏电压(在3.3V Arduino电路板上)

  • INTERNAL - 内置参考电压,ATmega168或ATmega328等于1.1伏,ATmega8等电压为2.56伏(Arduino Mega不提供)

  • INTERNAL1V1 - 内置1.1V基准电压源(仅限Arduino Mega)

  • INTERNAL2V56 - 内置2.56V基准电压源(仅限Arduino Mega)

  • EXTERNAL - 施加到AREF引脚的电压(仅0至5V)用作参考

analogReference() Function Syntax

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。

Example

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
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文