最新消息:

记一次STM32WB调试-串口DMA无法发送

MCU ZmmFly 2578浏览 0评论

项目使用STM32CubeMX生成配置代码,

USART1 使用DMA一直无法发送数据,不使用DMA,而使用HAL_UART_Transmit能正常发送;

百度上搜索,发现存在几例同样DMA无法发送的情况,但不是一个系列的芯片;

依照搜索到方法均无法解决;

遂逐个配置对比,发现使用Cube重新生成同样配置时DMA串口发送正常;

配置没问题,开始排查代码;

对比发现main中初始化顺序不同

左侧为DMA非正常工作配置顺序,右侧为DMA正常工作的配置顺序。

可以看出左侧DMA初始化排在串口初始化后面,右侧则在串口初始化前。

将左侧DMA初始化调用移至串口初始化前,问题解决

转载请注明:神奇海域 » 记一次STM32WB调试-串口DMA无法发送

发表我的评论
取消评论

Protected by WP Anti Spam

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址