




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、學(xué)ARM和學(xué)單片機(jī)一樣簡單學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單第十講:USB驅(qū)動編程程學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單Linux下USB系統(tǒng)文件件節(jié)點:同其他他外設(shè)一一樣,上上層應(yīng)用用軟件對對連接在在系統(tǒng)地地USB設(shè)備訪問問是通過過文件系系統(tǒng)的形形式進(jìn)行行的。每每個連接接到系統(tǒng)統(tǒng)總線上上的USB設(shè)備可以以同時對對應(yīng)有一一個或者者多個驅(qū)驅(qū)動程序序。即一一個USB設(shè)備可以以在Linux系統(tǒng)上形形成一個個或多個個設(shè)備節(jié)節(jié)點,以以供應(yīng)用用程序使使用。在在Linux系統(tǒng)上,每個設(shè)設(shè)備節(jié)點點都有其其相關(guān)的的主設(shè)備備號和次次設(shè)備號號。USB主機(jī)驅(qū)動動結(jié)構(gòu):LinuxUSB主機(jī)驅(qū)動動由三部部分組成成:1)USB主機(jī)控
2、制制器驅(qū)動動(HCD):是USB主機(jī)驅(qū)動動程序中中直接與與硬件交交互的軟軟件模塊塊,其主主要功能能有:主主機(jī)控制制器硬件件初始化化;為USBD層提供相相應(yīng)的接接口函數(shù)數(shù);提供供根HUB(ROOTHUB)設(shè)備配置置、控制制功能;完成4種類型的的數(shù)據(jù)傳傳輸?shù)取?)USB驅(qū)動(USBD):是整整個USB主機(jī)驅(qū)動動的核心心,其主主要實現(xiàn)現(xiàn)的功能能有:USB總線管理理、USB總線設(shè)備備、USB總線帶寬寬管理、USB的4種類型數(shù)數(shù)據(jù)傳輸輸、USBHUB驅(qū)動、為為USB設(shè)備類驅(qū)驅(qū)動提供供相關(guān)接接口、提提供應(yīng)用用程序訪訪問的USB系統(tǒng)的文文件接口口等。學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單3)USB設(shè)備類驅(qū)驅(qū)動:是是
3、最終與與應(yīng)用程程序交互互的軟件件模塊,其主要要實現(xiàn)的的功有:訪問特特定的USB設(shè)備、為為應(yīng)用程程序提供供訪問接接口等。應(yīng)用程序序首先通通過文件件系統(tǒng)(POSIX)接口來來訪問相相應(yīng)的USB設(shè)備類驅(qū)驅(qū)動程序序和USBD;USB設(shè)備類驅(qū)驅(qū)動程序序則通過過USBD提供的相相關(guān)接口口將數(shù)據(jù)據(jù)請求包包傳遞給給USBD;USBD通過HCD提供的接接口,進(jìn)進(jìn)一步將將數(shù)據(jù)包包傳遞給給HCD;HCD最終將數(shù)數(shù)據(jù)發(fā)送送到USB總線上。Linux定義了通通用的數(shù)數(shù)據(jù)結(jié)構(gòu)構(gòu)URB用來在USB設(shè)備類驅(qū)驅(qū)動和USBD,USBD和HCD間進(jìn)行數(shù)數(shù)據(jù)傳輸輸。統(tǒng)一一的URB(UniversalRequestBlock)結(jié)構(gòu)為為
4、usb主機(jī)驅(qū)動動程序的的開發(fā)帶帶來了很很大方便便。USB時序:數(shù)據(jù)傳輸輸時序:在USB總線上,所有的的數(shù)據(jù)傳傳輸都是是由USBHOST發(fā)起的。每個USB設(shè)備通過過地址過過濾出自自己要接接受的數(shù)數(shù)據(jù)包,并根據(jù)據(jù)數(shù)據(jù)包包請求的的類型與與USBHOST進(jìn)行數(shù)據(jù)據(jù)傳輸。由于數(shù)數(shù)據(jù)傳輸輸?shù)臅r序序和總線線帶寬問問題,當(dāng)當(dāng)應(yīng)用程程序通過過設(shè)備類類提供一一個URB時,該數(shù)數(shù)據(jù)包并并不能立立即被送送到USB總線上,而只能能在USB總線上有有足夠帶帶寬的情情況下,該數(shù)據(jù)據(jù)請求才才會被傳傳輸。因因而,HCD層為不同同類型的的數(shù)據(jù)傳傳輸維護(hù)護(hù)了相應(yīng)應(yīng)的數(shù)據(jù)據(jù)鏈,當(dāng)當(dāng)數(shù)據(jù)鏈鏈上的數(shù)數(shù)據(jù)包傳傳輸結(jié)束束后,HCD通過調(diào)用用
5、與該數(shù)數(shù)據(jù)包相相關(guān)聯(lián)的的回調(diào)函函數(shù)來通通知設(shè)備備類驅(qū)動動程序。學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單CH375B的linux主控制器器驅(qū)動CH375B的HCD對Linux的USB協(xié)議棧進(jìn)進(jìn)行補(bǔ)充充,加入入對CH375B主設(shè)備控控制器的的支持。CH375B的HCD可以分為為以下功功能模塊塊: 對虛虛擬根hub的支持; USB請求隊列列USB請求安排排表 中斷斷處理USB請求轉(zhuǎn)化化為USB事務(wù)和包包USB包的發(fā)送送和接收收HCD支持中斷斷,控制制,和批批量端點點,不支支持同步步的端點點。HCD與LinuxUSB內(nèi)核接口口通過一一系列的的API函數(shù)接口口。學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單設(shè)備連接接和斷開開學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單2.設(shè)備斷開開學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單學(xué)ARM和學(xué)單片片機(jī)一樣樣簡單structusb_bus*usb_alloc_bus(structusb_operations*op)void usb_free_bus(structusb_bus*bus)void usb_register_bus(struct usb_bus*bus)void usb_deregister_bus(st
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 促進(jìn)家庭與幼兒園合作的策略計劃
- 財務(wù)風(fēng)險識別與應(yīng)對策略計劃
- 《納米材料與技術(shù)》課程教學(xué)大綱
- 《復(fù)合材料(理論)》課程教學(xué)大綱
- 企業(yè)庫存管理的先進(jìn)技術(shù)與方法探討
- 提升美術(shù)教育質(zhì)量的策略計劃
- 光伏電站并網(wǎng)運(yùn)行技術(shù)及風(fēng)險控制
- 兒童畫作中的故事性與想象力培養(yǎng)
- 企業(yè)信息化管理軟件的現(xiàn)狀與未來
- 2024年高考數(shù)學(xué)專項復(fù)習(xí):排列組合與二項式定理(解析版)
- 花城版三年級上冊音樂教學(xué)計劃
- GB/T 31821-2015電梯主要部件報廢技術(shù)條件
- GB/T 17574.11-2006半導(dǎo)體器件集成電路第2-11部分:數(shù)字集成電路單電源集成電路電可擦可編程只讀存儲器空白詳細(xì)規(guī)范
- 快手磁力聚星知識考試題庫及答案
- 學(xué)校衛(wèi)生監(jiān)督協(xié)管巡查記錄
- 《勾股定理在實際生活中的應(yīng)用》教學(xué)反思
- 游泳池給水排水安裝工程識圖
- 配位鍵和配位化合物課件
- 政 審 表打印模板
- 成人心肺復(fù)蘇(雙人)課件
- 蘇教版數(shù)學(xué)二年級下冊《認(rèn)識時分》教案(無錫公開課)
評論
0/150
提交評論