我做的串口通信,需要用读卡器读取卡上的信息,然后把读卡器读取的信息通过串口传回到PC现在我把数据传到了读卡器,怎么才能够知道,卡上的内容读卡器是否读取了?读卡器一直没有传递回过数据!刚刚接触mscomm,觉得好郁闷ing,高手救命啊?!

解决方案 »

  1.   

    代码如下:
    Private Sub Form_Load()
    Dim byt(14) As Byte '定义一个数组,用来传递16 进制的参数
    byt(0) = &HAA
    byt(1) = &H2
    byt(2) = &HA
    byt(3) = &H20
    byt(4) = &H1
    byt(5) = &H4
    byt(6) = &H10
    byt(7) = &HFF
    byt(8) = &HFF
    byt(9) = &HFF
    byt(10) = &HFF
    byt(11) = &HFF
    byt(12) = &HFF
    byt(13) = &H3D
    byt(14) = &HBBDim bytt() As Byte   '用来接收数据
         MSComm1.CommPort = 1     
       
          MSComm1.Settings = "9600,O,8,1"
       
         MSComm1.InputLen = 0
         MSComm1.RThreshold = 1
       
          MSComm1.PortOpen = True
       
       MSComm1.Output = byt
       
       MsgBox ("qingshuaka") '提示用户刷卡
       
       bytt = MSComm1.Input   ’获得返回数据
       Text1.Text = bytt
       
       MSComm1.PortOpen = False
       
       
       
    End Sub
      

  2.   

    mscomm 應該還要設置發送的格式, 是ascII, 還是binary, 這個他就沒設 
    默認應該為 Ascii的, 而你這裹, 明顯是 用十六進制然後, 發完, 一般還要用個 sleep 等會,再讀
      

  3.   

    回复人: aiirii(ari-求职广州中) ( ) 信誉:100  2005-03-22 15:14:00  得分: 0  
     
     
       mscomm 應該還要設置發送的格式, 是ascII, 還是binary, 這個他就沒設 
    默認應該為 Ascii的, 而你這裹, 明顯是 用十六進制然後, 發完, 一般還要用個 sleep 等會,再讀
    ----------------------------------------------  
     
    是这样的