《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 利用USB2.0技術(shù)的高速雙路數(shù)據(jù)采集系統(tǒng)
利用USB2.0技術(shù)的高速雙路數(shù)據(jù)采集系統(tǒng)
摘要: 近年來,USB接口由于其傳輸速率高,真正的即插即用等優(yōu)點正在逐漸取代傳統(tǒng)的計算機接口如:RS232,EPP等。目前,許多的芯片生產(chǎn)商都推出了符合USB協(xié)議的芯片,如Philips公司的PDIUSBD12,NS公司的USBN9602等。在眾多的USB2.0芯片中,Cypress公司的EZ-USB FX2(CY7C68013)芯片是一個不錯的選擇。本文設(shè)計了一種基于EZ-USB FX2和MAX1195的數(shù)據(jù)采集系統(tǒng),該系統(tǒng)符合USB2.0協(xié)議標準,通過與高精度激光縱模分析儀連接進行調(diào)試,證明該系統(tǒng)達到了預(yù)定目的。
Abstract:
Key words :

  1.引言

  近年來,USB接口由于其傳輸速率高,真正的即插即用等優(yōu)點正在逐漸取代傳統(tǒng)的計算機接口如:RS232,EPP等。目前,許多的芯片生產(chǎn)商都推出了符合USB協(xié)議的芯片,如Philips公司的PDIUSBD12,NS公司的USBN9602等。在眾多的USB2.0芯片中,Cypress公司的EZ-USB FX2(CY7C68013)芯片是一個不錯的選擇。本文設(shè)計了一種基于EZ-USB FX2和MAX1195的數(shù)據(jù)采集系統(tǒng),該系統(tǒng)符合USB2.0協(xié)議標準,通過與高精度激光縱模分析儀連接進行調(diào)試,證明該系統(tǒng)達到了預(yù)定目的。

  2. CY7C68013芯片和MAX1195芯片介紹

  2.1 CY7C68013介紹:

  CY7C68013在一塊芯片上同時集成了USB2.0收發(fā)器,串行接口引擎SIE,增強型的8051微控制器以及一個可編程外圍接口GPIF(General Programmable Interface)。CY7C68013的“量子FIFO”(FIFO,先進先出存儲器)特性使得無需8051CPU的任何干預(yù),數(shù)據(jù)即可從外設(shè)上傳到主機,這種數(shù)據(jù)傳輸模式徹底解決了USB2.0收發(fā)器與一般8051微控制器連接時由于8051的時鐘頻率低而導(dǎo)致的傳輸速率瓶頸問題。CY7C68013芯片的另一個突出優(yōu)點是其“‘軟’配置”,代碼和數(shù)據(jù)能夠直接通過USB接口下載到片內(nèi)的RAM上,這一功能通過Cypress公司獨創(chuàng)的“重枚舉”(ReNumerationTM)功能實現(xiàn)。CY7C68013芯片有四個可編程的批量、中斷、同步傳輸端點,可以分別設(shè)置為雙緩沖,三緩沖和四緩沖模式,8位或者16位的外部數(shù)據(jù)接口,該接口可以根據(jù)需要工作在 GPIF或者SLAVEFIFO模式。其中GPIF能夠和絕大部分并行接口如FIFO等實現(xiàn)“無膠”連接,即無需外加任何微控制器或CPLD、FPGA 等。本文的設(shè)計中采用了GPIF方式。

  2.2 MAX1195介紹:

  MAX1195是由MAXIM公司推出的一款低功耗、雙路、高速、八位模數(shù)轉(zhuǎn)換芯片,采用流水線(Pipeline)結(jié)構(gòu),最高采樣率40Mbps,內(nèi)部集成了兩個 ADC,真正實現(xiàn)兩路同步采樣轉(zhuǎn)換。其工作電壓范圍是2.7V-3.6V,具有減小功耗的休眠模式和關(guān)斷(Shut-Down)模式,單端或者差分輸入方式,片上采樣保持(T/H)電路,內(nèi)部或者外部參考電壓,含有用戶可選擇的數(shù)據(jù)輸出格式:二的補碼格式或者補償二進制碼格式,具有輸出使能控制,可以將輸出置為高阻態(tài)。此外MAXIM還提供了與MAX1195引腳、封裝完全兼容的10位、更高采樣率的模數(shù)轉(zhuǎn)換芯片,如MAX1197、MAX1198等,因此系統(tǒng)升級非常方便。在本文的工作中,采用了內(nèi)部參考電壓、雙路單端模擬輸入、補償二進制碼輸出格式。

  3.系統(tǒng)整體構(gòu)成及其工作原理介紹:

  3.1系統(tǒng)構(gòu)成:

  系統(tǒng)的整體框圖如圖1所示。整個系統(tǒng)主要包括USB傳輸芯片CY7C68013,先進先出存儲器(FIFO)SN74V235和模數(shù)轉(zhuǎn)換芯片MAX1195組成。反相器74LVC04主要起MAX1195和FIFO之間的邏輯控制作用。

 


  圖1       系統(tǒng)整體框圖

  3.2系統(tǒng)工作原理:

  MAX1195的兩路輸入信號是同時被采樣的,十六位的數(shù)據(jù)輸出總線使兩路數(shù)據(jù)可以同時輸出,分別占八位,即:D0A~D7A和D0B~D7B;SN74V235輸入為18位,根據(jù)CMOS技術(shù)的要求,將未使用的D16和D17引腳接地。MAX1195采集到的數(shù)據(jù)首先送進FIFO里, FIFO的寫時鐘(WCLK)和AD的轉(zhuǎn)換時鐘反相,這樣可以充分滿足MAX1195輸出數(shù)據(jù)的建立時間,避免發(fā)生數(shù)據(jù)丟失或者數(shù)據(jù)重復(fù)寫入現(xiàn)象。 SN74V235的 (Programmable Almost Full)可編程幾乎滿信號經(jīng)74LVC04反相后接MAX1195的Sleep和 引腳,以免FIFO發(fā)生溢出而丟失數(shù)據(jù)。SN74V235的數(shù)據(jù)輸出引腳Q0~Q15與CY7C68013的GPIF模式下的數(shù)據(jù)線FD[15:0]即端口B和端口D組成的十六位數(shù)據(jù)總線相連,數(shù)據(jù)SN74V235到EZ-USB FX2的時序過程由CY7C68013的GPIF 控制。FX2采用了“量子FIFO”結(jié)構(gòu),在FX2里面,數(shù)據(jù)可以分為兩個域:USB域和GPIF接口域。這兩個域是獨立的,允許分別使用不同的時鐘和邏輯控制數(shù)據(jù)的傳輸,USB域是由SIE控制的,SIE通過USB口接收或者發(fā)送端點FIFO的數(shù)據(jù)。FX2的“量子FIFO”能夠幾乎不花時間在這兩個數(shù)據(jù)域中的轉(zhuǎn)移數(shù)據(jù),因為這兩個域用的FIFO在物理上是同一個。所以根據(jù)“量子FIFO”原理,實際上數(shù)據(jù)已經(jīng)存在于屬于USB域的端點FIFO里面了,采用USB的BULK傳輸方式,使該數(shù)據(jù)完全不經(jīng)過低頻CPU干預(yù),而是采用FX2提供的AutoIn模式,即一旦FX2端點緩沖區(qū)的數(shù)據(jù)達到指定字節(jié)數(shù),數(shù)據(jù)將自動被打包從USB口上傳到主機。

  3.3 GPIF波形及程序介紹:

  GPIF是FX2的端點FIFO的片內(nèi)控制器,可以完全代替片外的控制器而實現(xiàn)FX2與外圍FIFO的“無膠”連接。GPIF的核心是一個可編程狀態(tài)機,可以產(chǎn)生六個“控制”(CTL)和九個“地址”(GPIFADR[8:0])信號,可以接收六個外部(RDY)“準備好”輸入,八位或者十六位數(shù)據(jù)總線,時鐘可以用FX2的IFCLK,也可以由外圍提供。本文GPIF接口的詳細硬件連接如圖2所示。

 


  圖2  GPIF與SN74V235詳細連接圖

