zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    React源码深度解析视频 某课网(完整版)
    解决VueRoter/element-ui路由报错Error: Avoided redundant navigation to current location的问题
    package-lock.json的作用
    encodeURI()和encodeURIComponent() 区别
    Webpack HMR 原理解析
    Kibana详细入门教程
    大数据可视化(万物互联)
    ES11来了,有些新特性还是值得一用的!
    Prometheus(普罗米修斯)——适合k8s和docker的监控系统
    linux安装pm2
  • 原文地址:https://www.cnblogs.com/smartjourneys/p/8178689.html
Copyright © 2011-2022 走看看