weil hier alle paar Wochen ein Hilferuf nach CRC Berechnung gepostet wird, habe ich mal meine erprobten CRC Routinen zu einem lauffähigen Testprogramm zusammengefasst. Hier der CRC8 und der CRC32 (kompatibel zum Ethernet CRC32) in C. Der CRC8 eignet sich für kurze Datensätze die selten gesendet werden, wie z.B. kurze Fernsteuerkommandos, Fernthermometer oder ähnliches. Für Daten die mit größerer Geschwindigkeit übertragen werden, ist der CRC32 besser. Die Programme sind simpel, nicht optimiert, aber für uC Anwendungen an der seriellen Schnittstelle mehr als schnell genug. Bei mir laufen sie auf Atmel uCs. Die angehängten Programme können so wie sie sind compiliert und in einer Konsole ausgeführt werden. Man kann den Code direkt in eine eigene Applikation übernehmen, main() läßt man natürlich weg, aber in main() kann man nachsehen wie die CRC Berechnung aufgerufen wird. Vielleicht will jemand noch seinen CRC16 Code hier posten ? Dann hätten wir alles komplett. viele Grüße Kurt
Harry May schrieb: > Vielleicht will jemand noch seinen CRC16 Code hier posten ? Dann hätten > wir alles komplett. Wozu? Einfach im AVR-GCC die crc16.h öffnen, da sind 3 verschiedene drin. Und auch die crc8 für Maxim 1-wire. Peter
Gast
#1808414
Danke, sehr hilfreich!!!
Gast
#2264331
Hi, ich benutze Cosmic-Compiler, und meine frage lautet ob die gepostete Quellcode "CRC8_v2.c" benutzen kann ohne es zu ändern.Im Doc. von Cosmic-Compiler steht es schon funktionen "_checksum8()". "_checksum16()","_checksumx()"..usw. aber die Beispiele sind dann dort von einem Linker Beispiele, die ich nicht verstehe. ich wäre Dankbar für jeden Tip. Gruß
Gast
#2443199
Hi, ich habe mal den CRC32 C-Code getestet.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
Wenn ich nun die Daten auf der Webseite von "http://www.zorc.breitbandkatze.de/crc.html" eingebe, dann komme ich nicht auf das Ergbnis: 0xCBF43926. Was habe ich bei der EIngabe auf der Webseite falsch gemacht ?
Gast
#2444628
Ich habe nochmals die Eingaben überprüft. Ich komme nicht auf die gewünschte CRC Summe von 0xCBF43926.
Yo, die Fehlermöglichkeiten sind da mannigfaltig. So gehts aber: Beitrag "Yet another CRC32 Code" Cheers Detlef
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.
