资源描述
南通大学计算机科学与技术学院
微机原理课程设计
报 告 书
课 题 名 利用D/A芯片实现电机转速控制
班 级 电112
姓 名
学 号 1112021051
指导教师 华 琇
日 期 2011.12.31 ~ 2012.1.7
16
目录
一、 概述
1.1 实验目的及要求··················3
1.2 课程设计所用软硬件··············3
二、 实验过程及体会
2.1设计原理与硬件电路··············3
2.2程序流程图······················5
2.3程序代码························6
2.4程序集硬件系统调试情况·········13
2.5设计总结与体会·················13
三、 实验
3.1实验成果·······················13
3.2实验分工·······················14
3.3参考文献·······················15
一、 概述
1.1目的及要求
利用D/A0832芯片实现电机转速控制,要求通过输入选择电机转速的档位,并且用七段数码管显示电机档位。
1.2课程设计所用软硬件
PC机、Proteus软件
二、 实验过程及体会
2.1设计电路与硬件电路
(1)设计思路
本次实验要求设计利用D/A芯片实现电机转速控制,因此要用到电机与D/AC0832芯片,要控制电机转速,因此我们选择按键控制电机转速,初步准备设计电机有4个档位,全部用按键控制,按下1键表示一档,按下2键表示二档,按下3档表示三档,按下4键表示四档,其中一档转速最快,然后依次递减。因此,总的设计思路是用8086输出各种控制信号,用可编程并行接口芯片8255扫描键盘,当有有限按键按下时有8255输出数字信号到D/AC0832,然后由D/AC0832将数字信号转换为模拟信号,输出到电机,再有8255输出数字量到七段数码管,用七段数码管显示按下的档位,即电机转速。
(2)硬件电路
由设计思路在Proteus上画出电路图,译码电路如下:
8255控制电路如下
键盘如下
D/AC0832数模转换电路如下
2.2程序流程图
2.3程序代码
AA EQU 0200H
BB EQU 0202H
CC EQU 0204H
CTR EQU 0206H
CODE SEGMENT'code'
ASSUME CS:CODE
STRING DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H
START:
MOV DX,CTR
MOV AL,10000001B
OUT DX,AL
MOV DX,AA
MOV AL,00000000B
OUT DX,AL
MOV AL,00H
MOV DX,BB
OUT DX,AL
BEG:
CALL INPUT
CMP AL,1
JZ ONE
CMP AL,2
JZ TWO
CMP AL,3
JZ THREE
CMP AL,4
JZ FOUR
cmp al,5
jz five
JMP BEG
ONE:
MOV BX,OFFSET STRING
XLAT
MOV DX,AA
OUT DX,AL
MOV AL,0FFH
MOV DX,BB
OUT DX,AL
CALL DELAY
JMP BEG
TWO:
MOV BX,OFFSET STRING
XLAT
MOV DX,AA
OUT DX,AL
MOV AL,0C0H
MOV DX,BB
OUT DX,AL
CALL DELAY
JMP BEG
THREE:
MOV BX,OFFSET STRING
XLAT
MOV DX,AA
OUT DX,AL
MOV AL,80H
MOV DX,BB
OUT DX,AL
CALL DELAY
JMP BEG
FOUR:
MOV BX,OFFSET STRING
XLAT
MOV DX,AA
OUT DX,AL
MOV AL,40H
MOV DX,BB
OUT DX,AL
CALL DELAY
JMP BEG
five:
MOV BX,OFFSET STRING
XLAT
MOV DX,AA
OUT DX,AL
MOV AL,00H
MOV DX,BB
OUT DX,AL
CALL DELAY
JMP BEG
INPUT PROC NEAR
MOV DX,CC
MOV AL,0
OUT DX,AL
NO_KEY:
IN AL,DX
AND AL,0FH
CMP AL,0FH
JZ NO_KEY
MOV DX,CC
IN AL,DX
AND AL,0FH
CMP AL,0FH
JZ NO_KEY
MOV BH,0
MOV SI,5
MOV CH,11101111B
AGAIN0:
MOV AL,CH
MOV DX,CC
OUT DX,AL
IN AL,DX
MOV DL,0
AGAIN:
TEST AL,01H
JZ DONE
SHR AL,1
INC DL
CMP DL,5
JNZ AGAIN
ROL CH,1
INC BH
DEC SI
CMP SI,0
JNZ AGAIN0
DONE:
SAL DL,1
SAL DL,1
ADD DL,BH
MOV AL,DL
RET
INPUT ENDP
DELAY PROC
PUSH CX
MOV CX,125
LOOP $
POP CX
RET
DELAY ENDP
CODE ENDS
END START
2.4程序集硬件系统调试情况(见附页)
2.5设计总结与体会(见附页)
三、实验
3.1实验成果
当按下按键1时,可以看到七段数码管显示档位1以及电机转动:
以下依次,
通过以上电路显示可以看到,随着档位的调节,电机转速逐渐递减,一档最快,四档最慢,即电路实现了用按键控制电机转速的功能。
3.2实验分工
本次实验我们小组有三名成员,作为组长,张操同学在实验前对各个成员进行了分工,其中,张操同学负责查资料,解决试验中出现的问题困难;李洋洋同学负责硬件电路的搭建作图;赵航同学负责代码的编写;最后一起进行实验的调试及运行。我们觉得,实验分工是正确的,这样才能把各个小组成员积极性调动起来,促进实验的完成。
3.2参考资料
[1]顾晖 梁惺寥 微机原理与接口技术——基于8086和Proteus仿真 北京:电子工业出版社 p113~p137
[2]徐晨,陈继红,王春明,徐慧编著 微机原理及应用 北京:高等教育出版社 2004
[3]何小海,严华主编 微机原理与接口技术 北京:科学出版社 2006
[4]参考网站:baidu,百度文库,百度知道,中国电子电路网等等。
展开阅读全文