下面的部分程序代码是计算机和900M无线电台之间的传输程序,本程序已经在486计算机和PII586上调试通过。 1 从串口读入电台数据程序GetStringFromComm() 功能:(1) 主要完成从端口获得数据,将二进制的数据转换为ASCII码数据 Public Function GetStringFromComm() As String 定义变量(略) If frmTerminal.MSComm1.InBufferCount < 7 Then GetStringFromComm = "" Exit Function End If '//读入标志码 frmTerminal.MSComm1.InputLen = 6 ReDim Preserve BinDataarr(6) As Byte BinData = frmTerminal.MSComm1.Input BinDataarr = BinData UserDataLenth = BinDataarr(5) '用户数据的长度 Wait1: If BinDataarr(5) > frmTerminal.MSComm1.InBufferCount Then '未接受完数据 delay 6 '延时6s GoTo Wait1 End If frmTerminal.MSComm1.InputLen = UserDataLenth BinData = frmTerminal.MSComm1.Input ReDim Preserve BinDataarr(UserDataLenth) BinDataarr = BinData GetStringFromComm = BinTotext(UserDataLenth, 0) frmTerminal.MSComm1.InBufferCount = 0 '清空接受缓冲区 End Function 2 从串口向电台发送数据程序SendStringToComm() Public Sub SendStringToComm(ByVal TransCommand As Integer, ByVal TransString As String) ReDim BinDataarr(5) frmTerminal.MSComm1.OutBufferCount = 0 '//清空发送缓冲区 'TransString = makestring(Val(mc.txtdesstation.Text), 4) + TransString '//设置标志码 (略) Select Case TransCommand Case 0:transmit text ReDim Preserve BinDataarr(6 + Len(TransString)) TextTobin (TransString) BinData = BinDataarr frmTerminal.MSComm1.Output = BinData '发送 Case 1:transmit binary data ReDim Preserve BinDataArr(5 + Len(TransString) + UserDataLenth) As Byte TextTobin (TransString) BinDataArr(5) = UserDataLenth + Len(TransString) Dim i As Integer For i = 1 To UserDataLenth BinDataArr(5 + Len(TransString) + i) = userDataarr(i - 1) Next i BinData = BinDataArr MSComm1.Output = BinData End Select binDatalenth = 0 End Sub 以上的两个子程序是在实现无线传输的基本程序,如果要实现无线设备两端的数据采集,需要在此基础上进行文件格式、控制命令、编码方式等的编程,这些编程均可通过Visual Basic5.0实现,由于篇幅所限,本文对这部分内容不作详细叙述。 4结论和讨论 通过以上的实例编程可以得出,采用Visual Basic5.0对无线数据采集和传输进行编程,具有可视化、容易掌握、灵活性好,尤其串口控件MSCOMM的属性功能齐全,完全可以控制串行口实现各种功能。通过Visual Basic5.0编写的程序具有界面友好,操作方便,且编程过程简单。本文仅在数据采集方面应用了Visual Basic5.0,在其他的通讯方面,它还有更大的应用。例如在终端防真程序,在电子邮件和互连网等方面也有较大的应用。 参考文献: 1、微软公司《Visual basic5.0 联机手册》 2、南开大学出版社《微型计算机接口技术》 3、人民邮电出版社《无线通讯信息手册》 4、中国科学院希望电脑技术公司《计算机通讯与联网技术》

评论