机器人擂台赛51程序.doc

机器人擂台赛51程序.doc

ID:59521832

大小:25.50 KB

页数:7页

时间:2020-11-06

机器人擂台赛51程序.doc_第1页
机器人擂台赛51程序.doc_第2页
机器人擂台赛51程序.doc_第3页
机器人擂台赛51程序.doc_第4页
机器人擂台赛51程序.doc_第5页
资源描述:

《机器人擂台赛51程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、/*机器人擂台赛51程序*****************************************//*使用芯片:AT89S52或者STC89C52或AT89S51STC89C51*//*晶振:11.0592MHZ****************************************//*编译环境:Keil*************************************//*作者:wangzhianyuhao******************************//*时间:*************************

2、************//*机器人底座四个角下面各有一个灰度传感器,正前面对称安装两个红外传感器,后面,左面右面个一个传感器*//*电机电压为12V直流减速电机,驱动为L298N模块*//*程序应尽量避免电机转向的突然变化,电机为高速蜗杆减速电机,转速高,电压高,突然转向容易闪火花,烧坏电机*/#include#defineucharunsignedchar#defineuintunsignedint#defineconP0ucharsj,sec,count;ucharsj1,sec1,count1;ucharsj2,sec2,coun

3、t2;ucharsj3,sec3,count3;ucharsj4,sec4,count4;ucharsj5,sec5,count5;uinta,b,m;/*==============机器人电路接线图=====================*//*四个灰度传感器,从左到右,序号从0到3,为P2口的低四位,遇到遮挡物返回为低电平*/sbitf0=P2^7;sbitf1=P2^6;sbitf2=P2^5;sbitf3=P2^4;/*五个红外传感器,从左到右,序号从0到3,为P2口的高四位,检测到目标后返回是低电平*/sbitf4=P2^3;sbitf5=P2

4、^2;sbitf6=P2^1;sbitf7=P2^0;sbitf8=P1^3;intz[]={0xaa,0x55,0x5a,0xa5,0xe5,0xb5,0xad,0xa7,0xda,0x7a,0x5e,0x5b};//z[0]前进0xaa,二进制为//z[1]后退0x55,二进制为//z[2]左转0x5a,二进制为//z[3]右转0xa5,二进制为//z[4]沿左后轮顺时针转0xe5,二进制为//z[5]沿左前轮顺时针转0xb5,二进制为//z[6]沿右前轮顺时针转0xad,二进制为//z[7]沿右后轮顺时针转0xa7,二进制为//z[8]沿左后轮逆时针

5、转0xda,二进制为//z[9]沿左前轮逆时针转0x7a,二进制为//z[10]沿右前轮逆时针转0x5e,二进制为//z[11]沿右前轮逆时针转0x5b,二进制为inthdjc();//灰度检测inthwjc();//红外检测voidzttz();//姿态调整voidxzsm();//扫描voidxzsm1();//旋转扫描voidjingong();//进攻voiddelay(uinti);voidmain(){m=0;sec1=2;//一秒count1=0;//1代表10微秒,sj1=20*sec1+count1;//左转时间sec2=2;count2

6、=0;sj2=20*sec2+count2;//前进时间sec3=2;count3=0;sj3=20*sec3+count3;//扫描前进时间sec4=3;count4=0;sj4=20*sec4+count4;//扫描旋转时间sec5=1;count5=10;sj5=20*sec5+count5;//扫描旋转时间TMOD=0x01;IE=0x82;TH0=(65536-50000)/256;TL0=(65536-50000)%256;//左转45度/*con=z[2];count=0;sec=0;//秒置0TR0=1;//定时器1开始工作do{a=hdj

7、c();//灰度检测b=hwjc();//红外检测sj=sec*20+count;}while((a==0)&&((b==0)

8、

9、(b==4))&&(sj<=sj1));TR0=0;//定时器1停止工作*///前进到擂台中间con=z[0];count=0;sec=0;//秒置0TR0=1;//定时器1开始工作do{a=hdjc();//灰度检测b=hwjc();//红外检测sj=sec*20+count;}while((a==0)&&(b==0)&&(sj<=sj2));TR0=0;//定时器1停止工作a=hdjc();b=hwjc();while(1)

10、{if((a==0)

11、

12、(a==5)

13、

14、(a==8)){if(b=

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

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

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