
我使用另外一个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那么屏幕又能正常驱动 |
STM32H755使用DMA接收数据不正常
HAL_TIM_IC_Start_DMA的回调函数是HAL_TIM_IC_CaptureCpltCallback吗?为什么进不去?
CubeMX 生成的 STM32H7 CMake 工程打开串口 DMA 无法正常发送数据,如何解决?
STM32H7S78-DK 官方TOUCHGFX的DEMO源码在哪里呢?
STM32H723VG实现usb通讯
STM32H750VBT6挂接外部NAND Flash
STM32H7 openamp
如何利用TIM1触发HRTIM TIMA生成频率为20Hz的100ns脉冲波?
STM32双核H7核间通信的方法
stm32上部署yolo的问题
如果没发送出去,那么多半是软件驱动方式。
SPI+DMA的发送比较常见,可以参考官方HAL库中的例程代码。
数据是有发送的,SCK,MOSI波形都有
解决了,最后经过别人提醒是DMA为非阻塞发送,所以导致我把数据填入DMA后还没发送出去就又把CS拉高了程序修改为
这样加入判断SPI是否为空闲状态即可保证数据发送完成
内存不够需要外扩 LY的SPI PSRAM,联系陶13764140309
DMA有个发送完成的中断,该回调函数里判断完成,这样的逻辑结构比较常用。