關(guān)鍵字:USB2.0技術(shù) 高速雙路數(shù)據(jù)采集

 

  GPIF狀態(tài)機可以定義四個波形描述符,一般情況下是:FIFO讀,F(xiàn)IFO寫,單字/字節(jié)讀,單字/字節(jié)寫。Cypress提供了圖形化的波形描述工具GPIF Designer,用戶只需要給出GPIF波形,GPIF Designer會自動生成C語言的波形代碼Gpif.c,可以直接鏈接到用戶的固件程序中。本文中用到了FIFORd描述符,波形如圖3所示。

 


  圖3      GPIF Designer設(shè)計的 FIFORd波形

  4.系統(tǒng)軟件編寫

  系統(tǒng)軟件主要包括三個部分:下位機CY7C68013的固件,USB驅(qū)動程序和上位機主機應(yīng)用程序。

  4.1 固件程序編寫

  對于下位機CY7C68013的固件編寫,Cypress公司給出了在Keil C51下的固件程序框架,固件框架完成EZ-USB FX2的初始化、USB標準設(shè)備請求處理、USB掛起模式下的電源管理服務(wù)和USB中斷處理。Cypress還提供了函數(shù)鉤子來加速用戶代碼的添加。用戶只需要簡單地提供一個USB描述符表和執(zhí)行外圍功能的代碼即可。

  4.2 驅(qū)動程序編寫

  Windows系統(tǒng)下的USB驅(qū)動包括三層,從高到低依次是:USB客戶端設(shè)備驅(qū)動(USB Client Device Driver)、USB總線驅(qū)動(USB Hub(Bus) Driver)、主機控制器驅(qū)動(Host Controller Driver)。后兩者由Windows系統(tǒng)提供,用戶只需要開發(fā)USB客戶端設(shè)備驅(qū)動程序,Cypress公司提供了一個通用的驅(qū)動程序 (General Purpose Driver),即ezusb.sys,一般情況下,該驅(qū)動程序可以滿足FX2開發(fā)者的需要。本文使用了Cypress公司的通用驅(qū)動 ezusb.sys。為了使用ezusb.sys,用戶必須編寫對應(yīng)的inf文件,inf文件將特定的USB設(shè)備綁定給相應(yīng)的驅(qū)動程序,該inf文件參照 ezusbw2k.inf編寫。

  4.3 主機應(yīng)用程序編寫

  通用驅(qū)動程序GPD即ezusb.sys提供了基本USB設(shè)備請求和數(shù)據(jù)傳輸?shù)挠脩裟J浇涌冢脩裟J綉?yīng)用程序通過Win32函數(shù) DeviceIoControl()給設(shè)備驅(qū)動器發(fā)送請求。Ezusb.sys提供了基本設(shè)備請求、批量讀寫、同步讀寫等一系列IOCTL函數(shù)。這里以 IOCTL_EZUSB_BULK_READ(EZUSB批量傳輸)為例加以介紹。

  批量傳輸模式下讀FX2的端點FIFO的關(guān)鍵代碼如下:

  DWORD  ioctl_val=IOCTL_EZUSB_BULK_READ;  //設(shè)置從設(shè)備中讀數(shù)據(jù)

  Bresult=DeviceIoControl ( hDevice , ioctl_val ,  //從設(shè)備讀數(shù)據(jù)

  &bulkControl ,      //端點號

  sizeof ( BULK_TRANSFER_CONTROL),  //傳入?yún)?shù)的大小

  buffer ,  //讀數(shù)據(jù)的緩沖區(qū)

  length ,  //讀數(shù)據(jù)的長度

  (unsigned long *)&nBytes , //驅(qū)動返回的數(shù)據(jù)的實際長度

  NULL);

  限于篇幅,其他程序代碼從略。

  6.結(jié)束語

  本文的創(chuàng)新點是充分發(fā)揮了CY7C68013的優(yōu)勢,利用FX2的內(nèi)部可編程狀態(tài)機GPIF實現(xiàn)了與外圍FIFO“無膠”連接,避免了使用外圍ASIC或者CPLD、FPGA等的麻煩,系統(tǒng)升級方便。整個電路結(jié)構(gòu)緊湊,占用面積小,便于攜帶。

  本文采用Cypress公司的USB2.0芯片CY7C68013設(shè)計了一種通用的高速雙路同步數(shù)據(jù)采集系統(tǒng),通過將其與高精度激光縱模分析儀連接進行試驗,證明該系統(tǒng)實現(xiàn)了數(shù)據(jù)的高速實時傳輸,達到了預(yù)先設(shè)計的目標。隨著USB口的進一步普及和計算機的發(fā)展,本文設(shè)計的這種USB數(shù)據(jù)采集系統(tǒng)必將得到更加廣泛的應(yīng)用。

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品v欧美精品v日本精品动漫 | 国产精品一区二区你懂得 | 99精品欧美| 销魂美女一区二区三区视频在线| 国产精品一区二区你懂的| 欧美深夜影院| 欧美日韩另类一区| 欧美日韩免费高清| 欧美另类videos死尸| 欧美国产日韩二区| 欧美国产日本韩| 欧美精品一区视频| 欧美剧在线观看| 欧美日韩一区二区视频在线| 欧美日韩综合另类| 欧美三级日韩三级国产三级| 欧美三级乱码| 国产精品区一区二区三区| 欧美三区在线视频| 欧美色视频在线| 欧美午夜精品久久久久久超碰| 久久精品国产亚洲5555| 久久精品官网| 猛男gaygay欧美视频| 欧美成人影音| 欧美日本二区| 国产精品成人观看视频国产奇米| 久久久人成影片一区二区三区| 亚洲精品欧美精品| 日韩视频一区二区三区| 中文一区二区| 欧美伊人久久大香线蕉综合69| 日韩亚洲精品视频| 中国亚洲黄色| 亚洲欧美综合v| 久久久久国产精品www | 欧美一区二区私人影院日本| 羞羞色国产精品| 久久xxxx精品视频| 久热爱精品视频线路一| 欧美xxx成人| 欧美视频在线看| 国产日韩精品视频一区| 狠狠综合久久| 亚洲伦理一区| 亚洲欧美日本国产有色| 亚洲福利在线看| 中文在线一区| 久久精品视频网| 欧美黄色小视频| 国产精品乱码妇女bbbb| 国内久久婷婷综合| 亚洲精品三级| 亚洲欧美日韩中文视频| 亚洲国产高清自拍| 亚洲午夜av| 久久久天天操| 欧美日韩人人澡狠狠躁视频| 国产日韩欧美二区| 亚洲激情在线播放| 午夜伦理片一区| 99成人精品| 久久精品国产77777蜜臀| 欧美激情综合网| 国产日本欧美一区二区三区在线| 国产精品午夜av在线| 国产欧美日韩一区二区三区在线观看| 欧美日韩一区二区视频在线 | 在线一区二区三区做爰视频网站| 亚洲精品国产品国语在线app| 久久精品国产综合| 一本久久a久久免费精品不卡| 亚洲伦理在线观看| 亚洲一区精品视频| 美女免费视频一区| 国产精品一区二区久激情瑜伽| 国产精品国产精品国产专区不蜜| 欧美巨乳在线| 国产一区二区三区在线观看免费| 国产精品一区毛片| 亚洲欧洲免费视频| 欧美在线影院| 亚洲一区欧美一区| 欧美激情一级片一区二区| 国产一区二区精品丝袜| 正在播放亚洲| 91久久中文| 久久精品国产77777蜜臀| 欧美三日本三级三级在线播放| 国产精品多人| 亚洲国产精彩中文乱码av在线播放| 在线观看的日韩av| 亚洲欧美成人| 亚洲欧美久久久| 欧美精品在线视频| 国产综合色在线视频区| 亚洲一区二区精品在线| 一级成人国产| 欧美成人午夜剧场免费观看| 国内精品福利| 午夜影院日韩| 销魂美女一区二区三区视频在线| 久久美女性网| 国产精品一区久久久| 亚洲日本中文字幕免费在线不卡| 一本大道久久精品懂色aⅴ| 亚洲国产婷婷综合在线精品| 久久九九99| 国产性做久久久久久| 亚洲中午字幕| 午夜精品一区二区三区四区| 欧美经典一区二区三区| 亚洲国产网站| 亚洲日本中文字幕| 免费看黄裸体一级大秀欧美| 狠狠久久亚洲欧美| 亚洲第一精品夜夜躁人人爽| 欧美一区二区三区在线观看视频| 欧美成人69av| 国产一区在线播放| 欧美影视一区| 久久综合九色综合欧美狠狠| 国产在线精品一区二区夜色| 欧美一区国产一区| 久久天天躁狠狠躁夜夜爽蜜月| 欧美日韩亚洲成人| 亚洲理论在线| 亚洲一区二区三区四区中文| 欧美丝袜一区二区三区| 一个色综合导航| 午夜精品视频网站| 国产午夜精品久久久久久免费视| 亚洲人成网站777色婷婷| 999亚洲国产精| 欧美日韩激情小视频| 99视频精品在线| 亚洲午夜免费视频| 国产精品日日摸夜夜摸av| 亚洲专区在线| 久久久亚洲精品一区二区三区 | 国产精品v亚洲精品v日韩精品| 韩日视频一区| 亚洲国产99精品国自产| 麻豆成人小视频| 最新亚洲视频| 亚洲一区国产视频| 国产日韩欧美一区二区三区在线观看 | 欧美午夜精品久久久久久浪潮| 激情久久影院| 亚洲精品久久久蜜桃| 欧美日韩理论| 亚洲欧美日韩久久精品| 久久久久久精| 亚洲大片精品永久免费| 中文在线一区| 国产日韩欧美日韩| 亚洲欧洲一级| 欧美午夜在线| 欧美自拍丝袜亚洲| 欧美激情按摩| 亚洲影视九九影院在线观看| 久久久爽爽爽美女图片| 亚洲欧洲日本mm| 欧美一区免费| 亚洲国产天堂久久综合| 午夜久久久久| 亚洲高清一区二区三区| 亚洲一区二区三区四区中文| 国产综合18久久久久久| 99精品视频免费观看| 国产精品免费观看视频| 亚洲国产精品一区二区久| 欧美日韩视频| 久久精品国产第一区二区三区最新章节 | 日韩一级免费| 国产精品亚洲а∨天堂免在线| 亚洲精品孕妇| 欧美亚洲系列| 亚洲第一中文字幕| 性色av一区二区三区在线观看| 欧美日韩视频在线一区二区| 亚洲欧美中文在线视频| 欧美另类videos死尸| 性欧美精品高清| 欧美激情精品久久久| 欧美一区二区日韩| 欧美国产日韩a欧美在线观看| 亚洲黄色av一区| 欧美一级久久久久久久大片| 亚洲成色www8888| 午夜精品电影| 亚洲国产欧美不卡在线观看| 欧美在线视频观看| 99re视频这里只有精品| 久久免费视频一区| 亚洲一区在线视频| 欧美日韩成人在线播放| 久久精品国产久精国产爱| 国产精品久99| 亚洲最快最全在线视频|