3 ms·
Probably too much work to do in that context but QR codes solve that by having multiple possible XOR patterns and choosing the one that generates the best outpu
by tinus_hn 6y ago
Probably too much work to do in that context but QR codes solve that by having multiple possible XOR patterns and choosing the one that generates the best output.
- jleahy 6y agoActually not too much work. Some protocols (I can’t recall which, none of the above) work by sending either the data or its inverse along with an extra bit saying whether it was inverted. Very easy in hardware but has nasty error amplification (an error in that bit causes many other bits to flip), which may or may not be an issue.
- tinus_hn 6y agoNot sure how that really helps but it does mean you have to look at all of the data before sending it.
- jleahy 6y agoYou split your data into chunks, say 8-bits. The main thing is that you can guarantee there will be a transition every N bits and you can guarantee that the average number of ones and zeros is the same (you can't have a DC component in your signal due to AC coupling). For example let's assume that the block size is 4-bits, if somebody wants to send 0x0000 rather than sending this: 0000_0000_0000_0000 You'll instead send this: 10000_01111_10000_01111