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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > USB2.0接口芯片CY7C68013的固件程序開發(fā)

          USB2.0接口芯片CY7C68013的固件程序開發(fā)

          作者: 時間:2012-04-23 來源:網(wǎng)絡(luò) 收藏

          摘要:接口技術(shù)為外設(shè)與主機(jī)之間提供了一種靈活高效的雙向數(shù)據(jù)通道??蓮V泛地應(yīng)用于數(shù)據(jù)采集、工業(yè)控制和消費(fèi)數(shù)碼等方面。本文簡要介紹了支持協(xié)議的的結(jié)構(gòu)。分析了 芯片的固件程序框架的結(jié)構(gòu)。給出了如何在該固件程序框架下使用C語言進(jìn)行固件程序開發(fā)的方法。
          關(guān)鍵字, 接口,固件程序

          引言:

          現(xiàn)代工業(yè)生產(chǎn)和科學(xué)研究對數(shù)據(jù)采集的要求日益提高,在瞬態(tài)信號測量、圖像處理等一些高速、高精度的測量中,需要進(jìn)行高速數(shù)據(jù)采集。USB2.0接口以其高速率、靈活性等優(yōu)點(diǎn)漸有取代傳統(tǒng)的ISA及PCI數(shù)據(jù)總線的趨勢。與此同時作為一種靈活而又低廉的接口技術(shù),USB接口更是以其熱插拔特性成為各種PC外設(shè)的首選接口。因此,圍繞著USB2.0的開發(fā)成為當(dāng)前的一大熱門。
          下面將以Cypress公司的芯片為例來探討一下支持USB2.0協(xié)議的固件程序的開發(fā)。


          1. CY7C68013簡介:
          CY7C68013芯片是Cypress公司的EZ-USB FX2系列中一種既滿足USB2.0協(xié)議同時兼容USB1.1協(xié)議的功能強(qiáng)大的。其結(jié)構(gòu)如下圖所示[2]:

          USB2.0接口芯片CY7C68013的固件程序開發(fā)

          圖1 CY7C68013接口芯片結(jié)構(gòu)


          該芯片有如下幾個特點(diǎn)[2]:
          1)集成有一塊增強(qiáng)型8051內(nèi)核
          與普通8051微處理器相比該增強(qiáng)型處理器有如下改進(jìn):
          l完成每個指令周期只需4個時鐘周期;
          l時鐘頻率可軟配置為12/24/48MHz;
          2)集成有一個串行接口引擎(SIE)以及一個USB2.0收發(fā)器
          由于USB2.0收發(fā)器和串行接口引擎完成了USB協(xié)議的封包、解包等功能,屏蔽了底層信號的電氣特性。
          3)支持軟配置:
          采用再次枚舉(ReNumeration)技術(shù),固件程序可以保存在主機(jī)上,每次上電后通過USB接口將固件下載到芯片RAM中。具有很大的靈活性。
          4)通用可編程接口(GPIF):
          GPIF提供可編程控制的接口時序,使得無需附加邏輯(glue logic)即能實(shí)現(xiàn)與外圍芯片如DSP、ASIC等的連接,同時也支持ATAPI、EPP等總線標(biāo)準(zhǔn)。
          5)四個可編程端口(Endpoint):
          CY7C68013共有7個輸入輸出端口:EP0、EP1OUT、EP1IN、EP2、EP4、EP6、EP8。其中EP2、EP4、EP6、EP8 分別可以被配置為批量/中斷/同步傳輸模式,傳輸方向均可配置為出/入。
          6)可編程緩沖區(qū)(Buffer)深度:
          端口EP2、EP6的緩沖區(qū)大小可編程為512或1024字節(jié),深度可編程為2/3/4倍大小;端口EP4、EP8的緩沖區(qū)固定為512字節(jié)大小,深度為2倍。采用不同的配置方式,實(shí)現(xiàn)特定帶寬、速率要求的數(shù)據(jù)傳輸。


          2.開發(fā)工具:


          Cypress公司的網(wǎng)站(http://www.cypress.com)上提供了CY7C68013芯片的開發(fā)工具包下載,該開發(fā)包提供了開發(fā)固件程序的所需的一些資源:Keil uVision2集成開發(fā)環(huán)境(限制版);Cypress C51固件框架程序以及一些例子程序。
          Keil uVision2 是一個功能強(qiáng)大的集成開發(fā)環(huán)境,該開發(fā)環(huán)境集成有C51編譯器和A51匯編器以及BL連接定位器等一系列工具和模擬仿真、調(diào)試器,因此它能夠支持C程序和匯編程序混合的工程,給軟件的開發(fā)帶來很大的便利[5]。
          Keil C51是一種專為8051單片機(jī)設(shè)計的高效率C語言編譯器,符合ANSI標(biāo)準(zhǔn),生成的程序代碼運(yùn)行速度極高,所需要的存儲空間極小,完全可以個匯編語言相媲美。同時,C51具有豐富的庫函數(shù),多達(dá)100多種功能函數(shù)。因此,采用C語言作為開發(fā)語言以Keil uVision2作為工程開發(fā)平臺,完成源代碼的編寫、仿真、調(diào)試,將在相當(dāng)程度上降低固件開發(fā)難度、提高開發(fā)效率[4]。


          3.固件結(jié)構(gòu)及組成:


          固件程序的功能雖然復(fù)雜,在編寫時需要用到大量的函數(shù),但其基本結(jié)構(gòu)卻相對簡單,包括如下幾個部分:
          3.1設(shè)備描述符表:
          每一個USB設(shè)備在與主機(jī)建立數(shù)據(jù)通信之前必須先向主機(jī)通報自己的具體配置,包括設(shè)備的廠商、產(chǎn)品識別號(VID、PID),設(shè)備的供電方式以及能量消耗等一系列重要信息。而這些有關(guān)設(shè)備的信息就是通過設(shè)備描述符表來通報給主機(jī),從而使主機(jī)采用適當(dāng)?shù)姆绞浇⑴c設(shè)備之間的連接.其結(jié)構(gòu)如下所示:
          DeviceDscr:
          db 18 ;;該描述符長度(以字節(jié)為單位)
          db DSCR_DEVICE ;; 描述符類型
          ……
          db 1 ;; 共有幾種配置(1種)

          pid控制相關(guān)文章:pid控制原理



          上一頁 1 2 下一頁

          關(guān)鍵詞: USB2.0 接口芯片 CY7C68013

          評論


          相關(guān)推薦

          技術(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); })();