//------------- 读线程 ----------------// private class ReadThread extends Thread{ @Override public void run(){ super.run(); while (!isInterrupted()){ try { Thread.sleep(300);//感觉每次中断时,第一次都没有执行这个sleep if (input != null) { int size = input.read(buffer); if (size > 0) { Log.e(TAG, "读取成功,长度为 :" + size); for (int i = 0; i < size; i++) { outBuffer += buffer[i] + " "; } }else{ Log.e(TAG, "读取失败"); } } else { break; } }catch (IOException e){ break; }catch (InterruptedException e){ e.printStackTrace(); } } } }
[quote=引用 4 楼 qq_39193795 的回复:] [quote=引用 3 楼 ouyangfan54 的回复:] 应该是你的buffer设置的是32个字节,所以读取的就是32个字节
[quote=引用 3 楼 ouyangfan54 的回复:] 应该是你的buffer设置的是32个字节,所以读取的就是32个字节
应该是你的buffer设置的是32个字节,所以读取的就是32个字节
串口读数组本身就很可能需要读几次才能读完,建议是写一个拼接数据的方法,每次记录读取的数据和数据的长度
80,351
社区成员
91,288
社区内容
加载中
试试用AI创作助手写篇文章吧