作者edwardbarry (Barry)
看板Visual_Basic
標題[VB6 ] 請問VB怎麼完整接收來自89C52的資料?
時間Thu Nov 7 01:37:35 2013
第一次在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頁的晶片內容 請各位大大幫個忙 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.252.78.170
1F:→ MOONRAKER:(1)怎樣奇怪 (2)msg是什麼東東 11/07 11:10
2F:→ edwardbarry:(1)有沒有可能89c52傳來的資料他 11/07 11:58
3F:→ edwardbarry:太大然後我的vb沒有辦法完全顯示出來 11/07 12:00
4F:→ edwardbarry:(2)msg是我顯示接收到資料的文字方塊 11/07 12:02
5F:推 johnpage:如何知道rs232的buffer資料都讀到 11/07 12:59
6F:→ johnpage:idatabytes 11/07 12:59
7F:→ johnpage:,要再讀ㄧ次嗎? 11/07 13:00
8F:→ edwardbarry:XTo: J大 我不知道如何知道完整讀到的意思 我把inbyte 11/07 14:10
9F:→ edwardbarry:X全顯示出來這樣就可以了嗎 11/07 14:11
10F:推 johnpage:你的應用程式是屬於上層,你的程式有可能沒有把下層 11/07 16:59
11F:→ johnpage:mscomm1的buffer資料都讀到idatabytes內 11/07 17:00