Forum: Mikrocontroller und Digitale Elektronik DS1621 und Negative Werte mit Bascom


von Benny K. (Gast)


Lesenswert?

Guten Tag zusammen

Also ich bin etwas neu auf dem Gebiert uC und I2C ...
aber mein Programm funktioniert soweit ... ABER !! nur !!!
mit Plusgraden ... sobald die Temperatur unter 0grad fällt
bekomme ich 255 oder sowas angezeigt ...

wie kann ich das sinnvoll umrechnen bzw. wie geht das überhaupt

Also uC läuft hier ein ATmega8 und Software ist Bascom

pse mail back

gruss Benny

von Wolle (Gast)


Lesenswert?

Das 8.Bit (DB7=DatenBit7) ist das Kennzeichen für negative Werte.
Zur Auswertung der Zahl mußt du das Komplement nehmen und ein "-"
davor setzen.
Steht aber auch im Datenblatt.

von Benny K. (Gast)


Lesenswert?

dann hätte ich ja -255 grad

oder muss ich dann die 255 von dem gesamt ergebniss wieder abziehen ?

von Christian Zietz (Gast)


Lesenswert?

@Benny: Das Komplement nicht vergessen:
http://de.wikipedia.org/wiki/Zweierkomplement

Kurzfassung: Alle Bits invertieren (255->0), eins addieren (0->1),
Minus davorschreiben (1->"-1").

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.