极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 24627|回复: 2

Arduino的参考电压analogReference()

[复制链接]
发表于 2020-5-20 21:51:50 | 显示全部楼层 |阅读模式
了解电压比较器的都应该知道,其有比较电压,即门阀值。Arduino的这个功能跟电压比较器差不多,而analogReference()则允许修改参考电压值。(应该属于Arduino的一大特色。)

analogReference():
功能:为模拟电压输入设置参考值;
形式:analogReference(type)
参数:type有以下几个选项:
DEFAULT: 默认参考值5v (在5V的 板子上 ) 或者 3.3 v  (在3.3V 的Arduino板子上);
INTERNAL:内置参考值, 在 ATmega168 或者 ATmega328板子上为1.1v;在ATmega8 板子上为2.56v (在Arduino Mega板子上不可获得)。
INTERNAL1V1: 内置的1.1V 参考值 (只在Arduino Mega板子上有效 )
INTERNAL2V56: 内置的2.56V 参考值  (只在Arduino Mega板子上有效)
EXTERNAL: 在AREF引脚加的电压 (0到5V)将作为参考值 。
返回值:none;
注:改变参考值的时候,刚开始的读数可能不准确。
不要用低于0v或高于5v的电压加在AREF引脚。如果使用加在AREF的外部电压作为参考那一定要在调用analogRead()之前设置analogReference为EXTERNAL,否则可能毁坏芯片。
也可以使用一个5千欧的电阻连接外部参考电压到AREF引脚,这样可以方便地在内外参考电压间转换,不过请注意电阻将改变原先你想要的参考值,因为在AREF引脚内部有个32千欧的内置电阻。这样两个电阻就可以分压了,例如:加的是2.5v,那么在AREF引脚的电压就是:2.5 * 32 / (32 + 5) = ~2.2V 。
回复

使用道具 举报

发表于 2020-5-21 09:11:51 | 显示全部楼层
学到东西了,一下不知道有这个功能,谢谢讲解。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-19 13:16 , Processed in 0.040280 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表