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?
Probier mal HTerm, da kannst Du die Daten neben ASCII auch in Hex, Dezimal oder Binär anzeigen.
>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.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.