当前位置:网站首页>CRC check

CRC check

2022-07-01 10:15:00 Ennuyeux

1. Généralités:
LedemoPrincipales réalisationsCRCVérification
RéférencesCRCL'adresse de la bibliothèque est:https://github.com/whik/crc-lib-c

2. Tests:
Insérer la description de l'image ici

/* demo_crc.c crc demo : CRC Vérification Références crcLib.h crcLib.c github Adresse : https://github.com/whik/crc-lib-c */

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>

#include "crcLib.h"

int main(int argc, char *argv[]) {
    

    char str[16] = "Hello World!";

    printf("crc4_itu\t \"%s\" = 0x%0X\n", str, crc4_itu((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc5_epc\t \"%s\" = 0x%0X\n", str, crc5_epc((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc5_itu\t \"%s\" = 0x%0X\n", str, crc5_itu((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc5_usb\t \"%s\" = 0x%0X\n", str, crc5_usb((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc6_itu\t \"%s\" = 0x%0X\n", str, crc6_itu((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc7_mmc\t \"%s\" = 0x%0X\n", str, crc7_mmc((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc8\t\t \"%s\" = 0x%0X\n", str, crc8((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc8_itu\t \"%s\" = 0x%0X\n", str, crc8_itu((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc8_rohc\t \"%s\" = 0x%0X\n", str, crc8_rohc((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc8_maxim\t \"%s\" = 0x%0X\n", str, crc8_maxim((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_ibm\t \"%s\" = 0x%0X\n", str, crc16_ibm((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_maxim\t \"%s\" = 0x%0X\n", str, crc16_maxim((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_usb\t \"%s\" = 0x%0X\n", str, crc16_usb((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_modbus\t \"%s\" = 0x%0X\n", str, crc16_modbus((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_ccitt\t \"%s\" = 0x%0X\n", str, crc16_ccitt((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_ccitt_false\t \"%s\" = 0x%0X\n", str, crc16_ccitt_false((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_x25\t \"%s\" = 0x%0X\n", str, crc16_x25((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_xmodem\t \"%s\" = 0x%0X\n", str, crc16_xmodem((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc16_dnp\t \"%s\" = 0x%0X\n", str, crc16_dnp((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc32\t\t \"%s\" = 0x%0X\n", str, crc32((uint8_t *)str, (uint16_t)(strlen(str))));
    printf("crc32_mpeg_2\t \"%s\" = 0x%0X\n", str, crc32_mpeg_2((uint8_t *)str, (uint16_t)(strlen(str))));

    return 0;
}
#Makefile
CC := gcc
AR := ar

all:
	$(CC) -c crcLib.c -o crcLib.o -Wall -Werror
	$(AR) cr libcrcLib.a crcLib.o
	#-L Spécifiez le chemin de la Bibliothèque -l  Spécifiez le nom de la bibliothèque à connecter 
	#-Wl,-Bstatic Indique ce qui suit -lxxx Les options sont liées à des bibliothèques statiques  
	#-Wl,-Bdynamic Indique ce qui suit -lxxx Les options sont liées à des bibliothèques dynamiques 
	$(CC) demo_crc.c -o demo_crc -lm -L. -Wl,-Bstatic -lcrcLib -Wl,-Bdynamic -Wall -Werror

clean:
	rm demo_crc *.o *.a
原网站

版权声明
本文为[Ennuyeux]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/07/202207011011187040.html