版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、畢業(yè)論文論文題目: USB設(shè)備的從動端分析與應(yīng)用設(shè)計 固件程序設(shè)計 學 院: 計算機科學技術(shù)學院 最新 精品 Word 歡送下載 可修改摘 要 USBUniversal Serial Bus通用串行總線)是計算機領(lǐng)域中一種全新的工業(yè)標準,其技術(shù)和產(chǎn)品正在迅猛的開展中。因此,研究USB總線的體系架構(gòu)和開發(fā)技術(shù)很有必要。本文在實驗室現(xiàn)有硬件和軟件根底上,研究了USB的接口標準和軟硬件開發(fā)方法,并應(yīng)用于實際,設(shè)計出了用USB實現(xiàn)的溫度采集系統(tǒng)。 本文圍繞設(shè)計目標,在簡要表達USB1.1總線協(xié)議的根底上,主要論述了兩個方面的內(nèi)容:固件程序的開發(fā)和DS1620的使用方法。設(shè)備以AT89S52單片機作為控
2、制器,Philips公司的PDIUSBD12作USB收發(fā)器,用DALLAS公司的DS1620進行溫度采集,采用中斷數(shù)據(jù)傳輸方式實現(xiàn)數(shù)據(jù)傳輸。關(guān) 鍵 詞USB;WDM; PDIUSBD12;溫度采集; DS1620 ABSTRACTUSBUniversal Serial Bus) is a completely new industry standard in the field of computer. Its technology and product are tremendously developing. Therefore, It is necessary to research t
3、he frame and developing technology of USB. Based on the hardware and software that our laboratory is having, this paper researches the interface standard and software-hardware developing methods of USB, apply it into the actual environment, and designed the temperature collection system.Centering on
4、 the designing object, outlining the USB 1.1 protocol, this paper mainly expound two aspects of content: the developing of firmware program and employment of DS1620. Using AT89S52 as control appliance, PDIUSBD12 of Philips Corp. as USB receiving-transmitting appliance, the device collect temperature
5、 with DS1620 of DALLAS Corp., and adopt interrupt data transmitting to realize data transition. Key wordsUSB;WDM; PDIUSBD12;temperature collection; DS1620USB設(shè)備的從動端分析與應(yīng)用設(shè)計固件程序設(shè)計目 錄摘 要iABSTRACTii前 言1一、 本文研究的主要內(nèi)容1二、 USB開展情況1三、 USB的設(shè)計目標2四、 USB的性能特點2四、 USB系統(tǒng)組成3一 USB的互連3二 USB設(shè)備4三 USB主機5第一章 USB數(shù)據(jù)傳輸協(xié)議6一、 US
6、B電氣特征及電平信號6二、 USB數(shù)據(jù)流模型7一 USB主機/設(shè)備分層模型7二 端點8三 管道9三 傳輸類型9三、 USB協(xié)議層11一 字段格式11二 包格式14三 事務(wù)格式15第二章 USB驅(qū)動程序概述17一、 WDM驅(qū)動程序模型簡介17二、 USB主機驅(qū)動程序體系結(jié)構(gòu)19一 主機控制器驅(qū)動程序HCD19二 USB總線驅(qū)動程序USBD20第三章 USB設(shè)備簡介22一、 硬件結(jié)構(gòu)22一 帶USB接口的單片機23二、 PDIUSBD12通用USB收發(fā)器24一 PDIUSBD12的性能特點24二 PDIUSBD12的功能框圖24三 D12引腳配置及說明26三、 D12 USB固件編程概要26一 各
7、端點在固件中的使用26二 USB設(shè)備枚舉的數(shù)據(jù)傳輸過程28第四章 DS1620數(shù)字式溫度傳感器30一、 特性30二、 DS1620的3線通信模式30第五章 固件程序設(shè)計32一、 設(shè)計思路32二、 固件編程的實現(xiàn)概括和流程圖34一 硬件提取層EPPHAL.C35二PDIUSBD12命令接口D12CI.C35三 中斷效勞程序ISR.C35四 協(xié)議層CHAP_9.C,PROTODMA.C39五 標準設(shè)備請求處理CHAP_9.C39六 廠商請求處理PROTODMA.C41七 主循環(huán)MAINLOOP.C42結(jié) 論43致 謝44參考文獻45 USB從動端分析與設(shè)計固件程序設(shè)計前 言一、 本文研究的主要內(nèi)容
8、 USB總線在各個領(lǐng)域中迅速得到應(yīng)用,以取代老式的RS-232以及EPP并口等總線,研究USB總線有重要的實用價值。 然而,接口的簡單意味著協(xié)議的復(fù)雜,怎樣在現(xiàn)有的實驗條件下快速的使用USB總線開發(fā)應(yīng)用設(shè)備便成了我們的研究目標。 在仔細分析了現(xiàn)有設(shè)備和源代碼的根底上,我們設(shè)計實現(xiàn)了一個采用USB總線實現(xiàn)的溫度采集設(shè)備, 在下位機我們使用了DS1620數(shù)字式溫度傳感器,并在上位機設(shè)計了客戶效勞程序,DS1620定時對室溫進行采集,可以實時監(jiān)視室內(nèi)溫度。關(guān)鍵的一點是,其接口使用了USB進行實現(xiàn),可以適應(yīng)未來機器多使用USB總線的需求。 由于本系統(tǒng)對數(shù)據(jù)傳輸?shù)乃俣葲]有太過苛刻的要求,因此我們使用了U
9、SB總線的控制傳輸方式。二、 USB開展情況 USB全稱為Universal Serial Bus通用串行總線),是1994年底由IBM、Intel、Compaq、DEC、Microsoft、NEC和Northern Telecom共同開發(fā)的PC外設(shè)接口標準,由于其具有使用方便及本錢低廉等優(yōu)點,迅速得到業(yè)界的強力支持,目前己經(jīng)成為主流的總線標準,2022年USB設(shè)備出貨量已超過3億臺。 USB廣泛應(yīng)用于傳統(tǒng)PC外設(shè),如鼠標、鍵盤、顯示器等,移動存儲設(shè)備如移動硬盤、閃存盤等,以及新興的消費類電子,如MP3播放器、數(shù)碼相機、移動 等。同時其應(yīng)用范圍也在不斷擴大,工業(yè)自動化儀器儀表正在成為USB應(yīng)用
10、的熱點之一。 USB最初推出的是1.X版本,其總線傳輸速度較低,為12Mbps,1998年推出了USB2.0,將數(shù)據(jù)傳輸速度提高到了480Mbps,在保持了USBI .1的優(yōu)點的根底上,保證了向下兼容性,可以完全支持各種USB 1.x的產(chǎn)品。USB2.O滿足了高端應(yīng)用對總線帶寬的需求,從2021年下半年起,采用USB2.O的設(shè)備開始大規(guī)模出現(xiàn),預(yù)計2021年USB2.O整體出貨量將超過3億臺,超過USB1.1的出貨量。 隨著USB設(shè)備的迅速增加,設(shè)備與設(shè)備之間的直接數(shù)據(jù)傳輸變得越來越迫切,USB OTGON THE GO)技術(shù)應(yīng)運而生了,它于2022年12月底制定,賦予了設(shè)備雙重身份,即既可以
11、作為主機,又可以作為設(shè)備,其實質(zhì)是在設(shè)備中增加了一個嵌入式計算機來執(zhí)行主機任務(wù)。這一技術(shù)使USB設(shè)備擺脫了對PC的依賴,大大擴展了USB的應(yīng)用范圍,并結(jié)合USB2.0高速傳輸技術(shù),嚴重威脅到IEEE1394的市場。三、 USB的設(shè)計目標 USB的設(shè)計有三大目標: 1計算機與 之間的連接:對聲音音頻和壓縮視頻等實時數(shù)據(jù)給予充分支持,可以廣泛地連接計算機和 ,這一應(yīng)用目標到目前為完全實現(xiàn)。 2)易用性:強調(diào)即插即用、總線供電等特性,以方便用戶使用。 3端口擴充:提供快速、雙向、統(tǒng)一且價格低廉的串行接口,可以滿足PC機開展的現(xiàn)在和未來的需要。 從中我們可以看出,USB標準的制定從市場出發(fā),立足于滿足
12、用戶的實際應(yīng)用需求,盡管它的性能指標并不突出,但正是這一點使得它獲得了極大的成功。四、 USB的性能特點1 終端用戶的易用性: ·為連接電纜和連接頭提供了單一模型; ·電氣特性與用戶無關(guān); ·自我檢測外設(shè),自動地進行設(shè)備驅(qū)動設(shè)置; ·可動態(tài)連接,動態(tài)重置外設(shè)。 2 廣泛的應(yīng)用性: ·適應(yīng)不同設(shè)備,提供低速傳輸1.5Mbps和全速傳輸12Mbps ; ·支持對多個設(shè)備的同時操作; ·可同時操作127個物理設(shè)備; ·在主機和設(shè)備之間可以傳輸多個數(shù)據(jù)和信息流; ·支持多功能的設(shè)備; ·利用低層協(xié)議,提
13、高了總線利用率。 3 同步傳輸帶寬: ·確定的帶寬和低延遲適合 系統(tǒng)和音頻的應(yīng)用; ·同步工作可以利用整個總線帶寬。 4 靈活性: ·可以選擇一系列大小的數(shù)據(jù)包,允許對設(shè)備緩沖器大小進行選擇; ·通過指定數(shù)據(jù)緩沖區(qū)大小和執(zhí)行時間,支持各種數(shù)據(jù)傳輸率; ·通過協(xié)議對數(shù)據(jù)流進行緩沖處理。 5 健壯性: ·出錯處理/過失恢復(fù)機制在協(xié)議中使用; ·對用戶的感覺而言,熱插拔是完全實時的; ·可以對有缺陷設(shè)備進行認定。 6 與PC產(chǎn)業(yè)的一致性: ·協(xié)議的易實現(xiàn)性和完整性; ·與PC機的即插即用的體系結(jié)構(gòu)的一
14、致; ·對現(xiàn)存操作系統(tǒng)接口的良好銜接。 7 本錢低廉 ·以低廉的價格提供1.5兆比特率的子通道設(shè)施; ·將外設(shè)和主機硬件進行了最優(yōu)化的集成; ·促進了低價格的外設(shè)的開展; ·廉價的電纜和連接頭; ·運用了商業(yè)技術(shù)。四、 USB系統(tǒng)組成一個USB系統(tǒng)被定義為三個局部:USB的互連、USB設(shè)備和USB主機。一 USB的互連 USB的互連是指USB設(shè)備與主機之間進行連接和通信的操作,主要包括以下幾方面: · 總線的拓撲結(jié)構(gòu):指明了USB設(shè)備與主機之間的連接方式; · 數(shù)據(jù)流模式:描述了數(shù)據(jù)在系統(tǒng)中通過USB從產(chǎn)生到使用方
15、的流動方式; · USB的調(diào)度:USB提供多個設(shè)備共享的連接,對USB設(shè)備必須進行調(diào)度以分配帶寬。圖1(a) USB物理連接邏輯設(shè)備 主機邏輯設(shè)備 邏輯設(shè)備邏輯設(shè)備 邏輯設(shè)備圖1b USB邏輯連接USB物理互連方式如圖1a 所示,是一種星形級連結(jié)構(gòu)。集線器Hub位于每級星形的中心。這種集線器級連的方式使得外設(shè)的擴展很容易USB協(xié)議規(guī)定最多允許5級集線器進行級連;USB邏輯互連方式如圖1b所示,各個設(shè)備好象是與主機直接相連的,它們之間的通信不用關(guān)心物理連接方式。 數(shù)據(jù)流模式對于USB設(shè)備的實現(xiàn)是最關(guān)鍵的,我們將在下一章對其單獨進行描述。USB的調(diào)度是針對多個設(shè)備互連的,不屬于功能設(shè)備開
16、發(fā)者需要關(guān)心的內(nèi)容,在此不作描述。二 USB設(shè)備 USB設(shè)備包括USB集線器和功能設(shè)備Function兩大類。它們都必須有標準的USB接口,符合USB協(xié)議,支持標準的USB操作如配置,復(fù)位等。它們的描述信息也必須具有USB協(xié)議定義的標準格式。集線器為USB總線提供擴展和連接;功能設(shè)備是具有一定特殊應(yīng)用功能的設(shè)備,它能發(fā)送數(shù)據(jù)到主機,也可以接收來自主機的數(shù)據(jù)和控制信息。三 USB主機USB主機是USB系統(tǒng)的核心。在一個USB系統(tǒng)中只有一臺主機。主機的USB接口稱為USB控制器,通過它主機和外圍USB設(shè)備進行通信。在主機中還集成了一個根集線器Root Hub用于直接與外設(shè)相連或與一般USB Hub
17、級連。主機所具有的功能包括:檢測USB設(shè)備的插入和拔出;管理主機與設(shè)備之間的數(shù)據(jù)流,對設(shè)備進行必要的控制;收集各種狀態(tài)信息;對插入的設(shè)備供電。第一章 USB數(shù)據(jù)傳輸協(xié)議一、 USB電氣特征及電平信號 USB采用四線電纜,由電源線Vbus 、地線GND和兩根數(shù)據(jù)線D和D組成,如圖1-1所示。數(shù)據(jù)線傳輸差模信號,以降低噪聲干擾??梢钥闯?,任何時刻USB總線上最多只能有一位數(shù)據(jù)在傳輸,所以USB是一種完全按照時序進行控制和數(shù)據(jù)傳輸?shù)目偩€。圖1-1 USB電纜結(jié)構(gòu)USB具有差分NRZI不歸零倒置代碼格式。在這種NRZI波形中,d n-1位和d n位之間如果有狀態(tài)變化稱為過渡,就被解碼為一個二進制bn
18、=0的數(shù)據(jù)位,沒有過渡就被解碼為一個二進制b n =1的數(shù)據(jù)位,如圖1-2所示。圖12 NRZI數(shù)據(jù)編碼 為了確保信號發(fā)送的準確性,當在USB上發(fā)送一個包時,傳輸設(shè)備就要進行位插入操作。所謂位插入操作是指在數(shù)據(jù)被編碼前,在數(shù)據(jù)流中每六個連續(xù)的 1后插入一個0,從而強迫NRZI碼發(fā)生變化,位插入操作由傳輸端強制執(zhí)行,任何數(shù)據(jù)都將被執(zhí)行位插入操作,如圖1-3所示。接收端必須能對NRZI數(shù)據(jù)進行解碼,識別插入位并去掉它們。 圖13 位插入數(shù)據(jù)編碼序列 原始數(shù)據(jù) 位插入數(shù)據(jù) 同步塊 數(shù)據(jù)包NRZI編碼后的數(shù)據(jù)位插入 在全速傳輸中,數(shù)據(jù)K態(tài)表示差分1,數(shù)據(jù)J態(tài)表示差分O,而在低速傳輸中那么正好相反。二、
19、 USB數(shù)據(jù)流模型 本數(shù)據(jù)流模型完全引自參考文獻,以下不再標注。一 USB主機/設(shè)備分層模型 數(shù)據(jù)流發(fā)生在主機和USB設(shè)備之間,我們以常用的分層模型介紹USB系統(tǒng)的數(shù)據(jù)流,如圖14所示。它能使不同層次的實現(xiàn)者只關(guān)心USB相關(guān)層次的特定功能細節(jié),而不必掌握從硬件結(jié)構(gòu)到軟件系統(tǒng)的所有細節(jié),因此,不同層次的實現(xiàn)者其開發(fā)工作量將會有極大的不同。 主機分客戶軟件層,USB系統(tǒng)軟件層和USB主機控制器。設(shè)備分USB總線接口層,USB設(shè)備層和功能層。USB系統(tǒng)軟件是指在某一操作系統(tǒng)上支持USB的軟件,它獨立于USB設(shè)備和客戶軟件;USB主機控制器是主機方的USB接口,它是軟硬件的總和。從圖14上我們可以看出
20、,USB總線接口層提供主機和設(shè)備之間物理的連接,而從邏輯上看,USB設(shè)備層與USB系統(tǒng)軟件層對應(yīng),它們完成USB設(shè)備一些根本的、共有的工作;功能層和客戶軟件層通信,它們實現(xiàn)單個USB設(shè)備特有的功能。在編程時,客戶軟件通過USB系統(tǒng)軟件提供的編程接口操作對應(yīng)的設(shè)備,而不是直接通過操作內(nèi)存或I/O口來實現(xiàn),這一點是USB和PCI總線的顯著差異。所有USB設(shè)備只有在被主機成認并配置后才可進入系統(tǒng)工作,它們實現(xiàn)的功能不同,但對主機都提供一個同樣的接口。 在系統(tǒng)軟件層和USB設(shè)備層之間有一條缺省管道,主機與設(shè)備的端點O通信,用于實現(xiàn)一些USB設(shè)備的根本控制功能。在客戶軟件層和功能層有多組通信管道,它們實
21、現(xiàn)USB設(shè)備的特定通信功能。我們所述的這些通信都是從邏輯上分析的,實際的信號的物理流程如圖14所示,以信號從主機流向設(shè)備為例:客戶軟件經(jīng)USBD傳輸給系統(tǒng)軟件的數(shù)據(jù)是不具有USB通信格式的數(shù)據(jù)。系統(tǒng)軟件對這些數(shù)據(jù)分幀,實現(xiàn)帶寬分配策略,然后交給USB主機控制器。主機控制器對數(shù)據(jù)按USB格式打包,實現(xiàn)傳輸事務(wù),再經(jīng)串行接口引擎SIE后將數(shù)據(jù)最終轉(zhuǎn)化為符合USB電氣特征的差分碼從USB電纜發(fā)往設(shè)備。數(shù)據(jù)到達設(shè)備后是一個逆過程,在設(shè)備層中將數(shù)據(jù)解碼,發(fā)往不同端點的數(shù)據(jù)包被分開并正確排列,幀結(jié)構(gòu)被撤除,數(shù)據(jù)成為非USB格式的,最后數(shù)據(jù)送往各端點,完成通訊。在主機方我們還發(fā)現(xiàn)有HCD和USBD兩個接口層
22、。HCD的全稱為主機控制驅(qū)動Host Control Driver,它是對主機控制器硬件的一個抽象,提供和USB系統(tǒng)軟件之間的軟件接口。不同種PC的主機控制器硬件實現(xiàn)并不一樣,但有了HCD,USB系統(tǒng)軟件就可以不必理會各種HCD具有何種資源,數(shù)據(jù)如何打包等問題。尤其是HCD隱藏了怎樣實現(xiàn)根集線器的細節(jié),這有利于USBD的簡化。二 端點端點在硬件上就是一個有一定深度的先入先出堆棧FIFO。主機和設(shè)備的通信最終作用于設(shè)備上的各個端點。每一個USB設(shè)備都有一組互相獨立的端點。每一個設(shè)備都有一個由主機分配的唯一的地址,而各個設(shè)備上的端點都有由設(shè)備確定的端點號Endpoint Number和通信方向。每
23、個端點只支持單向通信:它要么是輸入Input端點,數(shù)據(jù)流方向從設(shè)備到主機;要么是輸出Output端點,數(shù)據(jù)流方向從主機到設(shè)備。設(shè)備地址、端點號和通信方向三者結(jié)合起來就唯一確定了一個端點。在設(shè)備配置時,它必須報告主機它的各個端點的特性,包括端點號,通信方向,端點支持的最大包大小,帶寬要求以及支持的通信方式等。其中端點支持的最大包大小稱為數(shù)據(jù)有效負載,是個重要的概念。端點O比擬特殊,它實際是由輸入和輸出兩個端點組成。每個設(shè)備都必須有端點0,主機和它建立缺省控制管道,用于設(shè)備枚舉和實現(xiàn)對設(shè)備的一些根本的控制功能。除了端點0,其余的端點在設(shè)備配置之前是不能和主機通信的。只有設(shè)備在它的配置描述符中向主機
24、報告了這些端點及其特性,并由主機確認后,這些端點才被激活。三 管道 管道Pipe是設(shè)備上端點和主機上的客戶軟件的連接。因此,每條管道和端點的特性有直接關(guān)系,它只能支持一種通信方式??蛻糗浖ǔMㄟ^向主機的操作系統(tǒng)發(fā)I/O請求包IRP來要求和某一條管道進行數(shù)據(jù)傳輸,而后它進行等待,直到系統(tǒng)通知它傳輸成功或失敗。USB協(xié)議規(guī)定了流管道Stream Pipe和消息管道Message Pipe兩種管道,其中消息管道有定義的結(jié)構(gòu)。缺省控制管道屬于消息管道。1 流管道流管道中的數(shù)據(jù)是流的形式,也就是該數(shù)據(jù)的內(nèi)容不具有USB要求的結(jié)構(gòu)。數(shù)據(jù)從流管道一端流進的順序與它們從流管道另一端流出時的順序是一樣的,流管
25、道中的信息流總是單方向的,或者流進,或者流出。流管道支持同步傳輸,中斷傳輸和批傳輸,這些在稍后將作進一步解釋。2 消息管道 消息管道與端點的關(guān)系同流管道不同,它的數(shù)據(jù)格式由USB協(xié)議規(guī)定。首先,主機向USB設(shè)備發(fā)出一個請求;接著,就是數(shù)據(jù)的傳輸;最后,是一個狀態(tài)階段。為了能夠容納請求/數(shù)據(jù)/狀態(tài)的變化,消息管道要求數(shù)據(jù)有一個格式該格式將在第三節(jié)中詳細介紹,此格式保證了命令能夠被可靠地傳輸和確認。消息管道需要雙方向的信息流,所以有兩個相同號碼的端點,一個用于輸入,一個用于輸出。兩個號碼必須相同。缺省控制管道就是一個消息管道。消息管道僅支持控制傳輸。三 傳輸類型 USB定義了4種傳輸類型:控制傳輸
26、、批傳輸、等時傳輸和中斷傳輸。由于我們的應(yīng)用只涉及控制傳輸,故只對這種傳輸類型作進一步的描述。 控制傳輸用于支持在客戶軟件和它的應(yīng)用之間傳輸設(shè)置信息、命令信息、狀態(tài)信息等。它由以下三個事務(wù)組成: ·建立事務(wù):建立聯(lián)系,把請求信息從主機傳到它的應(yīng)用設(shè)備; ·零個或多個數(shù)據(jù)傳輸事務(wù):按照上一事務(wù)中指明的方向傳輸數(shù)據(jù);·狀態(tài)事務(wù):將傳輸狀態(tài)信息從應(yīng)用設(shè)備傳回到主機。圖14 USB主機/設(shè)備數(shù)據(jù)流通信模型 USB設(shè)備必須實現(xiàn)缺省控制管道,并將它設(shè)置成一個消息管道。這個管道由USB系統(tǒng)軟件使用。USB設(shè)備確實認信息、狀態(tài)信息以及控制信息由該管道傳輸。 USB設(shè)備框架定義了標
27、準的,設(shè)備級的或由銷售商提供的請求,這些請求可操作設(shè)備的狀態(tài)。USB設(shè)備框架又定義了一些描述符Descriptor,用于存放USB設(shè)備的各種信息??刂茩C制提供訪問設(shè)備描述器和請求操作設(shè)備的機制,所以使用控制傳輸?shù)臄?shù)據(jù)必須具有USB定義的數(shù)據(jù)格式。 應(yīng)用層和相應(yīng)的客戶軟件不能為控制傳輸指定總線訪問頻率和帶寬。這由USB系統(tǒng)軟件從全局優(yōu)化角度加以決定。但不管有沒有控制傳輸發(fā)生,系統(tǒng)軟件至少需要將10%的帶寬留給控制傳輸。 控制傳輸使用的是消息管道上的雙向信息流。所以,一旦一個控制管道被建立之后,這個管道就使用具有某個端點號的兩個端點,一個輸入,一個輸出??刂苽鬏?shù)臄?shù)據(jù)格式將在第三節(jié)中作詳細描述。
28、USB規(guī)定了控制傳輸所能接收或發(fā)送的最大數(shù)據(jù)凈負荷區(qū)長度。高速設(shè)備定義的最大數(shù)據(jù)凈負荷區(qū)長度為8、16、32或64字節(jié),控制傳輸端點必須支持規(guī)定的最大長度中的一個,設(shè)備在自己的設(shè)置信息中報告該端點允許的最大凈負荷區(qū)長度;低速設(shè)備的數(shù)據(jù)凈負荷區(qū)的長度只能是8字節(jié)。這個規(guī)定是針對這些數(shù)據(jù)包中的數(shù)據(jù)凈負荷區(qū)的,不包括包中的協(xié)議要求的額外信息。 當端點做了以下兩件事時,控制傳輸?shù)臄?shù)據(jù)階段可被認為結(jié)束: ·已傳了由建立階段指定的數(shù)據(jù)量。 ·傳了一個數(shù)據(jù)包,它的長度為O或它的數(shù)據(jù)區(qū)長度小于最大長度。三、 USB協(xié)議層USB協(xié)議層描述了USB主機與USB設(shè)備交互時的語法和協(xié)議,從中定義了
29、字段、包、事務(wù)和傳輸?shù)慕Y(jié)構(gòu),以及由字段到包、由包到事務(wù)、由事務(wù)到傳輸所組成的組織層次關(guān)系。本節(jié)中我們將從底向上展示USB的數(shù)據(jù)結(jié)構(gòu)。一 字段格式 數(shù)據(jù)位被發(fā)送到總線的時候,首先是最低有效位LSB,跟著是下一個最低有效位,最后是最高有效位MSB。在本文以下描述中,數(shù)據(jù)均以以下形式給出:包中單個的位和字段從左到右的順序就是它們通過總線的順序。1 . 同步字段任何包都是從同步SYNC字段開始的,同步字段是產(chǎn)生最大的過渡密度的編碼序列。同步字段作為空閑狀態(tài)出現(xiàn)在總線上,后面跟著以NRZI編碼的二進制串“KJKJKJKK。通過被定義為8位長的二進制串,輸入電路以本地時鐘對齊輸入數(shù)據(jù)。同步字段里的最后兩位
30、是同步字段結(jié)束的記號,并且標志了包標識符PID的開始。2 包標識符字段 所有包的同步字段后都緊跟著包標識符PID。如圖15所示,包標識符由4位的包類型字段和其后的4位的校驗字段構(gòu)成。包標識符指出了包的類型。包標識符的4位的校驗字段可以保證包標識符譯碼的可靠性,這樣包的余項也就能被正確地解釋。包標識符的校驗字段是通過對包類型字段的二進制的求反碼產(chǎn)生的,如果4個PID檢驗位不是它們的各自的包標識符位的補,那么說明存在PID錯。 圖15 包標識符格式包標識符被分為4個編碼組:標記,數(shù)據(jù),握手和專用。如表11所示,包標識符傳輸?shù)那?位PID<O:1>指出了其屬于哪個組。設(shè)備通過對包標識符譯
31、碼來確定包的類型。3 地址字段 設(shè)備端口使用2個字段;設(shè)備地址字段和端口字段。設(shè)備對地址和端口字段都需要進行譯碼。任何一個字段不匹配,此標記都必須被忽略。另外,對未初始化的端口的訪問將使得標記被忽略。設(shè)備地址ADDR字段通過其地址指定設(shè)備,如圖16所示,ADDR<6:O>指定了總共128個地址。由定義可知,每個ADDR值都定義了單一的設(shè)備。設(shè)備在剛一復(fù)位Reset和加電Powerup的時候,其地址默認值為零,并且必須由主機在枚舉過程Enumeration Process中編程。設(shè)備地址零被用作為缺省地址,不可被分配作任何別的用途。如圖17所示,在設(shè)備擁有多個端口的時候通過附加的4位
32、端口ENDP字段對端口進行尋址。除了端口地址0之外,端口個數(shù)是由設(shè)備決定的。所有的設(shè)備都必須在端口O提供一個控制管道缺省控制管道。對于低速設(shè)備,每個設(shè)備最多提供3個管道:在端口0的控制管道加上2個附加管道或是2個控制管道,或是1個控制管道和1個中斷端口,或是2個中斷端口。全速設(shè)備可以支持最多可達16個的任何類型的端口。圖16 地址字段圖17 端口字段表1-1 PID 類型PID 類型PID 名PID3:0描述標記Token輸出OUT輸入IN幀開始SOF建立SETUP0001B1001B0101B1101B在主機到功能部件的事務(wù)中有地址+端口號在功能部件到主機的事務(wù)中有地址+端口號幀開始標記和幀
33、號在主機到功能部件建立一個控制管道的事務(wù)中有地址+端口號數(shù)據(jù)DATA數(shù)據(jù)0DATA0數(shù)據(jù)1DATA10011B1011B偶數(shù)據(jù)包PID奇數(shù)據(jù)包PID握手Handshake確認ACK不確認NAK停止STALL0010B1010B1110B接收器收到無措數(shù)據(jù)包;接收設(shè)備部不能接收數(shù)據(jù),或發(fā)送設(shè)備不能發(fā)送數(shù)據(jù);端口掛起,或一個控制管道請求不被支持。專用Special前同步PRE1100B主機發(fā)送的前同步字。翻開到低速設(shè)備的下行總線通信。4 幀號字段幀號字段是一個11位的字段,主機每過一幀就將其內(nèi)容加一。幀號字段到達其最大值7FFH時歸零,且它僅每個幀最初時刻在SOF標記中被發(fā)送,可以用來統(tǒng)計數(shù)據(jù)傳輸
34、情況。 5 數(shù)據(jù)字段 包含數(shù)據(jù)字段的數(shù)據(jù)包大小隨著傳輸類型而變化,但所包含的數(shù)據(jù)必須是整數(shù)個字節(jié)。圖18為多字節(jié)顯示格式。每個字節(jié)的范圍內(nèi)的數(shù)據(jù)位移出時都是最低位LSB在前。圖18 數(shù)據(jù)字段格式6 循環(huán)冗余校驗循環(huán)冗余校驗CRC被用來在標記和數(shù)據(jù)包中保護所有的非PID字段。二 包格式1 標記包 圖19顯示了標記包的字段格式。標記由PID,ADDR和ENDP構(gòu)成,其中PID指定了包是輸入,輸出還是建立類型,輸入PID定義了從設(shè)備到主機的數(shù)據(jù)事務(wù),輸出和建立PID定義了從主機到設(shè)備的數(shù)據(jù)事務(wù);對于輸出和建立事務(wù),地址和端口字段唯一地確定了接下來將收到數(shù)據(jù)包的端口,對于輸入事務(wù)的,這些字段唯一地確定
35、了哪個端口應(yīng)該傳輸數(shù)據(jù)包。只有主機能發(fā)出標記包。圖19 標記包格式 如圖19所示,標記包包括了覆蓋地址和端口字段的5位CRC。CRC并不覆蓋PID,因為它有自己的校驗字段。標記和幀開始SOF包是由3個字節(jié)的包字段數(shù)據(jù)后面的包結(jié)束EOP,End of Packet界定的。如果包被譯碼為合法標記或SOF,但卻沒有在3個字節(jié)之后以EOP終止,那么它被認為是無效的,并被接收器忽略。 2 幀開始SOF包主機以每毫秒一次的額定速率發(fā)出幀開始SOF包。如圖110中所示,SOF包是由指示包類型的PID和其后的11位的幀號字段構(gòu)成。圖110 幀開始包 3 數(shù)據(jù)包 如圖111所示,數(shù)據(jù)包由PID,包括至少O個字節(jié)
36、數(shù)據(jù)的數(shù)據(jù)區(qū)和CRC構(gòu)成。有兩種類型的數(shù)據(jù)包,根據(jù)不同的PID:DATA0和DATA1來識別。兩種數(shù)據(jù)包PID是為了支持數(shù)據(jù)切換同步而定義的。數(shù)據(jù)必須以整數(shù)的字節(jié)數(shù)發(fā)出。數(shù)據(jù)CRC僅通過對包中的數(shù)據(jù)字段計算而得到,而不包括PID,它有自己的校驗字段。圖111 數(shù)據(jù)包格式4 握手包 如圖112所示,握手包僅由PID構(gòu)成,用來報告數(shù)據(jù)事務(wù)的狀態(tài),以及在數(shù)據(jù)事務(wù)中表示數(shù)據(jù)成功接收,命令的接收或拒絕,流控制和停止條件。只有支持流控制的事務(wù)類型才能返回握手信號。握手總是在事務(wù)的握手階段中被返回,也可在數(shù)據(jù)階段代替數(shù)據(jù)被返回。握手包由1個字節(jié)的包字段后的EOP確定界限。圖112 握手包三 事務(wù)格式 事務(wù)格
37、式根據(jù)端口類型而變化。有4種端口類型:批處理Bulk、控制Control、中斷Interrupt和同步Isochronous。本文僅描述應(yīng)用所涉及到的控制端口類型。 一個典型的控制傳輸需要3種不同的事務(wù):建立、數(shù)據(jù)和狀態(tài)事務(wù)。圖115顯示了三種不同的控制傳輸事務(wù)序列,控制讀和寫相似,由建立、數(shù)據(jù)和狀態(tài)事務(wù)組成。在某些情況下,也可以有無數(shù)據(jù)事務(wù)階段的控制傳輸,它僅由建立和狀態(tài)階段構(gòu)成。圖115 控制傳輸事務(wù)序列 建立事務(wù)用于向功能部件的控制端口傳輸信息。圖116說明了建立事務(wù)的格式。建立包總是在建立事務(wù)的數(shù)據(jù)階段上使用DATA0 PID。收到建立包的設(shè)備必須接收建立數(shù)據(jù)并用ACK應(yīng)答,如果數(shù)據(jù)被
38、損壞,那么丟棄數(shù)據(jù)且不返回握手。 控制傳輸?shù)臄?shù)據(jù)事務(wù)發(fā)生在建立事務(wù)階段之后,由一個以上的輸入或輸出事務(wù)構(gòu)成。所有的數(shù)據(jù)事務(wù)階段里的事務(wù)都必須有相同的方向即全部輸入或者全部輸出。在數(shù)據(jù)階段中要發(fā)送的數(shù)據(jù)的數(shù)量和其方向在建立事務(wù)里被指定。如果數(shù)據(jù)的數(shù)量超過了先前確定的數(shù)據(jù)包大小,數(shù)據(jù)在支持最大的包大小的多個事務(wù)中被發(fā)送輸入或者輸出。任何剩下的數(shù)據(jù)都作為剩余在最后的事務(wù)中被發(fā)送。狀態(tài)事務(wù)是控制傳輸?shù)淖詈笠粋€事務(wù)階段,報告整個控制傳輸?shù)慕Y(jié)果是成功還是失敗。如果成功,那么狀態(tài)事務(wù)中返回零長度數(shù)據(jù)包即只有PID和CRC校驗位;如果失敗,那么對于控制寫,設(shè)備在數(shù)據(jù)包階段就返回NAK或者STALL,此時主機不
39、再返回交換包;對于控制讀,主機依然發(fā)送一個零長度數(shù)據(jù)包,設(shè)備返回NAK或者STALL。狀態(tài)事務(wù)的方向是以相對前面的事務(wù)階段的數(shù)據(jù)流方向來確定的,并且總是使用DATA1 PID。圖116 建立事務(wù)結(jié)構(gòu)第二章 USB驅(qū)動程序概述本章首先簡要介紹了USB驅(qū)動程序的Win32程序模型WDM,然后介紹了USB主機體系結(jié)構(gòu),最后詳細介紹了本設(shè)計的驅(qū)動程序及應(yīng)用程序的編寫。一、 WDM驅(qū)動程序模型簡介 隨著Windows98和Windows20OO成為主流操作系統(tǒng),windows驅(qū)動程序模型WDM取代了原先的VxD技術(shù),成為設(shè)備驅(qū)動程序的主流模式。WDM提供靈活的方式,簡化了驅(qū)動程序的開發(fā),并能夠?qū)SB、
40、IEEE 1394、PCI等新硬件標準提供充分支持,并增強了驅(qū)動程序的可靠性和可維護性。 WDM有兩種運行模式,即內(nèi)核Kernel模式和用戶User模式。在內(nèi)核模式下,程序的運行不受操作系統(tǒng)的任何限制,對I/O設(shè)備有完全的訪問權(quán),能夠訪問任何虛地址和控制虛擬內(nèi)存硬件;在用戶模式下,操作系統(tǒng)提供某種機制,可以限制程序的各種I/O操作,硬件也可以防止特權(quán)指令的執(zhí)行,并進行內(nèi)存和I/O空間檢查關(guān)于這兩種模式的運行過程涉及到操作系統(tǒng)核心和微處理器構(gòu)架,是一個大得多的話題,在此不作討論。 WDM驅(qū)動程序模型分兩個方面,除了核心模式描述設(shè)備驅(qū)動程序的標準結(jié)構(gòu)外,WDM還為常見類型的設(shè)備實現(xiàn)了一個模塊化的、
41、分層次類型的總線驅(qū)動程序和類驅(qū)動程序??偩€驅(qū)動程序?qū)崿F(xiàn)了支持USB、IEEE1394協(xié)議等。類驅(qū)動程序是為實現(xiàn)標準Windows功能提供條件。WDM對標準類接口的支持減少了Windows 98和Windows NT所需的設(shè)備驅(qū)動程序的數(shù)量和復(fù)雜性。 以往在Windows98和Windows NT兩個平臺上分別運行時需要為同一個設(shè)備編寫兩個截然不同的驅(qū)動程序,但WDM是跨平臺的,因而只需要編寫一個WDM驅(qū)動程序就可以了。 WDM驅(qū)動程序是分層的,即不同層上的驅(qū)動程序有著不同的優(yōu)先級,這使得I/0請求進程更加明了,而Windows 9x下的VxD那么沒有此結(jié)構(gòu)如圖2l所示。 WDM引入了功能設(shè)備對
42、象FDOFunctional Device Object與物理設(shè)備對象PDOPhysical Device Object兩個新類來描述硬件,一個PDO對應(yīng)一個實際硬件。一個硬件只允許有一個PDO,卻可以擁有多個FDO,在驅(qū)動程序中直接操作的不是硬件而是相應(yīng)的PDO與FDO。在用戶態(tài)和內(nèi)核態(tài)通信方面,系統(tǒng)為每一個用戶請求打包形成一個IRP結(jié)構(gòu),將其發(fā)送至驅(qū)動程序,并通過識別IRP中的PDO來區(qū)別是發(fā)送給哪一個設(shè)備的。另外,在驅(qū)動程序的加載方面,WDM不通過驅(qū)動程序名稱識別,而是通過一個128位的全局唯一標識符GUID來實現(xiàn)驅(qū)動程序的識別。FIDOFDOFIDOPDO上層過濾器驅(qū)動程序功能驅(qū)動程序
43、下層過濾器驅(qū)動程序總線驅(qū)動程序IRP圖21 WDM中設(shè)備對象和驅(qū)動程序的層次結(jié)構(gòu) 在WDM驅(qū)動程序的工作方式和其他模式的驅(qū)動程序模型有很多差異。在WDM驅(qū)動程序中,即插即用PnP管理器告知何時向操作系統(tǒng)添加或刪除一個設(shè)備。它使用操作系統(tǒng)安裝的INF文件查找新設(shè)備的正確驅(qū)動程序,并按照驅(qū)動程序的要求創(chuàng)立設(shè)備對象堆棧,而其它模式驅(qū)動程序必須發(fā)現(xiàn)它自己的設(shè)備,使用專門的安裝程序安裝;另外在細節(jié)上也存在很多區(qū)別,其它模式驅(qū)動程序參數(shù)一般由注冊表提供,在DriverEntry里調(diào)用讀注冊表的函數(shù),然后根據(jù)注冊表再調(diào)用CreateDevice創(chuàng)立設(shè)備,但是WDM一般不是這樣,在加載的時候PnP管理器調(diào)用A
44、ddDevice入口點創(chuàng)立設(shè)備,一般在DriverEntry里創(chuàng)立的是一個與設(shè)備或者對象毫無關(guān)系的虛擬設(shè)備,用于管理與Win32的通訊;另外整個設(shè)備驅(qū)動樹也發(fā)生了改變,從而使安裝程序發(fā)生了很大的改變。WDM本身的PnP管理器被抽象地提升到了ROOT的地位,負責所有的總線驅(qū)動程序的加載??偩€驅(qū)動程序那么負責遍歷所有位于總線上的設(shè)備,并且為每個設(shè)備創(chuàng)立相應(yīng)的設(shè)備對象。 一個完整的驅(qū)動程序要完成以下工作:初始化、創(chuàng)立與刪除設(shè)備、處理應(yīng)用層程序的翻開和關(guān)閉句柄的請求、處理應(yīng)用層程序的輸入/輸出請求、串行化對設(shè)備的訪問、訪問硬件、調(diào)用其他驅(qū)動程序、取消I/O請求、超時I/O請求、處理可熱插拔設(shè)備的參加和
45、刪除事件、電源管理和WMI。二、 USB主機驅(qū)動程序體系結(jié)構(gòu) 作為一種符合WDM的驅(qū)動程序,USB總線驅(qū)動程序軟件堆棧內(nèi)的層間通信也使用IRPl/O請求包的機制。但實際的USB驅(qū)動程序使用URBUSB請求塊結(jié)構(gòu)向其硬件設(shè)備發(fā)送請求。USB驅(qū)動程序高度依賴其總線驅(qū)動程序USBD.SYS,而不直接使用硬件抽象層HAL函數(shù)與硬件通信,這是USB驅(qū)動程序的顯著特點,它提高了系統(tǒng)的可靠性和可維護性。 USB總線主機通過主機控制器與USB設(shè)備進行交互。Windows對構(gòu)成一個USB總線主機的不同軟件局部進行了明確的劃分,如圖22所示,其中USB客戶軟件包含了不同總線設(shè)備的設(shè)各驅(qū)動程序,它通過Windows
46、提供的USB總線接口與根集線器驅(qū)動程序進行通信,而根集線器驅(qū)動程序那么要通過通用串行總線驅(qū)動程序接口USBDI來實現(xiàn)與通用串行總線驅(qū)動程序USBD的通信客戶也可以通過USBDI直接同USBD交互。然后,USBD會選擇兩種主控制器驅(qū)動HCD方式之一來同其下方的主控制器通信。最后,主控制器會直接實現(xiàn)對USB物理層總線的訪問。HCD與USBD提供了基于不同抽象層次的USB軟件接口,它們協(xié)同工作,共同完成USB總線系統(tǒng)能夠的功能。HCD提供抽象的主機控制器,對主機控制器所見到的USB總線系統(tǒng)的數(shù)據(jù)傳輸進行了抽象:USBD提供抽象的設(shè)備,對USB客戶軟件和總線外部設(shè)備之間的數(shù)據(jù)傳輸進行了抽象。USB總線
47、系統(tǒng)模型簡化了USBD客戶和與USB總線設(shè)備之間的數(shù)據(jù)傳輸過程,并且該模型可以看作是面向USB總線接口對USB總線設(shè)備進行控制的入口。它們均由操作系統(tǒng)提供并維護,對于客戶軟件是不透明的。一 主機控制器驅(qū)動程序HCD HCD提供軟件界面HCDIHCD Interface對主機控制器實現(xiàn)必要的抽象,以隱藏主機控制器硬件的實現(xiàn)細節(jié),為上層的USB驅(qū)動程序提供統(tǒng)一的接口。HCD是USB總線的最底層,USBD將客戶的請求映射到相關(guān)的HCD,由HCD轉(zhuǎn)交給主機控制器硬件執(zhí)行。主機控制器提供一條高速的數(shù)據(jù)存取物理總線,它負責所有USB物理層的總線操作,主要有:狀態(tài)控制、串行化和反串行化、幀產(chǎn)生、過失控制和數(shù)
48、據(jù)傳輸?shù)?。圖22 USB驅(qū)動程序體系結(jié)構(gòu) 如圖22所示,UHCD和OpenHCI是為不同的USB總線設(shè)備供給商提出的用于管理系統(tǒng)中的USB總線主控制器的兩種接口,Windows提供了對這兩種接口的支持,設(shè)備供給商可以根據(jù)情況選擇實現(xiàn)其中的一種,Windows在USB總線和主機控制器之間放置了一個PCI總線枚舉器,它負責在檢測到系統(tǒng)中存在一個通用串行總線時,裝載適當?shù)腢SB總線系統(tǒng)軟件。二 USB總線驅(qū)動程序USBD 正如我們前面介紹的,USBD是USB系統(tǒng)軟件中最關(guān)鍵的一層,它負責控制全部USB協(xié)議的操作和中斷處理控制。主要功能有:設(shè)備設(shè)置、資源管理、數(shù)據(jù)傳輸管道層次以及公共數(shù)據(jù)定義等。 US
49、BD為客戶軟件設(shè)備驅(qū)動程序提供了訪問設(shè)備的一組接口,客戶軟件只能通過它來訪問USB總線,對客戶軟件而言,它就是USB總線的底層。USBD的具體實現(xiàn)基于不同的操作系統(tǒng)會有所不同,圖23給出了USBD的總體框架。 USBD的客戶直接對設(shè)備發(fā)出命令或從管道直接輸入輸出數(shù)據(jù)流,USBD為客戶提供兩種機制:命令機制和管道機制。命令機制允許客戶設(shè)置和控制USBD的操作以及USB總線設(shè)備,并提供對設(shè)備標準管道的所有訪問。管道機制那么允許USBD客戶管理特定設(shè)備的數(shù)據(jù)和控制數(shù)據(jù)的傳輸。1 USBD管道機制 管道是設(shè)備和主機之間的邏輯連接,一個管道屬于且只屬于一個客戶,在USBD中,管道有兩種:標準管道和客戶管
50、道。標準管道用于完成一些客戶通過命令接口所傳遞的請求,如設(shè)置設(shè)備的地址等,但USBD不允許客戶直接訪問設(shè)備的標準管道??蛻艄艿滥敲从煽蛻暨M行管理,并提供相應(yīng)的數(shù)據(jù)緩沖區(qū)??梢钥闯觯艿罊C制比命令機制所提供的數(shù)據(jù)傳輸效勞更直接,因而數(shù)據(jù)傳輸效率更高。 2 USBD命令機制USBD命令機制允許客戶以讀寫的方式對設(shè)備的數(shù)據(jù)及其控制局部進行訪問,客戶所要做的,僅僅是向USBD提供設(shè)備的地址及相關(guān)的數(shù)據(jù)緩沖區(qū)的指針。命令機制所提供的功能主要是USB總線管理相關(guān)的內(nèi)容,如設(shè)備設(shè)置管理、設(shè)備數(shù)據(jù)訪問、總線設(shè)備管理以及電流分配等。第三章 USB設(shè)備簡介 本章是整個USB設(shè)備開發(fā)中的核心局部,簡要介紹了設(shè)備開發(fā)
51、所使用的PDIUSBD12接口芯片,對本設(shè)計的硬件實現(xiàn)和設(shè)備固件編寫作了詳細介紹。一、 硬件結(jié)構(gòu)USB設(shè)備硬件設(shè)計的核心是USB控制器,在進行一個具體的USB設(shè)備開發(fā)之前,首先要根據(jù)具體使用要求選擇適宜的USB控制器,設(shè)備的設(shè)計將圍繞該控制器展開。目前,市場上供給的USB控制器主要分為兩類:專用USB控制器和通用USB控制器。通用USB控制器實現(xiàn)根本的USB協(xié)議,并且為用戶預(yù)留多個多功能端點,可以滿足不同的應(yīng)用要求,因此,我們選擇了后一種。通用USB控制器按照結(jié)構(gòu)又細分為帶USB接口的單片機MCU和通用USB收發(fā)器兩種。 效勞 通道接口 命令接口信息和流通道配置管理設(shè)備數(shù)據(jù)訪問總線設(shè)備管理能量
52、控制主機控制器驅(qū)動主機控制器驅(qū)動主機控制器主機控制器圖23 USBD結(jié)構(gòu) 一 帶USB接口的單片機主要有INTEL的8X930系列,CYPRESS公司的EZUSB,以及MOTOROLA公司的MC68HC908JB8系列等。這種方案的最大優(yōu)點在于開發(fā)難度較小,因為大多數(shù)這樣的單片機都是基于8051結(jié)構(gòu)或者其他常見的結(jié)構(gòu),同時均有完備的開發(fā)輔助文檔和代碼實例,但是其開發(fā)一般需要專用的仿真器,并且對于簡單或低本錢系統(tǒng),價格高將會是最大的障礙。 二 通用USB收發(fā)器 通用USB收發(fā)器僅處理USB總線相關(guān)事務(wù),必須有一個外部微處理器來進行協(xié)議處理和數(shù)據(jù)交換。這種方案的主要特點是本錢低、接口形式多樣、可靠
53、性高,具有很高的靈活性,尤其適合于產(chǎn)品的改型設(shè)計,缺點是開發(fā)者需要非常熟悉USB的協(xié)議,以處理USB總線事務(wù),同時要用微處理器控制收發(fā)器的工作。 考慮到實驗室具體情況,我們選擇了通用USB收發(fā)器。 USB硬件結(jié)構(gòu)相當簡單,如圖31所示,它由以下三局部組成:USB收發(fā)器、微處理器和存儲器。它們構(gòu)成了一個USB數(shù)據(jù)傳輸?shù)淖钚∠到y(tǒng)。其功能為:USB收發(fā)器負責處理所有與USB總線事務(wù)有關(guān)的任務(wù),如總線喚醒、數(shù)據(jù)接收/發(fā)送、打包、CRC校驗等,但該收發(fā)器不負責解釋這些數(shù)據(jù)的意義;微處理器負責處理數(shù)據(jù)、響應(yīng)主機請求、以及控制USB收發(fā)器的工作;存儲器負責存儲和提供數(shù)據(jù)。二、 PDIUSBD12通用USB收發(fā)器一 PDIUSBD12的性能特點 PDIUSBD12以下簡稱D12是PHILIPS公司推出的符合USB1.l標準的通用收發(fā)器,內(nèi)部有6個端點,除了默認控制端點
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年江西南昌萬壽宮文化街區(qū)運營管理有限公司招聘筆試參考題庫附帶答案詳解
- 2025版協(xié)議離婚特殊規(guī)定及子女撫養(yǎng)權(quán)分割與贍養(yǎng)協(xié)議書9篇
- 2025年度個人財產(chǎn)質(zhì)押擔保合同模板大全
- 2025年度個人信用評分貸款合同范本參考
- 2025-2030全球異型坯連鑄機行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球無齒槽空心杯減速電機行業(yè)調(diào)研及趨勢分析報告
- 2025版軍事基地視頻監(jiān)控設(shè)備升級與維護服務(wù)合同3篇
- 2025-2030全球結(jié)構(gòu)型隔音用蜂窩行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國廢棄食用油轉(zhuǎn)化催化劑行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國輕型冷凍柜行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 完整版秸稈炭化成型綜合利用項目可行性研究報告
- 油氣行業(yè)人才需求預(yù)測-洞察分析
- 《數(shù)據(jù)采集技術(shù)》課件-Scrapy 框架的基本操作
- (2024)河南省公務(wù)員考試《行測》真題及答案解析
- 圍城讀書分享課件
- 2025年河北省單招語文模擬測試二(原卷版)
- 工作計劃 2025年度醫(yī)院工作計劃
- 高一化學《活潑的金屬單質(zhì)-鈉》分層練習含答案解析
- DB34∕T 4010-2021 水利工程外觀質(zhì)量評定規(guī)程
- 2024年內(nèi)蒙古中考英語試卷五套合卷附答案
- 2024年電工(高級)證考試題庫及答案
評論
0/150
提交評論