- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
智能搬运小车程序
#include reg52.h
#define uchar unsigned char
#define uint unsigned int
uchar period1,period2,rate1,rate2,num,single;
bit flag=1; //定义一个布尔变量
sbit pwm1=P1^7; //腰脉冲输出端
sbit pwm2=P1^6; //爪子脉冲输出端
sbit led_left=P1^2;
sbit led_right=P1^1;
sbit weixuan=P2^3;
sbit buter=P3^6; //蜂鸣器
sbit right_A=P2^4;
sbit right_B=P2^5;
sbit left_A=P2^6;
sbit left_B=P2^7;
void shoudong(); //子函数的提前声明
void xunjizidong();
void delay(uchar t) //延时函数
{ uint i;
while(t--)
{ for(i=0;i1000;i++);
}
}
void go_M() //前进
{ right_A=0;
left_A=1;
right_B=1;
left_B=0;
}
void left_M() //左转
{ right_A=0;
left_A=1;
right_B=1;
left_B=1;
}
void right_M() //右转
{ right_A=1;
left_A=1;
right_B=1;
left_B=0;
}
void stop_M() //停止
{ right_A=0;
left_A=0;
right_B=0;
left_B=0;
}
void diaotou() //掉头
{ right_A=0;
left_A=0;
right_B=1;
left_B=1;
}
void return_M() //后退
{ right_A=1;
left_A=0;
right_B=0;
left_B=1;
}
void zhuafanhui() //抓东西并掉头
{ stop_M();
buter=0;
delay(4);
buter=1;
delay(100);
rate1=19; //弯下腰
delay(100);
rate2=20; //爪子合拢
delay(50);
rate1=11; //拿起
delay(100);
diaotou(); //掉头
delay(45);
stop_M();
delay(80);
go_M();
}
void fangfanhui() //放东西并掉头
{ stop_M();
buter=0;
delay(4);
buter=1;
delay(100);
rate1=19; //弯下腰
delay(100);
rate2=15; //爪子张开
delay(50);
rate1=11; //拿起
delay(100);
return_M();
delay(20);
diaotou(); //掉头
delay(45);
stop_M();
delay(80);
go_M();
num=0; //num清零以便下次循环
}
void chuankou_init() //用T2定时器做波特率发生器实现串口通信
{ EA=1;
ES=1;
SM0=0;
SM1=1;
REN=1;
TCLK=1;
RCLK=1;
RCAP2H=0xff; //送垫底数
RCAP2L=0xdc;
TR2=1;
}
void Timer01Init() //T0、T1定时器初始化,用于产生两个舵机的控制脉冲
{ TMOD=0x22;
TH1= 0x9c;
TL1=0x9c;
TH0=0x9c;
TL0=0x9c;
ET1=1;
ET0=1;
EA=1;
TR1=1;
TR0=1;
PT1=1;
PT0=0;
}
void weizhi_init() //舵机位置的初始化
{ rate1=11; //腰竖直
rate2=15; //爪子张开
}
void smg_init(
您可能关注的文档
最近下载
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中考试语文试题 含解析.docx VIP
- 《企业内部控制问题研究—以天方医药为例(论文)》11000字.docx VIP
- 双特变速器培训.pptx
- 助产技术平产接生教案.pdf VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中联考数学试题含解析.docx VIP
- 青岛地铁笔试历年真题.pdf
- 从农业大国到农业强国.doc VIP
- 上海市虹口区新复兴中学2024—2025学年上学期期中考试九年级数学试卷.docx VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中联考化学试题含解析.pdf VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中物理试题含解析.docx VIP
原创力文档


文档评论(0)