?? adc.c
字號:
#include<iom16v.h>
#include<macros.h>
#define AVCC (1<<REFS0)
#define V_2.56 (1<<REFS0)|(1<<REFS1)
#define AD_PRESCAL_2 (1<<ADPS0)
#define AD_PRESCAL_4 (1<<ADPS1)
#define AD_PRESCAL_8 (1<<ADPS0)|(1<<ADPS1)
#define AD_PRESCAL_16 (1<<ADPS2)
#define AD_PRESCAL_32 (1<<ADPS0)|(1<<ADPS2)
#define AD_PRESCAL_64 (1<<ADPS1)|(1<<ADPS2)
#define AD_PRESCAL_128 (1<<ADPS0)|(1<<ADPS2)|(1<<ADPS1)
#define AD_SE_ADC0 //ADC0
#define AD_SE_ADC1 (1<<MUX0) //ADC1
#define AD_SE_ADC2 (1<<MUX1) //ADC2
#define AD_SE_ADC3 (1<<MUX1)|(1<<MUX0) //ADC3
#define AD_SE_ADC4 (1<<MUX2)//ADC4
#define AD_SE_ADC5 (1<<MUX2)|(1<<MUX0)//ADC5
#define AD_SE_ADC6 (1<<MUX2)|(1<<MUX1) //ADC6
#define AD_SE_ADC7 (1<<MUX2)|(1<<MUX1)|(1<<MUX0) //ADC7
//========================================
//數字轉到字串,函數.--只有4個字節,而且向后對齊,前面補零.
void MyItoa( unsigned int Inter, unsigned char Dat[])
{
unsigned char i;
for ( i=0; i<4 ; i++ )
{
Dat[3-i]=Inter%10+'0';
Inter/=10;
}
}
void ADC_initial(void)
{
ADMUX=AVCC;
ADCSRA=(1<<ADEN)|(1<<ADSC)|(1<<ADATE)|AD_PRESCAL_4;
}
unsigned int ADC_READ()
{
unsigned char temp;
unsigned int data;
temp=ADCL;
data=ADCH;
data<<=8;
data+=temp;
return(data);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -