?? adc.h
字號:
/********************************************************************************/
//
// builder : 2007-04-10
// Target : ATMEAG 48V
// Crystal : 內部 8.00 MHz
//
// ADC 轉換模塊
/********************************************************************************/
#include <iom48v.h>
#include <macros.h>
extern void adc_int(void);
extern unsigned int AD_CH(unsigned char CHn);
void adc_int(void)
{
ADMUX = 0x40; // 0xC0 基準電壓2.56V ;0x40 外部AVCC
ADCSRA = 0xC7; //enable adc and the div parame is 8
}
/*---------------------------------------------------------------
ADC
----------------------------------------------------------------*/
unsigned int AD_CH(unsigned char CHn)
{
unsigned char i;
unsigned int ad_add;
unsigned int temp,temp1;
unsigned int adh;
ADMUX = (ADMUX & 0xF0) | CHn;
ad_add = 0;
for(i=0;i<4;i++)
{
ADCSRA = ADCSRA|(1<<ADSC); //start the adc
while(ADCSRA&(1<<ADSC)); //wait for the adc finish
ADCSRA = ADCSRA|(1<<ADSC); //start the adc
while(ADCSRA&(1<<ADSC)); //wait for the adc finish
temp1 = ADCL;
temp = (ADCH&0x03)<<8;
temp += temp1;
ad_add += temp;
}
adh = ad_add>>2;
return(adh);
}
/******************************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -