CN108446106A - 一种通讯接口处理方法和系统 - Google Patents
一种通讯接口处理方法和系统 Download PDFInfo
- Publication number
- CN108446106A CN108446106A CN201810228656.7A CN201810228656A CN108446106A CN 108446106 A CN108446106 A CN 108446106A CN 201810228656 A CN201810228656 A CN 201810228656A CN 108446106 A CN108446106 A CN 108446106A
- Authority
- CN
- China
- Prior art keywords
- communication interface
- general
- access function
- transmission data
- unit
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/22—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/321—Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明具体涉及一种通讯接口处理方法和系统;解决的技术问题为:提供一种能够简化并规范不同物理链路接口的程序通讯接口处理方法和系统;采用的技术方案为:一种通讯接口处理方法,包括:接收不同物理链路接口的通讯参数;根据通讯参数启动通用接口访问函数;判断是否启动成功,如是,通过通用接口访问函数向通讯接口传输数据;本发明能够实现串口、网口、CAN网等不同物理链路接口的统一访问方式和处理流程;适用于通讯接口的技术领域。
Description
技术领域
本发明属于通讯接口的技术领域,具体涉及一种通讯接口处理方法和系统。
背景技术
在工业控制、物联网等诸多应用场合,通讯是最基础和最重要的底层支撑之一。所谓通讯就是设备间的信息交互,它广泛发生在计算机与计算机之间、设备与设备之间,以及计算机和设备之间。常见的通讯接口标准包括RS232、RS485、RS422、以太网、载波、GPIB、USB等。对于不同的接口方式,因为接口的应用场合以及接口自身特性的差异和特点,每种接口都有其特殊的参数设置和调用、访问方式,虽然各种开发语言都针对这些通讯接口提供了各自的软件开发工具包SDK(Software Development Kit),而这些不同接口的SDK在调用和访问方式上千差万别,这就造成一个普遍现象:开发人员在进行接口通讯的编程时,需要根据各种接口的不同调用和访问方式,针对性的去进行通讯接口的代码编写,从而造成本身和接口没有直接关系的应用层协议处理和接口的调用访问过程混杂在一起,使得程序的兼容性、移置性和复用性降低,造成开发周期的加大、开发成本和维护成本的增加。比如,针对Windows平台的RS232串口编程和以太网的Socket编程,常见的调用和访问方式如下:
1、通过API以文件方式访问RS232,主要步骤为:
通过CreateFile函数打开或创建串口;
通过SetCommState函数设置串口参数;
通过ReadFile和WriteFile函数读写串口数据;
通过CloseHandle函数关闭串口。
2、通过MSComm以ActiveX方式访问RS232时,主要步骤为:
通过CommPort、Settings、InBufferSize、OutBufferSize等属性设置串口参数;
通过PortOpen属性打开串口;
通过Output属性发送串口数据;
当发生OnComm事件时,通过Input属性读取串口数据;
通过PortOpen属性关闭串口。
3、通过Socket套接字以服务端方式访问以太网时,主要步骤为:
通过Socket函数建立流式套接字;
通过Bind函数将套接字与本地地址相连;
通过Listen函数准备接受连接;
通过Accept函数接受连接;
通过Recv、Send函数进行数据读写操作;
通过Closesocket函数关闭套接字。
上述三种调用访问方式,每个函数、属性或者事件都有完全不同的参数个数和类型,对程序员而言,其控制流程和代码实现完全不同。在实际应用中,根据物理链路接口的不同,其访问方式和流程远远不止这三种,比如针对以太网,还有客户端/服务端、TCP/UDP等模式的区别,还有CAN、Modbus、profibus等各种总线结构的差异。因此,即使是同一套应用层协议,想要在不同的物理链路上(如串口、以太网、CAN网等)进行交互,往往需要程序员针对接口特性单独进行开发,浪费大量的开发和维护时间,增加投入成本。
发明内容
本发明克服现有技术存在的不足,所要解决的技术问题为:提供一种能够简化并规范不同物理链路接口的程序通讯接口处理方法和系统。
为了解决上述技术问题,本发明采用的技术方案为:一种通讯接口处理方法,包括:S101、接收不同物理链路接口的通讯参数;S102、根据通讯参数启动通用接口访问函数;S103、判断是否启动成功,如是,执行步骤S104,否则,返回步骤S101;S104、通过通用接口访问函数向通讯接口传输数据。
优选地,所述通讯接口处理方法,还包括:标记特殊通讯事件,所述特殊通讯事件包括向通讯接口传输数据成功或传输数据失败。
优选地,所述向通讯接口传输数据,具体包括:通过通用接口访问函数向通讯接口发送数据;通过通用接口访问函数读取通讯接口输入的数据。
优选地,所述通讯接口处理方法,还包括:关闭通讯接口访问函数。
相应地,一种通讯接口处理系统,包括:参数接收单元:用于接收不同物理链路接口的通讯参数;函数启动单元:根据通讯参数启动通用接口访问函数;判断单元:判断是否启动成功;处理单元:用于通过通用接口访问函数向通讯接口传输数据。
优选地,所述通讯接口处理系统,还包括:标记单元:用于标记特殊通讯事件,所述特殊通讯事件包括向通讯接口传输数据成功或传输数据失败。
优选地,所述处理单元包括:发送单元:用于通过通用接口访问函数向通讯接口发送数据;读取单元:用于通过通用接口访问函数读取通讯接口输入的数据。
优选地,所述通讯接口处理系统,还包括:通讯关闭单元:用于关闭通讯接口访问函数。
本发明与现有技术相比具有以下有益效果:
本发明通过一套通用的接口函数和访问流程,去除不同物理链路接口带来的程序实现上的差异化,实现一次应用层的代码编写即可分别应用到各种不同的物理链路接口上,以此,极大的提高程序员的开发效率,缩减项目的开发成本,增加程序的兼容性和灵活性。本发明能够实现串口、网口、CAN网等不同物理链路接口的统一访问方式和处理流程,简化并规范不同物理链路接口的程序实现,访问流程清晰,代码结构一致,可极大的提高程序员的开发效率,降低维护难度。
本发明可降低各种通讯接口的SDK差异给程序员带来的学习成本,只要程序员熟知本通用接口函数类的使用,即可实现编写一套应用层处理代码后,通过简单的配置,轻松应用到各种不同的物理链路接口上,增加程序的灵活性和应用范围,同时也能降低用户的学习和使用成本。
附图说明
下面结合附图对本发明做进一步详细的说明;
图1为本发明实施例一提供的一种通讯接口处理方法的流程示意图;
图2为本发明实施例一提供的一种通讯接口处理系统的结构示意图;
图3为本发明实施例二提供的一种通讯接口处理系统的结构示意图;
图4为本发明实施例三提供的一种通讯接口处理系统的结构示意图;
图5为本发明实施例四提供的一种通讯接口处理系统的结构示意图;
图6为本发明实施例二提供的一种通讯接口处理方法的流程示意图;
其中:101为参数接收单元,102为函数启动单元,103为判断单元,104为处理单元,1041为发送单元,1042为读取单元,105为标记单元,106为通讯关闭单元。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例一提供的一种通讯接口处理方法的流程示意图,如图1所示,一种通讯接口处理方法,包括:
S101、接收不同物理链路接口的通讯参数;
S102、根据通讯参数启动通用接口访问函数;
S103、判断是否启动成功,如是,执行步骤S104,否则,返回步骤S101;
S104、通过通用接口访问函数向通讯接口传输数据。
进一步地,所述通讯接口处理方法,还包括:
标记特殊通讯事件,所述特殊通讯事件包括向通讯接口传输数据成功或传输数据失败。
进一步地,所述向通讯接口传输数据,具体包括:通过通用接口访问函数向通讯接口发送数据;通过通用接口访问函数读取通讯接口输入的数据。
进一步地,所述通讯接口处理方法,还包括:关闭通讯接口访问函数。
图2为本发明实施例一提供的一种通讯接口处理系统的结构示意图,如图2所示,一种通讯接口处理系统,包括:
参数接收单元101:用于接收不同物理链路接口的通讯参数;
函数启动单元102:根据通讯参数启动通用接口访问函数;
判断单元103:判断是否启动成功;
处理单元104:用于通过通用接口访问函数向通讯接口传输数据。
优选地,参数接收单元101包括接口参数读写函数,用于配置不同物理链路接口的通讯参数,如串口应用时,主要用于设置工作模式、串口号、波特率、数据位、校验位、停止位,以及读写缓冲区大小等;以太网应用时,主要用于设置工作模式、IP地址、端口号,以及读写缓冲区大小等。推荐函数形式为:SetProperty/GetProperty(ParaKey,ParaValue),其中ParaKey用于指明操作的参数对象;ParaValue用于指明或者返回该参数对象具体的值;函数返回值表明参数操作成功或者失败。
函数启动单元102包括启动通讯接口访问函数,用于实例化并启动接口。推荐函数形式为:Connect,函数返回值表明启动操作成功或者失败。
图3为本发明实施例二提供的一种通讯接口处理系统的结构示意图,如图3所示,在实施例一的基础上,所述通讯接口处理系统,还包括:
标记单元105:用于标记特殊通讯事件,所述特殊通讯事件包括向通讯接口传输数据成功或传输数据失败。具体标记发生了一个通讯事件,如数据到达或错误发生等。推荐函数形式为:CommEvent(EventID),其中EventID用于指明事件的具体内容。
图4为本发明实施例三提供的一种通讯接口处理系统的结构示意图,如图4所示,在实施例二的基础上,所述处理单元包括:
发送单元1041:用于通过通用接口访问函数向通讯接口发送数据;具体包括发送(写入)数据函数,用于向通讯接口发送(写入)数据。推荐函数形式为:Output(Data,OutMode),其中Data为需要发送的数据内容;OutMode为发送数据的模式参数,用于表明发送数据的编码方式以及发送时采用同步/异步处理方式等;函数返回值表明发送操作成功或者失败。
读取单元1042:用于通过通用接口访问函数读取通讯接口输入的数据;具体包括接收(读取)数据函数,用于读取通讯接口的输入数据。推荐函数形式为:Input(Data,InMode),其中Data为返回的数据内容;InMode为返回数据的模式参数,用于表明需要以什么样的数据编码方式进行数据返回;函数返回值表明接收操作成功或者失败。
图5为本发明实施例四提供的一种通讯接口处理系统的结构示意图,如图5所示,在实施例三的基础上,所述通讯接口处理系统,还包括:
通讯关闭单元106:用于关闭通讯接口访问函数,函数返回值表明关闭操作成功或者失败。
本发明通过一套通用的接口函数和访问流程,去除不同物理链路接口带来的程序实现上的差异化,实现一次应用层的代码编写即可分别应用到各种不同的物理链路接口上,以此,极大的提高程序员的开发效率,缩减项目的开发成本,增加程序的兼容性和灵活性。本发明能够实现串口、网口、CAN网等不同物理链路接口的统一访问方式和处理流程,简化并规范不同物理链路接口的程序实现,访问流程清晰,代码结构一致,可极大的提高程序员的开发效率,降低维护难度。
本发明可降低各种通讯接口的SDK差异给程序员带来的学习成本,只要程序员熟知本通用接口函数类的使用,即可实现编写一套应用层处理代码后,通过简单的配置,轻松应用到各种不同的物理链路接口上,增加程序的灵活性和应用范围。同时也能降低用户的学习和使用成本。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种通讯接口处理方法,其特征在于:包括:
S101、接收不同物理链路接口的通讯参数;
S102、根据通讯参数启动通用接口访问函数;
S103、判断是否启动成功,如是,执行步骤S104,否则,返回步骤S101;
S104、通过通用接口访问函数向通讯接口传输数据。
2.根据权利要求1所述的一种通讯接口处理方法,其特征在于:还包括:
标记特殊通讯事件,所述特殊通讯事件包括向通讯接口传输数据成功或传输数据失败。
3.根据权利要求1所述的一种通讯接口处理方法,其特征在于:所述向通讯接口传输数据,具体包括:
通过通用接口访问函数向通讯接口发送数据;
通过通用接口访问函数读取通讯接口输入的数据。
4.根据权利要求1所述的一种通讯接口处理方法,其特征在于:还包括:
关闭通讯接口访问函数。
5.一种通讯接口处理系统,其特征在于:包括:
参数接收单元:用于接收不同物理链路接口的通讯参数;
函数启动单元:根据通讯参数启动通用接口访问函数;
判断单元:判断是否启动成功;
处理单元:用于通过通用接口访问函数向通讯接口传输数据。
6.根据权利要求5所述的一种通讯接口处理系统,其特征在于:还包括:
标记单元:用于标记特殊通讯事件,所述特殊通讯事件包括向通讯接口传输数据成功或传输数据失败。
7.根据权利要求5所述的一种通讯接口处理系统,其特征在于:所述处理单元包括:
发送单元:用于通过通用接口访问函数向通讯接口发送数据;
读取单元:用于通过通用接口访问函数读取通讯接口输入的数据。
8.根据权利要求5所述的一种通讯接口处理系统,其特征在于:还包括:
通讯关闭单元:用于关闭通讯接口访问函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810228656.7A CN108446106A (zh) | 2018-03-20 | 2018-03-20 | 一种通讯接口处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810228656.7A CN108446106A (zh) | 2018-03-20 | 2018-03-20 | 一种通讯接口处理方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108446106A true CN108446106A (zh) | 2018-08-24 |
Family
ID=63195944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810228656.7A Pending CN108446106A (zh) | 2018-03-20 | 2018-03-20 | 一种通讯接口处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108446106A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110727420A (zh) * | 2019-09-06 | 2020-01-24 | 广东宝莱特医用科技股份有限公司 | 一种串口兼容方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1407477A (zh) * | 2001-09-07 | 2003-04-02 | 肖志明 | 智能卡通用高速发卡机及其发卡方法 |
US20030208652A1 (en) * | 2002-05-02 | 2003-11-06 | International Business Machines Corporation | Universal network interface connection |
CN102736594A (zh) * | 2012-06-06 | 2012-10-17 | 中国电力科学研究院 | 一种智能配电终端统一平台模块化设计方法 |
CN105867943A (zh) * | 2016-04-19 | 2016-08-17 | 天津天大求实电力新技术股份有限公司 | 一种用于微电网数据采集系统的通道管理实现方法 |
-
2018
- 2018-03-20 CN CN201810228656.7A patent/CN108446106A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1407477A (zh) * | 2001-09-07 | 2003-04-02 | 肖志明 | 智能卡通用高速发卡机及其发卡方法 |
US20030208652A1 (en) * | 2002-05-02 | 2003-11-06 | International Business Machines Corporation | Universal network interface connection |
CN102736594A (zh) * | 2012-06-06 | 2012-10-17 | 中国电力科学研究院 | 一种智能配电终端统一平台模块化设计方法 |
CN105867943A (zh) * | 2016-04-19 | 2016-08-17 | 天津天大求实电力新技术股份有限公司 | 一种用于微电网数据采集系统的通道管理实现方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110727420A (zh) * | 2019-09-06 | 2020-01-24 | 广东宝莱特医用科技股份有限公司 | 一种串口兼容方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109831354A (zh) | 基于opc ua工业通讯协议的虚拟调试系统 | |
CN108234614A (zh) | 一种基于自定义协议及Netty框架的交互方法 | |
CN206332688U (zh) | 一种物联网网关 | |
CN109768970A (zh) | 一种基于可配置的通用协议生成方法 | |
CN207008726U (zh) | 一种学生考勤系统 | |
CN109445384B (zh) | 一种多设备控制系统 | |
CN108446106A (zh) | 一种通讯接口处理方法和系统 | |
Aguirre et al. | Low-cost supervisory control and data acquisition systems | |
CN106325242A (zh) | 一种基于模块化的控制单元的mes系统 | |
CN114428702A (zh) | 含有通用接口模块的信息物理测试系统 | |
CN101719991A (zh) | 一种视频矩阵协议转换器 | |
CN106789449A (zh) | 一种can总线开发与测试方法及系统 | |
CN101316199B (zh) | Sdh设备模拟组网的方法及其装置 | |
CN201601690U (zh) | 一种基于EtherCAT技术的输入输出模块 | |
CN107885502A (zh) | 接口处理方法、处理装置、接口管理方法和管理装置 | |
CN110098991B (zh) | 将EtherCAT总线系统接入通用物联云平台的设备 | |
CN106656777A (zh) | 基于对象的智能家居网关通讯接口框架 | |
Dickson et al. | Status of CCITT description techniques and application to protocol specification | |
CN112953947A (zh) | 一种单片机安全网关的单向数据透明传输方法 | |
Ouyang | Design and Implementation of a Wireless ZigBee Mesh Network | |
Ashraf et al. | Implementation of Intranet-SCADA using LabVIEW based data acquisition and management | |
Meicheng et al. | Implementation of fully integrated automation with Profibus | |
CN108445818A (zh) | 一种数据交互智能终端系统及通信方法 | |
El-Kharashi et al. | Understanding and implementing computer network protocols through a lab project | |
Li-li et al. | Modeling and verification of Colored Petri Net in stop and wait protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |