实验五-步进电机控制(1)Word格式文档下载.doc

上传人:b****1 文档编号:13082096 上传时间:2022-10-04 格式:DOC 页数:18 大小:547KB
下载 相关 举报
实验五-步进电机控制(1)Word格式文档下载.doc_第1页
第1页 / 共18页
实验五-步进电机控制(1)Word格式文档下载.doc_第2页
第2页 / 共18页
实验五-步进电机控制(1)Word格式文档下载.doc_第3页
第3页 / 共18页
实验五-步进电机控制(1)Word格式文档下载.doc_第4页
第4页 / 共18页
实验五-步进电机控制(1)Word格式文档下载.doc_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

实验五-步进电机控制(1)Word格式文档下载.doc

《实验五-步进电机控制(1)Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《实验五-步进电机控制(1)Word格式文档下载.doc(18页珍藏版)》请在冰豆网上搜索。

实验五-步进电机控制(1)Word格式文档下载.doc

转动方向标志(1:

表示顺时针方向)

33H->

下次送给步进电机值

5->

步进电机转速

初始化8255(PC口输出)

初始化8253(计数器T0设置在模式2状态,BCD码计数,CLK0/210)

初始化8259(允许8253中断)

初始化8253中断向量

初始化显示缓冲区:

(数码管第8位:

0,顺时针方向;

5、7位消隐;

6位:

转速;

1、2、3、4位:

0,表示连续转动,其他值表示需要转动的步数)

调用显示子程序

有键按下

需要刷新显示标志=1

调用步数调整子程序

关中断(终止步进电机转动)

数码管的1、2、3位->

2、3、4位

键值送给数码管的第一位

调用改变转向子程序

键值>

9

键值=0AH

调用增速子程序

调用减速子程序

调用启动步进电机子程序

键值=0BH

键值=0CH

键值=0DH

开始

改变方向子程序:

转动方向标志=0

91H->

下次送给步进电机值循环右移二次

转动方向标志

送给数码管的第7位

下次送给步进电机值循环左移二次

返回

启动步进电机子程序:

取转动步数

取转速对应的延时值(转速延时)

初始转速延时1=初始转速延时

转速延时<

50

初始转速延时=50

开中断

初始转速延时=转速延时

增速子程序:

转速=11

转速+1

转速送给数码管第5位

减速子程序:

转速=0

转速-1

定时中断程序:

初始转速延时1=转速延时

初始转速延时-1=0

初始转速延时1-1

初始转速延时=初始转速延时1

1-1

下次送给步进电机值循环右移一次

转动步数=0

需要刷新显示标志转动步数减一

关中断

清中断标志

下次送给步进电机值循环左移一次

下次送给步进电机值->

8255的PC口(控制步进电机转动一步)

六、实验原理图

七、实验步骤

1、主机连线说明:

E1区:

A、B、C、D

——

B4区:

PC0、PC1、PC2、PC3

E5区:

CLK

B2区:

2M

CS、A0

A3区:

CS5、A0

G5区:

B3区:

CS1、A0

INT、INTA

ES8688:

INTR、INTA

C5区:

CS(8253)、A0、A1

CS2、A0、A1

GATE0

C1区:

VCC

CLK0

1M

OUT0

IR0

CS(8255)、A0、A1

CS3、A0、A1

2、调试程序,查看运行结果是否正确

八、演示程序

.MODEL

TINY

EXTRN

Display8:

NEAR,SCAN_KEY:

NEAR

IO8259_0

EQU

0F000H

IO8259_1

EQU

0F001H

Con_8253

0E003H

T0_8253

0E000H

IO8255_Con

0D003H

;

CS3

IO8255_PC

0D002H

.STACK

100

.DATA

StepControl

DB

下一次送给步进电机的值

buffer

8DUP(0)

显示缓冲区,8个字节

buffer1

SpeedNo

选择哪一级速度

StepDelay

0

转动一步后,延时常数

StartStepDelay

0;

若选择速度过快,延时由长到短,最终使用对应延时常数

StartStepDelay1

bFirst

有没有转动过步进电机

bClockwise

0 ;

=1顺时针方向=0逆时针方向转动

bNeedDisplay

已转动一步,需要显示新步数

StepCount

DW

需要转动的步数

StepDelayTab:

250,125,83,62,50,42,36,32,28,25,22,21

.CODE

START:

MOV

AX,@DATA

MOV

DS,AX

ES,AX

NOP

bFirst,1

bClockwise,1

顺时针方向

StepControl,33H

SpeedNo,5

第五级速度

CALL

Init8255

Init8253

Init8259

WriIntver

buffer,0

显示缓冲器初始化

buffer+1,0

buffer+2,0

buffer+3,0

buffer+4,10H

MOV

AL,SpeedNo

buffer+5,AL

buffer+6,10H

buffer+7,0

STAR2:

LEA

SI,buffer

LEA

DI,buffer1

CX,8

REP

MOVSB

SI,buffer1

Display8

STAR3:

Scan_Key

JB

STAR5

CMP

bNeedDisplay,0

JZ

STAR3

Step_SUB_1

JMP

STAR2

STAR5:

CLI

终止步进电机转动

AL,10

JNB

STAR1

AH,buffer+2

buffer+3,AH

AH,buffer+1

buffer+2,AH

AH,buffer

buffer+1,AH

buffer,AL

STAR1:

CMP

AL,14

SI,DriverTab

SUB

SHL

AL,1

XOR

AH,AH

BX,AX

JMP

CS:

[SI+BX]

DriverTab:

Direction

转动方向

Speed_up

提高转速

Speed_Down

降低转速

Exec

步进电机根据方向、转速、步数开始转动

Direction:

bClockwise,0

Clockwise

buffer+7,1

AntiClockwise:

bFirst,0

AntiClockwise1

StepControl,91H

Direction1

AntiClockwise1:

AL,StepControl

ROR

AL,2

StepControl,AL

Clockwise:

bClockwise,1

Clockwise1

Clockwise1:

ROL

Direction1:

Speed_up:

AL,11

JZ

Speed_up2

Speed_up1:

INC

AL

SpeedNo,AL

Speed_up2:

Speed_Down:

AL,0

Speed_Down1

DEC

Speed_Down1:

Exec:

TakeStepCount

BX,StepDelayTab

XLAT

StepDelay,AL

AL,50

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 冶金矿山地质

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1