Forum: Mikrocontroller und Digitale Elektronik Nachkomma stelle DS1820


von Kay B. (newbie)


Angehängte Dateien:

Lesenswert?

hallo,
guten abend

habe mal eine frage, wie wird die nach kommastelle beim ds1820 berechnet
das programm im anhang zeigt ja erstmal nur 3stellen an zb.023 grad
VIELLECHT KANN MIR VON EUCH BITTE EINER WEITERHELFEN

MFG KAY

von Tom (Gast)


Lesenswert?

Mein Tipp:

Da ist eine Zeile

   ror temp1

da wird das Bit nach rechts rausgeschoben, welches dein halbes Grad 
enthält. Du könntest abhängig von diesem Bit nach der regulären Ausgabe 
einen Text ".0" oder ".5" ans LCD schicken.

Lass diese Großbuchstaben sein.

von Kay B. (newbie)


Lesenswert?

hallo,


> Da ist eine Zeile
>
>    ror temp1
>
> da wird das Bit nach rechts rausgeschoben, welches dein halbes Grad
> enthält.

aber wenn ich  diese zeile ausblende erhalte ich die doppelte 
temperratur oder mache ic da irgenetwas vekehrt.


Du könntest abhängig von diesem Bit nach der regulären Ausgabe
> einen Text ".0" oder ".5" ans LCD schicken.

aber dann verändert sich ja die Nachkommastelle nicht.

wäre nett wenn mir einer von euch ein bischen weiterhelfen könnte

mfg kay

von Karl H. (kbuchegg)


Lesenswert?

Kay B. wrote:
> hallo,
>
>
>> Da ist eine Zeile
>>
>>    ror temp1
>>
>> da wird das Bit nach rechts rausgeschoben, welches dein halbes Grad
>> enthält.
>
> aber wenn ich  diese zeile ausblende erhalte ich die doppelte
> temperratur oder mache ic da irgenetwas vekehrt.

Tom sagt ja auch nicht, dass du nicht rausschieben (also durch
2 dividieren) sollst. Aber du kannst dir ja das niederwertigste
Bit vor dem rausschieben ansehen.
Ist es 1, dann lautet deine Kommastelle .5. Ist es 0 dann lautet
die Kommastelle .0.

> wäre nett wenn mir einer von euch ein bischen weiterhelfen könnte

Du denkst im Moment zu kompliziert.
In Pseudocode

   Merker = lowbit( temp1 )
   ror temp1
   temp1 ausgeben

   if Merker == 1
     ".5" ausgeben
   else
     ".0" ausgeben

Die Kommastelle wird nicht wirklich berechnet, sondern einfach
nur abhängig vom niederwertigsten Bit vor dem Verschieben als
.5 oder .0 an die bisherige Ausgabe angehängt.

von Kay B. (newbie)


Lesenswert?

hallo,
erstmalö danke für die antworten,
werde es dann mal so machen wie ihr gesagt habt
danke nochmals
mfg kay

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.