打印
[MCU]

求一个汇编语言控制程序

[复制链接]
588|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wyjie|  楼主 | 2019-12-18 19:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
控制四相六线步进电机,求一个汇编语言控制程序
步进电机采用四相六线,步距角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口对不对?
不知道我的思路对不对?

使用特权

评论回复

相关帖子

沙发
dengdc| | 2019-12-18 20:04 | 只看该作者
齿盘转动的速度不固定会不会使结果不正确呢

使用特权

评论回复
板凳
wuhany| | 2019-12-18 20:07 | 只看该作者
应该可以,就怕光耦有干扰

使用特权

评论回复
地板
lizye| | 2019-12-18 20:09 | 只看该作者

把光电传感器接到P13口感觉可行

使用特权

评论回复
5
jiahy| | 2019-12-18 20:12 | 只看该作者
步进电机的启动频率比较低,能否满足要求。

使用特权

评论回复
6
shimx| | 2019-12-18 20:16 | 只看该作者
光耦输入最好用外部中断,加软硬件去干扰,另外齿盘的转速不能超过步进电机的起点速度。

使用特权

评论回复
7
wyjie|  楼主 | 2019-12-18 20:25 | 只看该作者

嗯,我多注意

使用特权

评论回复
8
shimx| | 2019-12-18 20:27 | 只看该作者
直接用C语言写不就可以了么

使用特权

评论回复
9
jiaxw| | 2019-12-18 20:31 | 只看该作者
发到外包板块就有人接了。

使用特权

评论回复
10
buffered| | 2019-12-29 10:52 | 只看该作者
汇编不熟,都是用的C语言

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

927

主题

12706

帖子

5

粉丝