📄 adc1.c
字号:
/*******************************************************************************
**
** 文 件:ADC1.C
** 功 能:ADC1(8位)
** I / O:ADC输入AIN0,内部电压基准
********************************************************************************/
#include<c8051f020.h>
void clock(void);
void xbrs(void);
void adcs(void);
void delay(long int);
void yan50m(unsigned char);
void senddata(unsigned char,unsigned char);
void setoff();
void adc0int (void) interrupt 17
{
unsigned long int d;
unsigned int c1,c2,c3,d2;
d2=ADC1;
d=d2;
d=d*240;
d=d/256;
c3=d/100;
c2=(d%100)/10;
c1=d%10;
c3=c3+0x80;
senddata(1,c1);
senddata(2,c2);
senddata(3,c3);
ADC1CN&=0xDF;
}
main()
{
clock();
xbrs();
adcs();
setoff();
EIE2|=0x08;
EA=1;
TMOD=0x10;
while(1)
{
ADC1CN|=0x10;
yan50m(20);
}
}
void clock(void) //clock det
{
unsigned char e;
WDTCN=0xde; //CLOSE WDOG
WDTCN=0xad;
OSCXCN=0x67; //ENABLE EXTERNAL CLK
delay(10000);
delay(10000);
e=!OSCXCN&0x80;
while(e);
OSCICN|=0x08;
}
void xbrs(void) //XBR set
{
XBR2=0x40;
P1MDOUT=0xFF;
}
void adcs(void) //ADC0 set
{
AMX1SL=0x00; //use AIN0 as a input ADC port
// AMX1CF=0x00;
ADC1CN=0x80;
ADC1CF=0x58;
REF0CN=0x03;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -