Hallo.
Ich wollte in meinem Programm, welches u.a. auch Zahlen über den UART
verschicken soll es so einrichten, dass Zahlen von 1-255 -ein Byte-
gesendet werden. Allerdings streikt der UART im Controller bei den
Steuerzeichen, da manche nicht gesendet werden (können).
Wenn das schon so nicht klappt, und ich schon Zahlen als Text ("255")
senden muss, könnte mir jemand erklären, wieso manche Steuerzeichen
nicht übertragen werden können, bzw. was ich nicht bedacht habe o.ä. :)
danke schonmal, viele Grüße torsten ohne h
Das muss mit der Methode zusammenhängen, mit der Du das versucht hast,
über die Du allerdings nichts schreibst. Daher können wir den Grund auch
nicht erklären.
An und für sich, kann man, jedes mögliche Bitkombination die sich mit 8
Bit bilden lässt auch über UART übertragen.
torsten schrieb:> Allerdings streikt der UART im Controller bei den> Steuerzeichen, da manche nicht gesendet werden (können)
Glaub ich nicht. Das liegt eher an deinem Terminalprogramm.
ok, könnte auch sein. ich benutze hyperterminal ^^
hab noch nicht die nötigkeit gesehen ein anderes zu benutzen...
Hab mich eben über das empfangene gewundert, es fehlt der Bereich von
BEL bis CR, sowie CAN, ESC, FS....
aber wenn der Rest komplett da ist, sollte nichta fehlen, würde ich also
mit dem noch nicht existierenden programm auf dem rechner oder mit nem
anderen controller alles empfangen?
>ok, könnte auch sein. ich benutze hyperterminal ^^
Oh. Da ist der Mensch der Hyperterminal benutzt. Habe mich schon gefragt
wer das ist. :-)
Das Ding emuliert tatsächlich ein Terminal und auf dem sind die
fraglichen Zeichen nun mal nicht darstellbar.
Nimm mal HTERM...
>nötigkeit
und ein gutes Wörterbuch :-) ...
>aber wenn der Rest komplett da ist, sollte nichta fehlen,
und den Satz verstehe ich komplett nicht...
>würde ich also mit dem noch nicht existierenden programm
und die Frage auch nicht. Es gibt einen Haufen nicht existierender
Programme die, wenn sie realisiert wären, tun würden was Du willst. Aber
was nützt Dir das?
Hmm schrieb:>>würde ich also mit dem noch nicht existierenden programm> und die Frage auch nicht. Es gibt einen Haufen nicht existierender> Programme die, wenn sie realisiert wären, tun würden was Du willst. Aber> was nützt Dir das?
ich meinte damit, ob die in hyperterminal nicht darstellbaren zeichen
für jedes andere programm lesbar sind, auch wenn sich die frage im
nachhinein selbst erklärt...
trotzdem danke, cih suche erst meinen fehler und dann woanders, in
diesem fall hat ersteres wohl etwas länger gedauert :D
>ich meinte damit, ob die in hyperterminal nicht darstellbaren zeichen>für jedes andere programm lesbar sind, auch wenn sich die frage im>nachhinein selbst erklärt...
Ich fühle mich irgendwie missverstanden. Heul.
Einerseits liest Du meine Antwort richtig, das Hyperterminal die
fraglichen Zeichen nicht darstellen "kann". OK. Aber dann fügst Du als
Teil einer Frage an, das andere Programme die Zeichen "lesen" könnten.
Das geht am Kern des Problems vorbei. Jedes, buchstäblich jedes
Programm kann alle, buchstäblich alle Zeichen "lesen". Auch
Hyperterminal.
Der Punkt ist, das das Programm "Hyperterminal" eben Terminals emuliert.
Z.B. ein VT-100. Diese Terminals stellen gewisse Zeichen nicht visuell
dar sondern führen physische Operationen aus, falls sie sie empfangen.
Ein Beispiel ist "BEL", das die Glocke am Terminal zum klingeln bringt.
Es gibt aber in der VT-100 Definition keine "visuelle" Darstellung von
"BEL". Daher liest Hyperterminal zwar das Zeichen, (und macht, glaub'
ich, auch ein Klingeln) aber es zeigt nichts an. Es gibt auch Zeichen
z.B. "ETX", die den Verbindungsaufbau oder Abbau steuern. Auch sie haben
kein visuelles Äquivalent, aber sie steuern den Ablauf der
Kommunikation; haben also in einem weiteren Sinne eine "physikalische"
Bedeutung.
Lies mal unter den Stichworten "Terminal" und "ASCII". Wikipedia ist
unser Freund :-)
Benutzt du flusskontrolle? wenn ja, welche? Xon Xoff verwendet 8bit
codes, das heisst deine rs232 verbindung waere nicht 8bit clean. CTS/RTS
benutzt zusaetzliche leitungen. 8Bit cleanness ist damit moeglich. Das
muss dein Betriebssystem/Terminal programm aber wissen. Wenn du keine
flusskontrolle verwendest kann zeugs verloren gehen, wenn ein
kommunikationsteilnehmer nicht schnell genug ist.