PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hexwerte über UART



semicolon
04.05.2007, 13:17
Einfachere Frage vielleicht:

Wenn ich im Hyperterminal eine 'A' eingebe, was für ein Wert wird dann via UART übertragen?

Gehe ich richtig in der Annahme dass dies 0x41 wäre???

Wie kann ich das realisieren, dass dieser 'A' nicht als Ascii übertragen wird sonder als Hex-Wert 0x0A sprich 10 dezimal???

Vielen Dank

PicNick
04.05.2007, 14:47
Für ein gesendetes 0x0A müßtest du Strg-J tippen. (Die Strg-Taste zieht von jedem Zeichen 0x40 ab)

Aber wenn ich das richtig verstehe, willst du hexadezimal eingeben.
Das hat das Terminal-Programm entweder schon eingebaut oder du hast schlechte Karten und mußt das selbst umsetzen. (is aber nix Schlimmes)

wkrug
05.05.2007, 22:38
Warum lässt du "Hyperterminal" nicht 0x41 übertragen und verrechnest das im Microcontroller so, das da 0x0A rauskommt ?
Ich denk mal das ist sicher so einfacher zu handeln.

Ich hab vor kurzem genau das entgegengesetzte zum laufen gebracht - eine berechnete Checksumme in HEX (1Byte) wird als ASCII (2Byte) übertragen, damit sie der PC auswerten kann. War keine besonders schwierige Aufgabe.

Der Grund für dieses Unterfangen war, das bei der Checksummenbildung auch Werte rauskommen können, die Steuerzeichen in ASCII darstellen wie z.B. <CR> oder <LF> und das wäre fatal.

Ich meine der umgekehrte Weg sollte auch nicht schwieriger sein.

vklaffehn
05.05.2007, 22:43
Moin!
Versuch doch mal 'hterm', da kann man alles mögliche einstellen, so auch direkt HEX-Übertragen und so...