RT_THREAD 使用UART+DMA接收导致数据分包输出问题(自测)

本文解决了在使用RT-Thread系统时遇到的UART配合DMA接收导致的数据分包问题,通过修改HAL_UART_RxCpltCallback和HAL_UART_RxHalfCpltCallback函数中的dma_isr调用,提升了串口通讯效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考文章:

RT-Thread 文档中心https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/utest/utest?id=utest-%E6%B5%8B%E8%AF%95%E6%A1%86%E6%9E%B6

RT-Thread-请问哪能找到utest的示范用例?RT-Thread问答社区 - RT-Thread

RT_Thread的测试框架使用及分析

RT_Thread 使用UART+DMA接收导致数据分包输出问题_yl浪迹天涯的博客-优快云博客_rtthread dma 循环

在实际工作工作中遇到了上面yl浪迹天涯相同的问题,导致串口通讯效率低下,按照该博主的指引,代码中做如下修改,问题解决,感谢yl浪迹天涯博主!

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
    struct stm32_uart *uart;
    RT_ASSERT(huart != NULL);
    uart = (struct stm32_uart *)huart;
    //dma_isr(&uart->serial);
}


void HAL_UART_RxHalfCpltCallback(UART_HandleTypeDef *huart)
{
    struct stm32_uart *uart;
    RT_ASSERT(huart != NULL);
    uart = (struct stm32_uart *)huart;
    //dma_isr(&uart->serial);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aping_cs_dn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值