[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