521,51 → 521,17 |
}while(!CheckDelay(timeout)); |
if((UbxMsg.Hdr.Length >= 40) && (UbxMsg.Status == NEWDATA)) |
{ |
/* |
UART1_PutString(" V"); |
retval = UbxVersionParser(); |
if(retval != 0xff) |
{ |
UbxMsg.Data[4] = 0; //Only the first 4 characters |
UART1_PutString((u8*)&UbxMsg.Data); |
UART1_PutString(" HW:"); |
UbxMsg.Data[39] = 0; |
UART1_PutString((u8*)&UbxMsg.Data[30]); |
*/ |
if(UbxMsg.Data[33] == '4' && UbxMsg.Data[37] == '1') // LEA-4 |
{ |
GPS_Version = 1000 + (UbxMsg.Data[0] - '0') * 100 + (UbxMsg.Data[2] - '0') * 10 + (UbxMsg.Data[3] - '0'); |
retval = 10; // MKGPS V1 |
} |
else |
if(UbxMsg.Data[33] == '4' && UbxMsg.Data[37] == '7') // LEA-6 |
{ |
GPS_Version = 2000 + (UbxMsg.Data[0] - '0') * 100 + (UbxMsg.Data[2] - '0') * 10 + (UbxMsg.Data[3] - '0'); |
retval = 20; // MKGPS V2 |
} |
else |
if(UbxMsg.Data[33] == '8' && UbxMsg.Data[37] == '0') // NEO-8 |
{ |
GPS_Version = 3000 + (UbxMsg.Data[0] - '0') * 100 + (UbxMsg.Data[2] - '0') * 10 + (UbxMsg.Data[3] - '0'); |
retval = 30; // MKGPS V3 |
} |
else |
UART1_PutString(" ! -> UNKNOWN <- ! "); |
// HW:00000040: Antaris |
// HW:00040001: Antaris-4 |
// HW:80040001: Antaris-4 |
// HW:00040005: u-blox 5 |
// HW:00040006: u-blox 6 |
// HW:00040007: u-blox 6 |
// HW:00070000: u-blox 7 |
// HW:00080000: u-blox M8 |
// MKGPS V1 -> 1500 -> LEA-4H-0-000 -> ubxsw == 5.00 HW:00040001 |
// MKGPS V2 -> 2602 -> LEA-6S-0-000 -> ubxsw == 6.02 HW:00040007 |
// MKGPS V2 -> 2703 -> LEA-6S-0-001 -> ubxsw == 7.03 HW:00040007 |
// MKGPS V3 -> 3201 -> NEO-M8Q-0-00 -> ubxsw == 2.00 HW:00080000 (Flash-oder ROM Variante) |
UbxMsg.Data[4] = 0; //Only the first 4 characters |
sprintf(msg, " V%d.%d SW:%s", retval/10,retval%10, (u8*)&UbxMsg.Data[0]); |
UART1_PutString(msg); |
} |
else UART1_PutString(" ! -> UNKNOWN <- ! "); |
} |
UbxMsg.Status = INVALID; |
return(retval); |
UbxMsg.Status = INVALID; |
return(retval); |
} |
|
|