一个基于AT89S52单片机的无线智能小车 L298N驱动两个电机 请大家帮我看看程序 程序在下面补充了 太长 5
#include<reg52.h>#defineucharunsignedcharsbitLED1=P0^0;//红灯sbitLED2=P0^1;//黄灯sbitLED3...
#include<reg52.h>
#define uchar unsigned char
sbit LED1=P0^0; //红灯
sbit LED2=P0^1; //黄灯
sbit LED3=P0^3; //绿灯
sbit PA=P2^4; //无线D0口
sbit PB=P2^5; //无线D1口
sbit PC=P2^6; //无线D2口
sbit PD=P2^7; //无线D3口
sbit m1s1=P2^0; //信号输入IN1口 电机
sbit m1s2=P2^1; //信号输入IN2口
sbit m2s1=P2^2; //信号输入IN3口
sbit m2s2=P2^3; //信号输入IN4口
void delay(uchar z)//延时1ms
{
uchar x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void B_motor(uchar temp) //后电机的控制,0:前进。1:后退。2:停止
{
if(temp==0) // 前进
{
m1s1=1;
m1s2=0;
}
if(temp==1) // 后退
{
m1s1=0;
m1s2=1;
}
if(temp==2) // 停止或者是停机
{
m1s1=m1s2=0;
}
}
void F_motor(uchar temp)
{
if(temp==0) //前轮左拐
{
m2s1=0;
m2s2=1;
}
if(temp==1) //前轮右拐
{
m2s1=1;
m2s2=0;
}
if(temp==2) //前轮停止
{
m2s1=m2s2=0;
}
}
void main()
{
while(1)
{
if(PA==1)
{
B_motor(0);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
if(PB==1)
{
B_motor(1);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
if(PC==1)
{
B_motor(0);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
if(PD==1)
{
B_motor(2);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
}
}
车子是前后车轮的那种 前面的轮子 管方向 后面的驱动轮子跑 请高手多指教 万分感谢 也可以留下QQ 语音辅导下
无线用的是PT2262 2272 非锁的那种 展开
#define uchar unsigned char
sbit LED1=P0^0; //红灯
sbit LED2=P0^1; //黄灯
sbit LED3=P0^3; //绿灯
sbit PA=P2^4; //无线D0口
sbit PB=P2^5; //无线D1口
sbit PC=P2^6; //无线D2口
sbit PD=P2^7; //无线D3口
sbit m1s1=P2^0; //信号输入IN1口 电机
sbit m1s2=P2^1; //信号输入IN2口
sbit m2s1=P2^2; //信号输入IN3口
sbit m2s2=P2^3; //信号输入IN4口
void delay(uchar z)//延时1ms
{
uchar x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void B_motor(uchar temp) //后电机的控制,0:前进。1:后退。2:停止
{
if(temp==0) // 前进
{
m1s1=1;
m1s2=0;
}
if(temp==1) // 后退
{
m1s1=0;
m1s2=1;
}
if(temp==2) // 停止或者是停机
{
m1s1=m1s2=0;
}
}
void F_motor(uchar temp)
{
if(temp==0) //前轮左拐
{
m2s1=0;
m2s2=1;
}
if(temp==1) //前轮右拐
{
m2s1=1;
m2s2=0;
}
if(temp==2) //前轮停止
{
m2s1=m2s2=0;
}
}
void main()
{
while(1)
{
if(PA==1)
{
B_motor(0);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
if(PB==1)
{
B_motor(1);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
if(PC==1)
{
B_motor(0);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
if(PD==1)
{
B_motor(2);
F_motor(2);
}
else
{
B_motor(2);
F_motor(2);
}
}
}
车子是前后车轮的那种 前面的轮子 管方向 后面的驱动轮子跑 请高手多指教 万分感谢 也可以留下QQ 语音辅导下
无线用的是PT2262 2272 非锁的那种 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询