|
使用AT89S52+L297+L298控制步进电机,在步进电机的起点和返回点各有一个光电开关,另外在外面还有一光电开关是用来触发电机起动的。
动作是:系统通电,电机没有动作----光电开关给一个“1”------电机正转运行-------运行到返回点----返回点的光电开关给一个“1”--------电机反转-----反转回到起点-----起点的光电开给一个“1”-----电机停止。直到下一个触发信号到来,再有动作。
1,在这里,所有的光电开关是用C集电极输出信号,常态是开关通的,通过E发射极接地,给P口一个“0”。
2,有一个难点,需要编程解决:在返回起点,光电开关会给停止信号,而且电机还在起点位置,这个信号就一直存在,会和启动的光电开关信号有冲突。
3,各个接口在AT89S52上的定义是:启动光电开关(P2.0),起点光电开关(P2.1),返回点光电开关(P2.2),ENABLE-MCU(P.3),RST-MCU(P2.4),CW/CCW-MCU(P2.5),HALF/FULL-MUC(P2.6),CLK-MCU(P2.7)。
4,由于有L297的存在,单片机不需要考虑相顺序的问题,在编程时,内容少些。
以上的编程有那位高手能帮下,C或汇编都行。 祝各位新春快乐!!!!!!!!! |
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|