结构体"NVIC_InitStruct"内的内容完成NVIC的配置,其具体定义如下: typedefstruct{//定义哪个中断(譬如有"USART1_IRQn","USB_LP_CAN1_RX0_IRQn"等等)uint8_t NVIC_IRQChannel;//该中断的抢占优先级是多少uint8_t NVIC_IRQChannelPreemptionPriority;//该中断的响应优先级是多少uint8_t NVIC_IRQChannelSubPriority...
NVIC_IRQChannel有很多位(19?),每一位标志着一个设备的中断向量的开启。这句话大致就是开启串口的中断向量。我知道的就这些了。
NVIC_InitTypeDef NVICInitStruct;//创建一个结构体变量 NVICInitStruct.NVIC_IRQChannel = USART1_IRQn; NVICInitStruct.NVIC_IRQChannelPreemptionPriority = 0;//抢占优先级数值配置为0 NVICInitStruct.NVIC_IRQChannelSubPriority= 0;//子优先级数值配置为0 NVICInitStruct.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(...
初始化:NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=3 ;//抢占优先级3 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3; //优先级3 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //IRQ通道使能 NVIC_Init(&NVIC_InitStructure); //根据指定参数初...
NVIC:是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。
// 该中断的抢占优先级是多少 uint8_t NVIC_IRQChannelPreemptionPriority; // 该中断的响应优先级是多少 uint8_t NVIC_IRQChannelSubPriority; // 该值代表是否生效该设置(ENABLE, DISABLE) FunctionalState NVIC_IRQChannelCmd; } NVIC_InitTypeDef; 至此,记录完毕...
二、正文 对于NVIC(Nested Vectored Interrupt Controller),中文一般翻译为嵌套向量中断控制器, 其为M3内核层次概念,相关寄存器配置需要使用到Cotex-M3数据手册,ST的用户手册涉及的较少,还好有ST的库 函数,此次则暂不深究NVIC,仅对NVIC的概念以及其相对应的库函数使用做个简述。 STM32是基于Cotex-M3内核的MCU,Cotex...