STM32F7 SPI 中断停止与 FreeRTOS 一起工作
STM32F7 SPI interrupts stop working with FreeRTOS
我正在通过 SPI 通信使用 stm33F7 读取传感器,它在仅从机接收模式下工作,我可以在没有 os 的情况下完美地以中断模式读取数据,但是当我启用 FreeRTOS(使用 STM32CUBE)后随机时间中断停止触发。我还在使用和不使用 os 通过 UART 通信从另一个传感器读取数据,并且在两种模式下它都工作正常,使用 SPI 中断和 FreeRTOS 有什么问题吗?
中断处理程序是否使用 FreeRTOS API 调用?如果是这样,您需要确保正确设置优先级,并且 STM32 将所有优先级位设置为抢占优先级。 This is described on the FreeRTOS website. Additionally, familiarise yourself with the FreeRTOS FAQ that covers common issues and how to detect them.
我通过将 SPI 中断优先级更改为 0 解决了我的问题。它现在工作得很好。
我正在通过 SPI 通信使用 stm33F7 读取传感器,它在仅从机接收模式下工作,我可以在没有 os 的情况下完美地以中断模式读取数据,但是当我启用 FreeRTOS(使用 STM32CUBE)后随机时间中断停止触发。我还在使用和不使用 os 通过 UART 通信从另一个传感器读取数据,并且在两种模式下它都工作正常,使用 SPI 中断和 FreeRTOS 有什么问题吗?
中断处理程序是否使用 FreeRTOS API 调用?如果是这样,您需要确保正确设置优先级,并且 STM32 将所有优先级位设置为抢占优先级。 This is described on the FreeRTOS website. Additionally, familiarise yourself with the FreeRTOS FAQ that covers common issues and how to detect them.
我通过将 SPI 中断优先级更改为 0 解决了我的问题。它现在工作得很好。