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

📄 adinit.c

📁 C8051F120 _AD开发过程中的一些代码和文档
💻 C
字号:
void ADC0_Conver (void)
{
   	unsigned char m;
   	unsigned  int temp;
	char data SFRPAGE_SAVE = SFRPAGE;        
	SFRPAGE = SFR_PAGE_0;                   
	for(m=0;m<4;m++)
	{
    	AMX0SL = m;					// 设置mux到通道
    	
    	Delay_us(20);
    	AD0INT = 0;                 // 清除ADC转换完成标志
    	AD0BUSY = 1;
    	
    	while (!AD0INT);
    	temp = ADC0H;
		temp = temp*256+ADC0L;
    	result[m]=temp;             // 读ADC值
   	}
	SFRPAGE = SFRPAGE_SAVE;         // Restore SFR page
}

void ADC0_Init (void)
{
	char data SFRPAGE_SAVE = SFRPAGE;     
	SFRPAGE = SFR_PAGE_0;      
	ADC0CN = 0x40;     	    //关闭ADC0; 低能追踪模式
                     		//DC0使用AD0BUSY作为转换源;
			   	            //使用右对齐输出模式
	AMX0CF=0X00;		    //全部采用单端输入方式
	REF0CN = 0x03;		    //关闭温度传感器, 使用片上VREF,
                            //VREF输出缓存器
	AMX0SL = 0x00;          //选择AIN0作为ADC mux输出
    
	//ADC转换时钟= 2.5MHz,系统时钟11.0592*9MHz
	ADC0CF =0x90;
	//PGA放大倍数=1
	EIE2   &= (~0x02);			        //关闭ADC中断
	SFRPAGE = SFRPAGE_SAVE;             
}

⌨️ 快捷键说明

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