ASCII konverter von Buchstaben in die ASCII zahlen

Hallo Miteinander,

ich bin im Moment an einem Projekt womit ich einen Roboter per Serieller Verbindung mit dem Arduino steuern will das Problem ist ich weiß nicht wie ich von den normalen buchstaben ins ASCII konvertiere ich habe aber einen Code der mit den ASCII Dezimalzahlen die richtigen Buchstaben ausspuckt.

Ich bitte um zahlreiche antworten und gut Erklärungen das ich noch nicht lange mit Arduino arbeite

LG Julian

char Buchstabe;

void setup() {
  Serial.begin(9600);
}

void loop() {
  while (Serial.available())  {

    Buchstabe = Serial.parseInt(); // P
    Serial.println(Buchstabe);
  }
}

I am currently working on a project with which I want to control a robot via serial connection with the Arduino. The problem is I don't know how to convert from normal letters to ASCII, but I have a code that spits out the correct letters with the ASCII decimal numbers.

I ask for numerous answers and explanations that I haven't been working with Arduino for a long time

Normal letters belong to some encoding but most western codings in the range ' ' to '~' have the same character codes as ASCII . If you code spits out the correct letters what am I missing?

Hello,

i am from Germany and i only can School english can you explain it a bit easyier what you mean

Thank you (-:

LG Julian

Ach, die Antworten von mir nebenan haben Dir wohl nicht gefallen?

Gruß Tommy

Hallo Tommy,

Ich wollt mir mal einen rat bei den anderen holen was die dazu sagen deine antworten waren hilfreich und ich schaue mir dein tutorial noch mal genau an danke für die jetzige hilfe und für deine investierte zeit bin ich dir sehr dank bar darum

LG Julian

Was du empfängst ist schon ASCII. Wenn du davon Integer willst ist parseInt() ok. Nicht unbedingt die beste Lösung, aber es geht. Du musst aber deinen Ziel-Datentyp richtig wählen. char ist da falsch

okay und wie mache ich das mit dem Serial monitor habe ich aus printIn noch nicht viel gemacht

(deleted)

kann es sein, dass da noch ein grundsätzliches Verständnisproblem vorliegt?

Wenn du auf der Seriellen Schnittstelle ein Zeichen "A" hereinbekommst,
dann erhältst du ein 'A' oder ein 65 oder ein 0x41.
Das ist alles das gleiche, da gibts nichts zu wandeln.
In deiner Variable steht eben 'A', 65 oder 0x41. Je nach dem wie du es betrachten möchtest.

Probier mal das aus:

char Buchstabe;

void setup() {
  Serial.begin(9600);
}

void loop() {
  while (Serial.available())  {
    Buchstabe = Serial.read();
    Serial.print(F("as is:"));
    Serial.print(Buchstabe);
    Serial.print(F("\t ASCII in dec:"));
    Serial.print(Buchstabe, DEC);
    Serial.print(F("\t ASCII in hex:0x"));
    Serial.println(Buchstabe, HEX);
  }
}

ergibt eine Ausgabe

as is:A ASCII in dec:65 ASCII in hex:0x41

wenn du neugierig bist, kannst du auch ein

Serial.print(Buchstabe, BIN);

probieren, dann hast die Ausgabe in binärer Darstellung.
Die Variable ist in allen 4 Fällen das Gleiche.

okay das mach ich morgen direkt mal dann werde ich berichten