Usb

您如何將 minicom 與標準輸入和標準輸出一起使用?

  • April 8, 2021

我需要通過 USB 到 RS-232 轉換器與 Python 與設備進行通信。應用程序minicom無縫連接,所以如果我可以在非互動模式下執行它,一切都會很棒。

閱讀文件有一些有趣的選項,但我不完全理解其中任何一個:

-t   Terminal type. With this flag, you can override the environment 
     TERM variable. 

-S   script.   Run  the named script at startup.

如何在我的應用程序和minicom? 我應該使用其他東西嗎?

minicom非常適合互動式使用,但它不是程式 I/O 的正確工具。

您的本地 Python 程序應該簡單地打開/dev串列埠的節點。它就像寫入文件一樣工作:

fd = os.open('/dev/ttyUSB0', os.O_RDWR)
fd.write(...)

唯一棘手的一點是設置比特率等。為此,請使用Python 的 termios 庫

attr = termios.tcgetattr(fd)
attr[5] = attr[6] = termios.B9600
termios.tcsetattr(fd, termios.TCSANOW, attr)

用於此的 Python 文件幾乎假定您已從 C 中使用此 API,並且只需要幫助翻譯成 Python。所以,如果你走這條路,你應該使用像 Stevens 和 Rago 的Unix Env​​ironment 中的高級程式這樣的經典著作。

pySerial 是一個更高級別的庫,可以讓您超越termios級別並為您提供對非*ix 類型系統的可移植性

引用自:https://unix.stackexchange.com/questions/89182