CN102508661A - 一种通讯模块开发配置的方法和装置 - Google Patents
一种通讯模块开发配置的方法和装置 Download PDFInfo
- Publication number
- CN102508661A CN102508661A CN2011103325887A CN201110332588A CN102508661A CN 102508661 A CN102508661 A CN 102508661A CN 2011103325887 A CN2011103325887 A CN 2011103325887A CN 201110332588 A CN201110332588 A CN 201110332588A CN 102508661 A CN102508661 A CN 102508661A
- Authority
- CN
- China
- Prior art keywords
- communications protocol
- configuration file
- stipulations
- communication module
- analysis mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Communication Control (AREA)
Abstract
本发明公开一种通讯模块开发配置的方法和装置,该方法包括:A.根据协议帧将通讯模块中的通讯协议内容和通讯协议规约解析方式保存至配置文件,并读取配置文件;B.根据该配置文件加载该通讯协议内容,并对该通讯协议规约解析方式进行处理;C.判断是否存在用户修改,若是,则执行步骤D,若否,则步骤结束;D.接收用户修改通讯协议内容和/或通讯协议规约解析方式的命令;E.根据该命令修改该配置文件,并保存修改后的配置文件,以读取配置文件,返回步骤B。通过修改配置文件达到修改通讯模块的目的,该技术方案实现了通讯模块和测试程序的共用,不仅减少了测试程序修改的时间和提高了工作效率,还为通讯产品的开发和测试提供了便利。
Description
技术领域
本发明涉及通讯测试领域,尤其涉及一种通讯模块开发配置的方法和装置。
背景技术
在通讯产品的设计开发中,通讯部分是十分重要的,在实物开发设计出来之前,往往需要对产品的通讯模块进行测试,开发人员通常会编写测试软件供测试使用,产品的通讯协议内容或者通讯协议规约解析方式在开发过程中通常需要根据需求和测试结果进行修改,因此,每改动一次,产品的通讯模块和测试软件也需要修改或者重写,以供新的测试需求;另外,当新的项目启动时,又需要针对该项目开发新的通讯模块和测试程序,同时在通讯测试过程中,哪怕仅修改了一点通讯协议内容,产品的通讯模块及其测试软件也都需要做相应修改并重新编译成可执行文件,才能进行测试。这些都浪费了程序修改时间,增加了开发成本。
发明内容
本发明要解决的技术问题在于,针对现有技术的通讯模块及其测试软件存在修改不便和不可复用的缺陷,提供一种可共用和易修改的通讯模块开发配置的方法和装置。
本发明解决其技术问题所采用的技术方案是:构造一种通讯模块开发配置的方法,所述方法包括以下步骤:
A.根据协议帧将所述通讯模块中的通讯协议内容和通讯协议规约解析方式保存至配置文件,并读取配置文件;
B.根据所述配置文件加载所述通讯协议内容,并对所述通讯协议规约解析方式进行处理;
C.判断是否存在用户修改,若是,则执行步骤D,若否,则步骤结束;
D.接收用户修改所述通讯协议内容和/或所述通讯协议规约解析方式的命令;
E.根据所述命令修改所述配置文件,并保存修改后的所述配置文件,以读取配置文件,返回步骤B。
在本发明所述的方法中,所述协议帧的结构包括帧头、帧长、命令字、数据域、校验码以及帧尾。
在本发明所述的方法中,所述通讯协议内容包括类型码、命令码、数据长度以及数据内容。
在本发明所述的方法中,所述通讯协议规约包括IEC60870-5-101规约和IEC60870-5-104规约。
在本发明所述的方法中,所述通讯协议规约解析方式包括浮点数转换为二进制字节数、字符串转换为二进制字节数、字节数转换为浮点数以及字节数转换为字符串。
本发明还构造一种通讯模块开发配置的装置,所述装置包括依次连接的保存单元、加载单元、判断单元、接收单元以及分别与所述加载单元和所述接收单元连接的读取单元,其中,
保存单元,用于根据协议帧将所述通讯模块中的通讯协议内容和通讯协议规约解析方式保存至配置文件,并读取配置文件;
加载单元,用于根据所述配置文件加载所述通讯协议内容,并对所述通讯协议规约解析方式进行处理;
判断单元,用于判断是否存在用户修改;
接收单元,用于接收用户修改所述通讯协议内容和/或所述通讯协议规约解析方式的命令;
读取单元,用于根据所述命令修改所述配置文件,并保存修改后的所述配置文件,以读取配置文件。
在本发明所述的装置中,所述协议帧的结构包括帧头、帧长、命令字、数据域、校验码以及帧尾。
在本发明所述的装置中,所述通讯协议内容包括类型码、命令码、数据长度以及数据内容。
在本发明所述的装置中,所述通讯协议规约包括IEC60870-5-101规约和IEC60870-5-104规约。
在本发明所述的装置中,所述通讯协议规约解析方式包括浮点数转换为二进制字节数、字符串转换为二进制字节数、字节数转换为浮点数以及字节数转换为字符串。
实施本发明的技术方案,具有以下有益效果:根据协议帧将通讯协议内容和通讯协议规约解析方式保存至配置文件,并通过修改配置文件达到修改通讯模块的目的,该技术方案实现了通讯模块和测试程序的共用,不仅减少了测试程序修改的时间和提高了工作效率,还为通讯产品的开发和测试提供了便利。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明通讯模块开发配置的方法的流程图;
图2是本发明通讯模块开发配置的装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,图1是本发明通讯模块开发配置的方法的流程图,如图1所示,所述方法包括以下步骤:
在步骤A中,根据协议帧将所述通讯模块中的通讯协议内容和通讯协议规约解析方式保存至配置文件,并读取配置文件。
优选地,所述协议帧的结构包括帧头、帧长、命令字、数据域、校验码以及帧尾。应当说明的是,在本实施例中,该协议帧的结构如表1所示。
表1
帧头 | 帧长 | 命令字 | 数据域 | 校验码 | 帧尾 |
优选地,所述通讯协议内容包括类型码、命令码、数据长度以及数据内容。
优选地,所述通讯协议规约包括IEC60870-5-101规约和IEC60870-5-104规约。
优选地,所述通讯协议规约解析方式包括浮点数转换为二进制字节数、字符串转换为二进制字节数、字节数转换为浮点数以及字节数转换为字符串。
在步骤B中,根据所述配置文件加载所述通讯协议内容,并对所述通讯协议规约解析方式进行处理。应当说明的是,也就是说,在该配置文件中,定义了帧头、帧长、命令字、数据域、校验码以及帧尾的内容及字节数,同时定义了协议内容的类型码、命令码、数据长度以及数据内容以及相应的通讯协议规约解析方式,这样可根据通讯协议规约实现数据的封装和解析。
在步骤C中,判断是否存在用户修改,若是,则执行步骤D,若否,则步骤结束。
在步骤D中,接收用户修改所述通讯协议内容和/或所述通讯协议规约解析方式的命令。
在步骤E中,根据所述命令修改所述配置文件,并保存修改后的所述配置文件,以读取配置文件,返回步骤B。
应当说明的是,为了更好的实施本发明的技术方案,在这里,用户将配置文件的参数定义如下:帧头为0xaa,占用1字节;帧长占用2字节;命令字占用1字节;数据域长度不定;校验码占用1字节,采用校验算法1;帧尾为0xbb,占用1字节。在本实施例中,本领域的技术人员应当了解,可通过下列程序实现该配置文件的参数。
<HEADLEN>1</HEADLEN> 表示帧头长度为1字节
<HEAD>aa</HEAD> 表示帧头为0xaa
<FRAMELEN>2</FRAMELEN> 表示帧长为2字节
<CMDLEN>1</CMDLEN> 表示命令字为1字节
<DATALEN>0</DATALEN> 表示数据域长度不定
<CHECKLEN>1</CHECKLEN> 表示校验码1字节
<CHECK>1</CHECK> 表示采用校验算法1
<TAILLEN>1</TAILLEN> 表示帧尾为1字节
<TAIL>bb</TAIL> 表示帧尾为0xbb
在本实施例中,如果用户需要修改该通讯协议内容和/或该通讯协议规约解析方式,根据本发明的技术方案,用户只需要修改配置文件的参数即可,不需要修改原来的程序代码,众所周知,修改配置文件的参数只需几分钟,并且程序不需要重新编译生成可执行文件,这样的话,大大提高了开发效率。
在这里,用户将修改后的配置文件的参数定义如下:帧头为0xeb和0xac,占用2字节;帧长占用1字节;命令字占用2字节;数据域长度不定;校验码占用2字节,采用校验算法2;帧尾为0xca,占用1字节。在本实施例中,本领域的技术人员应当了解,可通过下列程序实现修改后的配置文件的参数。
<HEADLEN>2</HEADLEN> 表示帧头长度为2字节
<HEAD>eb,ac</HEAD> 表示帧头为0xeb,0xac
<FRAMELEN>1</FRAMELEN> 表示帧长为1字节
<CMDLEN>2</CMDLEN> 表示命令字为2字节
<DATALEN>0</DATALEN> 表示数据域长度不定
<CHECKLEN>2</CHECKLEN> 表示校验码2字节
<CHECK>2</CHECK> 表示采用校验算法2
<TAILLEN>1</TAILLEN> 表示帧尾为1字节
<TAIL>ca</TAIL> 表示帧尾为0xca
请参阅图2,图2是本发明通讯模块开发配置的装置的结构示意图,如图2所示,所述装置包括依次连接的保存单元1、加载单元2、判断单元3、接收单元4以及分别与所述加载单元2和所述接收单元4连接的读取单元5,下面具体介绍各个部分的作用:
保存单元1,用于根据协议帧将所述通讯模块中的通讯协议内容和通讯协议规约解析方式保存至配置文件,并读取配置文件;
加载单元2,用于根据所述配置文件加载所述通讯协议内容,并对所述通讯协议规约解析方式进行处理;
判断单元3,用于判断是否存在用户修改;
接收单元4,用于接收用户修改所述通讯协议内容和/或所述通讯协议规约解析方式的命令;
读取单元5,用于根据所述命令修改所述配置文件,并保存修改后的所述配置文件,以读取配置文件。
相较于现有技术,根据协议帧将通讯协议内容和通讯协议规约解析方式保存至配置文件,并通过修改配置文件达到修改通讯模块的目的,该技术方案实现了通讯模块和测试程序的共用,不仅减少了测试程序修改的时间和提高了工作效率,还为通讯产品的开发和测试提供了便利。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (10)
1.一种通讯模块开发配置的方法,其特征在于,所述方法包括以下步骤:
A.根据协议帧将存储在所述通讯模块中的通讯协议内容和通讯协议规约解析方式保存至配置文件,并读取配置文件;
B.根据所述配置文件加载所述通讯协议内容,并对所述通讯协议规约解析方式进行处理;
C.判断是否存在用户修改,若是,则执行步骤D,若否,则步骤结束;
D.接收用户修改所述通讯协议内容和/或所述通讯协议规约解析方式的命令;
E.根据所述命令修改所述配置文件,并保存修改后的所述配置文件,并读取配置文件,返回步骤B。
2.根据权利要求1所述的方法,其特征在于,所述协议帧的结构包括帧头、帧长、命令字、数据域、校验码以及帧尾等。
3.根据权利要求2所述的方法,其特征在于,所述通讯协议内容包括类型码、命令码、数据长度以及数据内容等。
4.根据权利要求3所述的方法,其特征在于,所述通讯协议规约包括IEC60870-5-101规约和IEC60870-5-104规约。
5.根据权利要求4所述的方法,特征在于,所述通讯协议规约解析方式包括浮点数转换为二进制字节数、字符串转换为二进制字节数、字节数转换为浮点数以及字节数转换为字符串。
6.一种通讯模块开发配置的装置,其特征在于,所述装置包括依次连接的保存单元、加载单元、判断单元,接收单元以及分别与所述加载单元和所述接收单元连接的读取单元,其中,
保存单元,用于根据协议帧将存储在所述通讯模块中的通讯协议内容和通讯协议规约解析方式保存至配置文件,并读取配置文件;
加载单元,用于根据所述配置文件加载所述通讯协议内容,并对所述通讯协议规约解析方式进行处理;
判断单元,用于判断是否存在用户修改;
接收单元,用于接收用户修改所述通讯协议内容和/或所述通讯协议规约解析方式的命令;
读取单元,用于根据所述命令修改所述配置文件,并保存修改后的所述配置文件,并读取配置文件。
7.根据权利要求6所述的装置,其特征在于,所述协议帧的结构包括帧头、帧长、命令字、数据域、校验码以及帧尾等。
8.根据权利要求7所述的装置,其特征在于,所述通讯协议内容包括类型码、命令码、数据长度以及数据内容等。
9.根据权利要求8所述的装置,其特征在于,所述通讯协议规约包括IEC60870-5-101规约和IEC60870-5-104规约。
10.根据权利要求9所述的装置,特征在于,所述通讯协议规约解析方式包括浮点数转换为二进制字节数、字符串转换为二进制字节数、字节数转换为浮点数以及字节数转换为字符串。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103325887A CN102508661A (zh) | 2011-10-28 | 2011-10-28 | 一种通讯模块开发配置的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103325887A CN102508661A (zh) | 2011-10-28 | 2011-10-28 | 一种通讯模块开发配置的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102508661A true CN102508661A (zh) | 2012-06-20 |
Family
ID=46220753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103325887A Pending CN102508661A (zh) | 2011-10-28 | 2011-10-28 | 一种通讯模块开发配置的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102508661A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761191A (zh) * | 2013-12-25 | 2014-04-30 | 广西科技大学 | 一种非易失性存储器的固定数据格式读写方法 |
CN104536887A (zh) * | 2014-12-18 | 2015-04-22 | 珠海格力电器股份有限公司 | 通讯数据检测方法和装置 |
CN104578418A (zh) * | 2015-01-06 | 2015-04-29 | 航天科工深圳(集团)有限公司 | 基于101规约配电自动化设备的配置方法和系统及设备 |
CN108737123A (zh) * | 2017-04-13 | 2018-11-02 | 厦门科灿信息技术有限公司 | 一种采集器通讯协议的配置方法 |
CN108933771A (zh) * | 2018-01-03 | 2018-12-04 | 杭州义益钛迪信息技术有限公司 | 一种模块级升级方式的通信局站设备协议解析方法 |
CN109889267A (zh) * | 2018-09-28 | 2019-06-14 | 曹一宁 | 基于光通信的编码信息的发送方法、光标签和扫码设备 |
CN112866190A (zh) * | 2020-12-25 | 2021-05-28 | 宝能(广州)汽车研究院有限公司 | 数据交互方法、存储介质、电子设备、车辆 |
CN113079066A (zh) * | 2021-03-30 | 2021-07-06 | 江苏方天电力技术有限公司 | 一种综合保护测控装置通讯测试系统及测试方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060362A (zh) * | 2007-04-13 | 2007-10-24 | 北京神州天鸿科技有限公司 | 基于卫星通信系统的多数据业务系统 |
CN101764809A (zh) * | 2009-12-18 | 2010-06-30 | 航天东方红卫星有限公司 | 一种卫星测试数据采集框架系统 |
CN101820361A (zh) * | 2010-03-26 | 2010-09-01 | 中兴通讯股份有限公司 | 一种实现对多协议通信组件管理的方法及装置 |
CN101909013A (zh) * | 2010-08-16 | 2010-12-08 | 艾默生网络能源有限公司 | 一种可动态配置的信息交换装置 |
CN101938164A (zh) * | 2010-09-14 | 2011-01-05 | 深圳市华力特电气股份有限公司 | 一种电力设备控制方法、装置及其相关系统 |
CN102082797A (zh) * | 2011-01-21 | 2011-06-01 | 中兴通讯股份有限公司 | 一种对数据流进行协议解析处理的方法及装置 |
CN102098131A (zh) * | 2009-12-15 | 2011-06-15 | 航天科工惯性技术有限公司 | 一种基于动态参数配置的串口数据帧通用组帧解帧方法 |
-
2011
- 2011-10-28 CN CN2011103325887A patent/CN102508661A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060362A (zh) * | 2007-04-13 | 2007-10-24 | 北京神州天鸿科技有限公司 | 基于卫星通信系统的多数据业务系统 |
CN102098131A (zh) * | 2009-12-15 | 2011-06-15 | 航天科工惯性技术有限公司 | 一种基于动态参数配置的串口数据帧通用组帧解帧方法 |
CN101764809A (zh) * | 2009-12-18 | 2010-06-30 | 航天东方红卫星有限公司 | 一种卫星测试数据采集框架系统 |
CN101820361A (zh) * | 2010-03-26 | 2010-09-01 | 中兴通讯股份有限公司 | 一种实现对多协议通信组件管理的方法及装置 |
CN101909013A (zh) * | 2010-08-16 | 2010-12-08 | 艾默生网络能源有限公司 | 一种可动态配置的信息交换装置 |
CN101938164A (zh) * | 2010-09-14 | 2011-01-05 | 深圳市华力特电气股份有限公司 | 一种电力设备控制方法、装置及其相关系统 |
CN102082797A (zh) * | 2011-01-21 | 2011-06-01 | 中兴通讯股份有限公司 | 一种对数据流进行协议解析处理的方法及装置 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761191A (zh) * | 2013-12-25 | 2014-04-30 | 广西科技大学 | 一种非易失性存储器的固定数据格式读写方法 |
CN103761191B (zh) * | 2013-12-25 | 2016-06-08 | 广西科技大学 | 一种非易失性存储器的固定数据格式读写方法 |
CN104536887A (zh) * | 2014-12-18 | 2015-04-22 | 珠海格力电器股份有限公司 | 通讯数据检测方法和装置 |
CN104536887B (zh) * | 2014-12-18 | 2017-11-14 | 珠海格力电器股份有限公司 | 通讯数据检测方法和装置 |
CN104578418A (zh) * | 2015-01-06 | 2015-04-29 | 航天科工深圳(集团)有限公司 | 基于101规约配电自动化设备的配置方法和系统及设备 |
CN108737123A (zh) * | 2017-04-13 | 2018-11-02 | 厦门科灿信息技术有限公司 | 一种采集器通讯协议的配置方法 |
CN108933771A (zh) * | 2018-01-03 | 2018-12-04 | 杭州义益钛迪信息技术有限公司 | 一种模块级升级方式的通信局站设备协议解析方法 |
CN109889267A (zh) * | 2018-09-28 | 2019-06-14 | 曹一宁 | 基于光通信的编码信息的发送方法、光标签和扫码设备 |
CN109889267B (zh) * | 2018-09-28 | 2020-09-29 | 曹一宁 | 基于光通信的编码信息的发送方法、光标签和扫码设备 |
CN112866190A (zh) * | 2020-12-25 | 2021-05-28 | 宝能(广州)汽车研究院有限公司 | 数据交互方法、存储介质、电子设备、车辆 |
CN113079066A (zh) * | 2021-03-30 | 2021-07-06 | 江苏方天电力技术有限公司 | 一种综合保护测控装置通讯测试系统及测试方法 |
CN113079066B (zh) * | 2021-03-30 | 2023-05-16 | 江苏方天电力技术有限公司 | 一种综合保护测控装置通讯测试系统及测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102508661A (zh) | 一种通讯模块开发配置的方法和装置 | |
US8286132B2 (en) | Comparing and merging structured documents syntactically and semantically | |
CN111381938B (zh) | 一种基于基础指令集执行区块链中智能合约的方法及系统 | |
US8533693B2 (en) | Embedding expressions in XML literals | |
CN107665216B (zh) | 一种数据库访问方法及中间件 | |
CN102741811A (zh) | 改善基于模板的JavaScript小部件的性能 | |
US10614126B2 (en) | Textual query editor for graph databases that performs semantic analysis using extracted information | |
US9753705B2 (en) | Conditional compilation of bytecode | |
CN104932905A (zh) | 一种aadl到c语言的代码自动生成方法 | |
CN111752571A (zh) | 程序升级方法、装置、设备及存储介质 | |
WO2022099888A1 (zh) | 一种实现编译型嵌入式Python的方法 | |
CN101202736B (zh) | 一种基于抽象语法标记实现编解码的方法 | |
CN109445773A (zh) | 一种基于编程语言提升浏览器性能的方法以及电子设备 | |
CN103780624A (zh) | 一种面向复杂系统的通用应用层网络通信协议应用方法 | |
CN114327477A (zh) | 智能合约执行方法、装置、电子装置和存储介质 | |
US20110314043A1 (en) | Full-fidelity representation of xml-represented objects | |
CN107864073B (zh) | 一种swift报文批量发送方法和装置 | |
CN111158665A (zh) | 代码生成方法及装置、电子设备和存储介质 | |
US11429358B2 (en) | Representing asynchronous state machine in intermediate code | |
CN108762732B (zh) | 一种HTML内联CSS和内联JavaScript合并方法 | |
US9015679B2 (en) | System and method for translating business application functions into DBMS internal programming language procedures | |
CN111913691A (zh) | 一种Python和Java数据互操作的方法和装置 | |
US20220043639A1 (en) | Control of mission data tool application program interfaces | |
CN105511927A (zh) | 一种电台固件升级方法 | |
Ambrose et al. | SDG2KPN: System Dependency Graph to function-level KPN generation of legacy code for MPSoCs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120620 |