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

📄 adc0804.c

📁 这个是自己编的一个简单的AD转换的程序。
💻 C
字号:
/*****************************************************************/ 
/*                                                               */                                                                
/*名称:                 AD转换+显示程序                         */                                                                                                                                                                           
/*功能:           读取当前输入的转换电压,由P1显示出来。    */                                                    
/*难度等级:                   中                                */                                                                     
/* 作者:                  51kaifa                               */
/* 版权:           http://www.51kaifa.com                       */
/*编写日期:        2006.05.19                                   */                                                                                                                                                                                                             
/*****************************************************************/

#include<reg52.h>
#define  uchar  unsigned char
//uchar dispbuf[8]; //显示缓冲区  
//数码管显示的段码表
//uchar code table[18] ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

sbit _Led1 = P0^0;				//对应CPU管脚P1.0
sbit _Led2 = P0^1;				//对应CPU管脚P1.1                 

/*****************************延时函数**************************/

void delay (unsigned int us)  
{
  while(us--);
}

/******************************显示+读键*************************/

/*void ledscan()
{  unsigned char i;  
      P2 = 0XEF;
    for(i=0;i<2;i++){
       P0 = table[dispbuf[i]]; //取一行显示数据
       delay(200);    
       P2 <<=1;
     }
    P2 = 0XFF;	   
}*/


/*******************0804转换程序********************/
void  ADC0804(void)
{  uchar adc0804value;
   P1 = 0xff;//向ADC0804发任何数据,0804开始转换
   WR = 0;
   WR = 1;
   delay(300);//等待转换完成
   RD = 0;
   adc0804value=P1;//读取转换后的值
   RD = 1;
 	     delay(100);
   	   	_Led1 = 0;				//点亮LED1,熄灭LED2,LED3,LED4
   	   	_Led2 = 1;
    //dispbuf[1] = (uchar)(adc0804value*0.365)/10;  //10
   //dispbuf[0] = (uchar)(adc0804value*0.365)%10;  //1

   }


/*******************************主函数***********************/

main()
{ uchar i;   
 // for(i=0;i<8;i++)
//   dispbuf[i] = 17;
  while(1){
   for(i=0;i<10;i++)
     ledscan(); //显示,读键扫描 
     ADC0804();
   }
}

/********************************结束************************/

⌨️ 快捷键说明

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