📄 00000015.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人: KHP (人之初), 信区: Java <BR>标 题: Re: 一个关于通信接收的问题 <BR>发信站: BBS 水木清华站 (Thu May 13 21:21:23 1999) <BR> <BR> <BR>呵呵,我没有做过这样的处理,你可以试试把输入缓冲区设大一点: <BR> <BR>sPort.setInputBufferSize(MAX_SIZE); <BR> <BR>然后在DATA_AVAILABLE事件处理时,尽可能地多读取数据: <BR> <BR>while (is.available() > 0) { // is -- input stream <BR> ... <BR>} <BR> <BR>在发送方,你是怎么发的?这也影响你的接收。 <BR> <BR>因为串口的数据传输采用异步方式逐字节发送,没有数据帧的概念,所以 <BR>底层的传输模式不能保证数据的传输间隔。要想实现较高级的控制,建议你 <BR>在底层简单传输的基础上实现一定的协议。 <BR> <BR>【 在 cmusic (一飞冲天~燕入云) 的大作中提到: 】 <BR>∶<I> 在用通信包进行通信接收事件处理时有一个问题,本人怎么想法也不行,特地请教; </I><BR>∶<I> 在事件触发SerialPortEvent.DATA_AVAILABLE:时怎样控制一次性触发事件发生时就全 </I><BR>∶<I> 部接收对方写过来的数据,举例说明,对方写过来一个很长的字符串,我发现总是要好几次触发事件发生才能全部接收 </I><BR>∶<I> 怎的让它一次就全盘接收,是不是有什么函数可以设置?请高手指教,尤其是KHP先生 </I><BR>∶<I> 非常感谢 </I><BR> <BR> <BR>-- <BR>※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 166.111.163.77] <BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -