Hallo, nachdem ich jetzt 5 Stunden gesucht habe, und dabei auf ein paar sehr schöne Code-Beispiele hier gestossen bin (und auch anderswo) habe ich immernoch ein Problem: Es gibt ja hunderte von Projekten mit dem DS18S20, ich habe aber ein paar ds18B20, die ein etwas anderes Format im Speicher haben. Ich habe da Bits für die Nachkommastellen, also 2^-1, 2^-2, 2^-3 und 2^-4. Natuerlich koennte ich die einfach ignorieren, oder die 16 möglichen Werte in eine Lookuptable schreiben, aber geht das nicht auch anders ? Ich möchte letztlich den Wert übert den UART ausgeben, brauche also einen 'String'. Das ganze in Assembler. Mit einem ds18S20 funktioniert das Programm sehr schön, mit dem b20 kommt natürlich nur murks an. Vielen Dank für die Hilfe ! Florian 'AVR-Greenhorn' Streibelt
Ich würde das so machen: Eine 8Bit-Variable für die Nachkommastellen, dabei werden aber nur die Werte 0-99 benutzt. Wenn das Bit für 2^-1 gesetzt ist, dann addierst Du 50, bei 2^-2 25, bei 2^-3 12 und bei 2^-4 6. Man könnte hier natürlich auch eine 16Bit-Variable benutzen, daber damit wird die Genauigkeit nicht wirklich höher. Vermutlich (hab' das Datenblatt nicht gelesen) liegt die Genauigkeit eh bei 1 Grad, so daß Bruchteile von einem Grad nicht wirklich sinnvoll sind. Markus
jo, macht sinn, eine höhere Genauigkeit bringt in meiner Anwendung eh nich so viel... Danke ! Florian
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.