我需要一些與串行埠設備通訊的幫助。我在 BIOS 中將串行埠設定為“自動”IRQ。該設備(溫度控制器)具有以下數據協定:
波特率:9600 發送起始位元:1 發送資料位:1 發送停止位:2 接收起始位元:1 接收資料位:8 RX 停止位 >=1
該設備最後有一個 UNIX 介面。
當我使用root開啟cutecom時,我收到以下訊息:
~# cutecom
QInotifyFileSystemWatcherEngine::addPaths: inotify_add_watch failed: No such file or directory
QFileSystemWatcher: failed to add paths: /root/.config/ibus/bus
Bus::open: Can not get ibus-daemon's address.
IBusInputContext::createInputContext: no connection to ibus-daemon
我不清楚如何在 /dev 中找到裝置 dmesg 顯示 tty 串列裝置:
$ dmesg | grep tty
[ 0.000000] console [tty0] enabled
[ 0.708459] 00:07: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
然後我進入/sys/class/tty/ttyS0
cat dev 來獲取主要和次要號碼
#cat /sys/class/tty/ttyS0/dev
4:64
我還檢查了 tty0
#cat /sys/class/tty/tty0/dev
4:0
然後我在 /dev 中找到這些項目並找到了它們的用戶友好名稱:
# ll -R /dev | grep "4, *0"
crw------- 1 root root 254, 0 Mar 24 12:43 rtc0
crw--w---- 1 root tty 4, 0 Mar 24 13:14 tty0
# ll -R /dev | grep "4, *64"
crw-rw---- 1 root dialout 4, 64 Mar 24 13:04 ttyS0
無論我發送什麼,我都不會從 Cutecom 控制台得到任何回報:
所以,現在我很困惑。該設備似乎存在,但是當cutecom建立連接並且我輸入命令時,我在控制台中沒有得到任何信息,並且設備似乎沒有響應。我想我一定做錯了什麼。如何驗證該串行設備是否已連接到我的電腦?我該如何解決此連線問題?
答案1
我找到了解決方案。當 VT 感測器連接到 NMR 並提供回饋時,將使用零數據機。當我將 VT 連接到我的電腦時,我還使用了空調解調器。在嘗試了每種設定組合後,我嘗試擺脫空調變解調器,並使用常規串行電纜。
那時,我能夠發送命令並取回資料。