本帖最后由 darkorigin 于 2012-9-16 23:15 编辑
了解了,谢谢。刚才弄错函数的意义了。哈哈。以为能调节端口的输出电压,呵呵 仔细阅读之后了解知识修改AD转换器的基准电压
本帖最后由 zcbzjx 于 2012-9-17 20:08 编辑
电压基准实际就是aref端电压,调用analogReference(INTERNAL); 后可以测量下aref电压变为1.1V左右,如果不调用aref应该是5V左右,不调用的情况下,可以在aref外接其他的基准电压。
好东西,顶~
顶啊,精彩教程
还是没明白~!如果用ocrobot mango自带1.1V基准源,那么温感器输入到模拟引脚的电源会是多少呢?
如果是5V那不是超过这个基准电源?会不会有危险呢?:dizzy:
:Q额~!模拟口电压高于基准电压不会出现溢出什么的?看来我要好好补一补这方面的知识了
zhangdeyue1 发表于 2012-9-28 10:29 static/image/common/back.gif
额~!模拟口电压高于基准电压不会出现溢出什么的?看来我要好好补一补这方面的知识了
大于等于基准电压值为1023
zcbzjx 发表于 2012-9-28 18:21 static/image/common/back.gif
大于等于基准电压值为1023
基准电压为1.1V,如果测得的模拟口电压不管是2V,3V,4V,那输出结果都为1023?
zhangdeyue1 发表于 2012-9-28 22:59 static/image/common/back.gif
基准电压为1.1V,如果测得的模拟口电压不管是2V,3V,4V,那输出结果都为1023?
大于等于基准电压值为1023
我在淘宝买的基准电压1.08V:curse:
ttyp 发表于 2012-9-30 20:32 static/image/common/back.gif
我在淘宝买的基准电压1.08V
:L不太可能吧。。。这个基准源还是蛮准的。。。。检查下万用表
http://hacking.majenko.co.uk/making-accurate-adc-readings-on-arduino
这篇文章可以参考一下。
摘录代码如下:
long readVcc() {
long result;
// Read 1.1V reference against AVcc
ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
delay(2); // Wait for Vref to settle
ADCSRA |= _BV(ADSC); // Convert
while (bit_is_set(ADCSRA,ADSC));
result = ADCL;
result |= ADCH<<8;
result = 1125300L / result; // Back-calculate AVcc in mV
return result;
}
unsigned int ADCValue;
double Voltage;
double Vcc;
Vcc = readVcc()/1000.0;
ADCValue = analogRead(0);
Voltage = (ADCValue / 1023.0) * Vcc;
darkorigin 发表于 2012-9-16 00:07 static/image/common/back.gif
额 看到了
analogReference(INTERNAL); //调用板载1.1V基准源
这个函数可以让5V口变成1.1V 是么?谢谢 ...
analogReference(INTERNAL); //调用板载1.1V基准源
这个函数可以让5V口变成1.1V 是么?谢谢 ...??????这么个意思理解?
不是的,这个只是让ref端口的电压变为1.1v
yongyuan824 发表于 2012-12-15 11:13 static/image/common/back.gif
analogReference(INTERNAL); //调用板载1.1V基准源
这个函数可以让5V口变成1.1V 是么?谢谢 ...??????这 ...
现在了解了,只是把AD/DA的基准电源降低,以增加精度.