基于51单片机的红外遥控智能小车源程序(c语言)

基于51单片机的红外遥控智能小车源程序(c语言)

ID:32636303

大小:109.65 KB

页数:7页

时间:2019-02-14

基于51单片机的红外遥控智能小车源程序(c语言)_第1页
基于51单片机的红外遥控智能小车源程序(c语言)_第2页
基于51单片机的红外遥控智能小车源程序(c语言)_第3页
基于51单片机的红外遥控智能小车源程序(c语言)_第4页
基于51单片机的红外遥控智能小车源程序(c语言)_第5页
资源描述:

《基于51单片机的红外遥控智能小车源程序(c语言)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、/*预处理命令*/#includc//包含单片机寄存器的头文件#include//包含_nop_()函数定义的头文件#dcfincucharunsignedchar#defineuintunsignedintdefinedelayNOP();{_nop_();_nop_();_nop_();_nop_();};sbitIRIN=P3A2;〃红外接收器数据线sbitLCD_RS=P0A7;sbitLCD.RW=P0A6;sbitLCD_EN=POT;ucharbegin[]={nMycar!'*};ucharcdisl[]={"jians

2、u!”};ucharcdis2[]={*'qianjin!”};ucharcdis3[]={,,jiasu!,,J;ucharcdis4[J={Hzuozhuang!H);ucharcdis5[]={nSTOP!n};ucharcdis6[]={nyouzhuan!n);ucharcdis8[l={Hdaoche!H};sbitMl=P1AO;sbitM2=P1A1;sbitM3=P1A2;sbitM4=P1A3;sbitEN12=P1A4;sbitEN34=P1A5;uchar1RCOM[7J;ucharm.n;uchart=2;ucharg;ucharcodedigit[

3、]={H0123456789J;uintv;ucharcount;bitflag;voiddelayxms(uchart);voiddelay(unsignedcharx);voiddelay1(intms);voidmotor();voidlcd_display();严检查LCD忙状态lcd.busy为1时,忙,等待oled-busy为0时,闲,可写指令与数据*/bitlcd_busy(){bitresult;LCD_RS=0;LCD.RW=1;LCD.EN=1;delayNOP();result=(bit)(PO&0x80);LCD.EN=0;return(result)

4、;}写指令数据到LCDRS=L,RW=L,脉冲,D0-D7=指令码*/voidlcd_wcmd(ucharcmd)while(lcd.busyO);LCD.RS=0;LCD_RW=0;LCD.EN=0;_nop_();_nop_();P2二cmd;delayNOP();LCD.EN=1;dclayNOP();LCD.EN=0;}写显示数据到LCDRS=H,RW=L,E二高脉冲,D0-D7=数据*/voidlcd_vdat(uchardat){while(lcd_busy());LCD.RS=1;LCD_RW=0;LCD.EN=0;P2=dat;dclayNOP();LCD_

5、EN=1;delayNOPO;LCD_EN=0;LCD初始化设定*/voidIcdjnit()〃16吃显示,5*7点阵,8位数据{delayl(15);lcd_wcmd(()x38);delay1(5);lcd_wcmd(0x38);delayI(5);lcd_wcmd(0x38);delay1(5);lcd_wcmd(0x0c);delay1(5);lcd_wcmd(0x06);delayI(5);lcd_wcmd(0x01);delay1(5);}〃显示开,关光标〃移动光标〃淸除LCD的显示内容设立显示位置*/voidlcd_pos(ucharpos){lcd_wcmd(

6、pos

7、0x80);〃数据指针二80+地址变量/*x显示速度提示符宕/voiddisplay_sym(void)Icd_pos(0x00);lcd_wdat(,v,);Icd.vvdatC-);)/*显示速度数值*/voiddisplay_vel(uintx){ucharij,kj;i二x/1000;〃取千位j=(x%1000)/100;〃取冇位k=(x%100)/10;〃取十位】=x%10:〃取个位lcd_pos(0x02);lcd_wdat(digit[i]);lcd_wdat(digit

8、j]);lcd_wdat(digit[k]);lcd_wdat(digit[l])

9、;}/*显示速度单位*/voiddisplay_unit(void){lcd_pos(0x06);lcd.wdatCr*);lcd_wdat(7‘);lcd.wdatCm*);lcd_wdal(T);lcd_wdat(,n,);)/*主函数*/

10、Ir^TwvT*"T*"T*"T*"T*•T*avoidmain(){uinta;IRIN=1;//I/O口初始化IE=()x83;〃允许总中断中断,使能INTO外部中断TCON二TCON

11、0x01;〃触发方式为脉冲负边沿触发

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。