GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso impostare i bit di parità quando utilizzo lo schermo per accedere a una porta seriale

Prova sudo screen /dev/ttyUSB2 115200,cs8,parenb,-parodd,-cstopb

Dalla pagina man di stty :

  • csN - imposta la dimensione del carattere a N bit, N in [5..8]
  • [-]parenb - genera bit di parità in output e si aspetta bit di parità in input
  • [-]parodd - imposta la parità dispari (anche con '-')
  • [-]cstopb - utilizza due bit di stop per carattere (uno con '-')

Per farla breve, sembra screen non supporta l'impostazione di tali flag. L'alternativa sarebbe eseguire stty per impostare i flag mentre lo schermo è connesso alla porta, come hai fatto. In alternativa, puoi eseguire kermit o un altro programma di emulazione di terminale all'interno di una normale sessione della riga di comando dello schermo, invece di collegare lo schermo direttamente alla porta seriale.

Il screen il codice sorgente è su http://git.savannah.gnu.org/cgit/screen.git. Sembra che il file di interesse sia tty.sh. Questo è uno script di shell che viene eseguito durante il processo di compilazione per produrre "tty.c". tty.c contiene il codice per accedere alle porte seriali.

La funzione SttyMode() sembra essere ciò che analizza le opzioni tty e imposta la modalità tty. Mi sembra che gestisca un piccolo insieme fisso di opzioni. "parenb" e "parodd" non sono tra questi.

Sembra che sarebbe semplice per uno sviluppatore esperto di C aggiungere il supporto per queste opzioni, se questa è un'opzione per te.


Linux
  1. Come configurare il tunneling SSH

  2. Come impostare una porta remota Forward sulla porta 80 verso l'host locale con l'aiuto di Setcap?

  3. Linux:come trovare processi utilizzando la porta seriale?

  4. Come posso monitorare i dati su una porta seriale in Linux?

  5. Come posso impostare il 'backend' in matplotlib in Python?

Come impostare il nome host Pretty

usando Linux come posso passare il contenuto di un file come parametro a un eseguibile?

Come aprire, leggere e scrivere dalla porta seriale in C?

Come posso modificare l'ora prima che il sistema si blocchi?

Come posso impostare l'affinità del processore di un processo su Linux?

Come fa cat a conoscere il baud rate della porta seriale?