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

📄 ad.c

📁 用凌阳单片机编的一个带AD采集
💻 C
字号:

//========================================================================================
//文件名称:AD.c
//描述:建立AD转换模块
//========================================================================================
#define P_ADC_MUX_Ctrl			(volatile unsigned int *)0x702B   
#define P_ADC_LINEIN_Data		(volatile unsigned int *)0x702C
#define P_ADC_Ctrl				(volatile unsigned int *)0x7015
#define ClearWDog   (*((volatile unsigned char *) 0x7012))=1
#define	P_IOA_Data 				(volatile unsigned int *)0x7000   
#define P_IOA_Buffer 			(volatile unsigned int *)0x7001
#define P_IOA_Dir 				(volatile unsigned int *)0x7002
#define P_IOA_Attrib 			(volatile unsigned int *)0x7003
#define P_IOA_Latch 			(volatile unsigned int *)0x7004 
#define		C_ADCE					0x0001 
#define		C_ADC_CH1				0x0001 			//IOA0
//========================================================================================
//函数名称 :    int F_AD_Ctrl()
//描述     :   控制发光二极管的亮灭
//入口参数 :   无
//出口     :   从IOA0口输入的电压值
//========================================================================================
int AD(void);
float F_AD_Ctrl(void)
{
    int i=0,k[3];//j=0,
    float fVolVal=0.0;
	
    unsigned int uiData; 
    long int uiData1=0;
   	k[0]=*P_IOA_Dir;
	k[1]=*P_IOA_Attrib;
	k[2]=*P_IOA_Buffer;
	if((*P_IOA_Dir)&0x1==0x1)  *P_IOA_Dir=(0xfffe)&*P_IOA_Dir;
	if((*P_IOA_Attrib)&0x1==0x1)  *P_IOA_Attrib=(0xfffe)&*P_IOA_Attrib;
	if((*P_IOA_Data)&0x1==0x1)  *P_IOA_Data=(0xfffe)&*P_IOA_Data;   
	*P_ADC_MUX_Ctrl=C_ADC_CH1;				//LINE_IN-------IOA0
	*P_ADC_Ctrl= C_ADCE;					//ADC enable 
	uiData=*P_ADC_LINEIN_Data;				//ADC start
	for(i=0;i<20;i++)
	{
	uiData=AD();
	uiData1=uiData1+uiData;	
	
	}
	
	uiData=uiData1/20;
    fVolVal=(float)uiData*3.3/0xffc0;
    *P_IOA_Dir=k[0];
	*P_IOA_Attrib=k[1];
	*P_IOA_Data=k[2];   
    return fVolVal;
    ClearWDog ;

}
int AD(void)
{
	unsigned int uiData;
	while(!(*P_ADC_MUX_Ctrl&0x8000));		//wait,until ADC complete  
    uiData=*P_ADC_LINEIN_Data; 
	return(uiData&0xffc0);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -