求避障小车的程序 20
各位大侠,本人要用单片机弄个避障小车,单片机是AT89C51芯,前左右三个红外避障感应器,两个进步机(两轮驱动)…麻烦各位大侠帮忙弄个完整的C需要程序,最好有中文注释……...
各位大侠,本人要用单片机弄个避障小车,单片机是AT89C51芯,前左右三个红外避障感应器,两个进步机(两轮驱动)…麻烦各位大侠帮忙弄个完整的C需要程序,最好有中文注释……谢谢啦
展开
展开全部
#include<reg52.h> //添加函数库
#define uint unsigned int //宏定义
#define uchar unsigned char //宏定义
sbit s=P3^5; //定义红外避障检测端口
sbit m1=P3^4; //定义电机M1电平输出端口
sbit m2=P3^6; //定义电机M2电平输出端口
void delay_ms(uint z); //声明延时函数
main() //主函数
{
uint i=0; //初始值设定
m1=1;
m2=1;
while(1) //无限循环
{
if(s==0) //S=0表示前方有障碍物 进行转向
{
for(i=0;i<5;i++)
{
m1=0;
m2=1;
delay_ms(15); //状态保持15ms
m1=1;
m2=1;
delay_ms(5); //状态保持5ms
}
}
if(s==1) //S=1表示前方无障碍物 直线行驶
{
m1=1;
m2=1;
delay_ms(10); //状态保持10ms
}
}
}
void delay_ms(uint z) //延时函数 循环嵌套原理
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
#define uint unsigned int //宏定义
#define uchar unsigned char //宏定义
sbit s=P3^5; //定义红外避障检测端口
sbit m1=P3^4; //定义电机M1电平输出端口
sbit m2=P3^6; //定义电机M2电平输出端口
void delay_ms(uint z); //声明延时函数
main() //主函数
{
uint i=0; //初始值设定
m1=1;
m2=1;
while(1) //无限循环
{
if(s==0) //S=0表示前方有障碍物 进行转向
{
for(i=0;i<5;i++)
{
m1=0;
m2=1;
delay_ms(15); //状态保持15ms
m1=1;
m2=1;
delay_ms(5); //状态保持5ms
}
}
if(s==1) //S=1表示前方无障碍物 直线行驶
{
m1=1;
m2=1;
delay_ms(10); //状态保持10ms
}
}
}
void delay_ms(uint z) //延时函数 循环嵌套原理
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
XX的这么简单也问!你们是搞比赛的,不要混啊。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我正在毕设做的就是这个,到软件部分了,不怎么会编啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询