Habe mir das Programm runtergeladen und eine Versuchsreihe gestartet.
Die Einstellung, dass alle möglichen Datentypen dargestellt werden habe
ich eingeschaltet.
Mein Ziel ist es ein 'H' per RS232 an den PC zu senden.
Eine Möglichkeit ist das 'H' in ASCII kodoierung zu senden.
In der ASCII Tabelle entspricht das Zeichen 'H' der hexadezimalen Zahl 48.
Habe also die 0x48 an den PC gesendet.
main:
movlw 0x48
call RS232out
movlw 0x0D
call RS232out
movlw 0x0A
call RS232out
goto main
Das Programm HTERM liefert folgendes:
5)5)5)5)5)5)5)5)5)...
Das Programm HYPERTERMINAL liefert nichts.
Nun habe ich das Zeichen selbst also 'H' an den PC gesendet:
main:
movlw 'H'
call RS232out
movlw 0x0D
call RS232out
movlw 0x0A
call RS232out
goto main
Das Programm HTERM liefert folgendes:
HHHHHHHHHHHHHH...
Das Programm HYPERTERMINAL liefert folgendes:
H
H
H
.
.
.
Habe danach probiert die Zahl 1 zu senden.
In der ASCII-Tabelle entspricht die zahl 1 den hexadezimalen Wert 30.
main:
movlw 0x30
call RS232out
movlw 0x0D
call RS232out
movlw 0x0A
call RS232out
goto main
Das Programm HTERM liefert folgendes:
jR jR jR.....
Das Programm HYPERTERMINAL liefert folgendes:
0
0
0
.
.
.
Nun habe ich das Zeichen selbst also '1' an den PC gesendet:
main:
movlw '1'
call RS232out
movlw 0x0D
call RS232out
movlw 0x0A
call RS232out
goto main
Das Programm HTERM liefert folgendes:
1111....
Das Programm HYPERTERMINAL liefert folgendes:
1
1
1
.
.
.
Schlussfolgerung:
Wie es aussieht kann ich nur die ASCII Zeichen selbst rübersenden.
Das Zeicher per Hexadezimalcode auszugeben klappt nicht.
Was mich jedoch verwirrt ist, dass mache Sachen wie z.B.
0D und 0A (Wagenrücklauf und neue Zeile)
doch interpretiert werden.