2017-03-17 35 views
0

在閱讀很多網站時,我感到困惑。USB驅動程序的確切功能是什麼?

USB驅動程序對於使設備正常工作至關重要嗎?還是讓它與操作系統進行通信來完成諸如打印和其他操作系統的功能?


爲了更清楚地說明我的問題 -
我開發一個USB設備,將與軟件我會寫溝通工作。

我是否需要爲這樣的系統開發驅動程序?

我只是需要軟件程序來發送適當的消息到設備?

+0

有2個USB驅動程序:一個用於PIC,一個用於連接PIC的機器。你對哪一個感到困惑? – cup

+0

@cup兩個!我需要一個驅動程序的圖片?爲什麼?問題之一說,如果我有一個與圖片進行通信的程序,我是否還需要一個驅動程序才能使其工作? – user3407319

+0

@cup多一個問題,我需要微芯片的USB框架與USB工作?或者它只是一個讓工作更輕鬆的圖書館? – user3407319

回答

2

我假設你的微控制器將是一個USB設備,你的電腦將成爲USB主機。

下圖是USB主機的SW架構。現在,由於您的主機是PC,因此除了頂部的應用程序之外,您無需擔心任何部分。

所以我們來談談設備。您需要的是與下面的主機堆棧類似的設備堆棧。您可以輕鬆獲取設備堆棧並將其移植到您的微控制器中。但是我想你的設備中需要一個應用程序,它與下圖的頂部框相同,它將理解來自主機的請求併爲請求提供服務。

enter image description here

所以基本上我在說什麼,你需要兩個應用程序和組件的其餘部分可以用一些努力得到它。

問候。

+0

類驅動程序和USB驅動程序有什麼區別?我是否需要實現兩者?以及哪些圖層我不必擔心,圖片會爲我做什麼?非常感謝.. – user3407319

+0

類驅動程序 - 類驅動程序知道設備的行爲。例如,如果您連接USB驅動器,類驅動程序會知道該設備的描述符結構以及如何與USB筆驅動器進行通信。同樣,HID設備的類驅動程序也知道HID設備應該如何工作。 – Shaibal

+0

USB驅動程序 - USB驅動程序爲類驅動程序開發人員提供了與主機控制器驅動程序通信的簡單接口。主機控制器驅動程序API並不那麼簡單。它有複雜的結構。但是爲什麼麻煩許多細節的類驅動程序開發人員。所以USB驅動爲類驅動提供了一個簡單的API來進行通信。 – Shaibal