簡體   English   中英

使用bash和raspberry pi 3從USB設備讀取數據?

[英]Reading from a USB device using bash and raspberry pi 3?

我正在嘗試從連接到USB的設備上捕獲響應。 使用此代碼:

sudo stty -F /dev/ttyUSB0 speed 115200 cs8 -cstopb -parenb -echo
sudo stty raw; cat > /home/received.log < /dev/ttyUSB0
echo "Monitor started"

在端口就緒后,將命令請求發送到設備

echo -en '\x5A\x00\x00\x0D\x0A\x71' > /dev/ttyUSB0

然后閱讀日志,並將響應粘貼到另一個將其正確轉換的文件中xxd -plain /home/received.log> /home/output.txt

所以我可以顯示數據,cat -v </home/output.txt

但是我需要更穩定的東西,該代碼向我顯示此錯誤:

stty: 'standard input': Inappropriate ioctl for device

這很奇怪,因為它正在工作...

我想捕獲響應並將其存儲在變量中。

我建議擺脫stty raw

除非您發送/接收tty子系統將要處理的特殊字符,否則這不太可能-因為您說它正在工作-幾乎可以肯定不需要它。

如果確實有效,您可能會發現一些不良副作用,例如:

  • 退格鍵不會刪除您錯過鍵入的字符
  • control-c不會終止您的進程

以及終端會話中可能依賴的其他內容。

FWIW,我做與Arduino的類似的事情在Mac,Windows(Cygwin的)和Linux(從USB /串口讀取),我還沒有被誘惑stty raw在任何這些環境。

暫無
暫無

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

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