/*AVR片内的AD转换器程序,本测试程序是把内部的AD转换器设置为连续转换模式,更多模式相见手册的191-207页*/
/*0414 天津第四项目部宿舍 */
#include<iom16v.h>
#define uchar unsigned char
#define uint unsigned int
#define set_bit(a,b) a|=(1<<b)
#define clr_bit(a,b) a&=~(1<<b)
#define get_bit(a,b) a&(1<<b)
uchar ADC_8bit()//AD转换函数
{
ADMUX=0xe0;//*REFS1:0=11H表示参考电压由内部2。56V供电AREF引脚加电容?
// ADLAR=1表示数据左端对齐,MUX4:0表示选择单端通道ADC0,就是PA0引脚
SFIOR=0x00;//选定为连续转换模式
ADCSRA=0xc0;//开启ADC转换,禁止中断,2分频禁止自动触发
return (ADCH);
}
void main()
{
DDRC=0xff;
PORTC=0x00;
while(1)
{
PORTC=ADC_8bit();
}
}
/*0414 天津第四项目部宿舍 */
#include<iom16v.h>
#define uchar unsigned char
#define uint unsigned int
#define set_bit(a,b) a|=(1<<b)
#define clr_bit(a,b) a&=~(1<<b)
#define get_bit(a,b) a&(1<<b)
uchar ADC_8bit()//AD转换函数
{
ADMUX=0xe0;//*REFS1:0=11H表示参考电压由内部2。56V供电AREF引脚加电容?
// ADLAR=1表示数据左端对齐,MUX4:0表示选择单端通道ADC0,就是PA0引脚
SFIOR=0x00;//选定为连续转换模式
ADCSRA=0xc0;//开启ADC转换,禁止中断,2分频禁止自动触发
return (ADCH);
}
void main()
{
DDRC=0xff;
PORTC=0x00;
while(1)
{
PORTC=ADC_8bit();
}
}