📄 jin.asm
字号:
;*------------------------------------------------------*
;* StepM.asm(步进电机控制接口实验) *
;* 步进电机控制程序 Source File *
;* Copyright (c) 2001 by HUST *
;* Modify Date 2005.4.10 *
;*------------------------------------------------------*
code segment
assume cs:code,ds:code
org 100h
start:jmp begin
psta db 05h,15h,14h,54h,50h,51h,41h,45h ;相序表
message db 'Press sw2 to start !' ;系统提示
db 0dh,0ah
db 'If you want to quit,press sw1!'
db 0dh,0ah,'$'
begin: mov ax,cs
mov ds,ax
mov ah,09h ;显示提示信息
mov dx,seg message
mov ds,dx
mov dx,offset message
int 21h
mov dx,303h ;初始化8255A
mov al,81h
out dx,al
mov al,09h ;置PC4=1关闭74LS373
out dx,al
reload: mov si,offset psta ;设相序表指针
mov cx,8 ;设8拍循环次数
L: mov dx,302h ;查SW2按下?(PC1=0 )
in al,dx
and al,02h ;未按下,等待
jnz L
mov dx,303h ;置PC4=0,打开74LS37
mov al,08h
out dx,al
lop: mov dx,302h ;查SW1按下?(PC0=0 ?)
in al,dx
and al,01h
jz quit ;已按下,退出
mov al,[si] ;未按下,送相序代码到PA口
mov dx,300h
out dx,al
mov di,0afh
mov bx,0ffffh ;延时
delay: dec bx
jnz delay
dec di
jnz delay
inc si ;相序表指针+1
dec cx ;循环次数-1
jnz lop ;未到8次,继续
jmp reload ;已到8次,重新赋值
quit: mov dx,303h ;置PC4=1,关闭74LS373
mov al,09
out dx,al
mov ah,4ch ;程序退出
int 21h
code ends
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -