<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > USB開(kāi)發(fā)基礎(chǔ):USB設(shè)備的開(kāi)發(fā)流程

          USB開(kāi)發(fā)基礎(chǔ):USB設(shè)備的開(kāi)發(fā)流程

          作者: 時(shí)間:2016-12-13 來(lái)源:網(wǎng)絡(luò) 收藏
          USB設(shè)備的開(kāi)發(fā)一般包括主機(jī)端(上位機(jī))驅(qū)動(dòng)程序的開(kāi)發(fā)(如果您的USB設(shè)備符合某一標(biāo)準(zhǔn)設(shè)備類且主機(jī)端已經(jīng)提供了此類設(shè)備的驅(qū)動(dòng)程序的話,則可以省掉此步驟)和USB設(shè)備端驅(qū)動(dòng)程序的開(kāi)發(fā),有時(shí)還可能包括主機(jī)端應(yīng)用程序的設(shè)計(jì)工作。

          1、設(shè)備系統(tǒng)需求分析

          本文引用地址:http://www.ex-cimer.com/article/201612/329553.htm

          設(shè)備系統(tǒng)需求分析是進(jìn)行USB設(shè)備設(shè)計(jì)的第一步,通過(guò)對(duì)USB設(shè)備功能特性和USB主機(jī)端操作系統(tǒng)的分析,可以獲得實(shí)現(xiàn)該USB設(shè)備的軟硬件設(shè)計(jì)需求。

          在該階段,設(shè)計(jì)者需要充分了解該設(shè)備的應(yīng)用環(huán)境(如USB主機(jī)的軟件、硬件平臺(tái)),這樣以用來(lái)確定是否需要提供USB主機(jī)端相關(guān)軟件工作,以便該設(shè)備能得到廣泛地應(yīng)用。為了提供合理的軟硬件設(shè)計(jì)方案,設(shè)計(jì)者還需要充分了解市場(chǎng)上的USB接口芯片,不同的USB接口芯片在USB協(xié)議上有著不同程度的支持,比如,對(duì)數(shù)據(jù)包地址的硬件自動(dòng)識(shí)別、CRC16和CRC5的自動(dòng)生成等等。

          當(dāng)然,在確定具體的軟硬件需求時(shí),產(chǎn)品的開(kāi)發(fā)費(fèi)用和開(kāi)發(fā)周期也是必須考慮的因素。

          2、設(shè)備硬件需求

          通過(guò)設(shè)備系統(tǒng)需求分析,以及對(duì)市場(chǎng)上USB接口芯片的充分了解,設(shè)計(jì)者必須確定相應(yīng)的設(shè)備硬件結(jié)構(gòu)以及可能采用的硬件。在選擇器件時(shí),需要考慮到器件體積、功耗等,因?yàn)?,小的設(shè)備功耗,有利于采用總線供電模式。必須通過(guò)設(shè)備系統(tǒng)的功耗來(lái)確定是否需要提供本地電源?! ?/p>

          3、設(shè)備軟件需求

          在確定了設(shè)備的硬件結(jié)構(gòu)以后,該設(shè)備的軟件結(jié)構(gòu)就會(huì)同時(shí)產(chǎn)生。不同的硬件平臺(tái),可能需要不同程度的軟件支持。

          4、設(shè)備硬件設(shè)計(jì)

          在選定USB控制芯片以后,如果是帶USB接口的單片機(jī),則是一般單片機(jī)應(yīng)用系統(tǒng)的開(kāi)發(fā);反之,就是如何把USB接口芯片與單片機(jī)應(yīng)用系統(tǒng)融合的問(wèn)題。一般USB接口芯片都支持多種并行總線結(jié)構(gòu)(復(fù)用/非復(fù)用),可以方便的與多種單片機(jī)接口。硬件設(shè)計(jì)中要注意的就是USB接口芯片的時(shí)鐘速度比較高,所以匹配網(wǎng)絡(luò)的設(shè)計(jì)以及PCB布線要特別關(guān)注。

          5、設(shè)備軟件設(shè)計(jì)

          USB設(shè)備的軟件設(shè)計(jì)主要包括兩部分:一是USB設(shè)備端的軟件開(kāi)發(fā),主要完成USB協(xié)議處理與數(shù)據(jù)交換以及其它應(yīng)用功能程序。二是主機(jī)端的程序,由USB通信程序(驅(qū)動(dòng)程序)和用戶服務(wù)程序兩部分組成,主機(jī)端用戶服務(wù)程序通過(guò)USB通信程序(驅(qū)動(dòng)程序)與系統(tǒng)USBDI(USB Device Interface)通信,由系統(tǒng)完成USB協(xié)議的處理與數(shù)據(jù)傳輸。主機(jī)端程序的開(kāi)發(fā)難度比較大,程序員不僅要熟悉USB協(xié)議,如果需要開(kāi)發(fā)主機(jī)端驅(qū)動(dòng)程序的話,還要熟悉主機(jī)端操作系統(tǒng)(如常用的WINDOWS系統(tǒng))體系結(jié)構(gòu)并能熟練運(yùn)用DDK工具(驅(qū)動(dòng)程序開(kāi)發(fā)工具)。

          6、設(shè)備調(diào)試

          要快捷、成功的開(kāi)發(fā)一個(gè)USB設(shè)備,正確、合理的調(diào)試方法是必不可少的環(huán)節(jié)。調(diào)試基本分三步進(jìn)行:首先對(duì)外部設(shè)備(單片機(jī)部分)借助PC調(diào)試軟件(常用的有:bus hound、USB MONITOR,某些芯片生產(chǎn)商還提供針對(duì)特定芯片的調(diào)試軟件)將設(shè)備端的USB協(xié)議(主要有描述符請(qǐng)求、端口配置、地址設(shè)置以及基本數(shù)據(jù)交換)調(diào)通(當(dāng)然我們還可以使用USB分析儀等開(kāi)發(fā)設(shè)備,但此類設(shè)備一般比較昂貴)。然后,用調(diào)試好的USB設(shè)備接口來(lái)開(kāi)發(fā)、調(diào)試PC軟件,這一步相對(duì)比較容易。最后,加上USB設(shè)備端的其它用戶程序,對(duì)整個(gè)完整的系統(tǒng)進(jìn)行系統(tǒng)調(diào)試。



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();