• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >嵌入式开发 > 中断控制器

中断控制器

作者:汇编爱好者 字体:[增加 减小] 来源:互联网 时间:2017-06-17

汇编爱好者通过本文主要向大家介绍了8259中断控制器实验,系统中断控制器驱动,8259a中断控制器实验,系统中断控制器,可编程中断控制器等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
</div>    ARM7 TDMI有两种类型的中断模式:FIQ和IRQ。IRQ和FIQ之间的区别是:对于FIQ必须尽快处理事件并离开这个模式;IRQ可以被FIQ中断,但IRQ不能中断FIQ;为了使FIQ更快,FIQ模式具有更多的私有寄存器。
    CPSR指ARM7 TDMI处理器的程序状态寄存器。如果CPSR的F位被设置为1,处理器将不接受来自中断控制器的FIQ;如果CPSR的I位被设置为1,处理器将不接受来自中断控制器的IRQ。因此,为了使能相应中断机制,CPSR的F位或I位必须被清零,同时中断屏蔽寄存器INTMSK的相应位也必须被清零。
    中断请求寄存器INTPND的各位指示了某个中断请求是否还未被处理。在INTPND中将要或已被置位的中断位称为Pending位。若某个Pending位被置位,当CPSR的I标志位或F标志位被清零或者为0状态时,中断服务程序就会被启动执行。Pending寄存器是一个只读寄存器,所以在中断服务程序中要想清除Pending位时,需要采用在中断服务寄存器I_ISPC或F_ISPC的相应位写入1的方式来实现。
    在30个中断源中有26个中断源提供给中断控制器,4个外部中断(EINT4/5/6/7)请求是通过“或”的形式合成为1个中断源送至中断控制器,2个UART错误中断(UERROR0/1)也是如此。
    有关中断源的详细信息如表所示。
中 断 源 描 述 主 单 元 辅单元ID
EINT0 外部中断0 mGA sGA
EINT1 外部中断1 mGA sGB
EINT2 外部中断2 mGA sGC
EINT3 外部中断3 mGA sGD
EINT4/5/6/7 外部中断4/5/6/7 mGA sGKA
TICK RTC时钟节拍中断 mGA sGKB
INT_ZDMA0 通用DMA0中断 mGB sGA
INT_ZDMA1 通用DMA1中断 mGB sGB
INT_BDMA0 桥DMA0中断 mGB sGC
INT_BDMA1 桥DMA1中断 mGB sGD
INT_WDT 看门狗定时器中断 mGB sGKA
INT_UERR0/1 串行口0/1错误中断 mGB sGKB
INT_TIMER0 定时器0中断 mGC sGA
INT_TIMER1 定时器1中断 mGC sGB
INT_TIMER2 定时器2中断 mGC sGC
INT_TIMER3 定时器3中断 mGC sGD
INT_TIMER4 定时器4中断 mGC sGKA
INT_TIMER5 定时器5中断 mGC sGKB
INT_URXD0 串行口0接收中断 mGD sGA
INT_URXD1 串行口1接收中断 mGD sGB
INT_IIC IIC中断 mGD sGC
INT_SIO IIC中断 mGD sGD
INT_UTXD0 串行口0发送中断 mGD sGKA
INT_UTXD1 串行口1发送中断 mGD sGKB
INT_RTC RTC报警中断 mGKA  
INT_ADC AD转换结束中断 mGKB  
    3C44B0X中断优先级的决定有两种方式:一是通过软件查询决定中断优先级,该方式在跳到相应服务程序之前需要一个较长的延迟时间;另一种是通过硬件决定中断优先级——矢量中断模式。在多个中断源同时请求中断时,硬件优先级逻辑可以决定哪一个中断应该得到响应,然后这个硬件逻辑产生一条跳转指令跳到矢量表中对应的中断矢量地址处,在这个地址上事先已经放置了跳转到与该中断相应的中断服务程序的跳转指令。与前一种软件方式相比,这种方式将大大减少中断延迟。
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 中断控制器

相关文章

  • 2017-06-05 X86向MIPS移植的问题
  • 2017-06-05 基于stm32的ds3231的时钟代码
  • 2017-06-05 GPSu-bloxM8如何配置为北斗定位??
  • 2017-06-05 谁能给一个打印监控驱动的思路?
  • 2017-06-05 wince平台如何绘制圆弧
  • 2017-06-05请教关于STM32F0系列停止模式下无法通过CAN唤醒的问题
  • 2017-06-05 在基于linux30的arm_a9中移植mt9m001cmossensor
  • 2017-06-05 目标机为什么会断开连接?
  • 2017-06-17嵌入式系统的设计流程
  • 2017-06-05 一个奇怪的问题,关于U盘插入没反应的问题

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 关于宽电压输入的问题输入(45V~30V)输出5V
    • 树莓派2---SPI不能启用
    • 51单片机怎样通过C代码来与WIFI模块通讯
    • 使用串口助手控制MC55GPRS模块发送电子邮件总是失败请高手赐教
    • 面向对象的C++软件设计出国与就业指导班6/1~6/4
    • windowsddkUSB复合设备驱动,如何同时读两个pipe?
    • camera驱动求助?重点是支持TVTUNER。
    • 服务器中DNS的问题
    • 各位大侠,请问在QT中如何使lineedit中闪烁的光标水平显示,就像在dos下一样
    • 嵌入式系统开发环境和调试方式

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有