Ejemplo n.º 1
0
/**
 * Verify the checksum for the given data and length.
 */
uint8_t _gps_verify_checksum(uint8_t* data, uint8_t len)
{
    uint8_t a, b;
    gps_ubx_checksum(data, len, &a, &b);
    if( a != *(data + len) || b != *(data + len + 1))
        return 0;
    else
        return 1;
}
Ejemplo n.º 2
0
u8 gps_bad_checksum(u8* msg, u8 length) {
    u8 rx_chk_a = msg[length - 2];
    u8 rx_chk_b = msg[length - 1];
    u16 calc_chk = gps_ubx_checksum(&msg[2], length - 4);
    u8 calc_chk_a = calc_chk >> 8;
    u8 calc_chk_b = calc_chk & 0xFF;
    if(calc_chk_a != rx_chk_a || calc_chk_b != rx_chk_b)
        return 1;
    return 0;
}