铁路雨量监测系统中的远程通信
工区名(i)+"..."
FsStr="ATDT"+电话号码(i)+vbCr
'拨号的AT命令
ret=发送AT命令(FsStr,"CONNECT",60000)
'发送拨号命令,限时60s
Ifret="正常"Then
FsStr=Format(i,"00")+发送代码
'发送字符串组合
FsStr=FsStr+Format(Now,"yymmddhhmmss")
FsStr=FsStr+设定值
FsStr=FsStr+计算累加和(FsStr)
FsStr="@K"+FsStr+"@J"
ret=发送AT命令(FsStr,"@J",5000)
'发送数据,等待接收串结束符@J
IfInStr(接收串,"@KCUO@J")Then
'收到下位机的返回是"错"
显示"返回有错."信息处理
Else
处理接收串'下位机接收正确
EndIf
显示"挂机..."信息处理
ret=发送AT命令("+++","OK",3000)
'挂机
,等待OK,限时3S
ret=发送AT命令("ATH0"+vbCrLf,"OK",3000)
EndIf
EndIf
Nexti
EndSub
2.被动通信
当站点监测到雨量超过警戒值时,就主动拨号给主机,对主机而言就是被动通信。平时主机MODEM也处于自动应答状态,随时可以接收站点呼叫。主机程序接收到正确数据串后,将数据记录到相应文件中保存,点亮操作平台上该站点的报警指示灯提醒用户,同时向站点发送"接收正确"的信息。站点收到主机正确信息后向MODEM发送"+++ATH0"离线挂机命令,结束本次通信。站点发来的数据串里包括站点号、通信代码、各种雨量数据、报警数据及校验和等信息。用@K和@J作为开始和结束标志。
被动通信部分的主要源程序如下:
PrivateSubMSComm1_OnComm()
DimstrSh,Shc
Shc=MSComm1.InBufferCount'取接收字符个数
IfShc>0Then
strSh=MSComm1,Input'取本次接收串
接收串=接收串+strSh
IfInStr(接收串,"RING")Then'若是电话铃响
显示"接收数据..."信息算是'显示接收数据信息
接收串=""
EndIf
IfInStr(接收串,"@J")Then'收到接收串结束答@J
处理接收串'处理接收串
EndIf
《铁路雨量监测系统中的远程通信(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/176036.html
FsStr="ATDT"+电话号码(i)+vbCr
'拨号的AT命令
ret=发送AT命令(FsStr,"CONNECT",60000)
'发送拨号命令,限时60s
Ifret="正常"Then
FsStr=Format(i,"00")+发送代码
'发送字符串组合
FsStr=FsStr+Format(Now,"yymmddhhmmss")
FsStr=FsStr+设定值
FsStr=FsStr+计算累加和(FsStr)
FsStr="@K"+FsStr+"@J"
ret=发送AT命令(FsStr,"@J",5000)
'发送数据,等待接收串结束符@J
IfInStr(接收串,"@KCUO@J")Then
'收到下位机的返回是"错"
显示"返回有错."信息处理
Else
处理接收串'下位机接收正确
EndIf
显示"挂机..."信息处理
ret=发送AT命令("+++","OK",3000)
'挂机
,等待OK,限时3S
ret=发送AT命令("ATH0"+vbCrLf,"OK",3000)
EndIf
EndIf
Nexti
EndSub
2.被动通信
当站点监测到雨量超过警戒值时,就主动拨号给主机,对主机而言就是被动通信。平时主机MODEM也处于自动应答状态,随时可以接收站点呼叫。主机程序接收到正确数据串后,将数据记录到相应文件中保存,点亮操作平台上该站点的报警指示灯提醒用户,同时向站点发送"接收正确"的信息。站点收到主机正确信息后向MODEM发送"+++ATH0"离线挂机命令,结束本次通信。站点发来的数据串里包括站点号、通信代码、各种雨量数据、报警数据及校验和等信息。用@K和@J作为开始和结束标志。
被动通信部分的主要源程序如下:
PrivateSubMSComm1_OnComm()
DimstrSh,Shc
Shc=MSComm1.InBufferCount'取接收字符个数
IfShc>0Then
strSh=MSComm1,Input'取本次接收串
接收串=接收串+strSh
IfInStr(接收串,"RING")Then'若是电话铃响
显示"接收数据..."信息算是'显示接收数据信息
接收串=""
EndIf
IfInStr(接收串,"@J")Then'收到接收串结束答@J
处理接收串'处理接收串
EndIf
《铁路雨量监测系统中的远程通信(第3页)》