98dian 发表于 2006-11-11 18:33:44

请教个步进电机驱动问题(L297+L298)

现在要用L297+L298来控制电机,但目前电机还动不了,不知道是什么原因.上电后电机有点抖动,不知道是不是L297初始化问题,我初始化程序如下:

        rst=1;               //复位

        delay();

        rst=0;

        delay();

        rst=1;

        cw=1;                                //电机方向

        ctl=0;                                //控制INH1、INH2

        hf=1;                                //全阶梯工作

        en=1;                                //启动



经过这样初始化后我在主程序里就是给时钟脉冲了,但电机就是不动,有时在抖动,是什么原因?是硬件问题还是软件问题?硬件用了典型的接法,只是把几个大功率电阻去掉了,因我现在只是在实验阶段.请用过高手指点,谢谢

主程序(测试程序)如下:

while(1)

{

clk=0;

delay();

clk=1;

delay();

}

zhouyh 发表于 2006-11-11 18:59:03

delay();多少?启动频率太高就抖动,设计一个频率曲线试试

98dian 发表于 2006-11-12 00:53:39

目前在实验中,当前延时程序如下:

void delay(void)

{

        int j,k;

        for(j=0;j<200;j++);

        for(k=0;k<200;k++);

}



这种现像是属于延时不够吗?我也试过调用两次延时还是一样,会不会硬件有问题?
页: [1]
查看完整版本: 请教个步进电机驱动问题(L297+L298)