版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
USB協(xié)議及嵌入式應(yīng)用
May8,2005張強(qiáng)
RTPO1Copyright2005MTCNZQ主要內(nèi)容USB特點(diǎn)及結(jié)構(gòu)設(shè)備屬性傳輸類(lèi)型數(shù)據(jù)包格式命令組成SL811HS嵌入式設(shè)備實(shí)現(xiàn)May8,20052Copyright2005MTCNZQUSB特點(diǎn)統(tǒng)一的硬件接口模型熱插拔、即插即用系統(tǒng)總線供電:+5V、upto500mA易擴(kuò)展:最多可以連接127個(gè)USB設(shè)備3種數(shù)據(jù)傳輸速率:1.5Mb/s(low-speed)、12Mb/s(full-spped)、480Mb/s(high-speed)4種數(shù)據(jù)傳輸方式:ControlTransfer,InterruptTransfer,BulkTransfer,IsochronousTransferMay8,20053Copyright2005MTCNZQUSB特點(diǎn)總線利用率高-數(shù)據(jù)報(bào)文附加信息少,帶寬利用率高,同時(shí)支持多種方式、不同速率的設(shè)備。較好的數(shù)據(jù)容錯(cuò)性-在數(shù)據(jù)包中加入了CRC校驗(yàn)、在協(xié)議中包含數(shù)據(jù)包出錯(cuò)處理及差錯(cuò)恢復(fù)機(jī)制、并具有對(duì)有缺陷設(shè)備進(jìn)行認(rèn)定和根據(jù)不同的傳輸類(lèi)型錯(cuò)誤進(jìn)行不同處理的功能…May8,20054Copyright2005MTCNZQUSB拓樸結(jié)構(gòu)PCPCMay8,20055Copyright2005MTCNZQUSB的硬件結(jié)構(gòu)USB主機(jī)-控制整個(gè)系統(tǒng)的數(shù)據(jù)傳輸工作主機(jī)控制器(主機(jī)+根集線器)-UHCI,OHCIUSB設(shè)備-以從屬的方式與USB主機(jī)通信USB集線器:本身可再接其他USB外圍設(shè)備USB設(shè)備:連接在計(jì)算機(jī)上用來(lái)完成特定功能并符合USB規(guī)范的I/O設(shè)備單元,如USB鼠標(biāo)、U盤(pán)等復(fù)合設(shè)備(CompoundDevice)集成設(shè)備(CompositeDevice)May8,20056Copyright2005MTCNZQUSB協(xié)議-設(shè)備屬性描述符-描述設(shè)備的屬性和特點(diǎn)設(shè)備描述符(DeviceDescriptor)配置描述符(ConfigurationDescriptor)接口描述符(InterfaceDescriptor)端點(diǎn)描述符(EndpointDescriptor)串描述符(StringDescriptor)類(lèi)描述符(ClassDescriptor)非標(biāo)準(zhǔn)描述符May8,20057Copyright2005MTCNZQUSB協(xié)議-設(shè)備屬性類(lèi)(Class):功能相近的一類(lèi)設(shè)備,主機(jī)端只需提供類(lèi)驅(qū)動(dòng)程序便可以驅(qū)動(dòng)大多數(shù)USB設(shè)備通信類(lèi)集線器(Hub)類(lèi)音頻(Audio)類(lèi)
打印機(jī)類(lèi)人機(jī)接口(HID)類(lèi)(包括鍵盤(pán)、鼠標(biāo)、游戲桿等)大容量存儲(chǔ)類(lèi)(包括硬盤(pán)、光驅(qū)、軟驅(qū)等)……May8,20058Copyright2005MTCNZQUSB協(xié)議-設(shè)備屬性功能(Function)/接口(Interface)設(shè)備地址(DeviceAddress):USB主機(jī)控制器通過(guò)設(shè)備地址區(qū)分設(shè)備。端點(diǎn)(Endpoint):位于USB設(shè)備中與USB主機(jī)進(jìn)行通信的基本單元管道(Pipe):USB設(shè)備和主機(jī)之間數(shù)據(jù)通信的邏輯通道(設(shè)備地址、端點(diǎn)號(hào)和屬性)May8,20059Copyright2005MTCNZQUSB的四種傳輸類(lèi)型批量傳輸:用于傳輸大塊數(shù)據(jù),并且數(shù)據(jù)的傳輸不要求有周期性或一定的數(shù)據(jù)傳輸速率。通常打印機(jī)、掃描儀和數(shù)碼相機(jī)以這種方式與主機(jī)連接??梢詣?dòng)態(tài)的獲得總線帶寬如果數(shù)據(jù)傳輸出現(xiàn)錯(cuò)誤,傳輸失敗,可以重發(fā)有確認(rèn)的數(shù)據(jù)傳輸,但不保證傳輸?shù)膸捄脱舆t只有當(dāng)獲得空閑的帶寬時(shí),批量傳輸才會(huì)發(fā)生May8,200510Copyright2005MTCNZQUSB的四種傳輸類(lèi)型控制傳輸:用來(lái)傳輸U(kuò)SB命令函數(shù)的傳輸類(lèi)型,命令函數(shù)是由主機(jī)發(fā)起的,旨在完成對(duì)系統(tǒng)中的設(shè)備進(jìn)行系統(tǒng)配置、狀態(tài)查詢(xún)和管理等操作。提供訪問(wèn)設(shè)備描述符和命令操作的機(jī)制是可靠的數(shù)據(jù)數(shù)據(jù)傳輸,支持錯(cuò)誤檢測(cè)和數(shù)據(jù)重傳,并盡可能滿(mǎn)足主機(jī)和設(shè)備的同步用于控制傳輸?shù)脑O(shè)備端點(diǎn)是雙向的所有的設(shè)備必須有至少一個(gè)控制端點(diǎn)(EP0)比批量傳輸更優(yōu)先占用總線帶寬
May8,200511Copyright2005MTCNZQUSB的四種傳輸類(lèi)型中斷傳輸:該方式傳送的數(shù)據(jù)量很小,但這些數(shù)據(jù)需要及時(shí)處理,以達(dá)到實(shí)時(shí)效果,USB主機(jī)給用于中斷傳輸?shù)脑O(shè)備分配一定的帶寬,周期性地通過(guò)中斷傳輸接收此設(shè)備信息,此方式主要用在鍵盤(pán)、鼠標(biāo)以及游戲手柄等外部設(shè)備上。中斷傳輸管道的最大服務(wù)周期(單位:ms)必須得到保證由于錯(cuò)誤而引起的數(shù)據(jù)重傳將在下一服務(wù)周期進(jìn)行數(shù)據(jù)的結(jié)尾是通過(guò)與包的最大傳輸字節(jié)數(shù)比較來(lái)確定May8,200512Copyright2005MTCNZQUSB的四種傳輸類(lèi)型實(shí)時(shí)傳輸:以固定的傳輸速率,連續(xù)不斷傳輸數(shù)據(jù),發(fā)生錯(cuò)誤時(shí),USB不處理,而是繼續(xù)傳送新的數(shù)據(jù)。用于需要連續(xù)傳輸,且對(duì)數(shù)據(jù)的正確性要求不高而對(duì)時(shí)間極為敏感的外部設(shè)備,如麥克風(fēng)、音箱以及電話等。數(shù)據(jù)傳輸有固定的延遲,確保對(duì)USB帶寬的訪問(wèn)只要數(shù)據(jù)能提供得上,就能保證管道上的恒定數(shù)據(jù)傳送速率允許有一定的誤碼率只有控制傳輸和中斷傳輸支持低速傳輸,批量傳輸和實(shí)時(shí)傳輸不支持低速傳輸May8,200513Copyright2005MTCNZQUSB的四種傳輸類(lèi)型傳輸方式功能糾錯(cuò)傳輸字節(jié)延遲保證控制用于發(fā)送和接收USB定義的結(jié)構(gòu)化信息是≤8,16,32,64盡最大能力保證不延遲批量用于發(fā)送和接收小塊無(wú)結(jié)構(gòu)數(shù)據(jù)是≤8,16,32,64無(wú)中斷與批量管道相似,但包括一個(gè)最大延遲是≤64以保證的最小速率輪詢(xún)實(shí)時(shí)用于發(fā)送和接收有周期保證的大塊無(wú)結(jié)構(gòu)數(shù)據(jù)否≤1023每1ms幀中的固定部分May8,200514Copyright2005MTCNZQUSB協(xié)議-數(shù)據(jù)包包(Packet)-數(shù)據(jù)傳輸?shù)幕締卧猄YNC+8PID+data+CRC5/16+EOPSYNC:8bits(1.1),32bits(2.0)EOP:3bits(1.1),8bits(2.0)SmallestPacketHigh-Speed==48bits (100.00ns)Full-speed==19bits (1,583.33ns)Low-speed==19bits (12,666.67nsplusfull-speedPREpacket)LargestPacketHigh-Speed==8248bits(17,183.33ns)Full-speed==8219bits(684,916.67ns)[Isochronous1023bytes]
64bytes==547bits(45,583.33ns)[Bulk,Control,Interrupt]Low-speed==99bits(66,000nsplusfull-speedPREpacket)May8,200515Copyright2005MTCNZQUSB協(xié)議-數(shù)據(jù)包類(lèi)型令牌包(TokenPacket)SYNC+8PID+11data+CRC5+EOPSOF(幀起始)-數(shù)據(jù)字段為11bits幀序列號(hào)Setup(設(shè)置)-數(shù)據(jù)字段為7bits設(shè)備地址+4bits端點(diǎn)號(hào)OUT(輸出)-數(shù)據(jù)字段同設(shè)置令牌包IN(輸入)-數(shù)據(jù)字段同設(shè)置令牌包May8,200516Copyright2005MTCNZQUSB協(xié)議-數(shù)據(jù)包類(lèi)型特殊令牌包(SpecialTokenPacket)PRE(低速前導(dǎo)包):通知HUB下一個(gè)包是低速包SPLIT(高速SPLIT傳輸令牌):支持HUB端口的全速/低速設(shè)備的連接(USB2.0)PING包:用來(lái)診斷相關(guān)的USB設(shè)備是否有足夠的空間接收新的數(shù)據(jù)包(批量輸出和控制輸出)(USB2.0)ERR包:在高速數(shù)據(jù)傳輸情況下,ERR包被HUB用來(lái)通告USB主機(jī)其相關(guān)端口上的全/低速總線錯(cuò)誤(USb2.0)May8,200517Copyright2005MTCNZQUSB協(xié)議-數(shù)據(jù)包類(lèi)型數(shù)據(jù)包(DataPacket)SYNC+8PID+0~1023BytesData+CRC16+EOPDATA0-數(shù)據(jù)傳輸中的奇數(shù)包DATA1-數(shù)據(jù)傳輸中的偶數(shù)包DATA2-用于高速實(shí)時(shí)輸入/輸出數(shù)據(jù)傳輸(USB2.0)MDATA-用于高速實(shí)時(shí)輸出數(shù)據(jù)傳輸(USB2.0)May8,200518Copyright2005MTCNZQUSB協(xié)議-數(shù)據(jù)包類(lèi)型握手包(HandshakePacket)SYNC+8PID+EOPACK(應(yīng)答)-數(shù)據(jù)的接收方正確地接收到了數(shù)據(jù)包NAK(無(wú)應(yīng)答)-USB設(shè)備不能從主機(jī)接收數(shù)據(jù)OUT-設(shè)備忙 IN-數(shù)據(jù)未準(zhǔn)備好STALL(中止)-設(shè)備有問(wèn)題或不支持某個(gè)命令NYET-高速傳輸時(shí)的接收無(wú)響應(yīng)應(yīng)答(USB2.0)響應(yīng)PING令牌包響應(yīng)SPLIT令牌包高速集線器接收到一個(gè)不能處理的SPLIT令牌包時(shí)May8,200519Copyright2005MTCNZQUSB設(shè)備-設(shè)備描述符struct
DeviceDesc{
INT8U bLength; INT8U bDescriptorType; INT16U bcdUSB; INT8U bDeviceClass; INT8U bDeviceSubClass; INT8U bDeviceProtocol; INT8U bMaxPacketSize0; INT16U idVendor; INT16U idProduct; INT16U bcdDevice; INT8U iManufacturer; INT8U iProduct; INT8U iSerialNumber; INT8U bNumConfigurations;}SL811HID設(shè)備示例:{ 0x12, 0x01, 0x0110, 0x00, 0x00, 0x00,
0x08,
0x04b4, //Cypress
0x0811, //SL811 0x0100, 0x01, 0x02, 0x00, 0x01};May8,200520Copyright2005MTCNZQUSB設(shè)備-配置描述符struct
CfgDesc{ INT8U bLength; INT8U bDescType; INT16U wLength;//Cfg+Ifc+Class+EP+Factory INT8U bNumInterface; INT8U bConfigValue; INT8U bIndex; INT8U bAttr; INT8U bMaxPower; }SL811HID設(shè)備示例:{ 0x09, 0x02,
0x0022, 0x01, 0x01, 0x00, 0xA0,//D7=1,D5:遠(yuǎn)程喚醒=1 0x32};May8,200521Copyright2005MTCNZQUSB設(shè)備-接口描述符struct
InterfaceDesc{ INT8U bLength; INT8U bDescType; INT8U iNum; INT8U iAltString; INT8U bEndPoints; INT8U iClass; INT8U iSubClass; INT8U iProtocol; INT8U iIndex; }SL811HID設(shè)備示例:{
0x09,
0x04,
0x00,
0x00,
0x01,
0x03, //HIDClass
0x00,
0x00,
0x00}May8,200522Copyright2005MTCNZQUSB設(shè)備-HID設(shè)備類(lèi)描述符struct
HIDClassDesc{ INT8U bLength; INT8U bType; INT16U bcdHID; INT8U bCountryCode; INT8U iNum; INT8U bClassType; INT16U bDescLen;}SL811HID設(shè)備示例:{
0x09, 0x21, 0x0100, 0x00, //notsupport
0x01, 0x22, 0x0039};May8,200523Copyright2005MTCNZQUSB設(shè)備-端點(diǎn)描述符struct
EPDesc{ INT8U bLength; INT8U bType; INT8U bEPAddr; INT8U bAttr; INT16U wMaxPktSize; INT8U bInterval;}SL811HID設(shè)備示例:{
0x07,
0x05,
0x81, //b7=1:IN
0x03, //Interrupt
0x02, 0x0A};May8,200524Copyright2005MTCNZQUSB設(shè)備-字符串描述符struct
StrDesc{ INT8U bLength; INT8U bType; INT16U wLang;}struct
UnicodeStr{ INT8U bLength; INT8U bType; INT8U UnicodeStr[];}SL811HID設(shè)備示例:{
0x04, 0x03, 0x0409 //English(USA)}{ 0x0F, 0x03, 'C',0,'y',0,'p',0,'r',0,'e',0,'s',0,'s',0};May8,200525Copyright2005MTCNZQUSB命令結(jié)構(gòu)bmRequestType(1Byte)-命令類(lèi)型D7(數(shù)據(jù)傳輸方向):0-OUT,1-IND6..5(命令的類(lèi)型)0-standard,1-class,3-factory,4-reservedD4..0(接收對(duì)象)0-device,1-interface,2-EP,3-others,4..31-reservedTokenDataHandshakebmRequestType控制傳輸設(shè)置階段命令示例:May8,200526Copyright2005MTCNZQUSB命令結(jié)構(gòu)bRequest(1Byte)-命令編碼標(biāo)準(zhǔn)命令集GET_STATUS-0,CLEAR_FEATURE-1,SET_FEATURE-3SET_ADDRESS-5,GET_DESCRIPTOR-6,GET_CONFIGURATION-8SET_CONFIGURATION-9,GET_INTERFACE-10,SET_INTERFACE-11非標(biāo)準(zhǔn)命令:Class和VendorTokenDataHandshakebRequest控制傳輸設(shè)置階段命令示例:May8,200527Copyright2005MTCNZQUSB命令結(jié)構(gòu)wValue(2Bytes)-命令參數(shù)wIndex(2Bytes)-命令參數(shù)(索引或偏移)wLength(2Bytes)-如果有數(shù)據(jù)階段,此字段為數(shù)據(jù)的字節(jié)數(shù)TokenDataHandshakewValuewIndexwLength控制傳輸設(shè)置階段命令示例:May8,200528Copyright2005MTCNZQUSB命令結(jié)構(gòu)TokenDataHandshakeTokenDataHandshake控制傳輸狀態(tài)階段示例:控制傳輸數(shù)據(jù)階段示例:May8,200529Copyright2005MTCNZQSL811HS嵌入式應(yīng)用SL811HS特點(diǎn)完全兼容USB1.1規(guī)范通過(guò)軟件設(shè)置,可支持USB主機(jī)或設(shè)備功能自動(dòng)診斷設(shè)備類(lèi)型(全速、低速設(shè)備)256字節(jié)片內(nèi)緩存自動(dòng)生成SOF、CRC5和CRC16可以支持兩個(gè)端點(diǎn)USB-A、USB-B支持12MHz和48MHz兩種晶振支持USB掛起/喚醒以及低功耗模式May8,200530Copyright2005MTCNZQSL811HS結(jié)構(gòu)根集線器及USB收發(fā)器USBSIESRAM及控制寄存器主/從模式控制中斷控制CPU接口時(shí)鐘模塊D+D-時(shí)鐘輸入中斷輸出寫(xiě)操作讀操作片選地址(A0)數(shù)據(jù)線(0~7)模式選擇May8,200531Copyright2005MTCNZQSL811HSHID設(shè)備-軟件設(shè)計(jì)讀寫(xiě)操作模塊SL811Read-讀取SL811HS相關(guān)寄存器SL811Write-設(shè)置SL811HS相關(guān)寄存器SL811BufRead-讀取SL811HS相關(guān)數(shù)據(jù)緩沖區(qū)SL811BufWrite-設(shè)置SL811HS相關(guān)數(shù)據(jù)緩沖區(qū)SL811S_Init-初始化SL811HS器件EP0_ISR-端點(diǎn)0中斷處理模塊EP1_ISR-端點(diǎn)1中斷處理模塊
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 惠州2025年廣東惠州龍門(mén)縣總醫(yī)院第一批招聘編外人員25人筆試歷年參考題庫(kù)附帶答案詳解
- 張掖2025年甘肅張掖市高臺(tái)縣招聘輔警30人筆試歷年參考題庫(kù)附帶答案詳解
- 2025年度餐飲服務(wù)合同:高端餐廳經(jīng)營(yíng)權(quán)轉(zhuǎn)讓3篇
- 2025年新能源汽車(chē)充電站停車(chē)位租賃及運(yùn)營(yíng)管理合同3篇
- 佛山廣東佛山市三水區(qū)直屬學(xué)校面向高校應(yīng)屆畢業(yè)生招聘教師62人筆試歷年參考題庫(kù)附帶答案詳解
- 2024年貼花輪胎模具項(xiàng)目可行性研究報(bào)告
- 2025年安徽滁州市來(lái)安縣新型工業(yè)科技投資有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 2025年度食堂服務(wù)人員派遣與餐飲創(chuàng)新發(fā)展合同3篇
- 2025至2030年中國(guó)室外雙色LED顯示屏數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 東莞2024年廣東東莞市大朗鎮(zhèn)下屬事業(yè)單位招聘3人筆試歷年參考題庫(kù)附帶答案詳解
- 試卷(完整版)python考試復(fù)習(xí)題庫(kù)復(fù)習(xí)知識(shí)點(diǎn)試卷試題
- 海外資管機(jī)構(gòu)赴上海投資指南(2024版)
- GB/T 44679-2024叉車(chē)禁用與報(bào)廢技術(shù)規(guī)范
- 抖音直播帶貨協(xié)議書(shū)模板
- 2024義務(wù)教育體育與健康課程標(biāo)準(zhǔn)(2022年版)必考題庫(kù)及答案
- 工業(yè)機(jī)器人控制器:FANUC R-30iB:機(jī)器人實(shí)時(shí)監(jiān)控與數(shù)據(jù)采集技術(shù)教程
- 墓地銷(xiāo)售計(jì)劃及方案設(shè)計(jì)書(shū)
- 新加坡留學(xué)完整版本
- 勞務(wù)服務(wù)合作協(xié)議書(shū)范本
- 優(yōu)佳學(xué)案七年級(jí)上冊(cè)歷史
- 中醫(yī)五臟心完整版本
評(píng)論
0/150
提交評(píng)論