
CUEBIDE生成的APP程序,在写入FLASH之后无法正常跳转。
有关Cubeide IAP 问题
Cubeide1.18.1在线调试改变"现场表达式"中的值提示找不到地址
STM32U3 IIC通信后,SPI+GPDMA 进入循环发送,DMA无法使能 寄存器USEF=1
STM32F103TBU6 封装是VFQFPN36 将PD0和PD1配置成CAN不成功是什么原因
stm32cubeide中如何查看版本日志?
最新版STM32CubeIDE无法安装
STM32CubeIDE能直接在软件中升级吗?
分享一个PWM+DMA的BUG
串口DMA + 空闲中断收发 ?
不是特别理解你的意思是即便你只改变UART的TX,也需要重新开启UART的RX接收?
是,将tx引脚配置为模拟输入模式,然后再配置成tx模式,就需要再次打开dma接收,否则串口不能正常接收数据
那请问你的TX引脚有没有绑定某一个DMA通道?
另外其实你没有描述你TX引脚的功能和连接。你的PA2引脚是功能复用的吗?和你UART进行通讯的是什么设备?因为有一类设备的UART是单线半双工的,它的TX和RX实际是一根线分时复用的。有些电路给的参考电路时MCU这一侧将TX和RX通过一个电阻连接在一起和这些设备通讯。类似的设备可以参考TMC2209.
查到原因是串口通讯的另一个芯片发生了复位,rx引脚一直低电平,单片机接收发生帧错误,重新启动dma后才能正常接收,但是帧错误后为什么必须重启dma?
DMA接收数据有严格的限制,除了起始地址必须保证4字节对齐,必须在可以访问的地址范围之外,你设定的发送和接收长度必须满足。我的理解帧错误一定是数据未能正常发送,或者发送了其中一部分。dma和外设直接的协商。(比如uart要求dma将rx的数据保存到那个位置,保存多少数据,每次保存地址要不要加一。是circuit模式还是其他模式。)所以如果你这次的任务失败当然要停止上次的任务,然后安排下一次的任务。