AVR ADC 参考电压AVCC,没有输出

2024-12-29 20:44:05
推荐回答(2个)
回答1:

Mega8单片机程序

ADC初始化:

ADMUX =(1<

     ACSR  =(1<

     ADCSRA=(1<

  ADMUX=0X40; //参考电压=AVCC 转换结果向右看齐,AD通道0

 ADCSRA=0X85; //AD使能,转换时钟选择位=FOSC/32,单次转换

这是硬件电路

 

ADC读取数据:

ADCSRA|=0x40;                        //开始转换 

while (ADCSRA&0x40);            //等待转换结束 

l=ADCL;                         //低位数据 ,注意要先读低位

h=ADCH;                         //高位数据   

h<<=8;                          //合并数据

 

h是无符号整型数,它就是最后得到的电压值

回答2:

AREF引脚怎么处理的?接到AVCC没?

刚回答了别人一个问题,似乎受到点启示:
如果想用外部电压这样配置:
硬件 AVCC和AREF都连接到+5;
软件REFS1 、REFS0=00;
应该可以。