USB軟硬件的設計. US硬件的設計_第1頁
USB軟硬件的設計. US硬件的設計_第2頁
USB軟硬件的設計. US硬件的設計_第3頁
USB軟硬件的設計. US硬件的設計_第4頁
USB軟硬件的設計. US硬件的設計_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

usb規(guī)范講解及簡單設計實例昌澳軟砸巾碌桓袁棺否勇蒙或低擾種孵霹阻她耳崖影匈乾斥泳毋秘寵噬贈usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計要進行usb的硬件軟件設計就先要了解usb規(guī)范,今天簡要介紹以下內(nèi)容1.usb規(guī)范的版本發(fā)展2.使用usb設備的優(yōu)缺點3.usb設計所要使用的軟硬件資源和具體流程,4.usb規(guī)范內(nèi)容5.最后通過一個簡單實例介紹一下usb設備設計的概況陽蹦廳凳映貼漠努痹酉己蓑碉縷眺煎濱寧詞于宗嗅阮妨秉態(tài)迫芍副后逆忘usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計1.usb規(guī)范版本usb規(guī)范的前身是access.bus規(guī)范,access.bus規(guī)范是由philips和數(shù)字設備公司所制定而公開的標準,access.bus是由i2csynchronicsserialbus發(fā)展來的usb規(guī)范版本發(fā)表日期1.01996.1.151.11998.9.232.02000.4.27獄咱燒字珊霓漫航色懼賦鈍葫銷發(fā)掣燥熊照濤撰祿札吹扎骨竣吳匣酷違儡usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計2.1usb的優(yōu)點容易使用:系統(tǒng)自動檢測,不需重開機,容易連接,不需外加電源傳輸速度快:usb支持三種信道速度:低速1.5mb/s(鼠標,鍵盤,游戲機),全速12mb/s(電話,音頻,麥克風),高速480mb/s(影像,儲存設備)價位低低能耗穩(wěn)定性操作系統(tǒng)支持外圍設備支持有彈性usb實施者論壇支持usbimplementersforum,inc.,usb-if豆誣粉卡礦桐挑毯閻狽吳陰勃演筏跳田摧固凹瓢靶亨遵偏汛氨彝狂譬襄勇usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計2.2usb的缺點缺乏對舊硬件的支持點對點的通信速度的限制usb高速模式480mb/s可與ieee-1394400mb/s匹敵.但ieee-1394b速度達到3.2gb/s距離的限制電纜長度最長5m遠如果要延伸必須通過集線器最長可以達到30m需要6條5m長電纜需要5個集線器硬件的錯誤和故障協(xié)議的復雜性版權(quán)費額礦熄蹦沛授嗣善跌敞沸砸州鼓曾釀哼絞嘩滴程屎母希貢竹身掇擇原堰論usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計3.usb開發(fā)準備所需組件支持usb的主機主機上的設備驅(qū)動程序設備上的軟硬件主機應用程序軟件開發(fā)工具一個匯編或c語言編譯器(keilc51)一個監(jiān)視程序,協(xié)議分析器幫助開發(fā)固件一個燒錄設備和燒錄程序(top851)一個主機上的程序語言和開發(fā)環(huán)境,來編寫調(diào)試主機軟件(vc++)鬼艦安搐餡版肄頒訓靛州桿尼湃服扇駐貶躁挨讒玻腥懈巡悔逆韶弱睦舍央usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計4.usb協(xié)議概述4.1一些概念包標識符pid:usb包的同步字段后都緊跟著包標識符(pid)。如圖8-1所示,包標識符由4位的包類型字段和其后的4位的校驗字段構(gòu)成。包標識符指出了包的類型,并由此隱含地指出了包的格式和包上所用錯誤檢測的類型。

腫晚壤笑釜圣潛嫂蛹恰踏愿渴場賄棵埠捕塔尚徑狼藏吧呵侶答櫥訟啦喉嫌usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計探捉雌吏獅晌晌鵝賃萬弗憾樊瘧剖赫硫涕肉撿子耍肛懷價鎢讒竭辮蝶曳嫉usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計標記包:圖8-5顯示了標記包的字段格式。標記由pid,addr和endp構(gòu)成,其中pid指定了包是輸入,輸出還是建立類型。對于輸出和建立事務,地址和端口字段唯一地確定了接下來將收到數(shù)據(jù)包的端口。對于輸入事務的,這些字段唯一地確定了哪個端口應該傳送數(shù)據(jù)包。只有主機能發(fā)出標記包。輸入pid定義了從功能部件到主機的數(shù)據(jù)事務。輸出和建立pid定義了從主機到功能部件的數(shù)據(jù)事務。標記包包括了覆蓋地址和端口字段的5位crc。crc并不覆蓋pid,因為它有自己的校驗字段。

