实验七-8259中断控制器实现
更新时间:2023-09-29 11:04:01 阅读量: 综合文库 文档下载
计算机科学与技术系
实 验 报 告
专业名称 计算机科学与技术 课程名称 微机原理与接口技术 项目名称 8259A中断控制实验
班 级
学 号 姓 名
同组人员 无
实验日期 2016/06/28
一、实验目的与要求
1、了解8259的内部结构,工作原理;了解8259A与8088的接口逻辑;掌握对8259A
的初始化编程方法,了解8088是如何响应中断、退出中断的。
二、实验逻辑原理图与分析(汇编—流程图) 2.1 画实验逻辑原理图
2.2 逻辑原理图分析
实验原理与分析:由于实验中需拨动单脉冲开关,送给8259A的IR0,触发中断,8088计数中断次数,显示于G5区的数码管上。故8259中断控制实验需要8259A芯片,8282地址锁存器,用于8086CPU与8259A芯片地址线的连接,8286收发器用于8086CPU与8259A芯片数据线的连接,通过地址译码器实现片选信号(CS)的选通。
三、 程序分析 3.1程序代码分析
.MODEL TINY
EXTRN Display8:NEAR ;装入外部程序块 IO8259_0 EQU 0F000H IO8259_1 EQU 0F001H .STACK 100 .DATA
BUFFER DB 8 DUP(?) Counter DB ? ReDisplayFlag DB 0 .CODE
START: MOV AX,@DATA
MOV DS,AX MOV ES,AX NOP
CALL Init8259 CALL WriIntver MOV Counter,0 ;中断次数 MOV ReDisplayFlag,1 ;需要显示 STI ;开中断 START1: CMP ReDisplayFlag,0 JZ START1
CALL LedDisplay MOV ReDisplayFlag,0 JMP START1
Init8259 PROC NEAR MOV DX,IO8259_0
mov al,13h ;ICW1:0001 0011 上升沿触发,间隔为8,单片工作故没有ICW3,写ICW4 out dx,al
mov dx,IO8259_1
mov al,08h ;ICW2:0000 1000 中断类型码为:00001,用的中断请求为IR0 out dx,al mov al,09h ;ICW4:0000 1001 000为ICW4的标识码,采用一般嵌套,缓冲方式,正常EOI,8086/8088系统 out dx,al
mov al,0feh ;OCW1:1111 1110 屏蔽其他IR,允许IR0发送中断请求 out dx,al
RET
Init8259 ENDP
WriIntver PROC NEAR PUSH ES MOV AX,0 MOV ES,AX MOV DI,20H ;20H~23H是IR0的矢量地址 LEA AX,INT_0
STOSW ;把INT_0的偏移地址写到ES:DI指向的内存单元中 MOV AX,CS
STOSW ;把段基址存入ES:DI的内存单元中 POP ES RET
WriIntver ENDP
LedDisplay PROC NEAR MOV AL,Counter MOV AH,AL AND AL,0FH ;0000 0001和0000 1111相与为0000 0001 MOV Buffer,AL ;第八位 AND AH,0F0H ;0000 0001和1111 0000想与为0000 0000 ROR AH,4 ;0000 0000 MOV Buffer + 1,AH ;高八位 MOV Buffer + 2,10H ;高六位不需要显示 MOV Buffer + 3,10H MOV Buffer + 4,10H MOV Buffer + 5,10H MOV Buffer + 6,10H MOV Buffer + 7,10H LEA SI,Buffer CALL Display8 RET LedDisplay ENDP
INT_0: PUSH DX PUSH AX MOV AL,Counter ADD AL,1 DAA MOV Counter,AL MOV ReDisplayFlag,1 MOV DX,IO8259_0
MOV AL,20H OUT DX,AL POP AX POP DX IRET END START
初始化8259,初始化命令字ICW1(设置8259的工作方式),ICW2(设置中断类型码),ICW4(方式控制初始化命令字,设置中断结束方式):
Init8259 PROC NEAR ;初始化命令字ICW1,
D0 D1 D2 D3 D4 D5 D6 D7 1 1 0 0 1 0 0 0 写ICW4 单片工作 上升沿触发 特征位
MOV DX,IO8259_0
MOV AL,13H OUT DX,AL
;初始化命令字ICW2,08H中断请求引脚为IR0
D0 D1 D2 D3 D4 D5 D6 D7 0 0 0 0 1 0 0 0 MOV DX,IO8259_1 MOV AL,08H OUT DX,AL
;初始化命令字ICW4,16位8086系统,一般嵌套(D4为0),正常EOI,即中断结束后要求发EOI命令结束中断,并复位ISR(清零)
缓冲方式 D0 D1 D2 D3 D4 D5 D6 D7 1 0 0 1 0 0 0 0 16位系统 正常EOI MOV AL,09H OUT DX,AL
初始化OCW1,设置和清除中断屏蔽寄存器,只响应IR0中断,屏蔽IR1到IR7中断
D0 D1 D2 D3 D4 D5 D6 D7 0 1 1 1 1 1 1 1 初始化命令字ocw2 D0 D1 D2 D3 D4 D5 D6 D7 0 0 0 0 0 1 0 0 四、实验数据和结果分析
4.1 实验结果数据 实验结果: 12 4.2 结果数据分析
单脉冲被按下12次,执行12次中断服务程序,中断程序的功能就是统计中断执行的次数,每按一下单脉冲,Counter就加一次,并通过LED显示,LED只显示低两位,所以实验结果为:12。
五、实验问题分析、思考题与小结
5.1实验问题分析、思考题
在实验进行过程中,老师抛出一个问题是中断发生的地方,第一次实验,大家都没想过这个问题,后来实验课上通过单步执行程序和同学一起讨论,找到了断点处,断点处不固定,只要按下单脉冲(上升沿触发)并单步执行就是执行中断服务程序。 5.2实验小结
通过分支实验,使我熟悉了使用断点、单步进入、单步运行找到断点处,了解了每次中断结束,ISR(中断服务寄存器)的相应位清零,即复位,以及响应中断前要做的工作:关闭中断,保护断点,写中断向量表,即中断服务程序的段基址写入CS、偏移地址写入IP,以便在执行中断服务程序时,找到其入口地址。
正在阅读:
实验七-8259中断控制器实现09-29
【易错题】中考九年级历史上第三单元封建时代的欧洲一模试题(含04-20
夏日画出完美底妆 kevin老师教你04-18
《礼仪争章》活动总结05-05
读《人性的弱点》有感03-08
历年软考程序员考试真题及答案(一)04-17
风机房监控系统操作手册 - 图文10-03
关于中美教育差异的分析报告11-07
与旅行社的谈判方案04-04
妖精的口袋营销战略分析报告书06-20
- 冀教版版五年级科学下册复习资料
- 微生物学复习提纲
- 2013—2014学年小学第二学期教研组工作总结
- 国有土地转让委托服务合同协议范本模板
- 我的固废说明书
- 企业管理诊断报告格式
- 东鼎雅苑施工组织设计
- 谈谈如何做好基层党支部书记工作
- 浮梁县环保局市级文明单位创建工作汇报
- 管理学基础知识
- 大学物理实验报告23 - PN结温度传感器特性1
- 计算机网络实践
- 酒桌上这四种情况下要坐牢,千万别不当回事……
- 国家康居示范工程建设技术要点
- 中国贴布行业市场调查研究报告(目录) - 图文
- 新课标下如何在高中物理教学中培养学生的创新能力初探
- 营养师冬季养生食谱每日一练(7月4日)
- 关注江西2017年第3期药品质量公告
- 建设海绵城市专题习题汇总
- 10万吨年环保净水剂建设项目报告书(2).pdf - 图文
- 控制器
- 中断
- 实验
- 实现
- 8259
- 工程热力学复习思考题解答
- 华南理工大学2014年拟录取博士研究生名单
- 《陈情表》导学案(教师版)
- EPC火电建设项目热控成本控制浅析
- 中考生家长陪考别闯进五大误区
- 机械设计课程设计计算说明书
- 全国烟草系统审计工作先进集体名单
- 高一化学12月份月考试题
- 从百草园到三味书屋的练习卷及答案
- 外贸函电课后答案unit2~unit12
- 上海市2009届高三第二次十四校联考(化学)
- 1、临时用电施工方案
- 轧钢机械复习资料作业 - 图文
- 中级财务会计试题及答案
- 2014年甘肃会计从业资格考试《财务管理》真题 - 2
- 你猜
- 2011年房地产新国八条全文
- 2013年华鲁恒升财务报表分析
- 资产评估-计算题-2
- 湘教版 - - - 四年级下期 - - - - - - 语文期末试卷 - - - 及答案