Android—串口相关(2.串口调试时出现的乱序、乱码、缺数据问题)

原创 2018年04月16日 15:08:09

自己在开发调试过程中走了很多的坑,找了很多的文章,总结起来希望以后再碰到的时候能想起来,

其中参考了大佬的相关回答:大佬的链接


使用谷歌的串口调试工具有时会出现乱序和乱码以及缺数据的现象

乱序问题有以下几种出现的可能:

1.在配置相关串口时配置了多个串口
原因:导致多个串口同时开启,串口之间抢占资源无法及时接收到信息。
解决办法:确认配置了几个串口,并且不能循环开启串口。

2.在配置相关波特率时没有统一波特率
原因:波特率没有统一无法,准确接收信息。
解决办法:确认与连接设备的波特率是否统一。

3.在调用下一个串口时没有关闭之前的串口
原因:导致了同时开启了2个或者多个串口,串口之间会抢占资源,导致当前想使用的串口无法及时接收到数据。
解决办法:保证在开启下一个串口时关闭前一个串口。

4.使用了错误的底层代码,导致接收数据时产生了错误。
原因:未知
解决办法:更改底层文件 SerialPort.c(直接换一份代码)

链接最下方有更换的文件


乱码现象主要由以下几个方面导致的:
1.设备与程序设置的波特率不同,
原因:波特率差值过大时程序无法解析传输数据
解决办法:统一波特率

2.设备传输数据时使用了程序无法解析的类型
原因:由于都是通过字节流传输的,程序中需要转成相对应的类型。
解决办法:统一类型

缺数据就比较尴尬了:

缺数据主要是由串口与设备的连接不稳定导致的,主要是因为连接线松动导致。
如果出现缺数据问题,首先要去确认连接线是否牢固。




串口乱码及其分析处理

最近在做有关串口通信的工作,对串口乱码,以及波特率的设置是深有体会,我觉 得可以总结为如下几点; 1,当我们发现串口问题时,我们首先想到的是乱码的事情跟波特率的关系是挺大的,所以我们发现串口的乱码问题...
  • zfzzxd
  • zfzzxd
  • 2015-04-23 10:39:06
  • 8081

串口调试助手,上位机数据,有时正常,有时出现周期性乱码(有时不正常)。

情况说明 : 串口调试助手,上位机数据,有时正常,有时出现周期性乱码(有时不正常)。 串口调试助手问题,用sscom可以,用uartassist乱码. 测试下位机 :    STM32F10...
  • leahcim89
  • leahcim89
  • 2013-07-04 21:46:29
  • 3615

串口调试助手出现乱码

首先用一个正确的程序试一下确保软件本身没有什么问题, 然后再依次检查波特率和VPB时钟频率是否匹配,因为它们不匹配的时候同样会出现乱码。 如果最后还是乱码的话,可能就是程序的问题了,需要检查程序是...
  • yueniaoshi
  • yueniaoshi
  • 2012-09-07 17:50:16
  • 14558

串口调试所遇到问题,总结与借鉴

问题确定串口接收数据丢失,用串口工具发送一串字符数据时,有时会出现会丢失一两个数据。 可能原因1:cpu处理速度过慢,在下一次中断来临时,此次中断还未处理完。 解决方法:使用ringbufferv...
  • qq_28219531
  • qq_28219531
  • 2017-05-26 17:44:06
  • 359

Android串口调试

前面有一个客户需要系统支持PL2303的USB转串口线,通过OTG线连接了PAD,但是PAD可以识别到设备后,一直无法收发数据,开始的时候,再Android上无法正常打开设备,权限不够,后面Root后...
  • new_abc
  • new_abc
  • 2013-12-19 14:16:16
  • 5411

Qt写串口通讯软件,开始乱码,打开串口调试助手后又能正常接收

我用的是Win_QextSerialPort串口类,写串口通讯软件。我的串口设置语句:struct PortSettings myComSetting = {BAUD9600,DATA_8,PAR_N...
  • yuye2133
  • yuye2133
  • 2013-05-10 16:05:05
  • 2814

串口调试小节之四 常见问题总结

5.1不通讯或者通讯错误: 此部分针对的是linux调试的情况,windows请酌情参考。 现象:出现不通讯或者通讯数据错误,接收方和发送方的数据差别比较大。 解决办法:1、检查硬件:首先将串口...
  • sun2003shy
  • sun2003shy
  • 2015-06-08 10:52:29
  • 952

STM32串口通信中遇到有规律的乱码

STM32串口通信       这几天学习调试串口通信,一连好几天串口收发的都是乱码。之前的乱码毫无规律,发现是串口硬件没有配置好,此处的配置有三处。 (1)程序中,向量中断控制器的初始化配置 ...
  • shphonetown
  • shphonetown
  • 2013-07-24 15:31:33
  • 4673

调试STM32 串口时的 诡异现象

最近在调试STM32F103VCT6的程序 ,先调串口,程序是从正点原子的例程修改过来的,,现在有点事,晚上回家在写...
  • qwzboshipobi
  • qwzboshipobi
  • 2013-12-31 22:14:56
  • 2359

51单片机串口发送汉字显示乱码问题

前一段时间做蓝牙通信,单片机串口发送汉字总显示乱码,代码如下: //发送一个字节 void SendByte(unsigned char dat) { SBUF = dat; while(!...
  • rtgchym
  • rtgchym
  • 2012-03-20 12:51:03
  • 6398
收藏助手
不良信息举报
您举报文章:Android—串口相关(2.串口调试时出现的乱序、乱码、缺数据问题)
举报原因:
原因补充:

(最多只允许输入30个字)