补充一下前面NVIC内嵌向量中断控制器的知识
中断
中断类型
中断控制
配置中断
优先级
分组问题
中断使能
NVIC相关库函数和作用
库函数 | |
函数名 | 描述 |
NVIC_DeInit | 将外设 NVIC 寄存器重设为初始值 |
NVIC_SCBDeInit | 将外设 SCB 寄存器重设为初始值 |
NVIC_PriorityGroupConfig | 设置优先级分组:先占优先级和从优先级 |
NVIC_Init | 根据 NVIC_InitStruct 中指定的参数初始化外设 NVIC 寄存器 |
NVIC_StructInit | 把 NVIC_InitStruct 中的每一个参数按初始值填入 |
NVIC_SETPRIMASK | 使能 PRIMASK 优先级:提升执行优先级至 0 |
NVIC_RESETPRIMASK | 失能 PRIMASK 优先级 |
NVIC_SETFAULTMASK | 使能 FAULTMASK 优先级:提升执行优先级至-1 |
NVIC_RESETFAULTMASK | 失能 FAULTMASK 优先级 |
NVIC_BASEPRICONFIG | 改变执行优先级从 N(最低可设置优先级)提升至 1 |
NVIC_GetBASEPRI | 返回 BASEPRI 屏蔽值 |
NVIC_GetCurrentPendingIRQChannel | 返回当前待处理 IRQ 标识符 |
NVIC_GetIRQChannelPendingBitStatus | 检查指定的 IRQ 通道待处理位设置与否 |
NVIC_SetIRQChannelPendingBit | 设置指定的 IRQ 通道待处理位 |
NVIC_ClearIRQChannelPendingBit | 清除指定的 IRQ 通道待处理位 |
NVIC_GetCurrentActiveHandler | 返回当前活动的 Handler(IRQ 通道和系统 Handler)的标识符 |
NVIC_GetIRQChannelActiveBitStatus | 检查指定的 IRQ 通道活动位设置与否 |
NVIC_GetCPUID | 返回 ID 号码,Cortex-M3 内核的版本号和实现细节 |
NVIC_SetVectorTable | 设置向量表的位置和偏移 |
NVIC_GenerateSystemReset | 产生一个系统复位 |
NVIC_GenerateCoreReset | 产生一个内核(内核+NVIC)复位 |
NVIC_SystemLPConfig | 选择系统进入低功耗模式的条件 |
NVIC_SystemHandlerConfig | 使能或者失能指定的系统 Handler |
NVIC_SystemHandlerPriorityConfig | 设置指定的系统 Handler 优先级 |
NVIC_GetSystemHandlerPendingBitStatus | 检查指定的系统 Handler 待处理位设置与否 |
NVIC_SetSystemHandlerPendingBit | 设置系统 Handler 待处理位 |
NVIC_ClearSystemHandlerPendingBit | 清除系统 Handler 待处理位 |
NVIC_GetSystemHandlerActiveBitStatus | 检查系统 Handler 活动位设置与否 |
NVIC_GetFaultHandlerSources | 返回表示出错的系统 Handler 源 |
NVIC_GetFaultAddress | 返回产生表示出错的系统 Handler 所在位置的地址 |