ascii nach dezimal wandeln ohne printf mit einem Atmega

OP #1041283
Lesenswert?
• ▲
▼
Hallo

Ich möchte Ascii-Zeichen über Uart empfangen und nach dezimal wandeln.
Dabei sollen alle Zeichen aus dem Ascii-Zeichensatz gewandelt werden
können.
Also zB. $ => 36
         ? => 63
         Z => 90   usw. (0 - 255, also komplette Tabelle)

Printf möchte ich nicht verwenden, atoi wandelt nur Zahlen.
Weiß jemand ich es anstellen kann?
Gast #1041322
Lesenswert?
• ▲
▼
Das ist ganz einfach.
Du hast ja schon eine kleine ASCII-Tabelle oben angefangen. Aber was 
heisst denn das nun? (Denn da sehe ich Dein Problem).

>Z => 90

Das kann man doch so interpretieren : Die Zahl 90 ist dem Zeichen 'Z' 
zugeordnet. Eine ASCII-Tabelle ist also eine Vorschrift wie eine Zahl 
zu interpretieren ist. D.h. Du musst hier nichts umwandeln . Du 
musst hier nur was anders interpretieren. OK?

printf ist z.b. so ein hübsches Mittel um das zu erledigen.

short int x = 90;

printf ("%d", x) ergibt den String "90".
printf ("%x", x) ergibt den Strinf "5A".
printf ("%c", x) ergibt das Zeichen 'Z'.

uswusf.
Gast #1041333
Lesenswert?
• ▲
▼
Ah. Ich sehe schon, da kommt als nächstes die Antwort:

"Aber printf möchte ich nicht verwenden!".

Sicherlich. Das sollte ja auch nur das Prinzip zeigen.

D.h. Du könntest vielleicht darauf kommen, das Deine Frage sich auf die 
Umwandlung von Zahlen in ASCII-Zeichen insofern zu tun hat, das die 
Darstellung der Zahl erzeugt werden soll. Keine Interpretation.

D.h. Du musst von der Zahl 0x5A auf die ASCII-Zeichen '5' und 'A' 
kommen.
Das ist Dir aber wahrscheinlich schon klar, oder?
Gast #1041334
Lesenswert?
• ▲
▼
>Du musst hier nur was anders interpretieren.

Evtl. geht es ihm um die Wandlung der internen Darstellung im uC in die 
für Menschen lesbare Form (Ziffern usw.) bzw. umgekehrt. Es gibt hier im 
Forum fast keine Fragen mehr, die man ohne Glaskugel verstehen kann.
Und bei den Antworten ist es auch nicht viel besser, wie man an dieser 
sieht.
Gast #1041335
Lesenswert?
• ▲
▼
Was ist denn das für ein Satz?
>D.h. Du könntest vielleicht darauf kommen, das Deine Frage sich auf die
>Umwandlung von Zahlen in ASCII-Zeichen insofern zu tun hat, das die
>Darstellung der Zahl erzeugt werden soll. Keine Interpretation.

Das sollte natürlich heissen:

D.h. Du könntest vielleicht darauf kommen, das Deine Frage sich auf die
Umwandlung von Zahlen in ASCII-Zeichen bezieht und mit den ASCII-Zeichen 
insofern zu tun hat, das die Darstellung der Zahl erzeugt werden soll. 
Keine Interpretation.
Gast #1041339
Lesenswert?
• ▲
▼
@ Stefan Salewski

>Und bei den Antworten ist es auch nicht viel besser, wie man an dieser sieht.

Das geschieht durchaus mit einer gewissen Absicht. Denn mir liegt eher 
daran die Fragenden zu selbstständigen Erfolgen kommen zu lassen als 
ihnen alles vorzukauen.
Gast #1041344
Lesenswert?
• ▲
▼
>Das geschieht durchaus mit einer gewissen Absicht. Denn mir liegt eher
>daran die Fragenden zu selbstständigen Erfolgen kommen zu lassen als
>ihnen alles vorzukauen.

Nein, Dich hatte ich wirklich nicht gemeint.

Das "wie man an dieser sieht." war (ironisch) auf meine eigene Antwort 
bezogen.

Aber es gibt hier schon viele unverständliche und oft auch falsche 
Antworten,

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.