打印

關於mscomm控件串口請教VB

[复制链接]
1615|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wuxianghou663|  楼主 | 2011-5-20 11:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Dim BytReceived() As Byte
   Dim strBuff As String

If MSComm1.InputMode = comInputModeBinary Then
            BytReceived() = strBuff  '如果是二进制接收模式则进行数据处理,否则直接显示字符串
          ' Text3.Text = UBound(BytReceived)
            For i = 0 To UBound(BytReceived)
                If Len(Hex(BytReceived(i))) = 1 Then
                    strData = strData & "0" & Hex(BytReceived(i)) & " " '如果只有一个字符,则前补0,如F显示0F,最后补空格
                Else                                                    '方便显示观察如: 00 0F FE
                    strData = strData & Hex(BytReceived(i)) & " "
                End If
            Next
代码如上,下面我陈述一下我的问题,望不吝赐教呀。整恼火了。。。实在没办法了。
我想做的是VB中的串口控件是按什么方式发送数据的?比如我定义一个字节的型的数组buf(6) as byte
然后赋值   1,2,3,4,5,6然后把它发出去。可以直接用mscomm1.output=buf吗。如果可以的话。我用另一个串口接收,收到后怎么恢复这组数据?我想收到的数据也存储在一个字节型的buff中。
   上面的代码,加上红色的部分和不加红色的部分执行结果完全不一样,比如我在不加红色的代码的时候,发送一个数据0xaa   收到的显示也是0XAA但加上红色的代码后显示为ox66 0x66   这是什么原因呢?
能给我解释一下上面的一段代码吗?谢谢各位了。。实在扛不住了。。。

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

15

帖子

1

粉丝