
STM32L431内部温度AD值不随温度变化
CubeMX 生成的 STM32H7 CMake 工程打开串口 DMA 无法正常发送数据,如何解决?
STM32F429 二级启动程序 (sboot) 开发难点:LD 文件 / 堆栈 / NVIC 及 startup.s 修改疑问
STM32CubeMx生成代码错误
使用CubeMX能配置STM32L4XX芯片的低功耗模式吗?
debug选项卡中的trace enable选项是灰色的无法勾选
2.0 CubeIDE大概更新时间?
smt32h5 gpdma LL库无法初始化?
STM32双核H7核间通信的方法
yolov5 转onnx 在cubeAI进行部署的时候 部署失败 我想一下大佬们这是什么原因
配置方面,使用CubeMx的话,操作是一样的,只是生成的工程代码写法有差别。
从你描述的问题现象来看,感觉完全没有正常通信,还不仅仅溢出的问题。
你看看是否用户代码哪里有问题,我这边使用STM32F4的开发板,选择SPI1自发自收
是正常的。发送采用DMA方式,接收采用中断方式。
我添加的用户代码,供参考:
LL_DMA_ConfigAddresses(DMAx, LL_DMA_STREAM, (uint32_t)&SPITXData0],(uint32_t) &(SPI1->DR),LL_DMA_DIRECTION_MEMORY_TO_PERIPH);
LL_DMA_SetDataLength(DMAx, LL_DMA_STREAM, SIZE);
LL_DMA_EnableIT_TC(DMAx, LL_DMA_STREAM);
LL_SPI_EnableDMAReq_TX(SPI1);
LL_SPI_EnableIT_RXNE(SPI1);
LL_DMA_EnableStream(DMAx, LL_DMA_STREAM);
LL_SPI_Enable(SPI1);
根据RXNE事件在其中断里进行数据接收:
SPIRXData[cnt++]=SPI1->DR;
如果中断接收的话,中断处理程序尽量简洁点。可以先将波特率放慢点。
另外注意,SPI通讯主从要保持步调一致才行。