【文件属性】:
文件名称:12为AD采样
文件大小:8KB
文件格式:TXT
更新时间:2016-06-07 19:13:45
ad采样
12位ad采样通过不同通道的采样
// C8051F020 AD采集示例程序
//*******************************************************************
// C8051F020 AD采集
//*******************************************************************/
/************************预定义************************************/
#i nclude
#i nclude
#i nclude
#i nclude
/*******************************************************************
定义IO口和变量
*******************************************************************/
sbit LCDBUSY = P3^0; //LCD忙信号位
sbit REQ = P3^1; //LCD请求信号位
sbit RES = P3^2; //LCD复位信号位
sfr16 ADC0 = 0xbe;
unsigned int xdata ADC0_data1[800]; //AD通道一采集数据存放数组
unsigned int xdata ADC0_data2[800]; //AD通道二采集数据存放数组
unsigned int data ADC0_data_n; //AD采集次数
unsigned int data ADC0_data_n1; //通道一采集次数
unsigned int data ADC0_data_n2; //通道二采集次数
bit m;//AD采集完标志
/*******************************************************************
函数声明
*******************************************************************/
void Sjcl(void);//AD采集完100次数据处理函数
void ADC0_ISR(void);//ADC0中断函数声明
void write_data(unsigned char writedata);//写数据到LCD
void send_ascii8(unsigned char x,unsigned char y,unsigned char
ascii);//显示8*8ASCII
/********************************************************************
子函数定义
********************************************************************/
void delay_us(int timer)//us沿时
{
timer*=20;//时钟周期调整
for(;timer>0;timer--)
_nop_();
}
void delay_ms(int i)//ms沿时
{
for(;i>0;i--)
delay_us(1000);
}
void lcd_init(void)//lcd初始化
{
RES=0;
delay_ms(20);
RES=1;
REQ=0;
LCDBUSY=0;
}
/********************************************************************
系统初始化函数