武汉理工大学《微机原理与接口技术》课程设计说明书
STA DW 50 DUP(?) TOP EQU LENGTH STA STACK ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START: MOV AX,DATA
MOV DS,AX
CLI CLD
MOV AX,0 MOV ES,AX MOV DI,90H*4 MOV AX,OFFSET INT0 STOSW
MOV AX,SEG INT0 STOSW MOV DI,91H*4 MOV AX,OFFSET INT1 STOSW
MOV AX,SEG INT1 STOSW MOV DI,92H*4 MOV AX,OFFSET INT2 STOSW
MOV AX,SEG INT2 STOSW
MOV AL,00110111B OUT 17H,AL MOV AL,00H
;关中断 ;填写中断向量表 填写90H中断地址
填写91H中断地址
填写92H中断地址
;8253初始化 设置计数器0,工作方式3,BCD21
计数,计数值为2500
武汉理工大学《微机原理与接口技术》课程设计说明书
OUT 14H,AL MOV AL,25H OUT 14H,AL MOV AL,01110111B OUT 17H,AL MOV AL,00H OUT 15H,AL MOV AL,10H OUT 15H,AL MOV AL,10010001 B OUT 17H,AL MOV AL,20H OUT 16H,AL
MOV AL,10000000 B OUT 0BH,AL
MOV AL,00010011 B OUT 00H,AL
MOV AL,10010000 B OUT 01H,AL
MOV AL,00000001 B OUT 01H,AL
MOV AL,11111000 B OUT 01H,AL
STI A1: JUMP A1 DONE: MOV AX,4C00H
INT 21H
CODE ENDS END START
设置计数器1,工作方式3,BCD计数,计数值为1000
设置计数器2,工作方式2,BCD计数,计数值为20
;8255初始化,A口,工作方式0,输出;8259初始化,ICW1:上升沿有效,单片;ICW2:设置中断类型号为90H ;ICW4 ;OCW1:只对IR0,IR1,IR2响应
;循环等待 22
;开中断武汉理工大学《微机原理与接口技术》课程设计说明书
附录二(中断子程序)
(1)IRO中断程序:退出程序 INT0 PROC FAR
JMP DONE
(2)IR1中断程序:延时作用,LED不刷新数据 INT1 PROC FAR
PUSH AX ;保护现场 PUSH CX PUSHF
MOV AL,11111100 B ;禁止响应IR2 OUT 01H,AL
MOV CX,500H ;延时程序 A1:LOOP A1
AND AL,11111000 B ;可响应IR2 OUT 01H,AL
POPF ;还原现场 POP AX POP CX
IRET ;返回
(3)IR2中断程序:显示当前计数器2的CLK2的计数值 INT2 PROC FAR
PUSH AX ;保护现场 PUSHF
MOV AL,10000000 B ;锁存计数器2的计数值
23
武汉理工大学《微机原理与接口技术》课程设计说明书
OUT 17H,AL
IN AL,16H ;读取计数值低8位 MOV CL,AL IN AL,16H
MOV CH,AL ;读取计数值高8位
MOV AL,CL ;将计数值低8位送至8255的A口,显示数值 OUT 08H,AL
POPF ;还原现场 POP AX
IRET ;返回
参考文献
[1]周佩玲.微机原理与接口技术.电子工业出版社 [2]李骊.微型计算机硬件技术试验教程.机械工业出版社 [3]郑学坚等.微型计算机原理及应用指导.清华大学出版社
24
武汉理工大学《微机原理与接口技术》课程设计说明书
[4]周明德.微型机原理与接口技术.清华大学出版社
[5]刘乐善等.微型计算机接口技术与应用.华中理工大学出版社 [6]李大友.微机原理与接口技术.清华大学出版社
[7]钱晓捷.16/32位微机原理 、汇编语言及接口技术.机械工业出版社 [8]邹逢兴. 计算机硬件技术基础.国防科技大学出版社
[9]马维华.从8086到Pentium III微型计算机原理及接口技术.科学出 版社
致谢
在两个星期的课程设计中,充分的感受到查阅资料的艰辛,和完成任务之后的成就感,这个过程是对自己的一个考验,同时也学会了团队合作的重要性。
在此要感谢徐汉斌老师,因为他的讲授,让我体会到《微机原理与接口技
25