DS18S20 CRC Berechnung

Gast #163952
Hallo,
ich suche ein AVR Assembler Beispiel für die Berechung der Prüfziffer
des Sensors.
Sämtliche gefundenen Programme arbeiten nur mit der Datentabelle.

Aus dem Beispiel von Dallas (AN27) werde ich nicht schlau:
http://pdfserv.maxim-ic.com/en/an/app27.pdf

Hat jemand von Euch einen Tip ?
Benutze den 4433.

Vielen Dank im Vorraus.
Andre
Gast #163953
Und warum nimmst Du nicht die Tabelle?

Besser als Maxim oder die wikis dieser Welt wird Dir das hier auch
nicht erklären können, fürchte ich.
Gast #163955
Du hast von 4 kB kein viertel-Kilo für die Tabelle übrig?

Na gut.

Hast Du das Assembler-Programm von Seite 5 Deiner verlinkten Anleitung
mal in AVR-Assembler übersetzt und simuliert? Du kannst es dann ja
vergleichen mit dem Berechnungsfortschritt auf Seite 6.

Das Prinzip von CRC ist Dir aber schon vertraut? Die Einführung über
die Wikipedia fand ich ganz hilfreich.
Gast #163956
4kB?? Wie lese ich denn Daten aus dem Programmspeicher?

Das Beispiel kommt mit 15 Befehlen aus (wenn mach die Sicherung der
Register weg lässt) das ist schon ein Unterschied zu einer Tabelle.

Allerdings muss ich, um es AVR kompatibel zu machen, erst verstehen.
Wäre ja möglich, dass dies schon einmel jemand vor mir durch hat.

Das Prinzip von CRC ist mir durchaus bekannt. Es gibt allerdings
unendlich viele Berechnungsmethoden.

Andre
Gast #163957
Anbei meine Lösüng, mit der ich iButtons auslese. Also jene Dinger, die
nur eine SerieNummer und sonst nichts beinhalten. Dort siehst Du, wie
man die CRC erzeugt (ohne Tabelle).
Angehängte Dateien:
Gast #163958
Aus dem Programmspeicher kannst Du mit dem Befehl LPM lesen. Da gibt es
notfalls auch genug Beispiele dafür.

Die Live-Berechnung ist natürlich viel kompakter, aber erheblich
langsamer. Da muß man abwägen, ob es eher auf Platz oder auf Tempo
ankommt.

Bei der Lösung von mkmk bitte Achtung: iButtons verwenden -- wenn ich
mich nicht irre -- eine 16-Bit CRC, während Du eine 8-Bit CRC brauchst.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.