微机原理课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
合肥工业大学
计算机与信息学院
课程设计
课程:微机原理与接口技术设计专业班级:计算机科学与技术班
学号:2
姓名:
一、设计题目及要求:
利用 8259A中断,实现对8253多种计数初值的设定:
1.在中断服务程序中设定8253的计数初值。
2.开关K1用于设定秒方波的计数初值,K2用于设定1秒方波的计数初值,K3用于设定2秒方波的计数初值。
3.用8253的输出信号,控制一个发光二极管,以演示修改效果。
二、设计思想:
整体设计:
①利用8259A芯片设定IR1、IR2、IR3三个中断,分别用三个开关的高低电平触发中断。
②在三个终端的中断服务子程序里面为8253芯片通道0设定不同频率的方波计数初值,使得在触发不同中断时8253芯片产生周期为秒、1,秒、2秒的方波。
③将8253的输出端口与发光二极管连接,通过二极管的亮灭显示出8253内部方波的频率。
部分设计:
①8253芯片方式3初值确定:根据分频电路T(n)=T/2*公式以及、1s、2s方波的频率计算出初值分别为2580H、4B00H、9600H。
②8253芯片和8259芯片的片选方法:设定8259A和8253芯片的端口号分别为0FFE0H 、0FFE1H,以及0FFFCH—0FFFFH,使得在连接138译码器时,A连A2,B连A3,C连A4,T0连接8259A芯片的CS端,T7连接8253芯片的CS端。
③8259A中断向量表写入以及芯片初始化:根据8259A各个中断在中断向量表中的地址,将IR0、IR1、IR2的中断服务程序入口地址写入向量表中;ICW4设定除中断0、1、2外其他位屏蔽。
④手动设置中断结束:为了不影响各个中断之间的交替响应,在每个中断服务程序结束之前写入中断结束方式,将20H输出到8259端口,将当前中断结束响应后再响应下一个中断。
三、功能流程图:
四、结果讨论:
附录:实验代码:(完整的源程序)CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE
ORG 3400H
Port0 EQU 0FFE0H ;8259芯片的端口号Port1 EQU 0FFE1H
START:
CALL F8259
P0: CLI
MOV AX,OFFSET INT0
MOV BX,0020H
MOV [BX],AX
MOV BX,0022H
MOV AX,0000H
MOV [BX],AX
STI
P1: CLI
MOV AX,OFFSET INT1
MOV BX,0024H
MOV [BX],AX
MOV BX,0026H
MOV AX,0000H
MOV [BX],AX
;CALL F8259
STI
P2: CLI
MOV AX,OFFSET INT2
MOV BX,0028H
MOV [BX],AX
MOV BX,002AH
MOV AX,0000H
MOV [BX],AX
; CALL F8259
STI
P:
JMP P
;------------------------------------
F8259: MOV AL,1BH ;8259的初始化00011011 icw1 MOV DX,Port0
OUT DX,AL
MOV AL,08H ;00001000 icw2
MOV DX,Port1
OUT DX,AL
MOV AL,01H ;00000001 icw4
OUT DX,AL
MOV AL,00H ;屏蔽只留IR0,IR1,IR2。OCW1 OUT DX,AL
RET
;---------------------------
INT0: CLI
CALL FB0
STI
MOV DX,Port0
MOV AL,20H
OUT DX,AL
IRET
INT1: CLI
CALL FB1
STI
MOV DX,Port0
MOV AL,20H
OUT DX,AL
IRET
INT2: CLI
CALL FB2
STI
MOV DX,Port0
MOV AL,20H
OUT DX,AL
IRET
FB0: MOV DX,0FFFFH
MOV AL,00110110B OUT DX,AL
MOV AL,80H
MOV DX,0FFFCH
OUT DX,AL
MOV AL,25H
OUT DX,AL
RET
FB1: MOV DX,0FFFFH
MOV AL,00110110B OUT DX,AL
MOV AL,00H
MOV DX,0FFFCH
OUT DX,AL
MOV AL,4bH
OUT DX,AL
RET
FB2: MOV DX,0FFFFH
MOV AL,00110110B OUT DX,AL
MOV AL,00H
MOV DX,0FFFCH
OUT DX,AL
MOV AL,96H
OUT DX,AL
RET
;--------------------------DONE:
CODE ENDS
END START