📄 adc.h~
字号:
void Adc_init(void)
{
ADMUX=0x40; //选择模式
ADCSRA=0X87; // adc 使能,128分频
}
unsigned int Get_ADC(void) //ADC读函数
{
unsigned char Adc_Count; //定义ADC的累计次数
unsigned int Adc_Data_Sum=0; //定义ADC的总数据值
unsigned int ADC_Data; //定义ADC的平均值
// unsigned int Voltage; //定义取样的平均电压
// ADMUX=0x40; //选择模式
for(Adc_Count=0;Adc_Count<3;Adc_Count++)//累计ADC转换4次,并且将ADC数据累加到adcdata里
{
ADCSRA|=(1<<6); //开ADC,进行单次转换
delay_ms(1); //开ADC到读到准确数据件的延时
Adc_Data_Sum+=ADCW; //累加
//ADCSRA|=(0<<6); //关ADC ???
}
ADC_Data=Adc_Data_Sum/3; //平均 ADC
return(ADC_Data); //将ADC返回
}
unsigned int Search_tab(void)
//unsigned char Search_tab()
{
//unsigned int Voltage;
unsigned char i_temp=0;
unsigned int Adc_temp;
Adc_temp=Get_ADC();
// if(temp>Ntc_tab[i_temp]) {i_temp++;}
// else i_temp--;
while((Adc_temp<Ntc_tab[i_temp])&&(i_temp<70)) {i_temp++;}
return(i_temp);
//Voltage=temp*(5000/1024);
//return(temp);
//return(Voltage);
}
void display_temp(void)
{
Written_char(0,3,((Search_tab()-1)/10));
Written_char(0,4,((Search_tab()-1)%10));
//Written_char(0,3,(Search_tab()/1000));
//Written_char(0,4,(Search_tab()%1000/100));
//Written_char(0,5,(Search_tab()%1000%100/10));
//Written_char(0,6,(Search_tab()%1000%100%10));
//Written_char(0,3,Search_tab()/10);
//Written_char(0,4,Search_tab()%10);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -