硬汉嵌入式论坛

 找回密码
 立即注册
查看: 926|回复: 4
收起左侧

[技术分享] H7-TOOL高速HID虚拟串口对8bit,7bit和6bit数据的奇偶校验都进行了支持

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106826
QQ
发表于 2021-11-30 13:03:18 | 显示全部楼层 |阅读模式

先看STM32H7支持的校验格式:

666.png

主要是三种,6bit数据 + 1bit校验,7bit数据+1bit校验,8bit数据+1bit校验

8.png

发送寄存器和接收寄存器都是9bit格式的。

5.png

那么重点来了,校验位是串口外设硬件完成的,对应的数值也在发送/接收寄存器上。

操作8bit数据+1bit格式的时候感觉不出来,因为我们一般都是仅读取寄存器的8bit。

操作6bit数据 + 1bit校验,7bit数据+1bit校验就有问题了,会把校验位数值也读出来。

简单的串口回环测试(RX和TX短接)效果:
发送hex数值11 ,22, 33, 44后,反馈的数据把校验位也给读出来了。



软件处理后,正常效果:


回复

使用道具 举报

23

主题

1406

回帖

1475

积分

至尊会员

积分
1475
发表于 2021-11-30 15:29:26 | 显示全部楼层
cool,很有用,不过话说还有人用的6bit?
代码不规范,亲人两行泪!
回复

使用道具 举报

2

主题

269

回帖

275

积分

高级会员

积分
275
发表于 2021-11-30 16:15:43 | 显示全部楼层
那么问题以来了,如果校验出错,软件协议应该怎样弄呢?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106826
QQ
 楼主| 发表于 2021-11-30 16:19:48 | 显示全部楼层
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106826
QQ
 楼主| 发表于 2021-11-30 16:21:48 | 显示全部楼层
cctv180 发表于 2021-11-30 16:15
那么问题以来了,如果校验出错,软件协议应该怎样弄呢?

以modbus为例,反馈错误码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-6 04:16 , Processed in 0.284373 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表