所以,这是我的简单分压器代码:
int sensorValue = 0;
void setup() {
analogReference(INTERNAL);
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(A0);
// ADC , AREF=1078mV=Vin
Serial.println(sensorValue);
delay(1000);
}
模拟参考设置为INTERNAL,这意味着分频器的Vin = AREF = 1078mV。使用万用表,我读取350 mV作为Vin和181 mV作为Vout
但是analogRead(0)输出1023,所以它在结尾或不参考。
据我所知,R1 = 100,6欧姆的电阻器搞砸了。
当我更换R1 = 1000欧姆然后analogRead = 98和Vin = 1070mV时,一切看起来都不错。
但是当我使用100,6欧姆作为R1时会发生什么?有人可以进一步解释这个吗?
此外,Arduino官方称AREF上有32000欧姆的内部电阻 销。
*或者,您可以通过5K电阻将外部参考电压连接到AREF引脚,允许您在外部和内部参考电压之间切换。请注意,电阻会改变用作参考电压的电压,因为AREF引脚上有一个内部32K电阻。这两个器件用作分压器,因此,例如,通过电阻器施加的2.5V电压将在AREF引脚处产生2.5 * 32 /(32 + 5)= ~2.2V。*
当我测量分频器的电压并使用analogReference(INTERNAL)时,我如何考虑这一点; // 1.1 V作为参考,Vin
我知道使用外部参考电压会更好,但是当我想使用INTERNAL 1.1V作为参考和电源时,是否可能?
感谢您的任何建议!