2012-07-10 28 views
0

我需要開發一個測試程序,它發送和接收從終端到串口的數據。
爲了做到這一點,我想創建虛擬設備文件並使用它。我這樣做,通過使用命令:創建串口設備文件

mknod -m 666 ttyS32 c 4, 500

設備文件創建成功,但是我不能向其中寫入數據。編程和終端方式都會導致以下錯誤:在C中,我使用了標準文件I/O函數,並在終端中使用'echo'命令。你有什麼想法如何寫入數據到串口設備文件?

回答

1

沒錯。您可以使用echo寫入串行設備。你確定設備(不是設備文件)是否存在並且被驅動程序正確處理?

+0

那麼,沒有。我不得不提到,我沒有設備,我只是想製作一個簡單的測試程序,它使用模擬串行端口的設備文件。在第一步中,我不需要考慮特殊的設備設置,只是一般情況。 – mol 2012-07-10 09:39:29

+0

啊,好的!那當然不行!您必須只使用真實存在或模擬的設備。例如'/ dev/tty1'或'/ dev/pts/3'設備或類似的東西(當然它可以是這裏的數字)。另外請注意,許多串行端口參數,例如波特率,奇偶校驗,hw流量控制,字符大小(?)不是在pty中實現的,所以當你想玩智能時,你需要使用真正的串行設備。 – 2012-07-10 09:44:25

+0

謝謝,但那是我做的第一件事。還有一個問題。例如,嘗試寫入/ dev/ttyS1會導致輸入/輸出錯誤。與其他ttyS文件一樣的東西。 – mol 2012-07-10 09:55:18