软件注册站
热情软件屋

 
如何通过串口接收数值0
编号: QA001034    
建立日期: 1999年5月24日 最后修改日期: 1999年5月24日
所属类别: Visual Basic - 网络与通信
   
    VB5
    Windows 98
    我正在写一个程序,是一个串口接收程序(无发送数据),串口连线为简易自制,---用2,3,5三线互连,对方送来的数据包时间上不定,包大小不定,连续包数量不定。判断包开始为两个数值0,注意是数值0,而不是字符0!!!包内容为纯文本,不定长,包结束又是两个数值0。求教在VB中如何写这样的监视采集程序?(estray)
   
    先把串口通讯控件的"InputMode" 设置为"1-comInputModebinary"'此参数为以二进制方式接收。
    "NullDiscard"设置为false’此参数允许0H传输到缓冲区。
    "RThreshold"设置为1'此参数为当收到任一字符时均产生"Oncomm"事件。
    示例:
    Private Sub MSComm1_OnComm()
    Dim a As Variant, b() As Byte, i As Integer
    If MSComm1.InBufferCount > 0 Then '缓冲区内有数据
    a = MSComm1.Input
    b = a 'b即为所收到的数据数组,数据为ASCII码的数值
    For i = 0 To UBound(b) - 1
    If b(i) = 0 And b(i + 1) = 0 Then
    '此行可编写代码将数字转化为ASCII码
    End If '判断包结束同理
    Next i
    End If
    End Sub
    
    相关书籍:
    《串行端口大全》
    《Delphi 串口通信编程》
    《利用Visual Basic实现串并行通信技术》

    

此问题由高润明回答。

附加关键字:编程, 源程序, programming, source code, Visual Basic, VB, 网络与通信, network, communicate, com, com1, com2

   
 
把这个问题推荐给朋友
   
 
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio