Gast
#87972
Hallo,
ich habe folgendes Problem bei dem ich seit Tagen nicht weiterkomme:
An USART1 empfange ich Daten von einem GSM-Modem, welche in das
Empfangsbuffer RX_BUFFER1 hineingeschrieben werden.
Bsp.: Empfang von R -> RX_BUFFER1[0]=data wobei data=82
Diese Daten möchte ich auf einem Display sowohl als hex als auch als
ASCII-Zeichen darstellen.Die Darstellung als hex (%X) funktioniert, die
Ausgabe als ASCII-Zeichen (%c) jedoch nicht.
Das ASCII-Zeichen R entspricht ja 82dez bzw. 52hex. Also habe ich
folgenden Schritt eingefügt:
if(data==82){RX1[0]=0x52;} //"Umrechnung dez in hex"
d.h. die empfangenen Daten werden als hex-wert ins Empfangsbuffer
geschrieben.
Damit funktioniert alles, aber das kann doch nicht die beste Lösung
sein. Für data=0 bis data=255 ergeben sich 256 if-Abfragen !
Kann ich das nicht irgendwie besser lösen ?
Gruß Jerome