循迹小车问题:电机工作车轮不转

qq_52231426 2020-12-23 11:19:02
各位前辈,我刚刚做的c51循迹小车,我个人认为程序没有问题,线的连接也没有问题,但是不知道为什么,供能后电机在工作但是轮子不转。不过当我把固定单片机的开关松了一半左右后,右轮就动了,左轮偶尔会动但比右轮满了许多。不知道是怎么回事,希望各位大佬帮我看看怎么回事。


以下是我的程序:
#include "reg52.h"


sbit IN1 = P1^1;
sbit IN2 = P1^2;
sbit IN3 = P1^3;
sbit IN4 = P1^4;
sbit ENA = P1^0;//×óμ??úê1?ü
sbit ENB = P1^5;//óòμ??úê1?ü
sbit lse1 = P3^2;//×ó±?oìía′??D?÷
sbit lse2 = P3^3;//óò±?oìía′??D?÷


#define uchar unsigned char
#define uint unsigned int


unsigned char zkb1 = 0;//×óμ??ú????±è
unsigned char zkb2 = 0;//óòμ??ú????±è

int t = 0;


void PIT_Init()
{
EA = 1;
TMOD |= 0x01;
TH0 = (65536 - 200) / 256;
TL0 = (65536 - 200) % 256;
ET0 = 1;
TR0 = 1;
}


void timer()interrupt 1//interrrupt 1?a?ú2??D??£?0?aía2??D??
{
TH0 = (65536-200)/256;
TL0 = (65536-200)%256;

if(t<zkb1)
{
ENA = 1;
}
else
{
ENA = 0;
}

if(t<zkb2)
{
ENB = 1;
}
else

{
ENB = 0;
}

t = (t + 1) %50;
}



void delay(uint i)
{
while(i--);

}





void forward()
{
zkb1=10;
zkb2=10;
IN1=1;
IN2=0;
IN3=1;
IN4=0;
}
void stop()
{
zkb1=0;
zkb2=0;
IN1=0;
IN2=0;
IN3=0;
IN4=0;

}
void turnleft()
{
zkb1=15;
zkb2=15;
IN1=0;
IN2=1;
IN3=1;
IN4=0;
}
void turnright()
{
zkb1=15;
zkb2=15;
IN1=1;
IN2=0;
IN3=0;
IN4=1;
}






void xunji()
{

if((lse1==0)&&(lse2==1))
{
turnleft();//×ó±??ì2aμ?oú??
}
else if((lse1==1)&&(lse2==0))
{
turnright(); //óò±??ì2aμ?oú??
}
else if((lse1==1)&&(lse2==1))
{
forward();//á?±?????óDoú??
}
else
{
stop();//??óDoú??£??íí£?1
}



}
void main()
{
PIT_Init();
forward();
while(1)
{
xunji();//?-?£
}
}
...全文
7145 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
13248 2023-06-27
  • 打赏
  • 举报
回复

有可能时端口输出的电压不能到5v,stc89c52的电气特性好像是大于5v为1,小于0v为0

qq_52231426 2020-12-24
  • 打赏
  • 举报
回复
把固定单片机的开关松一点轮子就能动一下
qq_52231426 2020-12-24
  • 打赏
  • 举报
回复
引用 1 楼 yishumei的回复:
从照片看,可能是轮子别卡住了
前辈,轮子没有卡
yishumei 2020-12-24
  • 打赏
  • 举报
回复
从照片看,可能是轮子别卡住了
yishumei 2020-12-24
  • 打赏
  • 举报
回复
引用 3 楼 qq_52231426 的回复:
把固定单片机的开关松一点轮子就能动一下
那就把小车架起来,改主程序,前进转向等功能一个一个试 例如 void main() { PIT_Init(); while(1) { forward(); } } 只测试前进,看看轮子的状态是否和预期相同
qq_52231426 2020-12-24
  • 打赏
  • 举报
回复
引用 1 楼 yishumei的回复:
从照片看,可能是轮子别卡住了
前辈轮子没有卡

27,508

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