历史上的今天
返回首页

历史上的今天

今天是:2024年09月02日(星期一)

正在发生

2019年09月02日 | STM32开发 -- UART应用层通信协议分析

2019-09-02 来源:eefocus

拿到一份UART的通信协议,上手来操作之前先做一下分析。


一、帧格式说明

先看一下它的帧格式说明:


1、 帧头标志Head 

不论是命令帧还是响应帧,帧头标志都是0x92。 

2、 协议版本 

协议版本号(4bit),目前值为1 

加密方式(4bit),0表示采取“数据不加密+校验和”方式。 

所以,当前此字段完整值为0x10 

3、 控制字段中的C/R比特 

用于指示该帧是命令帧还是应答帧,1表示命令帧,0表示应答帧。 

4、 控制字段中的T/F比特 

用于指示传输数据类型,1表示透明的非结构化数据,0表示正常的数据帧。 

5、 虚拟通道 

虚拟地址(4bit):代表数据帧的源地址标识。目前为保留位,取值为0。 

通道序号(4bit):0表示虚通道0,1表示虚通道1,其他值暂不使用。 

6、 帧序号 

帧的编号一般由发送节点填充,按递增加一的原则(溢出后归零重新开始)使用,不能重复,以保证“虚拟通道+帧序号”在某个相对时间段内是唯一的。但目的节点在应答主控节点的命令时仍使用源节点的帧序号,以实现命令与应答的一一对应。节点在主动上报时,帧序号由节点自己填充,但仍坚持递增加一的原则。 

7、 用户数据长度指示 

指“用户数据部分”的总长度。一帧的总长度不超过64K。 

8、 用户数据帧 

根据命令的不同而不同。 

命令字由两个字节构成,分别称为CmdHi和CmdLo,高8比特在前,低8比特在后。 

9、 校验和 

指从帧头开始到校验和之前所有字节的累加和,发送方在发送时,通过计算填充帧的校验和部分;接收方在接收到一个帧时,应通过计算并与校验和部分进行比较,以确保接收到的帧是完整正确的。 

10、用户状态字定义 

应答状态字说明 :0 成功 

1 没有此命令 

2 帧长度错误 

3 参数错误 

4 设置失败 

5 忙,请等待


二、数据分析

串口回环测试,就不做介绍了。 

参看:日常生活小技巧 – UART 回环测试


上电后可以获取一段数据。 

这里写图片描述

推荐阅读

史海拾趣

Aplus Integrated Circuits公司的发展小趣事

为了保持技术领先地位,Aplus Integrated Circuits公司注重产学研合作。公司与多所高校和研究机构建立了紧密的合作关系,共同开展科研项目和技术攻关。这种合作模式不仅为公司带来了源源不断的技术创新动力,还为公司培养了一批高素质的研发人才。

Analog Modules Inc公司的发展小趣事

随着市场需求的不断增长,Aplus Integrated Circuits公司决定扩大生产规模。公司在原有生产线的基础上,增加了多条先进的生产线,并引进了自动化生产设备,提高了生产效率。同时,公司还加强了质量管理,确保产品质量的稳定性和可靠性。这些举措使得公司的产能得到了大幅提升,为公司的持续发展提供了有力保障。

这五个故事展示了Aplus Integrated Circuits公司在电子行业中的发展历程和成就,从创业初期的技术突破到与国际市场的接轨,再到应对行业变革的挑战、加强产学研合作以及扩大生产规模,每一步都体现了公司的努力和坚持。

Elec & Eltek公司的发展小趣事

随着全球对环境保护和可持续发展的重视日益加深,Eltek公司也积极响应这一趋势。在产品研发和生产过程中,Eltek公司始终坚持环保理念,采用环保材料和工艺,减少对环境的影响。同时,Eltek公司还加大了在可再生能源领域的投入力度,积极研发具有更高效率和更低成本的电力电子产品。此外,Eltek公司还积极参与各种环保活动和公益事业,为推动全球可持续发展贡献自己的力量。

以上五个故事虽然是虚构的,但其中所蕴含的发展思路、创新精神和国际化视野是电子行业公司普遍需要关注和借鉴的。希望这些故事能为您提供一些启示和灵感。

CIF公司的发展小趣事

