| int main(int argc, char *argv[]) { |
| int val = strtol(argv[1], NULL, 0); |
| printf("CRC5(0x%x, 11) -> 0x%x (CRC << 3 is 0x%02x, Combined 0x%04x)\n", |
| val, crc, crc << 3, crc << 11 | val); |
| for (i = 2; i < argc; i++) { |
| buf[i - 2] = strtol(argv[i], NULL, base); |
| printf("%02x ", buf[i - 2]); |
| printf("CRC16 = 0x%04x\n", CRC16(buf, argc - 2)); |
| Working up USB app note page 5 |
| mdh10@homer:usbdpi$ ./a.out 0x1 |
| mdh10@homer:usbdpi$ ./a.out 0x270 |
| mdh10@homer:usbdpi$ ./a.out 0x53a |
| mdh10@homer:usbdpi$ ./a.out 0x715 |
| mdh10@homer:usbdpi$ ./a.out 0x710 |