PIC topic added ... > So I've been working on checksums. It's clear that CRC is the best. Howev= er it gets > murky in terms of running CRC on 15 bit values. While there are decent 15= bit CRC > polynominals out there, I've had a tough time finding any table driven al= gorithms > that addresses anything other than 4, 8, 16, or 32 bits. It looks like th= e natural > breakdown would be to split the 15 bits into three 5 bit words and use th= ree 5 bit > tables to encode. So the tables would cost 96 words of program memory. Bu= t then it > looks like some work to either split the 15 bit word into 5 bit chunks, o= r the > opposite of combining three 5 bit chunks into a whole 15 bit word. With s= ome careful > coding it would be possible to generate both at the same time I guess. My initial thought was that the easiest way is to calculate a 16 bit CRC wi= th the top bit of data always 0, but I guess you also need to transmit the = CRC in a 15 bit word, but maybe the way to do that is have it as a special = word. But if the comms are one way, how are you going to signify an error? --=20 Scanned by iCritical. --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .