标题:
单片机避障小车代码
[打印本页]
作者:
cls();
时间:
2019-1-11 12:25
标题:
单片机避障小车代码
一种可调速避障小车源程序
单片机源程序如下:
#include "reg52.h" //此文件中定义了单片机的一些特殊功能寄存器
#include<intrins.h> //因为要用到左右移函数,所以加入这个头文件
#include "Timer.h"
typedef unsigned int u16; //对数据类型进行声明定义
typedef unsigned char u8;
sbit leftmoto1 = P1^7;
sbit leftmoto2 = P1^6;
sbit rightmoto1=P1^5;
sbit rightmoto2=P1^4;
sbit L1 = P1^3;
sbit L2 = P1^2;
sbit R1=P1^0;
sbit R2=P1^1;
//#define Leftmotogo {left-moto1= 0 ;left-moto2= 1 ; };
//#define Leftmotoback {left-moto1= 1 ;left-moto2= 0 ; };
//#define Leftmotostop {left-moto1= 1 ;left-moto2= 1 ; };
//#define Rightmotogo {right-moto1= 0 ;right-moto2= 1 ;};
//#define Rightmotoback {right-moto1= 1 ;right-moto2= 0 ; };
//#define Rightmotostop {right-moto1= 1 ;right-moto2= 1 ; };
void run()
{
leftmoto1= 1 ;
leftmoto2= 0 ;
rightmoto1= 1 ;
rightmoto2= 0 ; //正转
}
void left()
{
leftmoto1= 0 ;
leftmoto2= 1 ; //左轮反转
rightmoto1= 1 ;
rightmoto2= 0 ; //右轮正转
}
void right()
{
leftmoto1= 1 ;
leftmoto2= 0 ; //左轮正转
rightmoto1= 0 ;
rightmoto2= 1 ; //右轮反转
}
void stop()
{
leftmoto1= 1 ;
leftmoto2= 1 ;
rightmoto1= 1 ;
rightmoto2= 1 ;
}
void back()
{
leftmoto1= 0 ;
leftmoto2= 1 ;
rightmoto1= 0 ;
rightmoto2= 1 ;
}
void delay_ms(u16 x)
{ while(x--);
// unsigned int i,j;
// for(i = x;i > 0;i--)
// {
// for(j = 10 ;j > 0;j--);
// }
}
void main()
{
ENA = 1 ;
ENB = 1 ;
while(1)
{
InitTimer0();
while(1)
{
if(L1&&L2&&R1&&R2) run();
if((!L1)&&(!L2)&&R1&&R2) //right();
{
stop();
//delay_ms( 1 );
right();
}
if(L1&&(!L2)&&R1&&R2)
{
stop();
//delay_ms( 1 );
right();
}
if((!L1)&&L2&&R1&&R2)
{
stop();
//0delay_ms( 10 );
right();
}
if((!L1)&&(!L2)&&(!R1)&&R2)
{
stop();
//delay_ms( 1 );
right();
}
if(L1&&L2&&R1&&(!R2))
{
stop();
//delay_ms( 1 );
left();
}
if(L1&&L2&&(!R1)&&R2)
{
stop();
left();
}
if(L1&&L2&&(!R2)&&(!R2))
{
stop();
left();
}
if(L1&&(!L2)&&(!R1)&&(!R2))
{
stop();
left();
}
if((!L1)&&(!L2)&&(!R1)&&(!R2))
{
stop();
back();
}
}
}
}
复制代码
所有资料51hei提供下载:
小车.zip
(28.5 KB, 下载次数: 8)
2019-1-11 12:24 上传
点击文件名下载附件
keil 4源程序
下载积分: 黑币 -5
作者:
admin
时间:
2019-1-11 15:30
需要补全原理图即可获得100黑币+
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1