android使用CH34xUARTDriver.jar读取串口数据乱码
时间: 2019-03-22来源:博客园
前景提要
android使用CH34xUARTDriver.jar读取串口数据乱码
0 [待解决问题] 项目需要使用android采集串口设备的数据,硬件使用CH34X芯片的“USB转UART”,

当设备连接在计算机上时,读取数据是正常的。
在计算机上使用两种方式进行了读取:
方式一:使用Xshell
方式二:自行编写代码:
自己编写的读取代码为:
byte[] readBuffer = new byte[256];
while ((len = inputStream.read(readBuffer)) != -1) {
data = new String(readBuffer, 0, len).trim();
}
在android设备上使用时,要使用该硬件设备的驱动,驱动程序为CH34xUARTDriver.jar
读取数据的代码为:
byte [] buffer = new byte[256];
while(true){
Message nmeaMsg = Message.obtain();
if(!isOpen){
break;
}
int length = CH34Driver.ch34Driver.ReadData(buffer,256);
if(length >0){
String nmeaData = "";
nmeaData = new String(buffer,0,length);
nmeaMsg.obj = nmeaData;
handler.sendMessage(nmeaMsg);//负责更新UI
} }
然而显示的数据却是乱码。
不知道是字符转换的问题,还是线路存在干扰的问题,
肯请大神指导。
calmmoon | 菜鸟二级 | 园豆: 206
提问于:2019-03-22 15:09 显示帮助
使用"Ctrl+Enter"可进行快捷提交,评论支持部分 Markdown 语法:[link](http://example.com) _italic_ **bold** `code`。
< > 分享
分享您的问题

清除回答草稿
您需要 登录 以后才能回答,未注册用户请先 注册 。

科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

热门排行