關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 嵌入式系統(tǒng)應用中的USB主設備功能分析

嵌入式系統(tǒng)應用中的USB主設備功能分析

作者: 時間:2010-01-13 來源:網絡 收藏

已經成為設備和PC之間通信的標準方式,從通用設備(如閃存設備和鼠標)到專用設備,該標準幾乎完全替代了其他的串行通信協(xié)議。

本文引用地址:http://m.butianyuan.cn/article/202569.htm

外圍設備彼此之間不能相互通信,它們只能與具有控制總線能力的主設備通信。直到最近,也只有PC具有主設備能力。但目前,許多微控制器也具有了USB主設備的功能,這使得應用可以連接更加廣泛的USB外圍設備。

USB閃存驅動器是一種使用非常廣泛的USB外圍設備,它已經成為傳遞或存儲大量數(shù)據的廉價介質,許多數(shù)據記錄設備正是得益于它才得以發(fā)展。對于遠程的長期數(shù)據記錄,可以先采集,并存儲在閃存驅動器中,然后帶回到方便處理的地方。

閃存驅動器也可以用于向PC中傳輸高速時間相關數(shù)據。PC是極好的數(shù)據工具,但實時能力有限。相反,應用特別適合實時數(shù)據采集,但數(shù)據能力通常很弱。嵌入式實時數(shù)據記錄儀可以在閃存驅動器上存儲數(shù)據,然后把數(shù)據傳輸?shù)絇C上分析,這樣二者的優(yōu)勢都得到了充分的發(fā)揮。

嵌入式USB主設備的應用

開始嵌入式設計的首要任務之一是選擇微控制器。為了使用閃存驅動器,微控制器就必須具有嵌入式USB主設備的能力。如果微控制器具有USB OTG(On-The-Go)或USB雙角色(Dual Role)功能,如Microchip公司的PIC24FJ256GB1微控制器,如圖1所示,它也可以支持嵌入式USB主設備功能。USB外圍設備,有時也稱為USB設備模式,只能用作閃存驅動器等,而不能和其他USB外圍設備通信。

其次,設計者應該確信能有完整的開發(fā)工具。至少也需要一個器件編程器(如果有一個調試器是最好的)和一個C語言編譯器,因為嵌入式USB主設備和運行在微控制器中的程序往往是用C語言而不是用匯編語言編寫的。

最后,設計者也應該了解哪些軟件庫是可以獲得的,因為嵌入式設備發(fā)現(xiàn)閃存驅動器時的握手操作需要USB設備類、FAT32文件系統(tǒng)和其他庫的支持。從頭開始設計支持嵌入式USB主設備的工作會需要數(shù)月的時間,而一個由經過認證的協(xié)議棧組成的方案可以節(jié)省相當多的時間。

為了使用閃存驅動器,嵌入式設備也需要一種USB海量存儲類(Mass Storage Class)設備的終端驅動程序、硬件命令行接口,以及文件系統(tǒng)接口。通常,具有2Gb或更低存儲空間的閃存驅動器使用FAT16文件系統(tǒng),而更大容量的閃存驅動器將使用FAT32文件系統(tǒng)。

設計要求

一旦選定了微控制器,硬件設計就開始了。USB硬件設計需要遵循以下許多規(guī)則。

● 如果嵌入式主設備需要支持USB設備類,它對外圍的供電就必須能夠提供500mA的電流。

● 如果嵌入式主設備需要支持任何消耗電流超過100mA的設備,它也必須能夠提供500mA的電流。

● 如果嵌入式主設備需支持消耗電流100mA或更低的設備,那么VBUS電壓限制就可以降低到4.4V。然而,如果嵌入式主設備需支持消耗電流超過100mA的設備,那么VBUS電壓限制是 4.75V,就和全功能主設備一樣。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