From: Dave W. <to_...@ya...> - 2012-08-09 00:25:30
|
First off, this pycrc is great stuff! Thx for the great work. I'm new to this crc business but need to code up a python script to implement the ITU I363.5 crc32 checker. I've googled and read a lot before coding up a bit-by-bit version of the checker. My crc value was always wrong. The test data is 43 bytes of 0x0 followed by one byte of 0x28. The expected crc value is 0x864d7f99. I used pycrc to generate the c code (bit-by-bit) to try to understand what I did wrong. Long story short. It turns out the difference is in the initial crc value. The c code (bit-by-bit) generated an init value "init = crc.NonDirectInit" which is 0x46af6449. Based on the ITU standard, it says to initialize the crc reg to all 1's first. So I have always initialize my crc reg to 0xfffffff. Can someone educate me a bit on how to come up with this init value of 0x46af6449? Much appreciated!! dave |