提交 429e1caf 编写于 作者: BreederBai's avatar BreederBai 提交者: guo

修复BUG:串口启用DMA接收后,动态修改串口波特率扰乱接收检索

在串口不关闭的情况下,更改波特率后,清空上次数据检索,导致更新写入检索错误,
串口无法读出正确的数据。真实数据的位置和检索值之间总有一定的距离,导致读取
数据的时候会有一定的延时。缓冲区大,延时越长
上级 326abec0
......@@ -169,7 +169,9 @@ static rt_err_t stm32_configure(struct rt_serial_device *serial, struct serial_c
}
#ifdef RT_SERIAL_USING_DMA
uart->dma_rx.last_index = 0;
if (!(serial->parent.open_flag & RT_DEVICE_OFLAG_OPEN)) {
uart->dma_rx.last_index = 0;
}
#endif
if (HAL_UART_Init(&uart->handle) != HAL_OK)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册