打印
[应用相关]

请教关于HAL库串口DMA发送问题

[复制链接]
468|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2021-2-22 14:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在调用HAL_UART_Transmit_DMA函数连续发送时发现发不出去(while(1)可以持续发送但可能丢了不少包),返回值为HAL_BUSY,条件即huart->gState == HAL_UART_STATE_READY不成立。在网上找解决方法都不能解决这个问题,比如在/* Set the UART DMA transfer complete callback */和/* Set the UART DMA Half transfer complete callback */中给huart->gState赋值也不行。请问有什么好的解决方法?感觉也不像是数据还没发送完。

使用特权

评论回复
沙发
一只眠羊| | 2023-1-10 19:38 | 只看该作者
使用hal的串口发送还有丢包情况啊?

使用特权

评论回复
板凳
一只眠羊| | 2023-1-10 20:10 | 只看该作者
使用hal的串口发送还有丢包情况啊?

使用特权

评论回复
地板
未说出口的像你| | 2023-1-10 20:42 | 只看该作者
你可以用仿真的方式调试一下啊,看看程序运行逻辑呗

使用特权

评论回复
5
在曼谷的春| | 2023-1-10 21:14 | 只看该作者
按理来说应该不会发不完啊,你多大的数据啊

使用特权

评论回复
6
西洲| | 2023-1-10 21:46 | 只看该作者
你用啥弄得工程啊?是cubemx么?

使用特权

评论回复
7
捧一束彼岸花| | 2023-1-10 22:18 | 只看该作者
你可以找个例程跑跑看,如果OK的话,看看和你写的工程有啥不一样

使用特权

评论回复
8
风凉| | 2023-1-10 22:50 | 只看该作者
感觉像DMA没配置或者是没准备好呢

使用特权

评论回复
9
春日负喧| | 2023-1-10 23:22 | 只看该作者
你可以看看你的初始化方面,初始化是不是有问题

使用特权

评论回复
10
温室雏菊| | 2023-1-10 23:54 | 只看该作者
   就是串口准备不OK啊?啥情况?

使用特权

评论回复
11
故意相遇| | 2023-1-11 00:26 | 只看该作者
看看你的程序吧,能发一下吗?

使用特权

评论回复
12
月亮一键变蓝| | 2023-1-11 00:58 | 只看该作者
感觉是哪里没配置好导致的,就动不动串口没准备好的话,就容易这样。HAL真的麻烦,冗余太多

使用特权

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

本版积分规则

2055

主题

7455

帖子

10

粉丝