CRC example to compute 32-bit CRC .

main.cpp

Committer:
deepikabhavnani
Date:
2017-12-29
Revision:
1:6f792125397a
Parent:
0:4ea3a9a52bb6
Child:
2:a9d9b5c4a32b

File content as of revision 1:6f792125397a:

#include "mbed.h"
#include "BitwiseCRC.h"
#include "FastCRC.h"

#define FAST_COMPUTE        1

#if defined(FAST_COMPUTE)
#define CRC_ALGO    FastCRC
#else
#define CRC_ALGO    BitwiseCRC
#endif

char  test[] = "123456789";
uint32_t crc;

int crc_calculate(crc_polynomial_type_t crc_type) {
    CRC_ALGO ct(crc_type);

    ct.init();
    ct.compute((void *)test, strlen((const char*)test), &crc);

    printf("The CRC of 0x%x data \"123456789\" is : 0x%lx\n",
                            ct.get_polynomial(), crc);
    ct.deinit();
    return 0;
}

int main() {

    crc_calculate(CRC_32BIT);
    crc_calculate(CRC_16BIT_IBM);
    crc_calculate(CRC_16BIT_CCITT);

    printf("End\n");
    return 0;
}