📄 ad._c
字号:
#define AD_C
#include "includes.h"
unsigned char adc_mux = 0x01 ;
/******************************************************************************/
/******************************************************************************/
void init_adc(void)
{
//WDR(); //看门狗计数清零
//WDTCR=0x0F; //使能watchdog,并且,采用2048K分频,典型溢出时间5V时2.1S
// ADCSRA=0X00;
ADCSR = 0x00;
//ADMUX =(adc_mux&0x1f)|(1<<REFS0)|(1<<REFS1); //参考电压为内部2.56
ADMUX =(adc_mux&0x1f)|(1<<REFS0); //参考电压为内部AVCC
//ADMUX =(adc_mux&0x1f); //参考电压为引脚AREF
ADCSR=(1<<ADEN)|(1<<ADSC)|(1<<ADIE)|(1<<ADPS2)|(1<<ADPS1) ;//64分频
asm("sei");
//UBRRH = 25;
//UBRRL = 25;
//UCSRB=0x18;
//UCSRC=0x86;
/*
ADCSR = 0x00; //disable adc
ADMUX = 0x00; //select adc input 0
ACSR = 0x80;
ADCSR = 0xEE;
*/
}
//ADC完成中断
/******************************************************************************/
#pragma interrupt_handler adc_isr:15
void adc_isr(void)
{
//conversion complete, read value (int) using...
// value=ADCL; //Read 8 low bits first (important)
// value|=(int)ADCH << 8; //read 2 high bits and shift into top byte
ADMUX =(adc_mux&0x1f)|(1<<REFS0)|(1<<REFS1);
ADCSR|=(1<<ADSC);//启动AD转换
}
/******************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -