Implementation of CRC16 using polynomial 0x8005 - (X^16 X^15 X^2 1)
Fork of CRC16 by
CRC16.h@1:88c965afbea6, 2016-11-01 (annotated)
- Committer:
- dragyu
- Date:
- Tue Nov 01 14:27:22 2016 +0000
- Revision:
- 1:88c965afbea6
- Parent:
- 0:585ead300cab
F103 modbus TCP
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
EmLa | 0:585ead300cab | 1 | #ifndef CRC16_H |
EmLa | 0:585ead300cab | 2 | #define CRC16_H |
dragyu | 1:88c965afbea6 | 3 | #include "mbed.h" |
EmLa | 0:585ead300cab | 4 | class CRC16 |
EmLa | 0:585ead300cab | 5 | { |
EmLa | 0:585ead300cab | 6 | private: |
dragyu | 1:88c965afbea6 | 7 | |
dragyu | 1:88c965afbea6 | 8 | char *auchCRCHi; |
dragyu | 1:88c965afbea6 | 9 | char *auchCRCLo; |
EmLa | 0:585ead300cab | 10 | |
EmLa | 0:585ead300cab | 11 | public: |
dragyu | 1:88c965afbea6 | 12 | uint16_t calculateCRC16( char *updata, int lenght); |
EmLa | 0:585ead300cab | 13 | CRC16(); |
EmLa | 0:585ead300cab | 14 | ~CRC16(); |
EmLa | 0:585ead300cab | 15 | }; |
dragyu | 1:88c965afbea6 | 16 | // x16+x15+x2+1 现在生成的 crc16 modbus 是正确顺序 高位在前 d低位在后 |
EmLa | 0:585ead300cab | 17 | #endif |