欢迎来到天天文库
浏览记录
ID:52686590
大小:138.55 KB
页数:7页
时间:2020-03-29
《基于51单片机的红外遥控智能小车源程序(C语言).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、/*预处理命令*/#include//包含单片机寄存器的头文件#include//包含_nop_()函数定义的头文件#defineucharunsignedchar#defineuintunsignedint#definedelayNOP();{_nop_();_nop_();_nop_();_nop_();};sbitIRIN=P3^2;//红外接收器数据线sbitLCD_RS=P0^7;sbitLCD_RW=P0^6;sbitLCD_EN=P0^5;ucharbegin[]={"Mycar!"};ucharcdis1[]={"j
2、iansu!"};ucharcdis2[]={"qianjin!"};ucharcdis3[]={"jiasu!"};ucharcdis4[]={"zuozhuang!"};ucharcdis5[]={"STOP!"};ucharcdis6[]={"youzhuan!"};ucharcdis8[]={"daoche!"};sbitM1=P1^0;sbitM2=P1^1;sbitM3=P1^2;sbitM4=P1^3;sbitEN12=P1^4;sbitEN34=P1^5;ucharIRCOM[7];ucharm,n;uchart=2;ucharg;ucharcodedig
3、it[]={"0123456789"};uintv;ucharcount;bitflag;voiddelayxms(uchart);voiddelay(unsignedcharx);voiddelay1(intms);voidmotor();voidlcd_display();/*检查LCD忙状态lcd_busy为1时,忙,等待。lcd-busy为0时,闲,可写指令与数据*/bitlcd_busy(){bitresult;LCD_RS=0;LCD_RW=1;LCD_EN=1;delayNOP();result=(bit)(P0&0x80);LCD_EN=0;return(
4、result);}/*写指令数据到LCDRS=L,RW=L,E=高脉冲,D0-D7=指令码*/voidlcd_wcmd(ucharcmd){while(lcd_busy());LCD_RS=0;LCD_RW=0;LCD_EN=0;_nop_();_nop_();P2=cmd;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;}/*写显示数据到LCDRS=H,RW=L,E=高脉冲,D0-D7=数据*/voidlcd_wdat(uchardat){while(lcd_busy());LCD_RS=1;LCD_RW=0;LCD_EN=0;P2=da
5、t;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;}/*LCD初始化设定*/voidlcd_init(){delay1(15);lcd_wcmd(0x38);//16*2显示,5*7点阵,8位数据delay1(5);lcd_wcmd(0x38);delay1(5);lcd_wcmd(0x38);delay1(5);lcd_wcmd(0x0c);//显示开,关光标delay1(5);lcd_wcmd(0x06);//移动光标delay1(5);lcd_wcmd(0x01);//清除LCD的显示内容delay1(5);}/*设定显示位置*/v
6、oidlcd_pos(ucharpos){lcd_wcmd(pos
7、0x80);//数据指针=80+地址变量}/*x显示速度提示符*/voiddisplay_sym(void){lcd_pos(0x00);lcd_wdat('v');lcd_wdat('=');}/*显示速度数值*/voiddisplay_vel(uintx){uchari,j,k,l;i=x/1000;//取千位j=(x%1000)/100;//取百位k=(x%100)/10;//取十位l=x%10;//取个位lcd_pos(0x02);lcd_wdat(digit[i]);lcd_wdat(digit
8、[j]);lcd_wdat(digit[k]);lcd_wdat(digit[l]);}/*显示速度单位*/voiddisplay_unit(void){lcd_pos(0x06);lcd_wdat('r');lcd_wdat('/');lcd_wdat('m');lcd_wdat('i');lcd_wdat('n');}/*主函数*//*******************************************************************/voidmain(){uinta;IRIN=1;//I/
此文档下载收益归作者所有