java通过串口接收数据,不正常。求大神指导
答案:1 悬赏:50 手机版
解决时间 2021-11-23 05:05
- 提问者网友:萌卜娃娃
- 2021-11-22 11:11
java通过串口接收数据,不正常。求大神指导
最佳答案
- 五星知识达人网友:孤老序
- 2021-11-22 11:25
不要使用inputStream.available(),如果我没有记错的话,available返回的是没有被阻断的字节数(已经被缓冲的内容),可以尝试read(byte b[])方法,然后通过返回值是否-1来判断,如下。
int bytesRead = inputStream.read(readBuffer);
while (bytesRead != -1) {
readStr += new String(readBuffer).trim();
bytesRead = inputStream.read(readBuffer);
}追问不行啊。。这样退不出while循环,不能打印出数据了追答readBuffer的长度可以设为固定长2,然后在循环里打印追问谢谢大神啊,我设置长度3可以正常打印温度数据了。
但是。。我最终是要将数据以图表的形式展示出来,今天弄了一天了,都没什么进展,请问你能不能给我指点指点哈?追答需要添加jfreechat,附件是动态打印代码。在actionPerformed中把读到的数据设置到this.lastValue里就行。
jfreechart库:http://central.maven.org/maven2/jfree/jfreechart/1.0.13/jfreechart-1.0.13.jar
int bytesRead = inputStream.read(readBuffer);
while (bytesRead != -1) {
readStr += new String(readBuffer).trim();
bytesRead = inputStream.read(readBuffer);
}追问不行啊。。这样退不出while循环,不能打印出数据了追答readBuffer的长度可以设为固定长2,然后在循环里打印追问谢谢大神啊,我设置长度3可以正常打印温度数据了。
但是。。我最终是要将数据以图表的形式展示出来,今天弄了一天了,都没什么进展,请问你能不能给我指点指点哈?追答需要添加jfreechat,附件是动态打印代码。在actionPerformed中把读到的数据设置到this.lastValue里就行。
jfreechart库:http://central.maven.org/maven2/jfree/jfreechart/1.0.13/jfreechart-1.0.13.jar
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