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 类中 ...
随机推荐
- Vue computed属性
computed vs methods 我们可以使用Vue中的method计算出学科的总分,最终得到的总数结果是相同的. 在上例的基础上,我们把computed区块中的totalMarks函数整体移到 ...
- 使用 boot-repair 对 Windows + Ubuntu 双系统引导修复
问题描述: 由于在windows上进行更新/重装/修改了引导设置以后,windows会“自私”地重写引导,导致Ubuntu系统引导消失而无法选择Ubuntu启动.
- java中long类型的比较
int类型最大存储10位,因此很多地方要用到long类型,它的存储位数是+-19位 范围:-9223372036854775808到9223372036854775807解释:long类型是64位的也 ...
- Jmeter测试报告生成
Jmeter测试报告生成 本文使用的 Jmeter 版本为 apache-jmeter-3.2 1. 命令行模式将 jtl 文件转成测试图表 注意: 这种方式只适用于jmeter3.0以后的版本 1. ...
- Spark源码剖析 - SparkContext的初始化(五)_创建任务调度器TaskScheduler
5. 创建任务调度器TaskScheduler TaskScheduler也是SparkContext的重要组成部分,负责任务的提交,并且请求集群管理器对任务调度.TaskScheduler也可以看作 ...
- jsp实现文件上传下载
文件上传: upload.jsp <form action="uploadServlet" method="post" enctype="mul ...
- SQL Server进阶(八)查询——开窗函数、四大排名函数、透视数据、逆透视数据
概述 ROW_NUMBER() OVER(PARTITION BY CustId ORDER BY ID DESC) https://www.jb51.net/article/75533.htm 开窗 ...
- Ext.net 的锁定列要集中放到前面
如题,Ext.net的锁定列要集中放在一起,不然的话,在使用排序的时候,会引起实际排序列错乱比如有A,B,C,D四列,A,C锁定,最终显示为A C | B D,这个时候如果点击B时,发现排序跑到了C上 ...
- 求f(n)=[n/1]+[n/2]+---+[n/n]的值 简单杂题
这种小题首先根据 n/1+n/2+n/3+--+n/n=nlogn+欧拉常数r 可以知道 1e12的范围也不会爆longlong,不需要写高精度(到现在都不会写) 再根据数据范围可知O(n)级别的暴力 ...
- Django之CRM项目Day4-编辑客户 公私户 模糊查询
1.增加客户 2.编辑客户 obj = models.Customer.objects.filter(pk=edit_id).first() form_obj = CustomerForm(insta ...