A公司是一家专注于电子元器件生产的CIF公司。在成立初期,A公司凭借其创新的研发能力和高效的生产流程,迅速在市场中脱颖而出。通过与全球多家知名电子产品制造商建立稳定的CIF贸易关系,A公司不断扩大生产规模,优化产品质量,逐渐发展成为行业内的领军企业。

Ericsson Power Modules公司的发展小趣事

随着产品质量的不断提升和技术的不断创新,Ericsson Power Modules开始积极拓展市场。公司不仅在欧洲市场取得了显著成绩,还逐步将业务拓展至亚洲、北美等地区。为了更好地服务全球客户,Ericsson Power Modules在瑞典斯德哥尔摩设立了总部,并在中国、美国等地建立了生产基地和研发中心。这种全球化布局使得Ericsson Power Modules能够更快速地响应市场需求,提供更高效、更便捷的服务。

Anderson Power公司的发展小趣事

在创立初期,Ericsson Power Modules就展现出了强大的技术创新能力。公司团队通过深入研究电源技术、电路板应用和系统知识,成功开发出了一系列高性能、高效率的电源模块产品。其中,DC-DC转换器、中级和先进总线转换器、POL稳压器等产品因其卓越的性能和稳定性,在市场上赢得了广泛好评。这些技术突破和产品创新为Ericsson Power Modules的后续发展奠定了坚实的基础。

问答坊 | AI 解惑

VHDL的TESTBENCH

写了VHDL程序后,想功能仿真,verilog中的testbench有很多的书介绍,但是vhdl的testbench却很少很少,原因也有很多吧,主要是VHDL的testbench太麻烦,但是我却学到VHDL了,所以写testbench也只有用vhdl,现在才开始学习,希望与大家讨论学习。 这 ...…

查看全部问答>

09器件已出来大家来讨论讨论会出什么题目

本帖最后由 paulhyde 于 2014-9-15 09:07 编辑 仪器类的兄弟大家各自发表发表意见吧  …

查看全部问答>

都用的什么编译器?

各位在电脑上都用的什么编译调试器? ads1.2?因被特的IDE? 我刚买了个abcarm s3c2410的板子,没带编译器,用什么比较好? 以前只用过因被特的,但那时候用的也是人家公司的板子。 另:我需要一个3.5寸的液晶屏,有的m一下我,谢谢。…

查看全部问答>

TTL电平知识简述

什么叫TTL电路?TTL电路的电平信号及TTL电路的优缺点 什么叫TTL电路? TTL(电路中的)2008-05-15 02:22TTL(逻辑门电路) 全称Transistor-Transistor Logic,即BJT-BJT逻辑门电路,是数字电子技术中常用的一种逻辑门电路,应用较早,技术已比较成熟。 ...…

查看全部问答>

接口电路的浪涌冲击防护和TVS的应用2008年版

接口电路的浪涌冲击防护和TVS的应用2008年版…

查看全部问答>

2440无法实现微妙级延时吗?代码如下

我用示波器测得时候总达不到微妙级延时示波器显示为2.5us - 7us范围,请帮分析一下? void Delay_us(int time) //1us {         unsigned int val = (PCLK>>1)/1000000 - 1; //1us         v_pPWMregs ...…

查看全部问答>

求助一个关于arm串口读写的问题

我用的arm是at91rm9200 现在要通过串口向一个GPRS模块(gr64)发送AT命令 先定义了一个字符数组\"AT\\n\" 把它往串口里面写,貌似写是没问题的 按道理GR64应该返回“ATOK” 但是我接下来读串口却总是读出“AT\\n” 也就是说你写的什么,读出 ...…

查看全部问答>

请教各位高手一个PCI的问题

我们知道,PCI设备有三个空间——内存地址空间、IO地址空间和配置空间。由于PCI支持即插即用,所以PCI设备不是占用固定的内存地址空间或I/O地址空间,而是可以由操作系统决定其映射的基址。怎么配置呢?这就是配置空间的作用。 DW | Byte3 | Byte2 ...…

查看全部问答>

如何将nk.bin转化为nk.nb0

我编译了好几遍都没有nk.nb0,听说有工具可以转化,那位大哥知道能帮帮小弟。…

查看全部问答>

<全国大学生电子设计竞赛常用电路模块制作>最新版

本帖最后由 paulhyde 于 2014-9-15 04:02 编辑 手上只有2章!1、微控制器电路模块制作2、微控制器外围电路模块制作三章--八章欢迎大家补充!  …

查看全部问答>