Erweiterter Hamming Code (16/11) Implementierung

OP #3010867
Lesenswert?

Hallo,

ich habe für mein Infrarotprojekt einen Hamming 15/11 Code mit 
zusätzlichem Parity Bit (also 16/11) implementiert. (146 Zeilen brutto).

Da ich vorher meistens 1-Bit Fehler beobachtet habe, habe ich durch 
Einsatz des Codes fast keine Fehler mehr.

Siehe http://de.wikipedia.org/wiki/Hamming-Code

Es ist eine speichersparende Variante ohne Lookup Table. Ich habe alles 
in Unterfunktion aufgeteilt, damit mans besser versteht. Ich denke wenn 
man durchgestiegen ist, ist es auch nicht schwer, das ganze auf andere 
Codelängen umzuschreiben.

Bitte die Funktionen nicht von Hand inlinen, das macht der Compiler, 
wenn mans ihm sagt ;)

Ich messe nachher noch die Laufzeit auf einem Atmega32 aus. ROM-Bedarf 
ist 542 Bytes, davon 246 Bytes fürs Codieren, 296 fürs dekodieren.

Gruß
Johannes
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren