资源描述:
《基于51的查询测速程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、/*功能:查询方式的检测使用芯片:AT89S52或者STC89C52或AT89S51STC89C51晶振:12MHZ#include#defineucharunsignedchar#defineuintunsignedint//==============LCD1602接口连接方法=====================/*-----------------------------------------------------
2、DB0-----P0.0
3、DB4-----P0.4
4、RW-------P2.3
5、
6、DB1-----P0.1
7、DB5-
8、----P0.5
9、RS-------P2.4
10、
11、DB2-----P0.2
12、DB6-----P0.6
13、E--------P2.2
14、
15、DB3-----P0.3
16、DB7-----P0.7
17、---------------------------------------------------*///================================================*/#defineLCM_DataP0//LCD1602数据接口#defineBusy0x80//用于检测LCM状态字中的Busy标识sbitLCM_RW=P2^3;//读写控制输入
18、端,LCD1602的第五脚sbitLCM_RS=P2^4;//寄存器选择输入端,LCD1602的第四脚sbitLCM_E=P2^2;//使能信号输入端,LCD1602的第6脚//=================计数传感模块连接=====================/*-----------------------------------------------------
19、VCC-----VCC
20、GND-----GND
21、OUT-------P3.2---------------------------------------------------*/sbi
22、tOUT=P3^2;//**************函数声明***************************************voidWriteDataLCM(ucharWDLCM);//LCD模块写数据voidWriteCommandLCM(ucharWCLCM,BuysC);//LCD模块写指令ucharReadStatusLCM(void);//读LCD模块的忙标voidDisplayOneChar(ucharX,ucharY,ucharASCII);//在第X+1行的第Y+1位置显示一个字符voidLCMInit(void);//LCD初始vo
23、idDelayMs(uintMs);//1MS基准延时程序uinttotal;//***********************主程序******************************main(){TMOD=0x51;//设定T0以工作方式1定时10毫秒LCMInit();//LCD初始total=0;OUT=1;DisplayOneChar(0,0,'T');//显示:TDisplayOneChar(0,1,':');//显示::DisplayOneChar(0,2,total/1000+0x30);//显示十位数据DisplayOneChar(0,3
24、,total/100%10+0x30);//显示个位数据DisplayOneChar(0,4,total/10%10+0x30);//DisplayOneChar(0,5,total%10+0x30);//显示百位数据while(1){OUT==1;if(OUT==0){total++;while(OUT==0);DisplayOneChar(0,0,'T');//显示:TDisplayOneChar(0,1,':');//显示::DisplayOneChar(0,2,total/1000+0x30);//显示十位数据DisplayOneChar(0,3,tota
25、l/100%10+0x30);//显示个位数据DisplayOneChar(0,4,total/10%10+0x30);//DisplayOneChar(0,5,total%10+0x30);//显示百位数据while(OUT==1);}}}/*======================================================================LCM初始化======================================================================*/voidLCMInit(vo
26、id){L