/*********************************************************************************************************
** 工程功能 :串口通信程序
** 工程作者 :Blue Sky Teams——ZZL
** 工程版本 :V1.0
*********************************************************************************************************/
#include<STC12C5A60S2.h>
#include<LCD1602.h>
#include<ADC.h>
#define uchar unsigned char
#define uint unsigned int
#define FSCLK 11059200
//#define FSCLK 12000000
/*********************************************************************************************************
** 函数功能 :延时函数
** 函数说明 :利用软件延时,占用CPU,经调试最小单位大约为1ms
** 入口参数 :time:需要延时的时间,单位ms
** 出口参数 :无
*********************************************************************************************************/
void Delay_ms(uint time)
{
uint i,j;
for(i = 0;i < time;i ++)
for(j = 0;j < 930;j ++);
}
void main()
{
float res0,res1;
LCD_1602_Init(); //液晶显示前进行初始化
ADC_Init(ADC_PORT0 | ADC_PORT1); //配置通道P1^0 ,P1^1 为AD采集口,如要配置其他其他口,直接用或运算加进初始化函数中
Write_1602_String("ADC TEST",0xc0 + 0x04);
while(1)
{
res0=GetADCResult(ADC_CH0);
Write_1602_String("U0=",0x80);
Write_1602_Data(0x30 + (uint)res0%10);
Write_1602_Data('.');
Write_1602_Data(0x30 + (uint)(res0*10)%10);
Write_1602_Data(0x30 + (uint)(res0*100)%10);
Write_1602_Data('V');
res1=GetADCResult(ADC_CH1);
Write_1602_String("U1=",0x88);
Write_1602_Data(0x30 + (uint)res1%10);
Write_1602_Data('.');
Write_1602_Data(0x30 + (uint)(res1*10)%10);
Write_1602_Data(0x30 + (uint)(res1*100)%10);
Write_1602_Data('V');
Delay_ms(1000);
}
}
/************************** (C) COPYRIGHT 2011 Blue Sky Teams *****END OF FILE*****************************/
|