论文部分内容阅读
摘要:手机、GPS等终端的通信已经深入人民的日常生活中,大部分通信的手段为无线传输、蓝牙、USB,终端通信的串口通信是探究终端核心和通信网络协议等的重要手段,本文主要介绍终端通信的基于WINDOWS API的串口通信方式、软件设计、终端通信协议等有关内容。
关键词串口;模块;通信;软件;设计;结构;协议;
中图分类号:S611 文献标识码:A 文章编号:
引言
串口是常用的计算机与外部串行设备之间的数据传输通道。为了提高串口通信的速度和资源利用率,软件采用WINDOWS API函数并基于多线程技术和异步串口通信的设计理念,实现了终端(手机终端、GPS)与上位机之间的数据交换,并且将采集到的数据保存到数据库中,便于分析和处理。
软件结构及概述
软件涉及的核心内容包含三部分:串口通信模块,终端设备操控模块,通信数据分析模块。
串口通信模块由三个“类”组成-串口初始化(Communication_Init)、数据发送(Message_Send)、数据接收(Message_Receive)。
串口初始化完成对串口关键参数配置后的初始化操作, 接收和发送模块分别为单独的功能模块,调用时均会创立独立线程,线程池时刻检索端口连接及忙闲状态,保障数据收发的准确性和稳定性。软件的组成结构如图 1 所示。
终端设备操控模块,是采用串口向终端发送AT指令,以控制终端的行为,目前的AT指令能够模拟几乎所有手机按键操作指令,除此以外,AT指令亦能够将终端模式打开到专业版本模式下,并且可通过AT指令直接获取工程模式下参数。一般情况下,终端将直接反馈OK,ERROR等信息作为操作执行的回应。
通信数据分析模块是针对特殊终端在非AT指令下产生的通信相关数据的收集及分析,能够通过这些数据获悉通信网络的状况。
串口通信模块
串口设置界面截图
串口的本质功能是作为 CPU 和串行设备间的编码转换器。串口数据均为二进制数据流,亦可视为十六进制编码,目前WINDOWS API提供的串口控件,均具有数据转化功能,可直接采用,对于串口的连接需要配置信息,最重要的参数是波特率、数据位、停止位和奇偶校验位。
串口初始化时,需要配置相关的信息,串口适配成功后方可进行连接和收发,由于每台电脑或者外设对自身串口的默认设置不尽相同, 所以在进行通信之前一定要设置好这些参数, 使通信双方的串口配置一致, 才能确保通信的正常。对于终端常见的GPS设备波特率一般为4800,工程类手机一般根据手机型号的不同波特率不尽相同,如57600、115200等。
以下为串口初始化编码(VB.NET):
串口接收代码段(VB.NET)
终端串口及协议
一部测试终端或工程终端,AT命令为必须的协议之一,但是生产厂商在实现网络通信的前提下,会应运生成手机物理层协议,该协议包含物理层数据交互命令,返回数据详细格式说明等。为明确阐述,以最常见的工程终端为例绘图如下:
终端串口协议层次图
终端设备操控模块
对于终端的AT COMMAND命令,根据终端的不同命令格式不同,目前很多終端均采用统一的通用格式,但是该命令通过命令文档可以知道,这样的命名数目庞大,如果想用枚举的方式将这些AT COMMAND命令通通编写既浪费时间,应用起来也很繁琐,如何让所有的AT COMMAND命令准确简洁的使用呢,就需要编写一个将AT COMMAND命令的字符串封装成一个完成的帧格式的函数。这样用户可以任意的输入正确的AT COMMAND命令然后发送,就可以轻松的操作终端了。
这个封装的过程要参照AT COMMAND命令统一的帧结构去确定。
终端设备操控模块流程图
终端手机在接到AT COMMAND命令后,除了执行相应的操作外,还会有相应的回复信息,比如“OK”“ERROR”等,必须将从手机上收到的关于AT COMMAND命令的回复的信息进行处理,然后显示。
通信数据分析模块
通信数据分析模块通过串口收到相关数据,根据终端特殊指令进行数据的解析,分析入库。
对于手机终端,一般为手机协议、空口协议。GPS设备为GPS协议。
如下摘取协议段:
GPS协议段-摘自GPS论坛
摘自《3GPP TS 04.04 V8.1.2 (2002-05)》
根据终端自身协议,对数据进行拆分的过程称为解析,解析后的数据均具有特殊的含义,如图GPS协议中第二个数据代表的为经度信息。手机终端解析后的数据均是通信网络参数,代表网络通信过程中的相关指标,再根据通信理论进行深入分析,即可得网络状况。
如下为GPS解析分析代码(VB.NET)
综述:基于WINDOWS API的实现与终端的串口通信,可探究终端更底层的数据传输机制、传输参数、网络参数等,是科研及终端类软件二次开发的必要技术,相关领域研究意义深远。
参考文献:
[1] 崔红志, 索岩基. 基于 A PI 的 Win32 串口通信编程技术[J] .科技信息, 2010(7): 1-2.
[2] 张威.GSM网络优化原理与工程.人民邮电出版社,2003(10)
[3] 3GPP TS 04.08 V7.9.1(2000-11)
[4] 3GPP TS 04.04 V8.1.2 (2002-05)
[5] 基于WINDOWS API的异步串口通信软件设计.百度文库
关键词串口;模块;通信;软件;设计;结构;协议;
中图分类号:S611 文献标识码:A 文章编号:
引言
串口是常用的计算机与外部串行设备之间的数据传输通道。为了提高串口通信的速度和资源利用率,软件采用WINDOWS API函数并基于多线程技术和异步串口通信的设计理念,实现了终端(手机终端、GPS)与上位机之间的数据交换,并且将采集到的数据保存到数据库中,便于分析和处理。
软件结构及概述
软件涉及的核心内容包含三部分:串口通信模块,终端设备操控模块,通信数据分析模块。
串口通信模块由三个“类”组成-串口初始化(Communication_Init)、数据发送(Message_Send)、数据接收(Message_Receive)。
串口初始化完成对串口关键参数配置后的初始化操作, 接收和发送模块分别为单独的功能模块,调用时均会创立独立线程,线程池时刻检索端口连接及忙闲状态,保障数据收发的准确性和稳定性。软件的组成结构如图 1 所示。
终端设备操控模块,是采用串口向终端发送AT指令,以控制终端的行为,目前的AT指令能够模拟几乎所有手机按键操作指令,除此以外,AT指令亦能够将终端模式打开到专业版本模式下,并且可通过AT指令直接获取工程模式下参数。一般情况下,终端将直接反馈OK,ERROR等信息作为操作执行的回应。
通信数据分析模块是针对特殊终端在非AT指令下产生的通信相关数据的收集及分析,能够通过这些数据获悉通信网络的状况。
串口通信模块
串口设置界面截图
串口的本质功能是作为 CPU 和串行设备间的编码转换器。串口数据均为二进制数据流,亦可视为十六进制编码,目前WINDOWS API提供的串口控件,均具有数据转化功能,可直接采用,对于串口的连接需要配置信息,最重要的参数是波特率、数据位、停止位和奇偶校验位。
串口初始化时,需要配置相关的信息,串口适配成功后方可进行连接和收发,由于每台电脑或者外设对自身串口的默认设置不尽相同, 所以在进行通信之前一定要设置好这些参数, 使通信双方的串口配置一致, 才能确保通信的正常。对于终端常见的GPS设备波特率一般为4800,工程类手机一般根据手机型号的不同波特率不尽相同,如57600、115200等。
以下为串口初始化编码(VB.NET):
串口接收代码段(VB.NET)
终端串口及协议
一部测试终端或工程终端,AT命令为必须的协议之一,但是生产厂商在实现网络通信的前提下,会应运生成手机物理层协议,该协议包含物理层数据交互命令,返回数据详细格式说明等。为明确阐述,以最常见的工程终端为例绘图如下:
终端串口协议层次图
终端设备操控模块
对于终端的AT COMMAND命令,根据终端的不同命令格式不同,目前很多終端均采用统一的通用格式,但是该命令通过命令文档可以知道,这样的命名数目庞大,如果想用枚举的方式将这些AT COMMAND命令通通编写既浪费时间,应用起来也很繁琐,如何让所有的AT COMMAND命令准确简洁的使用呢,就需要编写一个将AT COMMAND命令的字符串封装成一个完成的帧格式的函数。这样用户可以任意的输入正确的AT COMMAND命令然后发送,就可以轻松的操作终端了。
这个封装的过程要参照AT COMMAND命令统一的帧结构去确定。
终端设备操控模块流程图
终端手机在接到AT COMMAND命令后,除了执行相应的操作外,还会有相应的回复信息,比如“OK”“ERROR”等,必须将从手机上收到的关于AT COMMAND命令的回复的信息进行处理,然后显示。
通信数据分析模块
通信数据分析模块通过串口收到相关数据,根据终端特殊指令进行数据的解析,分析入库。
对于手机终端,一般为手机协议、空口协议。GPS设备为GPS协议。
如下摘取协议段:
GPS协议段-摘自GPS论坛
摘自《3GPP TS 04.04 V8.1.2 (2002-05)》
根据终端自身协议,对数据进行拆分的过程称为解析,解析后的数据均具有特殊的含义,如图GPS协议中第二个数据代表的为经度信息。手机终端解析后的数据均是通信网络参数,代表网络通信过程中的相关指标,再根据通信理论进行深入分析,即可得网络状况。
如下为GPS解析分析代码(VB.NET)
综述:基于WINDOWS API的实现与终端的串口通信,可探究终端更底层的数据传输机制、传输参数、网络参数等,是科研及终端类软件二次开发的必要技术,相关领域研究意义深远。
参考文献:
[1] 崔红志, 索岩基. 基于 A PI 的 Win32 串口通信编程技术[J] .科技信息, 2010(7): 1-2.
[2] 张威.GSM网络优化原理与工程.人民邮电出版社,2003(10)
[3] 3GPP TS 04.08 V7.9.1(2000-11)
[4] 3GPP TS 04.04 V8.1.2 (2002-05)
[5] 基于WINDOWS API的异步串口通信软件设计.百度文库