Frage zu ADDAT

Gast #150542
Lesenswert?
• ▲
▼
Hallo!

Bin Anfänger auf dem Gebiet Mikrocontroller und hätte mal eine Frage
zum SFR ADDAT. Habe hier zwei Programme in C-Code vorliegen, in dem mit
Hilfe des AD/Wandlers Werte über einen Temperaturfühler gemessen werden
sollen und mit dem Messergebnis weitergearbeitet werden soll.

Besitzt der Digitalwert in ADDAT keinen bestimmten Datentyp?

In einem Programm wird eine int-Variable "T" erzeugt und dem Register
ADDAT zugordnet.
In dem anderen wird die gleiche Variable jedoch vom Typ char erzeugt
und ADDAt zugewiesen.
Kann man das das so einfach machen??

Würde mich über Hilfe freuen.

Mit freundlichen Grüssen
Klaus Rheine
Gast #150546
Lesenswert?
• ▲
▼
Schööööner prozessor.
Was willst Du mit dem Wert aus dem ADDAT machen?
Wenn Du nur die 8 Bit ausliest, reicht es Dir vieleicht, das Ergebnis
der Wandlung anzuzeigen, dann reicht Dir ein Char.
Wenn Du das Ergebnis z.B. benutzen willst, um die Einstellungen für
Deine Offsetts zu berechnen, sollte es schon INT sein.
Gast #150547
Lesenswert?
• ▲
▼
Gehen wir mal von einem Temperaturfühler aus.
Dort will ich prüfen, ob der Wert in ADDAT größer 0 ist.
Ist dies der Fall, soll der Wert als zweistellige Dezimalzahl
ausgegeben werden. Zur Ausgabe dient eine Prozedur out_char(z), die als
Parameter ein ASCII Zeichen erwartet.

Wie gehe ich dann im Programm vor?

int wert;
char ausgabe,z;

wert=ADDAT;
if(wert>0)
  {
    ausgabe=ADDAT //???
    z=ausgabe/10   //Zehner-Stelle
    z=z+0x30  //ASCII Ziffer
    out_char(z);

    .
    .
    .
   }

Kann ich ADDAT in der if-Schleife einem char-Wert zuweisen, obwohl ich
dem Register vorher int zugewiesen habe?
Gast #150549
Lesenswert?
• ▲
▼
>...obwohl ich dem Register vorher int zugewiesen habe?

Umgekehrt:
Du weist ja nicht dem Register ADDAT einen Wert oder Typ zu (macht
wenig Sinn) sondern Du weist den Inhalt von ADDAT einer Variablen zu,
was kein Problem ist, solange die jeweilige Variable einen Wertebereich
hat, der größer oder gleich dem Wertebereich von ADDAT ist. Ich hoffe,
das löst das Verständnisproblem.

Gruß

Johnny

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.