
重新配置SCB->VTOR = 0x08010000后,再次复位,程序异常,发现不进tick中断,IIC读数卡死在准备查询循环中。
STM32407 使用串口闲时中断+DMA方式接收最大接收字节是多少
在使用STM32CubeMX的时候创建的工程已经使用的板载资源如何去掉?
STM32CubeMX初始配置冲突的BUG?
uboot初始化IIC1,跳转到应用程序中后,先读一字节AT24C04的数据,然后初始化IIC1(未复位),再读一字节AT24C04时,有概率一直检测到IIC处于busy状态。
cubemx导入模型后找不到keil找不到工程内的模型的相关文件
STM32F407的flash读写问题
keil调试阶段无法进行仿真,能进到仿真界面,但是无法执行程序,这个怎么解决?
STM32F4的IO口5V容忍问题
stm32F723ZET6使用ADC捕获正弦波,adc采样频率过高导致主函数无法运行,要怎么优化?
配置方面,使用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通讯主从要保持步调一致才行。