⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adc0809.c

📁 用于数模转换的c语言程序设计
💻 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 + -