电脑知识 如何看懂串口通信协议(程序员视角)

目录

前言

 一、串口文档

 二、明确身份

三、串口设置

 四、看懂命令格式

 五、看懂发送命令的格式

 1.帧头和帧尾

2.帧内数据长度 

3.帧内数据/具体命令

4.整体命令

5.真正的命令字和命令值

六、第一个案例

1.发送命令

2.雷达的回答 

七、作者的话


前言

用一个案例,带你看懂大部分串口通信协议。跟着看就好,因为大部分协议都是大同小异,看懂一个,基本其他也大差不差了。

昨天有人问我,串口通信协议要怎么看?她看不太懂。

她发来了这个:(如图1所示)

图1 串口套件

 一、串口文档

目录部分跳过,我只截图前1,2,4,5页,因为只要看懂一部分,后面基本就都懂了。

图2 第一页

图3 第二页

图4 第四页

图5 第五页

 二、明确身份

在这个案例里,我们不需要接线,我们只考虑自己是程序员,知道如何收发信息既可。

三、串口设置

首先需要和这个硬件建立连接,所以需要按它的需求进行设置。(如图6所示)

图6 串口配置

IO的意思就是,输入和输出(in和out),我们接收和传输信息都必须满足这些设置。

每一个串口调试软件都有这部分。(如图7所示)

图7 串口调试软件

 四、看懂命令格式

串口协议,可以理解为你给串口发命令,需要满足什么格式。(如图8所示)

图8 命令格式

 在这个协议里,我们既要发信息,也要接收信息,所以格式有两种,一种是,你给雷达发的时候的命令,第二个是你雷达收到消息了,会给你回个信,这个信你也需要看懂他。

例:你问雷达:“我们能发消息了吗?”,雷达说:“可以了,开始吧”。

你问雷达:“现在出现的东西离我们多远”。雷达说:“3米”。

所以,你既要会问,雷达的回信你还要看懂。

 五、看懂发送命令的格式

我们先看发送命令格式部分(如图9所示)。

图9 发送命令格式
 1.帧头和帧尾

帧头和帧尾是固定不变的(如图10所示),就像写信:“亲爱的粉丝们你们好”........“感谢大家看我的信”。

图10 帧头和帧尾
2.帧内数据长度 

红框里写的是绿框的长度,绿框才是我们真正的命令。(如图11所示)

举个例子:
亲爱的粉丝们你们好 命令是4个字  给我点赞 感谢大家看我的信

这个字数,和只爱我一个是需要变的。

图11 帧内数据长度
3.帧内数据/具体命令

 这个命令也有要求,一个是啥命令(命令字),第二个是具体多少次(命令值)

举个例子:  给我点赞   3次

图12 帧内数据格式
4.整体命令

所以,这个命令整体应该是:

亲爱的粉丝们你们好 命令是4个字  给我点赞  3次 感谢大家看我的信

(对不起,我不该命令你们,我错了,不要抛弃我~~嘤嘤嘤嘤嘤) 

5.真正的命令字和命令值

在下面的示例中,我们可以看见命令字和命令值。(如图13所示)

图13 命令字和命令值

命令字是0x00FF,但是0x不用看,他的意思是,这是16进制的数,他不是数字的一部分。

备注:为什么0x是十六进制呢?

答:WC是什么意思呢?你怎么知道WC是卫生间?0x就是为什么叫16进制,约定俗成。

例:比如我写11,你怎么知道是2进制还是10进制,还是16进制?如果我写0x11,就是,16进制的11。

所以,这里的命令字是00 FF,命令值同理。 

六、第一个案例

接下来我们一起看第一个案例。

1.发送命令

这个雷达有个要求,你发其他命令前,需要先发一个命令启动。然后我们一起看这个命令。

(如图14所示)

图14 命令
2.雷达的回答 

这时候雷达会回复你。你必须收到这串数字,才是真的成功了。(如图15所示)

图15 雷达的回答

七、作者的话

作者会在生活中和私信里筛选内容进行讲解哒,如果大家提问,希望详细一点。这样我才好锁定知识点进行讲解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/849323.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

提升学校管理效率,智慧校园解决方案来袭

你是不是曾为学校管理效率低下而困扰?是不是对传统的教育模式感到力不从心?现在,一个划时代的解决方案来啦——智慧校园! 随着科技的不断发展,智慧校园正逐渐改变着学校的管理方式。通过将信息技术与教育相结合&#x…

照片数据恢复,6个策略轻松恢复!

“我在电脑上保存了很多照片,在清理电脑时一不小心误删了,现在完全没办法将它们找回,大家有什么方法吗?希望给我一些建议。” 在数字时代,照片成为了我们记录生活、珍藏回忆的重要载体。无论是旅行中的风景照、家庭聚会…

为什么C#越学越陌生,搞那么多奇怪的东西?

绝大多数编程语言,除了基础语法,其他的都是可选的工具,可用可不用,顺手你就用,不顺手就别用。 刚好我有一些资料,是我根据网友给的问题精心整理了一份「C语言的资料从专业入门到高级教程」, 点…

钉钉二次开发-企业内部系统集成官方OA审批流程

场景:企业内部开发人员不足,需要从以前集成Activiti的方式转换成集成钉钉官方OA审批流程,提高开发效率和系统稳定性。 摘要:企业内部系统集成Acitiviti开源工作流存在的问题: 1. 企业需要单独搭建工作流服务&#xff…

服务器数据恢复—强制上线raid5阵列离线硬盘导致raid不可用的数据恢复案例

