ARM中断源和中断过程分析
来源:互联网 发布:动态加载js 完成 编辑:程序博客网 时间:2024/04/29 16:56
中断源分析
中断分为两大类,由中断源来区分:
内部中断,其中断源由内部外设提供。如:DMA/UART等
外部中断,其中断源由外部请求中断。如:EINTn
先来分析下59个中断源:35个内部中断源和24个外部请求中断源。(官方说是60个中断源)
这是个包含了内外中断的中断流程图。
个人还是比较习惯读未决定,因为以前学UNIX高级环境编程时信号那一章节中有个pending,我们就把这个读未决字。所以习惯了。当然也可以读源挂起寄存器。
EINTPEND(外中断源未决寄存器):外部的子中断源未决寄存器,记录的是外部子中断源的中断情况,即是:EINT4-EINT23中任何一个的外部子中断源发生情况。
EINTMASK(外部中断屏蔽寄存器):是否屏蔽外部子中断源发生的中断。1表示屏蔽。
SUBSRCPND(sub Source pending):内部子中断源未决寄存器,这个寄存器是用来标志内部中断源的子中断是否发生的。如:INT_UARTn下的子中断源INT_RXDn,INT_TXDn,INT_ERRn中断是否发生。有15个内部子中断源。
INTSUBMASK(intterupt submark):子中断屏蔽寄存器,是否屏蔽子中断。
当子中断发生,且SUBSRCPEN寄存器相应位未被置1时,则表示系统可以接受该中断,然后SUBSRCPEN寄存器相应位置1,记录该中断已经发生,等待处理。然后检测INTSUBMASK寄存器是否屏蔽了这个位,如果没有则其父中断表示已经发生,且在SRCPND寄存器中相应位置1.
SRCPND(Source Pending):中断源未决寄存器,记录某一个或者某一类中断(有子中断的)是否发生。
当SRCPND,INTPND寄存器清除时,该寄存器自动被清除。
- ARM中断源和中断过程分析
- Arm中断过程分析
- ARM 中断处理过程
- ARM中断处理过程
- ARM中断处理过程
- ARM中断处理过程
- ARM中断进入和退出分析
- ARM中断处理分析
- arm嵌入式-中断分析
- arm中断详细分析
- ARM Linux中断分析
- ARM Linux 中断分析
- ARM中断分析
- arm中断分析
- linux-arm中断系统之中断过程
- ARM异常和中断
- ARM中断和异常
- Linux内核中断处理过程分析-基于arm平台
- 总结系列_3(opencv中c版本和c++版本区别体验,续...)
- K12教育创业如何破局?或许老师的需求是突破口
- java中当static块和构造函数同时出现,顺序是?
- redis---应用的场景
- 二十八:微信公众帐号开发-应用实例之音乐搜索
- ARM中断源和中断过程分析
- cocos2dx开发笔记1
- nova-api代码分析(2)
- Java Sax解析xml
- H2 database 安装与使用
- 常用js技巧(有点长)
- [leetcode] Binary Tree Maximum Path Sum
- 二十九:微信公众平台开发-应用实例之人脸检测
- Codeforces 382 B. Number Busters(数论推公式)