STM32H7 SPI 在休息期间冻结?

STM32H7 SPI frozen during break?

为了在 STM32H7 的调试模式中断期间冻结定时器,必须在 DBGMCU 中设置一位。但我没有为 SPI 找到这样的位。这是否意味着 SPI 始终处于冻结状态?或者相反从未冷冻过?

简答:

SPI 没有这样的选项。如果使用并正确配置,SPI 始终处于启用状态。

长答案:

SPI 没有这样的选项,因为该接口必须由微控制器主动提供服务。在这种情况下,如果您的设备停止,例如在中断模式下,SPI 事务会自动停止。 word/fifo 的任何正在进行的交易无论如何都会被执行。

或者 dma 控制器被配置为服务于 SPI。在这种情况下,数据传输由 dma 控制器控制。 dma 控制器本身有不同的触发源。只要此触发源不是依赖计时器的,就无法隐式停止传输。

另请参阅: