技术中心
 
 

用WINSOCK编程实现WIFI与串口通信

   日期:2011-03-22     来源:http://www.bosika.com    作者:波仕电子    
核心提示:本文介绍的用WINSOCK编程实现WIFI与串口通信可以将源代码嵌入到用户自己的应用程序中。也可以用于VB的WINSOCK编程的参考。
 
武汉波仕电子公司年3月 2011
 
波仕电子的WF232L是一种WIFI与串口(RS-232、RS-485/422)的转换器,能够把IEEE802.11b/g的无线信号转换出串口。TCP&DUP.exe测试工具可以显示WIFI与串口之间的通信数据,本文介绍的用WINSOCK编程实现WIFI与串口通信可以将源代码嵌入到用户自己的应用程序中。也可以用于VB的WINSOCK编程的参考。
 
 WF232L的使用必须与无线AP(无线路由器)配合。WF232L的DB-9针串口有2个用处:1、在设置模式下用于对WF232L产品进行设置,2、在透明传输模式下作为WiFi转换出来的串口。用WINSOCK编程实现WIFI与串口通信显然必须在透明传输模式下,但是在进入透明模式之间必须在设置模式下进行设置。对WF232L进行设置有2种方法:1、用专用配置软件UART-WIFI.exe, 2、是用IE浏览器的网页进行设置。用专用配置软件功能比较全面,下面为配置软件的部分界面:
 
 设置成功后可以先用TCP&UDP.exe测试工具和scommassistant21.exe串口调试助手对WF232L进行WIFI与串口之间的成功通信,确保硬件连接和软件设置的正确。
记住以后编程要用到的参数设置:IP地址(192.168.0.123)和端口号(9999)。
VB中提供了一个网络控件WINSOCK,主要用于可以与远程计算机建立连接,并通过TCP或UDP协议进行数据交换。这两种协议都可以用来创建服务器(Server)与客户端(Client)类型的应用程序。
 
 程序的VB界面很简单。在窗体上包括一个Winsock控件、2个Text控件、3个Command控件。代码为:
'Option Explicit
 
Private Sub commadn1_Click()
 SendMsg = Text2.Text
 SockCL.SendData SendMsg
End Sub
 
Private Sub Command2_Click() '发送
 Dim SendMsg As String
 SendMsg = Text2.Text
 SockCL.SendData SendMsg
End Sub
 
Private Sub Form_Load()
    Text1.Text = ""
    Text2.Text = ""
    Text1.Locked = True
End Sub
 
Private Sub SockCL_ConnectionRequest(ByVal requestID As Long)
 If SockCL.State <> sckClosed Then SockCL.State = sckClosed
 SockCL.Accept requestID
 Text1.Text = "服务器请求连接!"
 SockCL.SendData "连接成功"
End Sub
 
Private Sub SockCl_DataArrival(ByVal bytesTotal As Long)
    Dim DataStr As String
    SockCL.GetData DataStr    ' 接收数据到文本框中
    If Text1.Text = "" Then
        Text1.Text = DataStr
    Else
        Text1.Text = Text1.Text & vbCrLf & DataStr
    End If
End Sub
 
 
Private Sub Command3_Click() ' 退出数据
    SockCL.Close
    End
End Sub
 
' 发送完毕后回显
Private Sub SockCL_SendComplete()
    If Text1.Text = "" Then
        Text1.Text = "客户端: " & SendMsg
    Else
        Text1.Text = Text1.Text & vbCrLf & "客户端: " & SendMsg
    End If
End Sub
 
 
Private Sub Command1_Click() ' 连接
   SockCL.RemoteHost = "192.168.0.123"
    ' 指定服务器端口名
    SockCL.RemotePort = 9999
    ' 连接到服务器
    SockCL.Connect
End Sub
 
通信成功后的界面截图如上。本软件还有另外一段为用WINSOCK写的TCP服务器的部分。整个源代码及程序见波仕WF232L产品的光盘。
 
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作
 
推荐图文
推荐技术
可能喜欢