控制四相六线步进电机,求一个汇编语言控制程序

2019-07-14 14:26发布

步进电机采用四相六线,步距角1.8度,半步工作0.9度八拍运行。
接口如下:
P15---启动信号输入
P14---停止信号输入
P13---接光电传感器
P22---输出控制步进电机的A相
P23---输出控制步进电机的B相
P24---输出控制步进电机的C相
P25---输出控制步进电机的D相

如下是我给步进电机八拍运行正向通电顺序:

      P25(D相)、P24(C相)、P23(B相)、P22(A相)
第一步: 0          0           0         1
第二步: 0          0           1         1
第三步: 0          0           1         0
第四步: 0          1           1         0
第五步: 0          1           0         0
第六步: 1          1           0         0
第七步: 1          0           0         0
第八步: 1          0           0         1

使用光电传感器的输出作为脉冲信号,光电接收管的后面加一个三极管做信号放大。光电传感器前有个齿盘,齿空的间隔距离是相等的,要求齿盘每移动一格,光电传感器输出一个脉冲,步进电机移动一个角度0.9度。齿盘转动的速度不固定,可能快也可能慢。步进电机没有转动之前,齿盘一直是转动的,只有按下启动按钮步进电机才开始转动。

我是这样想的:齿盘转动光电传感器产生的脉冲,一直是在高电平与低电平之间循环的,循环的速度跟齿盘转动的速度成正比,这样脉冲的周期也是由齿盘控制的,这样步进电机转动就受控于齿盘。我把光电传感器接到P13口对不对?
不知道我的思路对不对?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。