当前位置:编程学习 > C#/ASP.NET >>

vb2005 Serialport问题

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim rc As String()        
        Dim strrc As String
        Dim i As Integer
        Dim n As Integer
        RS232COM.Encoding = New System.Text.ASCIIEncoding
        n = RS232COM.BytesToRead
        If n > 0 Then
            ReDim rc(n)
            strrc = ""
            For i = 1 To n
                rc(i) = RS232COM.ReadByte
                strrc = CStr(Hex(rc(i)))      
          TextBox1.Text = TextBox1.Text & strrc
            Next
        End If
    End Sub
End Class
我使用的是VB2005,我用单片机发送数据“A”,使用Serialport接受数据,但是电脑显示的只能16进制的显示,无论我把 strrc = CStr(Hex(rc(i)))      
改为
strrc=rc(i)或者strrc = Hex(rc(i))还是strrc = CStr(rc(i))
电脑收到的都不是字符“A”
请问各位高手这是怎么回事啊 --------------------编程问答-------------------- --------------------编程问答-------------------- 我的电脑现在有点问题,没办法打开VS,但是根据我的经验,rc(i) = RS232COM.ReadByte
rc被赋值为A的ASCII值,也就是单片机在发送字符A的时候就已经将其转换为ASCII值了,所以可以修改单片机内部的代码,在发送数据时候,要发送的变量要定义为字符串类型,而不是char类型,这样应该可以解决你说的问题,你可以试一下
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,