sairfan1
Full Member level 1
- Joined
- Jun 12, 2010
- Messages
- 97
- Helped
- 4
- Reputation
- 8
- Reaction score
- 7
- Trophy points
- 1,288
- Location
- Regina, Canada
- Activity points
- 2,384
I'm reading datasheet for nRF24L01 family module, please refer to link to open datasheet at page 28 (section 7.3.5 quited below) it tells calculating CRC that I could not understand.
For example sending text is 'Hello' how will I calculate CRC and what will be final CRC number I will get, (I believe its called checksum)
I'll appricate if someone also include how to varify CRC at receiving end.
Datasheet link at sparkfun nRF24L01
To make it easy I'm mentioning hex for string 'Hello' if someone calculation CRC for below I believe it will greatly help me to understand its calculation.
H = 0x48
e = 0x65
l = 0x6C
l = 0x6C
o = 0x6F
I found a couple of videos on youtube.com but could not understand
For example sending text is 'Hello' how will I calculate CRC and what will be final CRC number I will get, (I believe its called checksum)
I'll appricate if someone also include how to varify CRC at receiving end.
7.3.5 CRC (Cyclic Redundancy Check)
The CRC is the mandatory error detection mechanism in the packet. It is either 1 or 2 bytes and is calculated over the address, Packet Control Field and Payload.
The polynomial for 1 byte CRC is X8 + X2 + X + 1. Initial value 0xFF.
The polynomial for 2 byte CRC is X16+ X12 + X5 + 1. Initial value 0xFFFF.
No packet is accepted by Enhanced ShockBurst™ if the CRC fails
Datasheet link at sparkfun nRF24L01
To make it easy I'm mentioning hex for string 'Hello' if someone calculation CRC for below I believe it will greatly help me to understand its calculation.
H = 0x48
e = 0x65
l = 0x6C
l = 0x6C
o = 0x6F
I found a couple of videos on youtube.com but could not understand