|
我使用另外一个MCU STM32F407VET6使用Cubemx生成代码,只需要在 MX_SPI2_Init()函数最后加上HAL_SPI_DMAResume(&hspi2);SPI DMA发送就正常了,但是使用STM32H743同样使用Cubemx生成代码,同样在初始化后加入HAL_SPI_DMAResume(&hspi2);但是实测SPI+DMA发送无法驱动屏幕,如果使用HAL_SPI_Transmit替代DMA发送HAL_SPI_Transmit_DMA那么屏幕又能正常驱动 |
STM32H747XIH6 CM7正常运行 CM4不能正运行
【经验分享】STM32H7 DMA+UART不定长接收实战:解决缓存溢出与数据错位问题
STM32H725的LSE不起振
请教STM32F103的DMA空闲接收问题
STM32H747XI CM7正常运行 CM4不运行
stm32h7s78-dk烧录
STM32Programmer能识别芯片,Keil无法识别
STM32H7进入BOOTLoader模式
stm32H743使用CubeMxAi导入模型文件,需要将测试数据进行识别,不知道如何传入参数
STM32H725VGT3内存不足问题
微信公众号
手机版
如果没发送出去,那么多半是软件驱动方式。
SPI+DMA的发送比较常见,可以参考官方HAL库中的例程代码。
数据是有发送的,SCK,MOSI波形都有
解决了,最后经过别人提醒是DMA为非阻塞发送,所以导致我把数据填入DMA后还没发送出去就又把CS拉高了程序修改为
这样加入判断SPI是否为空闲状态即可保证数据发送完成
内存不够需要外扩 LY的SPI PSRAM,联系陶13764140309
DMA有个发送完成的中断,该回调函数里判断完成,这样的逻辑结构比较常用。