nvic.c

来自「STM32定时器程序」· C语言 代码 · 共 45 行

C
45
字号
#include "stm32f10x.h"
#include "common.h"
#include "NVIC.h"

/* ************************************************************* **
 * 函数名称:void NVIC_SysInit(void)
 * 函数功能:中断设置
 * 入口参数:无
 * 出口参数:无
** ************************************************************* */
void NVIC_SysInit(void)
{
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);			
										//设置优先级分组,只能设置一次
										//输入参数如下
										//NVIC_PriorityGroup_0	抢占优先级0位,从优先级4位
										//NVIC_PriorityGroup_1	抢占优先级1位,从优先级3位
										//NVIC_PriorityGroup_2	抢占优先级2位,从优先级2位
										//NVIC_PriorityGroup_3	抢占优先级3位,从优先级1位
										//NVIC_PriorityGroup_4	抢占优先级4位,从优先级0位

	NVIC_TIM2();
}

/* ************************************************************* **
 * 函数名称:void NVIC_TIM2(void)
 * 函数功能:TIM2中断设置
 * 入口参数:无
 * 出口参数:无
** ************************************************************* */
void NVIC_TIM2(void)
{
	NVIC_InitTypeDef		NVIC_InitStructure;

	NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;				//TIM2全局中断

	NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 3;	//抢占优先级3

	NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;			//从优先级3

	NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;				//通道使能

	NVIC_Init(&NVIC_InitStructure);								//设置中断
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?