发新帖我要提问
12
返回列表
打印
[其他ST产品]

STM32 HAL库 UART 串口读写功能笔记

[复制链接]
楼主: ym0sly
手机看帖
扫描二维码
随时随地手机跟帖
21
ym0sly|  楼主 | 2022-12-31 20:27 | 只看该作者 |只看大图 回帖奖励 |倒序浏览
串口调试技能
1):
串口助手可以帮助我们“看见”串口传输的数据(即每一个帧我收到了哪些数据)

使用特权

评论回复
22
ym0sly|  楼主 | 2022-12-31 20:30 | 只看该作者
UartInit();
while(1)
{
TxBuf = 0x55;
Delay_ms(10);
}

使用特权

评论回复
23
ym0sly|  楼主 | 2022-12-31 20:31 | 只看该作者
1:不要追求一步到位,第一步先以能发出数据为目标。
2:一个测试发送的伪代码,延时的时间应远大于数据帧的传输时间,以免发生数据混叠。

使用特权

评论回复
24
ym0sly|  楼主 | 2022-12-31 20:32 | 只看该作者
在调试数据接收
UartInit();
while(**_RxReady)
{
TxBuf = RxBuf;
Delay_ms(10);
}

使用特权

评论回复
25
ym0sly|  楼主 | 2022-12-31 20:33 | 只看该作者
1:(中断系统与中断完成标志位相互独立,即使中断系统有问题,中断标志位也会工作)
用Rx完成标志位来调试接收是很好的起点,可避免引入复杂的中断系统问题。

2:将收到的数据再通过串口发送出去,可以方便观察串口是否正确收到了数据信息。

使用特权

评论回复
26
ym0sly|  楼主 | 2022-12-31 20:36 | 只看该作者
2):
串口自环线调试方法

1:自环线是一种将自身串口TXD和RXD线直接相连,利用串口自身的收发功能进行调试

2:自环线调试可以快速判断串口硬件(包括外部转换器件电路)是否存在问题

3:使用自环线调试的前提是该串口支持双工模式

使用特权

评论回复
27
Bowclad| | 2023-1-1 16:18 | 只看该作者
异步串口如何实现数据同步接发?

使用特权

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

本版积分规则