www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik itoa bei 10 Bit Zahlen


Autor: Großes Fragezeichen (112)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo allerseits,

also es geht bei mir nun darum, Zahlen per USART zu übertragen. Die 
Verbindung funktioniert und bei dem Hyperterminal kommt etwas an. Es 
geht aber im Speziellen nun darum, Messwerte vom AD-Wandler zu 
übertragen.

Die Messerte liegen zwischen 0 und 1023.
Ich verwende folgenden Code und es klappt auch alles wunderbar.

char s[7];
 int16_t i = ADCMesswert;

 itoa( i, s, 10 ); // 10 fuer radix -> Dezimalsystem
 uart_puts( s );
 uart_putc(' ');
 _delay_ms(250);

Das Problem ist nun, dass ich mich wundere, dass diese Funktionen 
aufgrund des Zahlenbereiches nicht rumspinnen, (also eigentlich 
Verwunderung, anstatt eines Problems). Ich dachte, es könnten nur 8 Bit 
Werte übergeben werden, die Messwerte vom ADC sind aber aus dem Bereich 
von 10 Bit und mein USART habe ich auf 8Bit Datenübertragung 
eingestellt...

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Großes Fragezeichen schrieb:
> Ich dachte, es könnten nur 8 Bit
> Werte übergeben werden,

Wieso das? itoa bekommt eine int.
Und die ist bei AVR 2 Byte groß.

> mein USART habe ich auf 8Bit Datenübertragung
Du überträgst aber doch nicht die int mit 8 Bit, sondern den daraus 
erzeugten String - Byte für Byte mit je acht Bit.

Also bei ADC-Wert=510 überträgst du mit 8 Bit eine '5', mit 8 Bit
eine '1' und mit weiteren 8 Bit eine '0'.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.