本人用51单片机、电机驱动芯片A3977控制两相步进电机,出现了如下问题:电机是1.8度的,8细分,因此转一圈需要(360/1.8)×8=1600步,连续转1600步时,电机能转回到原点;我需要单步控制,使电机转16次回到原点,则每次按键电机转360/16=22.5度,因此单步控制时电机一次走1600/16=100步,每次按键按下,电机走100步,之后进入休眠状态,直到下一次按键按下再唤醒电机,这样操作,电机走完16次之后却回不到原点,而如果电机不进入休眠状态,则能回到原点。请高手指点会是什么原因呢? |