17 STM32标准库函数 之 嵌套向量中断控制器(NVIC) 所有函数的介绍及使用 1 NVIC库函数预览 1.1 函数NVIC_DeInit 1.2 函数NVIC_SCBDeInit 1.3 函数NVIC_PriorityGroupConfig 1.4 函数 NVIC Init 1.5 函数NVIC_StructInit 1.6 函数NVIC_SETPRIMASK 1.7 函数NVIC_RESETPRIMASK 1.8 函数NVIC_SETFAULTMASK 1.9 函数NVIC_RESETFAULTMASK 1.10 函数NVIC_BASEPRICONFIG 1.11 函数NVIC_GetBASEPRI 1.12 函数NVIC_GetCurrentPendingIRQChannel 1.13 函数NVIC_GetIRQChannelPendingBitStatus 1.14 函数NVIC_SetIRQChannelPendingBit 1.15 函数NVIC_ClearIRQChannelPendingBit 1.16 函数NVIC_GetCurrentActiveHandler 1.17 函数NVIC_GetIRQChannelActiveBitStatus 1.18 函数NVIC_GetCPUID 1.19 函数NVIC_SetVectorTable 1.20 函数NVIC_GenerateSystemReset 1.21 函数NVIC_GenerateCoreReset 1.22 函数NVIC_SystemLPConfig 1.23 函数NVIC_SystemHandlerConfig 1.24 函数NVIC_SystemHandlerPriorityConfig 1.25 函数NVIC_GetSystemHandlerPendingBitStatus 1.26 函数NVIC_SetSystemHandlerPendingBit 1.27 函数NVIC_ClearSystemHandlerPendingBit 1.28 函数NVIC_GetSystemHandlerActiveBitStatus 1.29 函数NVIC_GetFaultHandlerSources 1.30 函数NVIC_GetFaultAddress 该文档修改记录: 总结
1 NVIC库函数预览
序号 函数名 描述 1 NVIC_DeInit 将外设 NVIC 寄存器重设为缺省值 2 NVIC_SCBDeInit 将外设 SCB 寄存器重设为缺省值 3 NVIC_PriorityGroupConfig 设置优先级分组:先占优先级和从优先级 4 NVIC_Init 根据 NVIC_InitStruct 中指定的参数初始化外设 NVIC 寄存器 5 NVIC_StructInit 把 NVIC_InitStruct 中的每一个参数按缺省值填入 6 NVIC_SETPRIMASK 使能 PRIMASK 优先级:提升执行优先级至 0 7 NVIC_RESETPRIMASK 失能 PRIMASK 优先级 8 NVIC_SETFAULTMASK 使能 FAULTMASK 优先级:提升执行优先级至-1 9 NVIC_RESETFAULTMASK 失能 FAULTMASK 优先级 10 NVIC_BASEPRICONFIG 改变执行优先级从 N(最低可设置优先级)提升至 1 11 NVIC_GetBASEPRI 返回 BASEPRI 屏蔽值 12 NVIC_GetCurrentPendingIRQChannel 返回当前待处理 IRQ 标识符 13 NVIC_GetIRQChannelPendingBitStatus 检查指定的 IRQ 通道待处理位设置与否 14 NVIC_SetIRQChannelPendingBit 设置指定的 IRQ 通道待处理位 15 NVIC_ClearIRQChannelPendingBit 清除指定的 IRQ 通道待处理位 16 NVIC_GetCurrentActiveHandler 返回当前活动的 Handler(IRQ 通道和系统 Handler)的标识符 17 NVIC_GetIRQChannelActiveBitStatus 检查指定的 IRQ 通道活动位设置与否 18 NVIC_GetCPUID 返回 ID 号码, Cortex-M3 内核的版本号和实现细节 19 NVIC_SetVectorTable 设置向量表的位置和偏移 20 NVIC_GenerateSystemReset 产生一个系统复位 21 NVIC_GenerateCoreReset 产生一个内核(内核+NVIC)复位 22 NVIC_SystemLPConfig 选择系统进入低功耗模式的条件 23 NVIC_SystemHandlerConfig 使能或者失能指定的系统 Handler 24 NVIC_SystemHandlerPriorityConfig 设置指定的系统 Handler 优先级 25 NVIC_GetSystemHandlerPendingBitStatus 检查指定的系统 Handler 待处理位设置与否 26 NVIC_SetSystemHandlerPendingBit 设置系统 Handler 待处理位 27 NVIC_ClearSystemHandlerPendingBit 清除系统 Handler 待处理位 28 NVIC_GetSystemHandlerActiveBitStatus 检查系统 Handler 活动位设置与否 29 NVIC_GetFaultHandlerSources 返回表示出错的系统 Handler 源 30 NVIC_GetFaultAddress 返回产生表示出错的系统 Handler 所在位置的地址
1.1 函数NVIC_DeInit
函数名 NVIC_DeInit 函数原形 void NVIC_DeInit(void)
功能描述 将外设 NVIC 寄存器重设为缺省值 输入参数 无 输出参数 无 返回值 无 先决条件 无 被调用函数 无 例 NVIC_DeInit();
1.2 函数NVIC_SCBDeInit
函数名 NVIC_SCBDeInit 函数原形 void NVIC_SCBDeInit(void)
功能描述 将外设 SCB 寄存器重设为缺省值 输入参数 无 输出参数 无 返回值 无 先决条件 无 被调用函数 无 例 NVIC_SCBDeInit();
1.3 函数NVIC_PriorityGroupConfig
函数名 NVIC_SCBDeInit 函数原形 void NVIC_SCBDeInit(void)
功能描述 将外设 SCB 寄存器重设为缺省值 输入参数 无 输出参数 无 返回值 无 先决条件 无 被调用函数 无
NVIC_PriorityGroup 该参数设置优先级分组位长度
NVIC_PriorityGroup 描述 NVIC_PriorityGroup_0 先占优先级 0 位,从优先级 4 位 NVIC_Priority