msp432中断优先级怎么设置
时间: 2023-05-26 20:03:50 浏览: 489
中断优先级/嵌套-430中断应用和技巧
MSP432中断优先级的设置需要两步:
第一步:设置中断优先级
MSP432中断优先级有0-15共16个级别。设置中断优先级需要使用NVIC_SetPriority函数,该函数需要三个参数:
1. 中断号:表示中断的编号,可以从文件startup_msp432p401r_ccs.c中找到对应的宏定义。
2. 优先级:一个0-15之间的数值,表示中断的优先级。0表示最高优先级,15表示最低优先级。
3. 子优先级:该参数用于解决多个中断在同一个优先级下的优先级问题。在MSP432中,默认情况下,子优先级为0,表示不考虑子优先级。
例如,要将GPIO端口1的中断设置为优先级3:
```c
NVIC_SetPriority(PORT1_IRQn,3);
```
第二步:设置全局中断使能
MSP432中,全局中断使能采用CPSIE i和CPSID i指令来实现。在设置完中断优先级后,需要打开全局中断使能。
```c
__enable_irq();
```
若需要关闭全局中断使能:
```c
__disable_irq();
```
注意:在MSP432中,不能使用关中断指令DI和EI来控制中断,只能使用CPSIE i和CPSID i指令。feof函数返回什么值?
阅读全文