void HAL_NVIC_EnableIRQ(IRQn_Type IRQn);启用某个中断 void HAL_NVIC_DisableIRQ(IRQn_Type IRQn);...
//中断使能 void NVIC_EnableIRQ(IRQn_Type IRQn)//中断失效 void NVIC_DisableIRQ(IRQn_Type IRQn...
WWDG_IRQn 窗口看门狗中断 PVD_IRQn PVD通过EXTI探测中断 TAMPER_IRQn 篡改中断 RTC_IRQn RTC全局中断 Flashf_IRQn FLASH全局中断 RCC_IRQn RCC全局中断 EXTI0_IRQn 外部中断线0中断 EXTI1_IRQn 外部中断线1中断 EXTI2_IRQn 外部中断线2中断 EXTI3_IRQn 外部中断线3中断 EXTI4_IRQn 外部中断线4中断 DMAChannel...
NVIC_SetPriority(EXTI0_IRQn, 3); 使能NVIC中对应的中断 内核提供了函数: void NVIC_EnableIRQ(IRQn_t IRQn) void NVIC_DisableIRQ(IRQn_t IRQn) 中断服务函数 中断服务函数名 查看.s文件的 向量表; 判断中断源 有些“中断服务函数” 对应着 ”多个中断源“ ; 所以都判断中断源; 清除中断标志 有些...
假设我们使用了 NVIC_PriorityGroup_4这组优先级分配,则所有 4位用于指定抢占式优先级,共 16个(0 – 15)抢占式优先级;然后指定 EXTI0_IRQn抢占优先级为 3,EXTI1_IRQn的抢占优先级为 1,因为子优先级没有得设置就不用管了;那么根据上面的例子可以形象化理解为: ...
FunctionalState NVIC_IRQChannelCmd; /*!< Specifies whether the IRQ channel defined in NVIC_IRQChannel will be enabled or disabled. This parameter can be set either to ENABLE or DISABLE */ } NVIC_InitTypeDef; 如果是ENABLE,则会根据上述信息配置相应的寄存器,如果是DISABLE,直接设置ICER清除中断使能。
1staticvoidNVIC_Configuration(void)2{3NVIC_InitTypeDefNVIC_InitStructure;4NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);/*配置 NVIC 为优先级组 1*/5NVIC_InitStructure.NVIC_IRQChannel = KEY1_INT_EXTI_IRQ;/*配置中断源:按键 1*/6NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority =1;/*配置抢占优先级...
NVIC_IRQChannel 的值,该参数用以使能或者失能指定的IRQ 通道。stm32f10x.h 中定义 NVIC_IRQChannel 的值 描述 WWDG_IRQn 窗口看门狗中断 PVD_IRQn PVD 通过EXTI 探测中断 TAMPER_IRQn 篡改中断 RTC_IRQn RTC 全局中断 FlashItf_IRQn FLASH 全局中断 RCC_IRQn RCC 全局中断 EXTI0_IRQn 外部中断线0 中断 EXTI1...
相应属性由NVIC_IRQCh|annelSubPriority的参数配置。例如:中断向量 抢占优先级 响应优先级 A ...
软中断寄存器(Software trigger interrupt register),只是单独一个32位只写寄存器,而且只有bit[8:0](称为INTID[8:0])有效。向INTID中写入数值n,就表示以软件的方式发出中断请求n(IRQn),比如:INTID = 6(即000000110),就是启动EXTI0(F1中的IRQ6)的软中断。