当前位置:编程学习 > VB >>

怎么样把仪器传回的乱码转换为16进制

各位大程式高手:
 你们好:
        小妹最近遇到一个很烦恼的技术难题:在串中通信中在与仪器的通信是正常的,但是仪器发给我的数据就是乱码,那我怎么样就可将仪器上传的乱码转换为16进制
   部分代码如下:    多谢谢各位,帮忙有厚礼相送

Private Sub MSComm1_OnComm()
    Dim i, lngP As Integer
    Dim indata, OutData, inbte(0), outbte(0) As Variant
    Dim str(), s(10) As String
    Dim strSendCom2 As String
      '...通讯事件发生
    '...通讯事件发生
    'Stand_lum = 0
    Select Case MSComm1.CommEvent
      
    Case comEvReceive '...有接受事件发生
        indata = MSComm1.Input
        ReceiveNO2 = ReceiveNO2 + 1
         inbte(0) = AscB(indata)
        Text4.Text = Text4.Text & Space$(1) & inbte(0) 'indata 'inbte(0)
        MSComm1.InBufferCount = 0 '...清空输入寄存器
      
 

    Case comEvSend '...有接受事件发生

        
        'num = Val(SendT.Text)
        num = "21"

        outbte(0) = CByte(num)
        
        MSComm1.OutBufferCount = 0 '...清空输出寄存器
        
        MSComm1.Output = outbte(0) '...发送数据
       
    End Select
End Sub --------------------编程问答-------------------- 真的很乱!
你看看这个,用它来调试一下你的通信:http://download.csdn.net/source/1262066 --------------------编程问答-------------------- 1、看通讯协议
2、MSComm1.RThreshold = 1'缓冲区有1个字节就产生OnComm事件
2、选择MSComm1.InputMode = comInputModeBinary   
  'Input以二进制形式取回用comInputModeBinary,以文本形式取回是(缺省项)
3、indata = MSComm1.Input 
   Text4.Text = Text4.Text & Space$(1) & hex(indata)
补充:VB ,  API
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,