CN101576862A - 一种基于pc与设备的串口数据交互方式 - Google Patents
一种基于pc与设备的串口数据交互方式 Download PDFInfo
- Publication number
- CN101576862A CN101576862A CNA2009101118762A CN200910111876A CN101576862A CN 101576862 A CN101576862 A CN 101576862A CN A2009101118762 A CNA2009101118762 A CN A2009101118762A CN 200910111876 A CN200910111876 A CN 200910111876A CN 101576862 A CN101576862 A CN 101576862A
- Authority
- CN
- China
- Prior art keywords
- instruction
- configuration
- storehouse
- sends
- serial port
- 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
- Computer And Data Communications (AREA)
Abstract
本发明涉及计算机通信领域,尤其涉及基于PC与设备的串口通信的数据交互方式,PC机通过指令与设备交互,方便、有效、快速地达到操作设备数据的目的,通用地加载、解析设备数据,又称为“指令操作机制”。本发明的基于PC与设备的串口数据交互方式,是在接收PC前台操作指令后,按配置指令文件自动生成指令向设备发送指令,设备响应后,接收设备数据后按配置指令文件自动解析指令的交互方式,同时通信的过程中还能进行打印日志处理,发送显示数据处理,监控实时数据处理。本发明采用通用的指令操作机制及配置方法来自动加载、解析设备数据。在指令不断变化的情况下不再对程序修改或扩展,只需一次性开发或较少的维护,减少了开发成本及开发时间。
Description
技术领域
本发明涉及计算机通信领域,尤其涉及一种基于PC与设备的串口通信的数据交互方式,PC机通过指令与设备交互,方便、有效、快速地达到操作设备数据的目的,通用地加载、解析设备数据,又称为“指令操作机制”。
背景技术
目前的设备数据类型多种且不断扩展,所以PC与设备交互的指令必然也有多种且种类不断扩展,以至于PC程序不断变化去适应变化的指令种类,不定因素较多,加大了开发和维护成本。现有PC与设备的数据交互时,采用调试助手只能单纯的发送指令、回复指令,单一的发一条回一条,而且指令需要手动配置。还有一种是采用终端专门定制的程序来实现,如手机配的驱动程序,专门操作手机里面的机制,但这种方式没有通用性,且无法修改。
发明内容
有鉴于此,本发明提供一种基于PC与设备的串口数据交互方式,采用通用的指令操作机制及配置方法来自动加载、解析设备数据。
根据上述目的,本发明的技术方案是这样实现的:
一种基于PC与设备的串口数据交互方式,是在接收PC前台操作指令后,按配置指令文件自动生成指令向设备发送指令,设备响应后,接收设备数据后按配置指令文件自动解析指令的交互方式,同时通信的过程中还能进行打印日志处理,发送显示数据处理,监控实时数据处理。
所述的一种基于PC与设备的串口数据交互方式,包括:指令发送处理模块、指令发送堆栈、配置指令文件、指令接收堆栈、指令接收处理模块。其中,指令发送处理模块是按照PC前台操作进行指令发送的处理,包括串口异常处理、监测状态处理、读取配置指令文件并生成指令以及管理指令发送堆栈。指令接收处理模块包括所述的指令接收处理包括串口异常处理、整理接收指令并管理指令接收堆栈、读取配置指令文件并按配置解析接收到的指令以及响应配置处理。其交互方式是:指令发送处理模块通过读取配置指令文件,按配置生成设备指令,并将设备指令存入指令发送堆栈,当指令发送堆栈中有指令时,指令发送处理模块则向设备发送设备指令,设备响应后发送回复的设备指令至指令接收堆栈,指令接收处理模块检索指令接收堆栈,若指令接收堆栈中有指令时,通过读取配置指令并按该配置解析该指令数据,若有配置相应指令回复动作则在解析后做相应的动作;若PC前台操作没有发出指令,指令发送堆栈中无指令,则指令发送处理模块向设备发送激活指令,即不断地检测设备当前状态。
其中,所述配置指令文件的生成方法包括:
A1.对PC发送指令进行规范、分类,按照指令类型,可分为激活指令、读指令、写指令及其它扩展指令。
A2.对设备回复指令进行规范、分类,按照指令类型,可分为通信状态、回复读指令、回复写指令、回复其他扩展指令。
A3.对设备分类数据进行说明,按编号、数据编码、长度、格式进行设定。
A4.定义指令通信状态为“应答式”和“单向式”。
通过上述的配置规范,对指令进行配置并生成相应的配置指令文件。
所述的串口异常处理,是指在运行过程中出现一些特殊情况,能对此做超时处理,并生成前台显示数据。具体包括:a.加载或读取数据时,设备无响应的处理;b.PC与设备的物理连接断开的处理;c.设备回复不明数据无法解析的处理。而后,将异常错误写入日志,继续执行。
进一步的,为单向式或应答式,所述的单向式是指令发送处理模块按配置指令文所述的串口数据交互方式可件生成发送指令,并发送至指令发送堆栈,指令发送堆栈只管向设备发送指令,不考虑其它问题,无需等待设备回复。所述的应答式是指令发送处理模块按配置指令文件自动生成发送指令并加载至指令发送堆栈,并在指令发送处理模块的管理下将指令发送堆栈中的指令发送至设备,需等待设备回复后进行回复处理,回复的情况可分为以下两种:B1)指令发送处理模块直接发送指令发送堆栈的下一条指令;B2)指令接收处理模块需解析指令,按解析的内容自动生成一条或多条指令,并载入发送指令堆栈中优先处理。
本发明的基于PC与设备的串口数据交互方式,采用通用的指令操作机制及配置方法来自动加载、解析设备数据。在指令不断变化的情况下不再对程序修改或扩展,只需一次性开发或较少的维护,减少了开发成本及开发时间。
附图说明
图1是本发明一种基于PC与设备的串口数据交互方式的流程图;
图2是本发明的指令发送处理模块10的具体框图;
图3是本发明的指令接收处理模块20的具体框图。
具体实施方式
现结合附图和具体实施方式对本发明进一步说明。
一种基于PC与设备的串口数据交互方式,是在接收PC前台操作指令后,按配置指令文件自动生成指令向设备发送指令,设备响应后,接收设备数据后按配置指令文件自动解析指令的交互方式,同时通信的过程中还能进行打印日志处理,发送显示数据处理,监控实时数据处理。
参阅图1所示,一种基于PC与设备的串口数据交互方式,包括:指令发送处理模块10、指令发送堆栈11、配置指令文件30、指令接收堆栈21、指令接收处理模块20。其中,参阅图2所示,指令发送处理模块10是按照PC前台操作进行指令发送的处理,包括串口异常处理101、监测状态处理102、读取配置指令文件并生成指令103以及管理指令发送堆栈104。参阅图3所示,指令接收处理模块20包括串口异常处理201、整理接收指令202并管理指令接收堆栈203、读取配置指令文件并按配置解析接收到的指令204以及响应配置处理205。其交互方式是:指令发送处理模块10通过读取配置指令文件30,按配置生成设备的发送指令12,并将设备的发送指令12存入指令发送堆栈11,当指令发送堆栈11中有发送指令时,指令发送处理模块10则向设备4发送设备的发送指令12,设备4响应后发送回复的设备指令22至指令接收堆栈21,指令接收处理模块20检索指令接收堆栈21,若指令接收堆栈21中有指令时,通过读取配置指令文件30并按该配置解析该指令数据,若有配置相应指令回复动作则在解析后做相应的动作;若PC5的前台操作51没有发出指令,指令发送堆栈11中无指令,则指令发送处理模块10通过向设备4发送激活指令来不断地检测设备4当前状态。
下面介绍本发明的实施例:
实施例1.数据加载
当PC5的前台操作51发出加载联系人指令时,指令发送处理模块10通过读取配置指令文件30,按配置生成设备的发送指令12,并将设备的发送指令12存入指令发送堆栈11,当指令发送堆栈11中有发送指令12时,则择机把发送指令12发送至设备4。
例如加载电话本:联系人”张三”,设备1360000000,住址。读取配置文件后生成指令AT+WPAR+00001+UNICODE+255+张三(UNICODE)1360000000住址(UNICODE)
实施例2.数据读取
当PC5的前台操作51发出读取联系人指令时,指令发送处理模块10通过读取配置指令文件30,按配置生成设备的发送指令12,并将设备的发送指令12存入指令发送堆栈11,当指令发送堆栈11中有指令时,则择机把指令发送至设备4并等待回复,设备4响应后发送回复的设备指令22至指令接收堆栈21。
例如加载电话本:联系人”张三”,设备1360000000,住址。读取配置文件后生成指令AT+WPAR+00001+UNICODE+255+张三(UNICODE)1360000000住址(UNICODE)
实施例3.数据解析
当PC5的前台操作51发出其他指令时,指令发送处理模块10通过读取配置指令文件30,按配置生成设备的发送指令12,并将设备的发送指令12存入指令发送堆栈11,当指令发送堆栈11中有指令时,则择机把指令发送至设备4并等待回复,设备4响应后发送回复的设备指令22至指令接收堆栈21,指令接收处理模块20检索指令接收堆栈21,若指令接收堆栈21中有指令时,通过读取配置指令文件30并按该配置解析该指令数据,若有配置相应指令回复动作则在解析后做相应的动作。
其中,所述配置指令文件30的生成方法包括:
A1.对PC5的发送指令12进行规范、分类,按照指令类型,可分为激活指令、读指令、写指令及其它扩展指令。
激活指令:检测PC程序与设备4通信状态,PC5与设备4物理接通后,程序开启激活指令,实时检测与设备4的通信状态。如指令“AT”。
读指令:告诉设备,PC5需要的数据,如PC发送“AT+RPAR+指令数据......”读指令,设备4回复相应的数据。
写指令:PC5将数据载入设备4,如PC5发送“AT+WPAR+指令数据......”写指令,设备4回复是否加载成功。
其它指令:PC5操作设备功能指令,如PC5发送“AT+其它指令标识+指令数据”,设备4回复相应的数据。
A2.对设备4的回复指令22进行规范、分类,按照指令类型,可分为通信状态、回复读指令、回复写指令、回复其他扩展指令。
通信状态:设备4回复当前状态,若PC5无接收到设备4回复通信状态,表示不能通信。
回复读指令:如“RPAR+回复的数据......”
回复写指令:如“WPAR+回复的数据......”
回复其它扩展指令:如“其它扩展指+回复的数据”
A3.对设备4分类数据进行说明,按编号、数据编码、长度、格式进行设定。
如:编号:00001+联系人名+UNICODE码+长度:255+数据格式:联系人名+设备号码+住址......
A4.定义指令通信状态为“应答式”和“单向式”。
通过上述的配置规范,对指令进行配置并生成相应的配置指令文件30。
所述的串口异常处理101或201,是指在运行过程中出现一些特殊情况,能对此做超时处理,并生成前台显示数据52。具体包括:a.加载或读取数据时,设备4无响应的处理;b.PC5与设备4的物理连接断开的处理;c.设备4回复不明数据无法解析的处理。而后,将异常错误写入日志,继续执行。
进一步的,所述的串口数据交互方式可为单向式或应答式,所述的单向式是指令发送处理模块10按配置指令文件30生成发送指令12,并发送至指令发送堆栈11,指令发送堆栈11只管向设备4发送指令,不考虑其它问题,无需等待设备4回复。所述的应答式是指令发送处理模块10按配置指令文件30自动生成发送指令12,并加载至指令发送堆栈11,并在指令发送处理模块10的管理下将指令发送堆栈11发送至设备4,需等待设备4回复后进行回复处理,回复的情况可分为以下两种:B1)设备4回复后,指令发送处理模块10直接发送指令发送堆栈11的下一条指令;B2)设备4回复后,指令接收处理模块20需解析指令,按解析的内容自动生成一条或多条指令,并载入发送指令堆栈11中优先处理。
尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。
Claims (10)
1.一种基于PC与设备的串口数据交互方式,其特征在于:接收PC前台操作指令后,按配置指令文件自动生成指令并向设备发送指令,设备响应后,接收设备数据后按配置指令文件自动解析指令的交互方式。
2.根据权利要求1所述的串口数据交互方式,其特征在于:所述的串口数据交互方式进一步包括:指令发送处理模块、指令发送堆栈、配置指令文件、指令接收堆栈、指令接收处理模块;其中,指令发送处理模块是按照PC前台操作进行指令发送的处理,包括串口异常处理、监测状态处理、读取配置指令文件并生成指令以及管理指令发送堆栈;指令接收处理模块包括所述的指令接收处理包括串口异常处理、整理接收指令并管理指令接收堆栈、读取配置指令文件并按配置解析接收到的指令以及响应配置处理。
3.根据权利要求1或2所述的串口数据交互方式,其特征在于:所述的串口数据交互方式进一步是:指令发送处理模块通过读取配置指令文件,按配置生成设备指令,并将设备指令存入指令发送堆栈,当指令发送堆栈中有指令时,指令发送处理模块则向设备发送设备指令,设备响应后发送回复的设备指令至指令接收堆栈,指令接收处理模块检索指令接收堆栈,若指令接收堆栈中有指令时,通过读取配置指令文件并按该配置解析该指令数据,若有配置相应指令回复动作则在解析后做相应的动作;若PC前台操作没有发出指令,指令发送堆栈中无指令,则指令发送处理模块不断地检测设备当前状态。
4.根据权利要求1或2或3所述的串口数据交互方式,其特征在于:所述的串口数据交互方式可为单向式或应答式。
5.根据权利要求4所述的串口数据交互方式,其特征在于:所述的单向式是指令发送处理模块按配置指令文件生成发送指令并发送至指令发送堆栈,指令发送堆栈只管向设备发送指令,不考虑其它问题。
6.根据权利要求4所述的串口数据交互方式,其特征在于:所述的应答式是指令发送处理模块按配置指令文件自动生成指令并加载至指令发送堆栈,并在指令发送处理模块的管理下将指令发送堆栈中的指令发送至设备,等待设备回复后进行回复处理。
7.根据权利要求6所述的串口数据交互方式,其特征在于:所述的回复处理是:a.指令发送处理模块直接发送指令发送堆栈中下一条指令;或者b.指令接收处理模块解析回复指令并按解析的内容自动生成一条或多条指令,载入指令发送堆栈中优先处理。
8.根据权利要求2所述的串口数据交互方式,其特征在于:所述的串口异常处理部分具体包括:a.加载或读取数据时,设备无响应的处理;b.PC与设备的物理连接断开的处理;c.设备回复不明数据无法解析的处理;
而后将异常错误写入日志,继续执行。
9.根据权利要求1或2或3或5或6所述的串口数据交互方式,其特征在于,所述配置指令文件的生成方法包括:
A1.对PC发送指令进行规范、分类,按照指令类型,可分为激活指令、读指令、写指令及其它扩展指令;
A2.对设备回复指令进行规范、分类,按照指令类型,可分为通信状态、回复读指令、回复写指令、回复其他扩展指令;
A3.对设备分类数据进行说明,按编号、数据编码、长度、格式进行设定;
A4.定义指令通信状态为“应答式”和“单向式”;
通过上述的配置规范,对指令进行配置并生成相应的配置指令文件。
10.根据权利要求1所述的串口数据交互方式,其特征在于:所述的串口数据交互方式还包括打印日志处理,发送显示数据处理,监控实时数据处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009101118762A CN101576862A (zh) | 2009-05-27 | 2009-05-27 | 一种基于pc与设备的串口数据交互方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009101118762A CN101576862A (zh) | 2009-05-27 | 2009-05-27 | 一种基于pc与设备的串口数据交互方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101576862A true CN101576862A (zh) | 2009-11-11 |
Family
ID=41271797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009101118762A Pending CN101576862A (zh) | 2009-05-27 | 2009-05-27 | 一种基于pc与设备的串口数据交互方式 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101576862A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957081A (zh) * | 2014-05-05 | 2014-07-30 | 深圳证券通信有限公司 | 一种用于分布式***的指令传输方法和*** |
CN104077085A (zh) * | 2013-03-26 | 2014-10-01 | 西门子(中国)有限公司 | 用于自动化控制***的虚拟打印*** |
CN107967229A (zh) * | 2017-12-22 | 2018-04-27 | 安徽博微长安电子有限公司 | 一种串口自动识别方法、***及计算机可读存储介质 |
-
2009
- 2009-05-27 CN CNA2009101118762A patent/CN101576862A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077085A (zh) * | 2013-03-26 | 2014-10-01 | 西门子(中国)有限公司 | 用于自动化控制***的虚拟打印*** |
CN104077085B (zh) * | 2013-03-26 | 2017-06-30 | 西门子(中国)有限公司 | 用于自动化控制***的虚拟打印*** |
CN103957081A (zh) * | 2014-05-05 | 2014-07-30 | 深圳证券通信有限公司 | 一种用于分布式***的指令传输方法和*** |
CN103957081B (zh) * | 2014-05-05 | 2018-07-20 | 深圳证券通信有限公司 | 一种用于分布式***的指令传输方法和*** |
CN107967229A (zh) * | 2017-12-22 | 2018-04-27 | 安徽博微长安电子有限公司 | 一种串口自动识别方法、***及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104915306B (zh) | 一种数据操作控制方法及设备管理器 | |
CN1972212A (zh) | 可与计算机进行智能型平台管理接口通信的计算机切换器 | |
CN105975357B (zh) | 一种定位故障的方法和*** | |
WO2018001168A1 (zh) | 一种主用板卡和备用板卡管理的方法和装置 | |
CN101873462A (zh) | Dvr的数据备份恢复方法、***及dvr | |
CN103268183A (zh) | 信息上报处理方法和装置 | |
CN102571492A (zh) | 检测路由设备故障的方法和装置 | |
US10261937B2 (en) | Method and system for communication of device information | |
CN204791080U (zh) | 巡检终端和巡检*** | |
CN101576862A (zh) | 一种基于pc与设备的串口数据交互方式 | |
CN108647131A (zh) | 运行日志的输出*** | |
CN101710283B (zh) | 信息输入转换设备 | |
CN105210043A (zh) | 信息处理装置 | |
CN104168145B (zh) | 一种对无线通信单元进行无线升级的***和方法 | |
CN112380066B (zh) | 一种基于国产平台的服务器维护调试装置及服务器 | |
CN104182445A (zh) | 列车运行监控装置的设备质量检测方法及其装置 | |
CN101547119B (zh) | 数据加载时的License控制方法及数据加载*** | |
CN103107892A (zh) | 控制提供给网络设备的电源的方法和装置 | |
CN111176164B (zh) | 一种扩展多个远程输入输出模块的方法、装置及介质 | |
CN112526898B (zh) | 一种串口线插拔检测电路和嵌入式设备 | |
CN202750089U (zh) | 蓝牙装置和集成式外设 | |
US11882038B2 (en) | Transaction analyzer for communication bus traffic | |
CN205281471U (zh) | 一种打印终端和*** | |
CN103095513A (zh) | 加密机模拟测试装置及方法 | |
CN103440218A (zh) | 基于usb-hid协议的can总线监控方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20091111 |