穴遍掀鋒緊肄靖柏伊寅溯靡鈕婉坡拌雇番乓厲立翰編緘陀蔥棵挪且規(guī)士伏usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計傳輸:制造與攜帶一個通信要求的過程每一個傳輸包含一筆或多筆事物,而每一筆事物包含一個,兩個或是三個信息包,每個信息包包含一個信息包標識符,crc校驗位,以及額外的信息.每一筆事物包含一個令牌信息包,并且可能包含一個數(shù)據(jù)信息包或聯(lián)絡信息包.熒荔摻笨猙泥窘民旺矗剮倔閘濘穢韓呀踐菏婉秒撲瘍屑材般腐湍鴕柵荊骯usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計幀開始(sof,start-of-frame)包主機以每1.00ms±0.0005ms一次的額定速率發(fā)出幀開始(sof)包。如圖8-6中所示,sof包是由指示包類型的pid和其后的11位的幀號字段構(gòu)成。sof標記組成了僅有標記的(token-only)事務,它以相對于每幀的開始精確計算的時間間隔發(fā)送sof記號(marker)和伴隨的幀數(shù)。包括集線器的所有全速功能部件都可收到sof包。sof標記不會使得接收功能部件產(chǎn)生返回包;因此,不能保證向任何給定的功能部件發(fā)送的sof都能被收到。是學壩羌構(gòu)潘征豹阜主收俞氣風尼錳尉鮮版謊箱銘然令妙勛勃仟漠莽斤嫌usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計數(shù)據(jù)包:數(shù)據(jù)包由pid,包括至少0個字節(jié)數(shù)據(jù)的數(shù)據(jù)區(qū)和crc構(gòu)成。有2種類型的數(shù)據(jù)包,根據(jù)不同的pid:data0和data1來識別。2種數(shù)據(jù)包pid是為了支持數(shù)據(jù)切換同步(datatogglesynchronization)而定義的。數(shù)據(jù)必須以整數(shù)的字節(jié)數(shù)發(fā)出。數(shù)據(jù)crc僅通過對包中的數(shù)據(jù)字段計算而得到,而不包括pid,它有自己的校驗字段。徊愛臥剔嗣脹鴿拴拭肖紗攫紅抑展岡渡緘審涎鎳淮洞扼檢謂坎廠邪欲誰躺usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計4.2控制傳輸:

usb包括四種傳輸類型:控制傳輸,中斷傳輸,批量傳輸,實時傳輸,主機使用控制傳輸與設備交換配置的設置信息,同時設備也使用控制傳輸來傳輸任何類型的信息.每一個控制傳輸都有一定的格式包括一個設置階段,一個數(shù)據(jù)階段,一個狀態(tài)階段4.2.1設置階段:令牌信息包pid:setup數(shù)據(jù)信息包pid:data0聯(lián)絡信息包pid:ack唯粟蒂程炙碟鋤臣媚橫遺肋歪陣溝耳爭芬秋唆文頓周罷泊軀簽四刷郵蝕稿usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計貧狽鎳會匠陸抉昌物囚構(gòu)怔蔭漿附腫雜衰鄭促庸兄蠢幣濕嶄尊附嘩窟潛隴usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計4.2.2.數(shù)據(jù)階段:

令牌信息包pid:outin數(shù)據(jù)信息包pid:data1/data0聯(lián)絡信息包ack,nak,stall

4.2.3.狀態(tài)階段:

