关于串口接收大量数据的问题 ( 积分: 100 )

  • 主题发起人 主题发起人 DearLily
  • 开始时间 开始时间
D

DearLily

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠:串口接收下位机的数据,个数在51200以内。我把SPCOMM的缓冲区由4096改为51200,这样串口能一次接收下位机的所有数据。但是,在数据个数小于某个数(比如7680)的时候,串口能正常接收,一旦数据个数偏大,串口接收到的数据个数总是小于下位机发送的数据个数。用串口调试精灵收数据得到的也是如上的效果。各位大侠帮帮忙,急啊!
 
在处理数据前,延时一会儿,等待数据全部收到在处理
 
这么大的数据包?
不能分开成小的数据包来发么?

接收这样大的数据包,要点时间。
 
在接受数据之前,先检测大小,如果大过这个数据的话,不能用缓冲区的方式,要先存储起来,再处理.
 
lxw5214的建议我试过,不行。rockliao说的方法也试过,不过也不能解决上述问题。后来发现是Inx_XonXoffFlow和Outx_XonXoffFlow没设好,会丢掉两种字符,现在问题已经解决。
 

Similar threads

回复
0
查看
1K
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
后退
顶部