簡體   English   中英

在 Linux 上共享串口

[英]Share Serial Port on Linux

我正在將 Raspberry Pi 用於需要能夠讀寫串行端口但來自不同程序的項目。 程序 A 需要能夠從串口讀取,外設 A 正在發送數據。 程序B需要向串口寫入數據,外設B正在監聽(供參考,本例中程序A是GPSD,程序B是我寫的)。 程序 A 永遠不需要寫,程序 B 永遠不需要讀。

是否可以讓兩個程序同時訪問端口? 如果沒有,是否可以編寫一個程序來創建兩個設備節點(將/dev/ttyAMA/dev/ttyAMA_1/dev/ttyAMA_2 ,也許?)並復用到串行端口?

在此先感謝您的幫助!

-馬修

我相信多個應用程序可以同時訪問一個 TTY 設備。 您從一個用戶空間應用程序執行讀取操作並從另一個應用程序執行寫入操作這一事實意味着您不太可能遇到問題。

要驗證這一點,您可以使用控制台從串行讀取到串行設備:

cat /dev/ttyS0

如果您打開另一個終端,則可以毫無問題地寫入設備:

echo "stuff" > /dev/ttyS0

如果您需要控制消息和響應,您可以使用管理串行端口訪問的第三個進程。 類似於: https : //stackoverflow.com/a/63537265/4702399

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM