2016-06-07 84 views
0

我有一個嵌入式Linux解決方案,並希望通過串行USB創建命令服務。這個想法是,當一臺計算機通過USB連接到我的嵌入式設備時,他們會看到一個串口設備並通過該端口向我發送串行命令,然後我發回響應。USB串口設備服務器?

我需要一些幫助繼續下去。我是否需要模擬串行設備,以便他們將我看作COM端口?在Linux解決方案中是否構建了將我的細節作爲串​​行設備廣播?有代碼示例嗎?我可以看到塊設備與我的嵌入式解決方案(如USB存儲設備)連接。當我插入另一臺計算機時,我希望它將我看作串行COM端口。

我只需要幫助我應該走下來解決這個問題的路徑。

在此先感謝。

+0

您正在操作一些奇怪的術語。你的意思是你想在USB插入後自動加載設備驅動程序?然後尋找'udev'。 –

回答

3

你在找什麼是Linux USB serial gadget。 Linux USB gadgets框架允許設備充當各種標準USB設備,包括串行設備,以太網適配器和大容量存儲設備。

請注意,USB小工具只能在帶USB控制器的目標上工作,USB控制器可以設置爲USB設備。並非所有USB控制器和目標設備都與此配置兼容。例如,大多數電腦都有一個只有主機的USB控制器,而Raspberry Pi B型號是而不是與小配件兼容,因爲它在USB端口的上游包含一個嵌入式USB集線器。 (但是,the Pi Zero is fully compatible with gadgets。)

+0

*「可以設置爲USB設備操作的USB控制器」* - 更常見的是您可以找到專用的主機或設備USB控制器端口。順便說一句,如果目標板有USB B型連接器,那麼它應該有一個USB設備控制器端口。如果目標板具有USB C型(又名OTG)連接器,則它可以具有USB設備控制器端口。 – sawdust

+0

@sawdust它比端口更依賴於SoC。要重用一個例子,Pi Zero由於尺寸的原因有一個micro-USB(type B)端口,但默認情況下它充當主機。 – duskwuff

+0

這裏有很多有用的信息...我會調查一些細節並回復您的建議。 –