请高手帮忙AT89C2051+L9110驱动步进电机的问题
时间:10-02
整理:3721RD
点击:
用2051最小系统加L9110驱动一个2相4线步进电机,不知为啥电机不能工作。
用的是SP200SE编程器(伟纳编程器)烧录程序。程序能正常烧录进去,但就是电机不工作。
请各位高手指点一下,不知是程序问题,还是烧写有问题。
这个程序用于STC89C52RC就可以运行,还是用L9110驱动,步进电机可以转起来.
另外,这个2051的最小系统没有外接上拉电阻,会不会与这个有关?我是将P1^7\P1^6\P1^5\P1^4作为控制信号输出I\O口.
图片分别是2051最小系统、编程器和缓冲器编译。
源程序如下:
#include <reg52.h>
unsigned char code F_Rotation[]={0xf1,0xf5,0xf4,0xf6,0xf2,0xfa,0xf8,0xf9}; //正转表格 半步方式
//--------------------------------------------------------------------
//延时函数,延时时间由cnt决定
//--------------------------------------------------------------------
void delay(unsigned long cnt)
{
while(cnt--);
}
main()
{
unsigned char i;
while(1)
{
P1 = F_Rotation;
i++;
if(i > 7)i=0;
delay(10);
}
}
用的是SP200SE编程器(伟纳编程器)烧录程序。程序能正常烧录进去,但就是电机不工作。
请各位高手指点一下,不知是程序问题,还是烧写有问题。
这个程序用于STC89C52RC就可以运行,还是用L9110驱动,步进电机可以转起来.
另外,这个2051的最小系统没有外接上拉电阻,会不会与这个有关?我是将P1^7\P1^6\P1^5\P1^4作为控制信号输出I\O口.
图片分别是2051最小系统、编程器和缓冲器编译。
源程序如下:
#include <reg52.h>
unsigned char code F_Rotation[]={0xf1,0xf5,0xf4,0xf6,0xf2,0xfa,0xf8,0xf9}; //正转表格 半步方式
//--------------------------------------------------------------------
//延时函数,延时时间由cnt决定
//--------------------------------------------------------------------
void delay(unsigned long cnt)
{
while(cnt--);
}
main()
{
unsigned char i;
while(1)
{
P1 = F_Rotation;
i++;
if(i > 7)i=0;
delay(10);
}
}
和我的烧写器一样。这个芯片我用过,加我详谈QQ1552985179
是不是需要加上拉电阻?
不是不工作,以前我也做过,转的很慢,不把盖打开,基本看不到,