📄 adc0809.c
字号:
#include<Reg51.h>
#include<absacc.h>
#include<intrins.h>
#define nop _nop_()
#define uchar unsigned char
#define uint unsigned int
#define CH0 XBYTE[0xEEF8] /*ADC0809地址*/
#define CH1 XBYTE[0xEEF9]
#define CH2 XBYTE[0xEEFA]
#define CH3 XBYTE[0xEEFB]
#define CH4 XBYTE[0xEEFC]
#define CH5 XBYTE[0xEEFD]
#define CH6 XBYTE[0xEEFE]
#define CH7 XBYTE[0xEEFF]
sbit NEOC=P3^3; //AD0809的NEOC 端接单片机P33线
uchar AD_DAT;
uchar AD0809(uchar ADChanel)
{
switch(ADChanel)
{
case(0):
CH0=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH0; //从AD0809采集数据到CPU
return AD_DAT;
break;
case(1):
CH1=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH1; //从AD0809采集数据到CPU
return AD_DAT;
break;
case(2):
CH2=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH2; //从AD0809采集数据到CPU
return AD_DAT;
break;
case(3):
CH3=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH3; //从AD0809采集数据到CPU
return AD_DAT;
break;
case(4):
CH4=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH4; //从AD0809采集数据到CPU
return AD_DAT;
break;
case(5):
CH5=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH5; //从AD0809采集数据到CPU
return AD_DAT;
break;
case(6):
CH6=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH6; //从AD0809采集数据到CPU
return AD_DAT;
break;
case(7):
CH7=0; //CH0可以=任意值,此处只是为了使单片机向外输出,触发 Wr
nop;
while(NEOC);
AD_DAT=CH7; //从AD0809采集数据到CPU
return AD_DAT;
break;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -