欢迎来到天天文库
浏览记录
ID:38750458
大小:29.50 KB
页数:4页
时间:2019-06-18
《小车壁障自动计数小车程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#defineucharunsignedchar#defineuintunsignedintucharcodetable[]="LIUZUQIANG";ucharcodetable0[]="BIZHANG:";ucharcodetable1[]={'0','1','2','3','4','5','6','7','8','9'};sbitlcdrs=P2^0;sbitlcdrw=P2^1;sbitlcden=P2^2;sbitENA=P1^0;sbitENB=P1^1;sbitA1=P1^2;sbitA2=
2、P1^3;sbitB1=P1^4;sbitB2=P1^5;sbitred1=P3^0;sbitred2=P3^1;ucharnum=0;uinttemp=0;/*******************延时函数***********************/voiddelay(uintz){uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}/****************LCD1602写指令程序*****************/voidwrite_com(ucharcom){lcdrs=0;lcdrw
3、=0;P0=com;delay(10);lcden=1;delay(10);lcden=0;}/****************LCD1602写数据程序*****************/voidwrite_data(uchardate){lcdrs=1;lcdrw=0;P0=date;delay(10);lcden=1;delay(10);lcden=0;}/********************初始化函数*******************/voidinit(){ENA=1;ENB=1;A1=0;A2=0;B1=0;B2=0;lc
4、den=0;write_com(0x38);//设置16X2显示,5X7点阵,8位数据接口write_com(0x0c);//设置开显示,设置不显示光标,设置光标不闪烁write_com(0x06);//设置读一个字符后地址指针加一,且光标加一write_com(0x01);write_com(0x80+0x02);//设置开始读字符的地址for(num=0;num<12;num++){write_data(table[num]);delay(10);}write_com(0x80+0x41);//换行地址指针delay(5);for(n
5、um=0;num<10;num++){write_data(table0[num]);delay(10);}}/****************小车壁障计数函数******************/voidjishu(){ucharqian,bai,shi,ge;write_com(0x80+0x4b);//设置每次计数地址指针delay(10);qian=temp/1000;write_data(table1[qian]);bai=temp%1000/100;write_data(table1[bai]);delay(10);shi=t
6、emp%100/10;write_data(table1[shi]);delay(10);ge=temp%10;write_data(table1[ge]);delay(10);if(temp==9999){temp=0;}}/******************小车壁障函数*********************/voidbizhang(){A1=1;A2=0;B1=1;B2=0;if(!red1){A1=1;A2=0;B1=0;B2=1;delay(120);while(!red1);temp++;}if(!red2){A1=0;A
7、2=1;B1=1;B2=0;delay(120);while(!red2);temp++;}}/****************壁障小车主函数*******************/voidmain(){init();while(1){bizhang();jishu();}}
此文档下载收益归作者所有