|
我是个小白,因为要做的模型里需要单片机控制步进电机,所以最近抱佛脚学习了一下,虽然让步进电机动了起来,但是我改了好久也没法控制改变方向,我外面的电路是单片机的P1^0口接了驱动器的PUL-,P1^1口接了驱动器的DIR-,PUL+和DIR+共阳极接+5v,驱动器接的是单轴四线的步进电机
下面是我编的程序,我的目的是想让它先朝一个方向走,5s后改变方向朝另一个方向走,我对速度没有要求,只希望它可以改变方向就好,因为晚上就要交,所以时间很赶,希望各位大神能帮帮忙,帮我看一下出问题的原因以及如何改正,感激不尽
#include <reg52.h>
sbit PUL=P1^0;
sbit DIR=P1^1;
unsigned int time;
void Time1Config();
void main(void)
{
DIR=0;
TMOD=0x01;
TH0=(65536-100)/256;
TL0=(65536-100)%256;
EA=1;
ET0=1;
TR0=1;
while(1);
{
if(time%50000==0&&time!=0)
DIR=1;
}
}
void Time1Config() interrupt 1
{
TH0=(65536-100)/256;
TL0=(65536-100)%256;
if(PUL) PUL=0;
else PUL=1;
time++;
}
|
|