打印
[STM32G0]

串口 DMA 一启用就卡死?用的是 G070

[复制链接]
134|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
公羊子丹|  楼主 | 2025-6-12 07:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
改成 DMA 模式后程序就不动了,CubeMX 配了好几遍也不对劲,怀疑中断没触发。

使用特权

评论回复
沙发
Clyde011| | 2025-6-12 07:24 | 只看该作者
DMA 配错方向也会这样,记得设成 memory to peripheral。

使用特权

评论回复
板凳
公羊子丹|  楼主 | 2025-6-12 07:25 | 只看该作者
我之前也碰过,结果是忘开 DMA 的中断了……

使用特权

评论回复
地板
周半梅| | 2025-6-12 07:27 | 只看该作者
HAL_UART_Transmit_DMA 用了没?别忘关 IDLE 检测。

使用特权

评论回复
5
帛灿灿| | 2025-6-12 07:28 | 只看该作者
看下 NVIC 配置是不是少了 USART 的 DMA 通道。

使用特权

评论回复
6
童雨竹| | 2025-6-12 07:29 | 只看该作者
用逻辑分析仪看看是不是数据根本没发出去。

使用特权

评论回复
7
万图| | 2025-6-12 07:30 | 只看该作者
有没有打开 USART 的 TX DMA 请求位?

使用特权

评论回复
8
Wordsworth| | 2025-6-12 07:31 | 只看该作者
我是用 LL 库做的,感觉比 HAL 更直观点。

使用特权

评论回复
9
Bblythe| | 2025-6-12 07:32 | 只看该作者
你有设 FIFO 模式吗?G0 有些版本支持。

使用特权

评论回复
10
Pulitzer| | 2025-6-12 07:32 | 只看该作者
把 DMA 中断服务函数打点调一下。

使用特权

评论回复
11
Uriah| | 2025-6-12 07:33 | 只看该作者
上拉电阻够吗?我以前用 10k 不行。

使用特权

评论回复
12
内政奇才| | 2025-6-12 12:54 | 只看该作者
串口的 TX 和 RX 引脚需正确配置为复用推挽输出模式和浮空输入模式。若配置错误,可能导致 DMA 传输异常,进而使系统卡死。

使用特权

评论回复
13
flycamelaaa| | 2025-6-12 14:00 | 只看该作者
串口线路可能受到外部电磁干扰,导致数据传输错误,引发 DMA 传输异常。

使用特权

评论回复
14
flycamelaaa| | 2025-6-12 16:56 | 只看该作者
DMA 通道配置冲突?

使用特权

评论回复
15
powerantone| | 2025-6-12 19:56 | 只看该作者
DMA 的传输方向、数据宽度、传输模式等参数设置错误,可能导致数据传输异常。

使用特权

评论回复
16
stormwind123| | 2025-6-12 20:00 | 只看该作者
中断优先级不合理?

使用特权

评论回复
17
probedog| | 2025-6-12 21:23 | 只看该作者
可能是中断服务函数处理不当导致的。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

130

主题

5458

帖子

3

粉丝