[序列埠] 有接USB但在軟體中讀不到序列埠?
在Linux使用序列埠比較麻煩的是權限的問題,在有連USB且/dev目錄下有看到所連接的裝置檔案(例如:ttyUSB0),若在軟體中還是沒有讀取到的話,通常就是權限的問題。
(環境:Ubuntu18.04LTS)
1. 先確認目標裝置的權限
user@pc:~$ ls -al /dev/ttyUSB* crw-rw---- 1 root dialout 188, 0 十二 4 16:53 /dev/ttyUSB0 crw-rw---- 1 root dialout 188, 1 十二 4 16:53 /dev/ttyUSB1 crw-rw---- 1 root dialout 188, 2 十二 4 16:53 /dev/ttyUSB2 crw-rw---- 1 root dialout 188, 3 十二 4 16:53 /dev/ttyUSB3
2. 可以看到是660權限,也就是說非擁有者且非群組成員的其他人,是不能讀取的,這也是為什麼應用程式內讀不到的原因,一般使用者是沒有預設加入「dialout」群組的,因此將自己加入此群組藉此擁有讀取序列埠的權限
user@pc:~$ sudo usermod -a -G dialout user #user當然就是你的使用者名稱拉
留言
張貼留言