fix receive wave bugs
This commit is contained in:
parent
59864c8461
commit
15582c4c49
@ -1030,13 +1030,13 @@ int Uart::FindRecvPackage(int bytesRead, char *mUartRecvBuf, char *head) {
|
||||
sprintf(buf, "%02d", UartRecvBuf[i + 5]);
|
||||
int command = atoi(buf);
|
||||
//zlog_info(zct, "command = %d ShortAddr :%s", command, strShortAddr.c_str());
|
||||
if ((mPackgeIndex == -1 || (unsigned int)UartRecvBuf[i + 6] == 0) ) {
|
||||
if ((mPackgeIndex == -1 || (unsigned int)UartRecvBuf[i + 6] == 0) && (command == WAVE_X || command == WAVE_Y || command == WAVE_Z) ) {
|
||||
mPackgeIndex = UartRecvBuf[i + 6] & 0xFF;
|
||||
} else if ((unsigned int)mPackgeIndex == (unsigned int)UartRecvBuf[i + 6] && mPackgeIndex != -1 && command != 2) {
|
||||
} else if ((unsigned int)mPackgeIndex == (unsigned int)UartRecvBuf[i + 6] && mPackgeIndex != -1 && command != 2 && (command == WAVE_X || command == WAVE_Y || command == WAVE_Z)) {
|
||||
zlog_warn(zct, "mPackgeIndex same index1:%d,index2:%02d ShortAddr :%s ", mPackgeIndex, UartRecvBuf[i + 6] & 0xff, strShortAddr.c_str());
|
||||
continue;
|
||||
|
||||
} else if ((unsigned int)mPackgeIndex + 1 != (unsigned int)UartRecvBuf[i + 6] && mPackgeIndex != -1 && command != 2) {
|
||||
} else if ((unsigned int)mPackgeIndex + 1 != (unsigned int)UartRecvBuf[i + 6] && mPackgeIndex != -1 && command != 2 && (command == WAVE_X || command == WAVE_Y || command == WAVE_Z)) {
|
||||
m_TimeStamp = 0;
|
||||
|
||||
zlog_warn(zct, "mPackgeIndex error index1:%d,index2:%02d ShortAddr :%s ", mPackgeIndex, UartRecvBuf[i + 6] & 0xff, strShortAddr.c_str());
|
||||
@ -1125,6 +1125,7 @@ int Uart::FindRecvPackage(int bytesRead, char *mUartRecvBuf, char *head) {
|
||||
}
|
||||
memcpy(RecvBuf, (char *)&UartRecvBuf[i], 100);
|
||||
DealDataNodeWave(RecvBuf, command);
|
||||
mPackgeIndex = (unsigned int)UartRecvBuf[i + 6];
|
||||
} else if (now_task != WAVE_CMD && (command == ASK_TASK || command == DEVICE_INF || command == MEAS_EVAL || command == CONFIG || command == UPGRADE || command == DEVICE_INF2 || command == SIGNAL_STRENGTH || command == DEVICE_EXCEPTION || command == WAVE_COMPRESS)) {
|
||||
char RecvBuf[100] = {0x00};
|
||||
if (command == ASK_TASK )
|
||||
@ -1195,7 +1196,7 @@ int Uart::FindRecvPackage(int bytesRead, char *mUartRecvBuf, char *head) {
|
||||
}
|
||||
}
|
||||
}
|
||||
mPackgeIndex = (unsigned int)UartRecvBuf[i + 6];
|
||||
|
||||
|
||||
} else {
|
||||
continue;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user