Serielle Kommunikation UART 9-Bits

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Ich habe folgendes Frage: Ist es möglich die UART des RPI mit 9 Bits zu betreiben? Also das 9te Bit soll angeben ob eine Adresse oder Daten gesendet werden. Die UART soll am besten mit Python programmiert werden.

    Mit freundlichen Grüßen
    Raybestos93

  • Ja.

    .

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Servus Raybestos93,

    afaik ist das nicht so ohne Weiteres möglich. Wenn ich mich recht erinnere, wird da in manchen Fällen das Parity Bit mißbraucht.
    RS-485 war, glaube ich, auch so ein Kandidat, das 9 Bit unterstützt.

    Frag' mich aber jetzt nicht nach Details ... da musst Du wohl ein wenig Recherche-Arbeit leisten ...

    ciao,
    -ds-

  • Hi Dreamshader,


    RS-485 war, glaube ich, auch so ein Kandidat, das 9 Bit unterstützt.


    RISCHDISCH!

    Raybestos93: Du bist es, der festlegt, aus wievielen Bits ein "Zeichen" gebildet wird. Im Baudot-Fernschreib-Code sind es 5, in der Computerei sind es meistens 7 oder 8 Bits (ASCII / EBCDIC-Codierung).

    Wenn Du festlegen möchtest, dass ein Zeichen aus 9 Bits gebildet werden sollen, dann musst Du eben einen Datentyp definieren, der 9 Bits beinhaltet. Dies kann auch ein zusammengesetzter Datentyp (Record) sein, der aus einem Bytep und einem Booleschen-Wert besteht. Der Record beinhaltet dann auch 9 Bits. Oder einen solchen Datentypen nachbilden (falls Python das anders nicht erlaubt). Und dann die Kommunikation auf Basis eines 9Bit-Protokolls programmieren. Stichwort Bit-Banging... Denke daran, dass dieses Protokoll auch Paritätsbits, Stoppbits unterstützen muss, falls vom Sender / Empfänger so gefordert

    Oder Du greifst auf RS-485-Karten und deren Treiber-Software / Bibliotheken zurück. Diese unterstützen - wie Dreamshader zutreffend geschrieben hat - 9Bit-Zeichen. Das neunte Bit gibt an, ob es sich bei den 8 Bits zuvor um Adressen oder Kommandos handelt.


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Danke. Die serielle -Kommunikation soll auch über eine RS485-Schnittstelle geschehen. Wenn es dafür extra Bibliotheken gibt die die 9Bits unterstützen ist das natürlich super. Ich werde mich in der Richtung mal weiter schlau machen und testen ob es funktioniert.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!