新闻中心

EEPW首页>手机与无线通信>设计应用> 基于GSM通信的SZF型波浪浮标接收系统

基于GSM通信的SZF型波浪浮标接收系统

作者: 时间:2013-02-21 来源:网络 收藏


3设计
通过发射模块发送数据包,上位机通过接收模块接收数据包,再通过串口连接到PC机上,在PC机上进行数据的二次处理。上位机接收软件使用可视化开发环境进行开发。数据处理流程如图3所示。

本文引用地址://m.amcfsurvey.com/article/153571.htm

d.JPG


3.1 数据接收
由于是通过串口与PC机进行通信,所以在程序设计时选用了Windows下的MSComm控件来进行串口数据接收处理。MSComm控件通过串口传输和接收数据,为应用程序提供串行通信功能,MSComm控件在串口编程时非常方便,本文使用其事件驱动方法,接收串口数据。为事件添加驱动函数程序如下:
ON_EVENT(CSZFRevSysDlg,IDC_MSCOMM1,1,CSZFRevSysDlg::OnCommMscomml,VTS_NONE)
对串口进行初始化设置程序如下:
m_mscom.put_RThreshold(1);
m_mscom.put_InputMode(1);
其中特别注意的是:第一条设置表示串口接收到一个字符就触发处理函数,第二条设置表示设置输入方式为二进制,这样才能对COle Sa leArray变量进行操作,否则COleSafeArray默认为test格式,不方便后面对数据进行解析。
由于本系统Windows开发环境为Vista,所以为了保证在其他Windows环境下也可以运行程序,需要为MSComm添加注册,注册过程如图4所示。

e.JPG


3.2 实时显示
系统根据浮标不同工作方式(定时测量方式,连续测量方式和检测工作方式),以不同方式启动/关闭串口。
浮标一般工作在定时测量状态,串口是接收整点前6 min打开,准备接收数据,接收到数据包后,根据通信协议对数据包进行解析,再分别显示在界面相应位置,如图5所示,可供监测人员实时的检测数据。接收整点后10 min关闭串口,进入休眠状态,如果关闭串口时有数据接收中,延时10 s再关闭串口。

f.JPG



评论


相关推荐

技术专区

关闭