mega8的ADC问题, 跟万用表测得数据总是有20-40mv的误差
我做了个数据采集板,也就是将mega8采集的电压传到串口上。最近发现一个adc的问题,我采用的是将avcc和aref连接起来,并且接一100欧电阻和电容,程序主要代码如下:// ADC initialization
// ADC Clock frequency: 125.000 kHz
// ADC Voltage Reference: AVCC pin
ADMUX=0x40;
ADCSRA=0xCE;
但最后采集的数据怎么跟万用表测得数据总是有20-40mv的误差,不知道问题出在哪里?那位碰到类是的问题?帮我考虑一下是什么问题?
例如: 电阻分压测其电压,理论值0.073V 万用表测得0.074V ,但用mega8测得的只有0.059V
谢谢! 我也遇到类似的问题,不知道出现在那里,我一直都没有把这个问题解决? Vref稳定且准确?ADC的数值跟Vref有直接关系。 降速和2次采样相对准确些... 没用的,速度降下来也一样的。他一直就比较低,而不是上下波动。
有谁有什么好的解决办法?双龙的 sl-mega8实验板也有这样问题
谢谢!! 既然是恒定的小一定的数值
那就加上他好了~~
最好在测试一下与电压的绝对值有无比例关系 加个104电容试试...2次采样是必须的. to hotpower 菜农
104加了,在portc.0前加的,否则测出来的数据跳动比较大。
to violit
测出来的电压比万用表测出来的电压不是小于一个恒定值,而是变化的。
我再想想其它办法! 跳动是正常的,但变化应该在允许的误差范围内...我用过M64以下很多的AVR.
基本都在误差范围内.
而且程序很关键... 变化的
如果是与绝对电压成线性变化到简单,那估计是由于芯片内部的线路带来的分压
再一个转换也不能太慢,不然采样电容会泄露,使很多片M8都这样么? 采样确实不能太慢...我在LPC2132上实验过... 明天我把单片机程序和上位机程序贴出来在看看!!
痛苦!!!
谢谢楼上的兄弟们。有空到武汉来,我请大家到汤狲湖吃鱼丸子!!
哈哈哈!!! 用外部的基準源比較穩的!! 把供电源换成电池试一下,或许你会发现电源是很重要的。似乎是AVR的AD对电源比较苛刻。 AVR的ADC不可能有那么大的误差,问题应该在你的身上。
1 Vref稳定且准确?
ADC=VIN*1024/VREF
[采用的是将avcc和aref连接起来,并且接一100欧电阻和电容]??
2 如果有ADC 端口被用作数字输出,那么必须保证在转换进行过程中它们不会有电平的切换 建议用长度为8的数组做一个缓冲,并求平均值,要稳定地多 谢谢楼上的各位兄弟,问题得到解决1!
如HJJourAVR所言,我实际测量了一下,从7805出来的电压是5.08,然后将
ADC=VIN*(VREF/1023)得到的值跟万用表的值就基本相同了。哈哈!
但就是有点不清楚,怎么7805出来的电压是5.08V而不是所说的5.00V呢?
再次感谢楼上的各位兄弟!!
-----此内容被li0713于2006-02-06,21:41:02编辑过 你不知道什麼叫理想環境嗎?
页:
[1]