AP_Math: added CRCs needed by AP_MSP

This commit is contained in:
yaapu 2020-08-04 22:43:23 +02:00 committed by Andrew Tridgell
parent 7170adf50e
commit 144f7df02f
2 changed files with 13 additions and 0 deletions

View File

@ -110,6 +110,18 @@ uint8_t crc8_dvb(uint8_t crc, uint8_t a, uint8_t seed)
return crc;
}
// crc8 from betaflight
uint8_t crc8_dvb_s2_update(uint8_t crc, const void *data, uint32_t length)
{
const uint8_t *p = (const uint8_t *)data;
const uint8_t *pend = p + length;
for (; p != pend; p++) {
crc = crc8_dvb_s2(crc, *p);
}
return crc;
}
/*
xmodem CRC thanks to avr-liberty
https://github.com/dreamiurg/avr-liberty

View File

@ -21,6 +21,7 @@ uint16_t crc_crc4(uint16_t *data);
uint8_t crc_crc8(const uint8_t *p, uint8_t len);
uint8_t crc8_dvb_s2(uint8_t crc, uint8_t a);
uint8_t crc8_dvb(uint8_t crc, uint8_t a, uint8_t seed);
uint8_t crc8_dvb_s2_update(uint8_t crc, const void *data, uint32_t length);
uint16_t crc_xmodem_update(uint16_t crc, uint8_t data);
uint16_t crc_xmodem(const uint8_t *data, uint16_t len);
uint32_t crc_crc32(uint32_t crc, const uint8_t *buf, uint32_t size);