Nachkomma stelle DS1820

Gast #842417
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.
OP #843157
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
#843188
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.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 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.