[VB6 ] 請問VB怎麼完整接收來自89C52的資料?

作者: edwardbarry (Barry)   2013-11-07 01:37:35
第一次在VB版PO文 如果有不好的地方請通知小弟
我的問題是這樣的
我有在寫VB跟89C52晶片的程式,然後我現在要讀取89C52裡面的資料
只能讀到15頁,如果超過16頁就無法顯示在VB上(就會變的很奇怪)
我有在想是不是我VB那邊的變數設定太小才導致這樣。
我的接收程式碼是這樣子寫的
Dim iDataBytes As Integer
Dim iwait As Byte
Dim lMsg_Buffer As String
Dim iLoop As Integer
Select Case MSComm1.CommEvent
Case comEvReceive
iDataBytes = MSComm1.InBufferCount
Do '緩衝機制
iDataBytes = MSComm1.InBufferCount
Sleep (10)
If iDataBytes < MSComm1.InBufferCount Then
iwait = 0
Else
iwait = iwait + 1
End If
Loop Until iwait = 5
InByte = MSComm1.Input '收下完整封包內容
For iLoop = LBound(InByte) To UBound(InByte) '顯示封包內容
lMsg_Buffer = lMsg_Buffer + Hex(InByte(iLoop)) + " "
Next iLoop
msg.Text = lMsg_Buffer + " "
End Select
實在不知道怎麼完整讀取16頁的晶片內容 請各位大大幫個忙 謝謝
作者: MOONRAKER (㊣牛鶴鰻毛人)   2012-01-07 11:10:00
(1)怎樣奇怪 (2)msg是什麼東東
作者: edwardbarry (Barry)   2012-01-07 11:58:00
(1)有沒有可能89c52傳來的資料他太大然後我的vb沒有辦法完全顯示出來(2)msg是我顯示接收到資料的文字方塊
作者: johnpage (johnpage)   2012-01-07 12:59:00
如何知道rs232的buffer資料都讀到idatabytes,要再讀ㄧ次嗎?
作者: edwardbarry (Barry)   2012-01-07 14:10:00
XTo: J大 我不知道如何知道完整讀到的意思 我把inbyteX全顯示出來這樣就可以了嗎
作者: johnpage (johnpage)   2012-01-07 16:59:00
你的應用程式是屬於上層,你的程式有可能沒有把下層mscomm1的buffer資料都讀到idatabytes內

Links booklink

Contact Us: admin [ a t ] ucptt.com