佚名通过本文主要向大家介绍了串口陀螺仪,串口数据记录仪,串口测试仪,串口扫描仪,投影仪串口等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:用51串口接收陀螺仪数据包数据不完整
描述:
数据包示例如下

代码如下

接收到的数据是这样的,大部分都是0x52(角速度数据包接收不完整)

解决方案1:
数据有可能含有0
描述:
本帖最后由 qq_27703353 于 2016-03-22 20:27:24 编辑
我用的是STC15l2k60s2,最近在网上买了个mpu6050模块,它是通过串口分别发送加速度,角速度,角度三个数据包,包头都为0x55,第二个数据为标识分别是0x51,0x52,0x53,但是串口接收到的总是不完整的数据,想问问问题是出在哪?谢谢……数据包示例如下

代码如下

接收到的数据是这样的,大部分都是0x52(角速度数据包接收不完整)

解决方案1:
建议做个循环
void IntSerial1() interrupt 4
{
uchar Point = 0;
for(;;){
while( !RI );
RI = 0;
cSerial1Buffer[ Point ] = SBUF;
if( cSerial1Buffer[0] != 0x55 ) return;
Point++;
if( Point == 11 ){
Point = 0;
return;
}
}
void SendString(uchar *s)
{
while (*s) //?ì2a×?·?′??áê?±ê??
{
SendData(*s++); //·¢?íμ±?°×?·?
}
}
数据有可能含有0