打印
[技术问答]

串口接收问题

[复制链接]
1271|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cr315|  楼主 | 2025-2-23 13:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在串口接收数据的时候,应该是(起启位,有数据位,有校验位,停止位)为一单位,一个一个接收的
我们平时只用到了数据位,我想使用取出每个字节对应的检验位,怎么能把检验位给取出来呢?

使用特权

评论回复
沙发
miltk| | 2025-5-8 16:23 | 只看该作者
没必要吧,自己定个协议,算一下校验就可以了

使用特权

评论回复
板凳
hhdhy| | 2025-5-8 17:32 | 只看该作者
一般都是不校验的吧,好像是这样

使用特权

评论回复
地板
yuliangren| | 2025-5-8 18:45 | 只看该作者
我觉得就是定个协议自己校验,这样比较好用

使用特权

评论回复
5
tiakon| | 2025-5-8 19:23 | 只看该作者
你想用串口接收数据的校验是么?那不是硬件很直接给做了吗

使用特权

评论回复
6
teaccch| | 2025-5-8 21:05 | 只看该作者
在串口通信中,校验位是用于数据校验的附加位,通常与起始位、数据位和停止位共同构成一个完整的传输单元。若需提取校验位,需从硬件协议层解析,并结合软件实现

使用特权

评论回复
7
gongqijuns| | 2025-5-8 22:19 | 只看该作者
一个完整的串口数据帧通常包含以下字段(以8-N-1格式为例)

使用特权

评论回复
8
gra22ce| | 2025-5-9 08:27 | 只看该作者
通过串口中断或轮询方式逐位接收数据,并提取校验位

使用特权

评论回复
9
eleg34ance| | 2025-5-9 10:00 | 只看该作者
部分MCU的UART外设会自动剥离起始位、停止位和校验位,仅提供数据位给软件。此时需通过硬件手册确认是否支持直接读取原始数据位(含校验位)。

使用特权

评论回复
10
pe66ak| | 2025-5-9 11:36 | 只看该作者
若硬件不支持,需通过外部逻辑或软件模拟逐位采样

使用特权

评论回复
11
hight1light| | 2025-5-9 13:57 | 只看该作者
校验位通常位于数据位之后、停止位之前(即第9位,LSB为第0位)。

使用特权

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

本版积分规则

1392

主题

4481

帖子

0

粉丝