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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > FPGA的嵌入式系統(tǒng)USB接口設(shè)計(jì)

          FPGA的嵌入式系統(tǒng)USB接口設(shè)計(jì)

          作者: 時(shí)間:2010-04-07 來(lái)源:網(wǎng)絡(luò) 收藏


          3.2 驅(qū)動(dòng)程序
          軟件由主機(jī)中的軟件和設(shè)備同件構(gòu)成。主機(jī)中的軟件主要包括USB設(shè)備驅(qū)動(dòng)(USBDD)、USB總線驅(qū)動(dòng)(USBD)和USB主控制器驅(qū)動(dòng)(HCD)。
          USB設(shè)備驅(qū)動(dòng)程序(或客戶(hù)驅(qū)動(dòng)程序)處于最頂層,它支持特定設(shè)備類(lèi)的驅(qū)動(dòng),負(fù)責(zé)與其對(duì)應(yīng)的USB設(shè)備進(jìn)行通信和讀寫(xiě)控制,實(shí)現(xiàn)各個(gè)USB設(shè)備特殊的功能應(yīng)用。連接USB設(shè)備的每種類(lèi)型的功能單元都必須具有客戶(hù)驅(qū)動(dòng)程序。客戶(hù)驅(qū)動(dòng)程序把USB設(shè)備看作是一個(gè)可被訪問(wèn)的端點(diǎn)的集合。USB設(shè)備可以被控制并與其功能單元通信。USB設(shè)備驅(qū)動(dòng)程序通過(guò)I/O請(qǐng)求包(IRP)向USB總線驅(qū)動(dòng)程序發(fā)送請(qǐng)求。這些請(qǐng)求包將一個(gè)給定的傳輸初始化。這種傳輸可以來(lái)自于一個(gè)USB目標(biāo)設(shè)備或發(fā)送到USB設(shè)備。

          USB總線驅(qū)動(dòng)(USBD)是在主機(jī)控制器驅(qū)動(dòng)和USB設(shè)備驅(qū)動(dòng)之間的模塊,它對(duì)應(yīng)USB協(xié)議的USBD,在Windows中由USBD.SYS模塊提供。它是在某一操作上對(duì)USB總線和協(xié)議提供支持的軟件,獨(dú)立于USB設(shè)備和USB設(shè)備驅(qū)動(dòng),并對(duì)它們進(jìn)行控制和提供統(tǒng)一編程。
          USB主控制器驅(qū)動(dòng)程序(HCD)處于最底層,它負(fù)責(zé)對(duì)主機(jī)控制器進(jìn)行抽象和對(duì)USB提供低級(jí)支持。
          3.3 PC端的軟件
          PC端的軟件采用面向?qū)ο蟪绦?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/設(shè)計(jì)">設(shè)計(jì),分為核心類(lèi)(包括Provider,Data,Net)和應(yīng)用類(lèi)(包括UI,Call,Record)。其中核心類(lèi)提供對(duì)硬件、操作系統(tǒng)和網(wǎng)絡(luò)環(huán)境的支持,應(yīng)用類(lèi)在核心類(lèi)的基礎(chǔ)上提供對(duì)用戶(hù)操作的支持。Provider類(lèi)定義對(duì)USB設(shè)備的讀寫(xiě)操作,提供讀取數(shù)據(jù)方法(readusb())和寫(xiě)數(shù)據(jù)方法(writeusb());Data類(lèi)包括地址數(shù)據(jù)(Address)、音頻數(shù)據(jù)(Audio)和控制數(shù)據(jù)(Command)的定義,并提供數(shù)據(jù)的分解方法(Decompose())和組合方法(Compose());Net類(lèi)提供對(duì)網(wǎng)絡(luò)的支持,包括網(wǎng)絡(luò)協(xié)議的選擇和數(shù)據(jù)的接收與發(fā)送。UI類(lèi)提供對(duì)用戶(hù)界面的支持,包括窗口、對(duì)話(huà)框等,實(shí)現(xiàn)基本用戶(hù)框架與應(yīng)用入口;Call類(lèi)提供通話(huà)功能;Record類(lèi)則提供電話(huà)錄音功能;根據(jù)不同應(yīng)用要求,可擴(kuò)展其他應(yīng)用類(lèi)。具體結(jié)構(gòu)如圖5所示。

          4 結(jié)束語(yǔ)
          USB靈活的和可編程特性可簡(jiǎn)化外部硬件的設(shè)計(jì),提高系統(tǒng)可靠性。而USB2.O控制器CY7C68013A也廣泛應(yīng)用于許多數(shù)據(jù)傳輸領(lǐng)域。已成為通信、計(jì)算機(jī)、消費(fèi)類(lèi)電子產(chǎn)品等領(lǐng)域的基礎(chǔ)器件。這里所介紹的USB設(shè)備就是一個(gè)基于系統(tǒng),該系統(tǒng)軟硬件都具有模塊化的特性,易于改造成其他應(yīng)用場(chǎng)合的語(yǔ)音控制系統(tǒng)(DAA除外)。該設(shè)計(jì)的應(yīng)用可節(jié)省大量的人力、物力。具有較大的推廣意義和使用價(jià)值。

          linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(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); })();