服务器数据恢复环境: 某品牌2850服务器中有一组由6块SCSI硬盘组建的raid5磁盘阵列,linux操作系统ext3文件系统。 服务器故障: 服务器运行过程中突然瘫痪。服务器管理员检查阵列后发现raid5阵列中有两块硬盘离线,将其中一块硬盘进行…

2种方法!一键批量下载1688主图、sku图、视频和详情页

最近关于如何一键下载1688主图、sku图、视频和详情页相关的问题被商友们问爆了。店雷达直接上实操教程,建议收藏,不迷路! 方法一:通过选品中心下载 1、在店雷达选品中心(如果想在1688进货的就在1688选品库中选品&…

视频监控管理平台LntonCVS视频汇聚平台充电桩视频监控应用方案

随着新能源汽车的广泛使用,公众对充电设施的安全性和可靠性日益重视。为了提高充电桩的安全管理和站点运营效率,LntonCVS公司推出了一套全面的新能源汽车充电桩视频监控与管理解决方案。 该方案通过安装高分辨率摄像头,对充电桩及其周边区域进…

html5实现端午节网站源码

文章目录 1.设计来源1.1 端午首页页面1.2 端午由来页面1.3 端午图集页面1.4 端午活动页面1.5 给我留言页面 2.效果和源码2.1 动态效果2.2 目录结构 源码下载 作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/details/139524377 ht…

MYTED | TED100篇打卡总结 辅助学习网站使用说明

文章目录 📚背景🐇timeline🐇版本记录🐇产出小结 📚功能说明🐇左侧🐇中间🐇右侧 📚背景 🐇timeline 在一个平常的下午,一次平常的桌面整理&#…

软考对进入事业编的人有帮助吗?

首先肯定的说,软考是可以用来评职称的。 但是, 这取决于你所在公司的性质和工作岗位。 软考全国统一实施后,不再进行计算机技术与软件相应专业和级别的专业技术职务任职资格评审工作。计算机软件资格考试既是职业资格考试,又是…

代理记账公司的标准,理解并遵循业务流程和道德规范

代理记账公司的存在是为了帮助企业管理和报告他们的财务信息,他们为企业的各种交易提供会计服务,并确保企业遵守所有相关的法规和准则,这些公司需要严格地符合一些标准以维持良好的声誉和服务质量。 代理人必须拥有适当的证书和执照&#xff…

迅为RK3562开发板ARM四核A53核心板瑞芯微国产人工智能Linux安卓

iTOP-3562开发板采用瑞芯微RK3562处理器,内部集成了四核A53Mali G52架构,主频2GHZ,内置1TOPSNPU算力,RK809动态调频。支持OpenGLES1.1/2.0/3.2、0penCL2.0、Vulkan 1.1内嵌高性能2D加速硬件。 内置独立NPU, 算力达 1TOPS,可用于轻…

浅谈IDEA中项目如何进行热部署

文章目录 一、什么是热部署?二、配置过程2.1、社区版IDEA2.2、专业版IDEA 一、什么是热部署? 热部署:当代码修改时,IDEA自动帮忙重新加载项目,无需手动加载。 二、配置过程 2.1、社区版IDEA 1、添加热部署框架 &l…

Docker 学习总结(83)—— 配置文件daemon.json介绍及优化建议

一、daemon.json 文件概述 daemon.json是Docker守护进程的配置文件,它允许系统管理员自定义Docker守护程序的行为。此文件通常位于/etc/docker/目录下。通过修改daemon.json,可以调整Docker守护进程的多种设置,包括网络配置、日志记录、存储驱动等。 二、daemon.json 文件结…

Unity编辑器扩展-番外篇-Gizmos基础-物体如何在球面上移动

目录 一、本节目标效果展示 二、先画出素材 1.先新建一个普通的代码 2.画素材(一个头,两个耳朵,一个鼻子) a.关于贴心的Unity b.开始画素材 三、了解移动的原理 四、辅助物体的建立 五、画左耳朵 六、全部代码 七、作者的…

OpenCv之简单的人脸识别项目(特征标注页面)

人脸识别 准备八、特征标注页面1.导入所需的包2.设置窗口2.1定义窗口外观和大小2.2设置窗口背景2.2.1设置背景图片2.2.2创建label控件 3.定义两个全局变量4.定义选择图片的函数4.1函数定义和全局变量声明4.2打开文件对话框并获取文件路径4.3处理图片并创建标签4.4显示图像 5.定…

MK米客方德 SD NAND与文件系统:技术解析与应用指南

随着数字存储技术的飞速发展,SD NAND(贴片式T卡)已成为我们日常生活中不可或缺的存储工具。我们将深入探讨SD NAND的文件系统,特别是SD 3.0协议支持的文件系统类型,以及它们在实际应用中的作用和用户可能遇到的问题。 MK米客方德的…

kafka-集群-主题创建

文章目录 1、集群主题创建1.1、查看 efak1.2、创建 主题 my_topic1 并建立6个分区并给每个分区建立3个副本1.2.1、查看 my_topic1 的详细信息 1.3、停止 kafka-01实例,端口号为 9095 1、集群主题创建 1.1、查看 efak 已经有三个kafka实例 1.2、创建 主题 my_topic1…

【面试干货】索引的作用

【面试干货】索引的作用 1、索引的作用 💖The Begin💖点点关注,收藏不迷路💖 1、索引的作用 索引 可以协助 快速查询、更新数据库表中数据。 通过使用索引,数据库系统能够快速定位到符合查询条件的数据,提…

人工智能--Foxmail邮箱使用方法

目录 🍉Foxmail全面指南 🍉下载与安装 🍈下载软件 🍈安装软件 🍉配置邮箱 🍈启动 Foxmail 🍈添加邮箱账户 🍈手动配置邮箱 🍍接收邮件服务器 (IMAP/POP3) &…