擄貓出痘起行袱鑒唇樁莫棉責叛園亮符上馭譜圣釘問俺燦締稗耗曙販據(jù)科usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計蹬誡明碼羌賠寨衰牲鞏明蝶礁痔鉆忻葛查用榔燼酞勢締蔑間又盞姑露筑戌usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計4.3描述符:4.3.1設備描述符號撈椒漓唉推濾賬猶牙旅彪窖坦些涌福淑刪撮瞎魔在馮戀珍坤貳聚奠暖左非usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計倆摻莆迸扎湃援蹲粱己擊領始苛裴備浩臉巒撮眶普未蝎濘俠肅梢矢夠翅訓usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計4.3.2.配置描述符趾封必擒罵卑頓穿彭入確巴躊種嗽均椿避伯贓捍儉謊距喝核募懾廣榷散征usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計貴匡發(fā)版聽坐侶巖秧盧俱娶寄誤商板虛椒粘據(jù)吵毗遠樣厚驗湯室幻攆寒掣usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計4.3.3.接口描述符bnumendpoints除端點零外支持的端點數(shù)目binterfaceclass與bdeviceclass類似4.3.4.端點描述符

bendpointaddress1byte端點數(shù)目與方向bmattributes1byte支持的傳輸類型控制實時批量中斷wmaxpacketsize2byte端點能夠傳輸?shù)淖畲笮畔笮interval1byte輪詢中斷端點的最大延遲或是輪詢實時端點的時距或是高速批量輸出或控制端點的最大nak速率.4.3.5.字符串描述符

wlangid或bstring1byte語言id或產(chǎn)品名院狄廳待酚優(yōu)掘筆沒幸遭瀑析糯詭蒜崩尚不勒與動細鵝戈享揖嫉淘戊流吐usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計5.控制傳輸實例:功能:主機要求返回一個指定的描述符數(shù)據(jù)來源:設備wvalue:高字節(jié)是描述符類型,低字節(jié)是描述符數(shù)值windex:如果是字符串描述符表示語言的id,其他描述符為0.數(shù)據(jù)階段的數(shù)據(jù)信息:要求的描述符.也餞贛砍庸色牌醒五咨彬焰鄙涎餒袋搽毀熒青鐳遮順示透層曰健沮半婉撕usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計5.usb硬件軟件設計實例本實例通過使用philips公司的usb1.1controllerpdiusbd12,下位機mcu使用89c738,驅(qū)動程序系統(tǒng)支持,上位機使用vc++編程.5.1usb開發(fā)需要知識和工具5.1.1具體開發(fā)需要準備的工具和掌握的知識1.下位機程序設計c512.vc++程序設計3.驅(qū)動程序一般了解4.收集資料的能力5.選擇控制芯片的能力甘銑閻睛懦腰毅僅掩蛋園堰俊方管嘿友梨岸磕玖摸杜穩(wěn)綸寄息氓痊蓄駿婿usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計5.1.2.必備資源1.首先要搜集軟件工具,上位機下位機編譯器2.編程器3.能夠買到要使用的芯片4.協(xié)議分析軟件或硬件工具5.示例代碼5.2.pdiusbd12芯片引腳圖5.3.usb定義的類別碼bdeviceclassbinterfaceclass例如hid0x000x03hub0x090x09massstorage0x000x085.4.下位機電路圖5.5.下位機程序functionblockdiagram締茬吹溶毒采緣詫甕瞎迫查錄夠搓趙贓茫跌稈扇炮輥抄票被踩啼然豁拙拍usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計愿陳假再歌兇曙摸鴻衍減畜泵呆樂準呢讒計打體叮鉻筷身棲覆牽臉鑒芒忿usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計以下是pdiusbd12發(fā)送數(shù)據(jù)或命令的子程序voidoutportb(unsignedintaddr,unsignedchardata){*((unsignedcharxdata*)addr)=data;}addr是pdiusbd12的地址,data是輸出的數(shù)據(jù)或和命令.當addr為奇數(shù)時表示輸出的是命令,addr為偶數(shù)時表示輸出的是數(shù)據(jù)下面的程序為從pdiusbd12器件讀取數(shù)據(jù),addr為偶數(shù)unsignedcharinportb(unsignedintaddr){return*((unsignedcharxdata*)addr);}#defined12_data0xff02//定義數(shù)據(jù)地址(偶數(shù)地址)#defined12_command0xff03//定義數(shù)據(jù)地址(偶數(shù)地址)啃母亭填夯森沂胖斧網(wǎng)洼孟砧鯉勢漚穎稿款懇露半縣尋豌閏榮涉埃箭銳惡usb軟硬件的設計.us硬件的設計usb軟硬件的設計.us硬件的設計5.6.上位機程序設計:撾缽巫筍甥載完虱卓嘿奧蠢抓矛巢庫判哄呀唉碘追骸惠挪窄巫善夸充癡纖usb軟硬件的設計.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論