基于嵌入式開發(fā)系統(tǒng)μC/OS-II的USB主機系統(tǒng)

2014-01-03 11:59 來源:電子信息網 作者:和靜

近日,美國一名學者研發(fā)出了一種全新的嵌入式開發(fā)系統(tǒng),該系統(tǒng)被命名為μC/OS-II 。這個系統(tǒng)當中的絕大多數代碼使用ANSIC 進行的編寫。能夠用于8 位、16 位、32 位、甚至64 位微處理器、微控制器、數字信號處理器等,具有操作系統(tǒng)最基本最核心的功能,非常適于在小型系統(tǒng)和片上系統(tǒng)(SOC)中使用。

USB 驅動程序的設計

這個系統(tǒng)為開發(fā)者提供了非常多的實時操作內核。通常開發(fā)者在進行系統(tǒng)操作時需要自己來編寫外圍器件的驅動程序。以使外圍器件能在操作系統(tǒng)的協調下更好的為用戶服務。為了使軟件可移植性強,易維護,采用分層的方法編寫USB的驅動程序。綜合考慮USB 協議、USB 硬件接線、μC/OS-II的結構來進行分層,下表所列為USB 驅動程序分層結構。

USB

USB系統(tǒng)軟件的設計

嵌入式設計中的USB系統(tǒng)設計與系統(tǒng)的業(yè)務和應用模塊聯系非常緊密。在μC/OS-Ⅱ對USB進行初始化時,不但要對USB 硬件接口初始化,還需要對其相關軟件進行初始化,比如:設置中斷處理函數,以及單獨創(chuàng)建一個TaskSetup 任務以完成上位機對USB 系統(tǒng)主機的枚舉。中斷處理過程采用的是非向量中斷的方式,首先由中斷狀態(tài)寄存器的值判斷中斷產生的原因,然后由不同的原因設置不同的中斷處理函數。如果是數據中斷話則在相應的中斷處理函數中發(fā)送對應端點的信號量,這樣USB 驅動程序中讀寫接口才能成功被調用。

各種隨身智能數碼設備的誕生為人們帶來了便利,但眾多設備之間的數據互連傳遞正在成為嵌入式開發(fā)的難題。USB 是現今PC領域廣泛運用的總線接口技術,在一些嵌入式系統(tǒng)中,人們希望有USB 的出現,然而和系統(tǒng)其他模塊相比,USB 模塊顯得更加的復雜。本文詳細闡述了設計一個USB 主機系統(tǒng)的過程,綜合考慮USB 協議,USB 硬件連接和μC/OS-II 系統(tǒng)使軟件易于維護,移植型強。

USB 嵌入式開發(fā)

相關閱讀

暫無數據

一周熱門