ARMV7-M数据手册---Part B :System Level Architecture---B3 System Address Map
1.前言
2.The system address map
3.System Control Space (SCS)
4.The system timer, SysTick
5. Nested Vectored Interrupt Controller, NVIC
与中断异常相关的寄存器主要包含在如下几个部分:
1.位于SCS.system control and ID.no SCB下的的中断相关寄存器
- Interrupt Controller Type Register, ICTR
主要提供了关于中断控制器相关的信息,此处给出了MCU厂商所支持的中断线的总数
- Software Triggered Interrupt Register, STIR
提供了一个机制,让软件来触发产生一个中断,需要在bit0~bit8写入一个(ExceptionNumber - 16)值来触发对应中断线产生中断
2.位于SCS.system control and ID. SCB下的的中断相关寄存器
- Interrupt Control and State Register, ICSR
提供NMI, PendSV, and SysTick exceptions的软件控制和中断状态信息
主要包括 PendSV和SysTick的手动pending和清pending;
是否有外部中断产生;
是否有更高优先级的中断pending产生
除了当前中断异常处于活跃状态,是否还有其他异常处于活跃状态
显示当前异常的异常号
- Application Interrupt and Reset Control Register, AIRCR
设置返回中断控制数据,通过向bit1写入1来清空所有中断异常的活跃状态信息
- Vector Table Offset Register, VTOR
向量表地址,bi7~bit31
- System Handler Priority Register 1, SHPR1
设置返回系统handler4~7的异常优先级
- System Handler Priority Register 1, SHPR2
设置返回系统handler8~11的异常优先级
- System Handler Priority Register 1, SHPR3
设置返回系统handler12~15的异常优先级
3.位于SCS的NVIC区域内的中断相关寄存器
- Interrupt Set-Enable Registers, NVIC_ISER0-NVIC_ISER15
使能或读每组中断的使能状态
- Interrupt Clear-Enable Registers, NVIC_ICER0-NVIC_ICER15
清空或读每组中断的使能状态
- Interrupt Set-Pending Registers, NVIC_ISPR0-NVIC_ISPR15
设置每个中断的pending
- Interrupt Clear-Pending Registers, NVIC_ICPR0-NVIC_ICPR15
清空每个中断的pending
- Interrupt Active Bit Registers, NVIC_IABR0-NVIC_IABR15
每组32个中断,显示是否处于活跃状态
- Interrupt Priority Registers, NVIC_IPR0-NVIC_IPR123
每个寄存器设置4个中断的优先级,每个优先级占8位
6. Protected Memory System Architecture, PMSAv7
ARMV7-M数据手册---Part B :System Level Architecture---B3 System Address Map的更多相关文章
- System Address Map Initialization in x86/x64 Architecture Part 2: PCI Express-Based Systems
原文 http://resources.infosecinstitute.com/system-address-map-initialization-x86x64-architecture-pa ...
- Android File Hierarchy : System Structure Architecture Layout
Most of the Android user are using their Android phone just for calls, SMS, browsing and basic apps, ...
- Linux/Unix System Level Attack、Privilege Escalation(undone)
目录 . How To Start A System Level Attack . Remote Access Attack . Local Access Attack . After Get Roo ...
- Java I/O theory in system level
参考文章: JAVA NIO之浅谈内存映射文件原理与DirectMemory Java NIO 2.0 : Memory-Mapped Files | MappedByteBuffer Tutoria ...
- [转] 检查更新时出错:无法启动更新检查(错误代码为 4: 0x80070005 — system level)
Google浏览器Chrome更新到时候提示错误:检查更新时出错:无法启动更新检查(错误代码为 4: 0x80070005 -- system level),很有可能是Chrome更新服务被禁用了,我 ...
- DASH----Desktop and mobile Architecture for System Hardware----桌面和移动系统硬件架构(DASH)计划
http://baike.baidu.com/subview/813787/11301142.htm http://sites.amd.com/cn/business/it-solutions/man ...
- 错误描述:请求“System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”类型的权限已失败
错误描述:请求“System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, Pu ...
- System and method for critical address space protection in a hypervisor environment
A system and method in one embodiment includes modules for detecting an access attempt to a critical ...
- 对于System.exit(0)和System.exit(1)的一般理解
public static void exit(int status) 终止当前正在运行的 Java 虚拟机.参数用作状态码:根据惯例,非 0 的状态码表示异常终止. 该方法调用 Runtime 类中 ...
随机推荐
- Java泛型、List接口整理
泛型 package com.oracle.demo01; import java.util.HashMap; import java.util.Iterator; import java.util. ...
- linux shell变量的截取
变量的截断,经常用到的是${},##和%%几个特殊符号.假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.txt ,可以用${ }分别替换得到不同的值: ${file ...
- 网络编程基础【day09】:socket解决粘包问题之MD5(八)
本节内容 1.概述 2.代码实现 一.概述 上一篇博客讲到的用MD5来校验还是用的之前解决粘包的方法,就是客户端发送一个请求,等待服务端的确认的这样的一个笨方法.下面我们用另外一种方法:就是客户端已经 ...
- JAVA核心技术I---JAVA基础知识(时间类)
一:时间类库了解 java.util.Date(基本废弃,Deprecated) –getTime(),返回自1970..1以来的毫秒数 java.sql.Date(和数据库对应的时间类) //与数据 ...
- ELASTICSEARCH 搜索的评分机制
从我们在elasticsearch复合框输入搜索语句到结果显示,展现给我们的是一个按score得分从高到底排好序的结果集.下面就来学习下elasticsearch怎样计算得分. Lucene(或 El ...
- Part-Nine
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
- js中检测数据类型的几种方式
1.typeof 一元运算符,用来检测数据类型.只可以检测number,string,boolean,object,function,undefined. 对于基本数据类型是没有问题的,但是遇到引用数 ...
- python中\r的意义及用法
\r的意义 \r 表示将光标的位置回退到本行的开头位置 \b表示将光标的位置回退一位 在python里print会默认进行换行,可以通过修改参数让其不换行 (1) python2中可以在print语句 ...
- docker 系列 - 基础镜像环境和Docker常用命令整理
=======================docker 基础镜像环境 alpine=======================可以使用 docker search 命令搜索指定的 image, ...
- docker 系列 - Docker CheatSheet | Docker 配置与实践清单 (转载)
本文转载自 (https://segmentfault.com/a/1190000016447161), 感谢作者.