YTM32B1ME05 SPI 做从机不触发中断回调
-
Frank 时钟配置是相同的,差异是APP中有系统,Boot中没有,相关的逻辑都是一样,TaskDealy 我使用中断来做。SPI使用DMA来传输,我测试发现正常时可以进SPI2_IRQHandler中断,我填充的发送Buff里都是0,抓取波形MISO保持低电平。异常时不能进入此中断,抓取波形,主机发的时钟数是够的,但是MISO出现1个字节或多个字节的FF。
-
-
Frank 提示RX Fifo为空,TX Fifo 中的数据小于预设值,是因为已经完成了最后一次接收,数据已经收到了,所以寄存器是这样吗?接收Buff里有正确的数据,但是不进中断。
-
-
Frank 我配置的通道0 和 通道1,应该关注哪个寄存器?
-
-
-
Frank 不是时序或者配置哪里有问题吗?因为APP是可以的,所以没用示波器抓,用逻辑分析仪抓了波形,在接收的时候,发送buff里面填的是0x00,但是看波形出现了1个字节的0xFF。
-
Frank 我测试在接收后加 while (Spi_GetSequenceResult( SpiConf_SpiSequence_Spi2SlaveSequence_1) != SPI_SEQ_OK); 可以正常接收,不卡就会出现失败。我仿真查看了不卡的后续运行,在while循环里,有些状态的检查和判断,没有其它的操作。有什么可能有影响吗?
-
Frank 检查了下,没有port的操作,只有if else ,switch 这些状态的判断。我是在GPIO中断里使用 Spi_AsyncTransmit 函数,这个会有影响吗?
-
xianghan IWDG没有初始化,在while循环中连续调用 Wdg_180_Inst0_Service 函数会影响SPI 接收吗?初始化IWDG就可以,还是不能这么操作?
12/25
发帖前请查看
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...