微型计算机控制系统课程方案
课 程 设 计
课程名称 微型计算机控制系统
题目名称 步进电机角度控制(1)
学生学院 自动化学院
专业班级
学 号
学生姓名
指导教师
2013 年 6 月 21 日
目 录
一、 设计目的…………………………………………………………3
二、 设计要求…………………………………………………………3
三、 题目分析、流程图及源程序……………………………………4
1、题目1 A/D转换及数码管的显示……………..………………………………..5
2、题目2 步进电机的角度控制………………………………………………6
四、 问题与讨论………………………………………………………15
五、 实训心得…………………………………………………………15
六、 参考文献…………………………………………………………15
三、题目分析、流程图及源程序
题目1:读取电位器的电压值并转换成数字量,数字值随电压值的改变而改变,数字量范围为0-FF,电位器电压输出范围为0-5V.
实现程序如下:
STACK SEGMENT
DW 256 DUP(?)
STACK ENDS
PUBLIC VALUE
DATA SEGMENT
VALUE DB ?
VAR1 DB 01H,03H,02H,06H,04H,0CH,08H,09H ;步进电机的走步
VAR2 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H ;数码管的段选
VAR3 DB 0FEH,0FDH,0FBH,0F7H ;数码管的位选
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
;8255初始化
MOV AL,88H
MOV DX,0606H
OUT DX,AL
MOV BX,0000H ;;;;;;;;;;;;;;;;;;;;;;;;;BX清零
AA9:
MOV DX,0640H
OUT DX,AL
CALL DALLY
IN AL,DX ;;;;;;;;;;;;;;;;;;;;;AD转换结果存在AL中
MOV VALUE,AL
MOV DL,AL
AND AL,0FH
MOV BL,AL
MOV BH,00H
CALL DISP
MOV AL,DL
AND AL,0F0H
SHR AL,4
MOV BL,AL
MOV BH,00H
CALL DIR
; MOV DX,0604H ;;;;;;;;;;;;;;;;;;;;输出到B口
; OUT DX,AL
; CALL TIME
JMP AA9
;a/d转换的延时函数
DALLY: PUSH CX
PUSH AX
MOV CX,0050H
A5: MOV AX,0200H
A6: DEC AX
JNZ A6
LOOP A5
POP AX
POP CX
RET