[芯片] 1、接口技术·实验一·中断8259

简介:


 

 

目录

一、实验目的和要求

二、实验原理与背景

2-1、微处理器的中断类型

2-2、8259A内部结构

2-3、8259A读写控制逻辑

2-4、PC上可屏蔽中断

三、实验具体的内容

四、实验的代码说明

五、实验结果的分析

附录材料


 

一、    实验目的和要求

学会8259芯片和微机接口原理和方法。

掌握8259中断芯片的基本工作原理、工作方式和编程原理。

 

二、    实验原理与背景

2-1、微处理器的中断类型

 

          图2.1 微处理器中断结构图

2-2、8259A内部结构

 

          图2.2 8259A内部结构图

2-3、8259A读写控制逻辑

 

          图2.3 8259A读写控制逻辑

 

2-4、PC上可屏蔽中断

PC机用户可使用的硬件中断只有可屏蔽中断,由8259中断控制器管理。中断控制器用于接收外部的中断请求信号,经过优先级判别等处理后向CPU发出可屏蔽中断请求。IBMPC、PC/XT机内有一片8259中断控制器对外可以提供8个中断源:

  •   中断源     中断类型号    中断功能
  •   IRQ0          08H        时钟
  •   IRQ1          09H        键盘
  •   IRQ2          0AH        保留
  •   IRQ3          OBH        串行口2
  •   IRQ4          0CH        串行口1
  •   IRQ5          0DH        硬盘
  •   IRQ6          0EH        软盘
  •   IRQ7          0FH        并行打印机

8个中断源的中断请求信号线IRQ0~IRQ7在主机的62线ISA总线插座中可以引出,系统已设定中断请求信号为“边沿触发”,普通结束方式。对于PC/AT及286以上微机内又扩展了一片8259中断控制,IRQ2用于两片8259之间级联,对外可以提供16个中断源:

  •   中断源     中断类型号   中断功能
  •   IRQ8          070H       实时时钟
  •   IRQ9          071H       用户中断
  •   IRQ10         072H       保留
  •   IRQ11         O73H       保留
  •   IRQ12         074H       保留
  •   IRQ13         075H       协处理器
  •   IRQ14         076H       硬盘
  •   IRQ15         077H       保留

TPC-USB实验板上,将中断源固定接到3号中断IRQ3上,即进行中断实验时,所用中断类型号为0BH。

 

三、实验具体的内容

直接用手动产生单脉冲作为中断请求信号。要求每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt!”,中断10次后程序退出。步骤如下:

①   连接实验电路如图3.1所示。

 

图3.1  TPC-USB平台中断实验连线图

②   根据流程图1.2,编程并运行,观察实验结果。

 

              图3.2  TPC-USB平台中断实验流程图

 

四、实验的代码说明

复制代码
 1 data segment
 2   mess db 'tpca interrupt!',0dh,0ah,'$' 
 3 data ends
 4 code segment 
 5     assume cs:code,ds,data
 6 start:
 7 
 8     mov ax, cs
 9     mov ds, ax
10     mov dx,offset int3     ;中断子程序入口偏移量
11     mov ax,250bh            ;设置中断的中断矢量
12     int 21h 
13        
14     cli                     ;CPU清中断标志
15     in  al,21h             ;设置中断屏蔽OCW1
16     and al,0f7h            ;开放IRQ3中断
17     out 21h,al
18     mov cx,10              ;循环10次的循环计数器
19     sti                     ;CPU开中断
20 ll:                         ;循环等待
21     jmp ll
22 ;-------------------------------------------------    
23 int3:                       ;中断子程序
24     mov ax,data             ;09中断显示字符
25     mov ds,ax
26     mov dx,offset mess
27     mov ah,09
28     int 21h  
29     
30     mov al,20h              ;发出EOI结束中断
31     out 20h,al               
32     
33     loop next               ;循环(CX为循环计数器)
34     
35     in al,21h               ;循环结束后关闭IRQ3中断
36     or al,08h
37     out 21h,al   
38     
39     sti                      ;开中断
40     mov ah,4ch              ;结束程序
41     int 21h
42     
43 next:
44     iret
45 code ends
46 end start
复制代码

 

五、实验结果的分析

直接用手动产生单脉冲作为中断请求信号。要求每按一次开关产生一次中断,在屏幕上显示一次“TPCA Interrupt!”,中断10次后程序退出。

 

         图5.1 实验DOS窗口截图

附录材料

 

 

本文链接: http://www.cnblogs.com/zjutlitao/p/4172171.html

更多精彩:http://www.cnblogs.com/zjutlitao/p/4125085.html 

文档下载:http://pan.baidu.com/s/1i3469X7



本文转自beautifulzzzz博客园博客,原文链接:http://www.cnblogs.com/zjutlitao/p/4172171.html,如需转载请自行联系原作者

相关文章
|
存储 数据安全/隐私保护 芯片
毕业设计 基于51单片机的指纹红外密码电子锁
毕业设计 基于51单片机的指纹红外密码电子锁
221 0
|
JavaScript
VUE element-ui之form表单自定义验证11位手机号码(封装验证规则)
VUE element-ui之form表单自定义验证11位手机号码(封装验证规则)
3734 0
VUE element-ui之form表单自定义验证11位手机号码(封装验证规则)
|
SQL JSON 前端开发
|
传感器 数据采集 物联网
基于STM32的光敏传感器数据采集系统-嵌入式系统与设计课程设计2
基于STM32的光敏传感器数据采集系统-嵌入式系统与设计课程设计
1496 0
|
存储 运维 分布式计算
HDFS 如何容错?
【8月更文挑战第31天】
508 0
|
jenkins 测试技术 持续交付
Jenkins 在多分支项目中的应用
【8月更文第31天】在现代软件开发实践中,分支管理是一项至关重要的策略,它允许开发团队在不同的功能开发、修复bug或进行实验时不会干扰主干代码。随着项目的复杂度增加,维护多个分支并确保它们的质量变得越来越具有挑战性。Jenkins 作为一款流行的持续集成(CI)和持续部署(CD)工具,提供了强大的功能来支持多分支项目的自动化测试和部署。本文将探讨 Jenkins 如何帮助管理多分支项目,并提供具体的代码示例。
338 0
|
监控 Java
JAVA性能优化- IntelliJ插件:java内存分析工具(JProfiler)
JAVA性能优化- IntelliJ插件:java内存分析工具(JProfiler)
383 0
|
编译器 芯片
proteus并行接口芯片8255A的应用—键盘与数码管
proteus并行接口芯片8255A的应用—键盘与数码管
463 1
|
数据采集 存储 编解码
LabVIEW用高速数据流盘
LabVIEW用高速数据流盘
144 1
【SPSS】基础图形的绘制(条形图、折线图、饼图、箱图)详细操作过程(下)
【SPSS】基础图形的绘制(条形图、折线图、饼图、箱图)详细操作过程
1067 0