基于EZUSBFX2的數(shù)據(jù)采集系統(tǒng)USB接口設計_第1頁
基于EZUSBFX2的數(shù)據(jù)采集系統(tǒng)USB接口設計_第2頁
基于EZUSBFX2的數(shù)據(jù)采集系統(tǒng)USB接口設計_第3頁
基于EZUSBFX2的數(shù)據(jù)采集系統(tǒng)USB接口設計_第4頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、基于 EZUSB FX2 的數(shù)據(jù)采集系統(tǒng) USB 接口設計摘 要: 以 CYPRESS 公司的 EZ?USB FX2 芯片為基礎,對工業(yè) CT 數(shù)據(jù)采集系統(tǒng)的 USB 接口設計所涉及的幾個 方面進行了詳細的介紹。該設計中為了能提高數(shù)據(jù)傳輸?shù)乃?度, EZ?USB 芯片采用 Slave FIFO 接口方式,在此方式下,USB 內核不參與數(shù)據(jù)的傳輸。 CY7C68013A 芯片內部包含有4 KB 的可配置端點緩沖區(qū),這是大容量數(shù)據(jù)傳輸端點, 可配置成不需要 8051 固件參與就同外圍電路完成高速數(shù)據(jù)傳輸 端。 CYPRESS 公司提供的 EZ?USB 固件程序開發(fā)包中包含 有固件程序的基本框架。

2、在此介紹 CY7C68013A 芯片的結構 和特點,分析 EZ?USB FX2 固件程序框架,并給出固件程序 實例代碼,描述固件代碼裝載方式,應用程序調用驅動程序 的接口函數(shù)。采用 EZ?USB 芯片開發(fā) USB 接口,大大降低 開發(fā)難度,提高開發(fā)效率。關鍵詞: USB 2.0; EZ?USB ; FX2; 固件程序中圖分類口號:TN919?34 ; TP334.7 文獻標識碼: A 文章編號: 1004?373X (2015)04?0073?04在錐束工業(yè) CT 系統(tǒng)中,數(shù)據(jù)采集系統(tǒng)用來獲取探測器輸出信號,轉換為數(shù)字信號上傳給計算機做圖像重建,同時傳計算機的控制命令,是工業(yè) CT 的關鍵部件

3、。通用串行總線( Universal Serial Bus , USB )以其易插拔,無需配置, 真正的即插即用等特性獲得了廣泛的認可, USB 2.0 標準其 高速傳輸模式的速率可達 480 Mb/s ,可以滿足數(shù)據(jù)采集系統(tǒng) 的速率要求。本文設計采用 CYPRESS 公司的 EZ?USB FX2系列芯片作為數(shù)據(jù)采集系統(tǒng)與計算機間的 USB 接口芯片,具 體型號為 CY7C68013A1?2 。數(shù)據(jù)采集卡整體結構如圖 1 所 示,本文只介紹 USB 接口軟硬件設計部分。USB 接口設計主要涉及 USB 固件程序編寫,裝載,設備驅動程序的安裝,應用程序與驅動程序間的接口等方面。CYPRESS 公

4、司提供包含有固件程序框架,通用的設備驅動 程序的應用開發(fā)包,降低了 USB 接口的開發(fā)難度。下面就USB 接口開發(fā)所涉及的幾個方面進行詳細介紹。1 EZ?USB 硬件介紹CY7C68013A 接口芯片是 CYPRESS 公司 EZ?USB FX2系列芯片中的一種類型, 它集成了 USB2.0 協(xié)議的微處理器, 支持12 Mb/s的全速傳輸與480 Mb/s的高速傳輸,完全適用于USB2.0并向下兼容USB1.1。芯片內部集成增強型 8051內核,指令周期為 4個時鐘周期, 時鐘頻率可配置為 12 MHz, 24 MHz , 48 MHz。集成智能SIE (串行引擎接口),由USB2.0 收發(fā)器

5、與 SIE 完成 USB 協(xié)議的封包與解包功能 1。CY7C68013A芯片內部包含3個固定的,64 B的端點緩沖區(qū),分別是EP0, EP1IN,EP1OUT。EP0是默認的控制傳輸端點,EP1IN 和 EP1OUT 支持塊傳輸,中斷傳輸與同步傳輸,此三端點只能由 8051 內核訪問。還有 4 KB 的可配置端點緩沖區(qū), 分別是EP2, EP4, EP6, EP8,它們是大容量寬帶的數(shù)據(jù)傳輸端點,不需要 8051 固件參與就同外圍電路完成高速的數(shù) 據(jù)傳輸 3 。這 4 個端點可以靈活的配置容量,滿足多種數(shù)據(jù) 傳輸要求。2 EZ?USB FX2 CY7C68013A 固件程序設計CY7C6801

6、3A 固件程序是指在 EZ?USB 芯片內部 RAM中運行的程序代碼,固件程序是USB 接口設計的核心部分。固件代碼的作用就是控制芯片執(zhí)行指定的設備功能,即處理 上位機下傳的各種 USB 設備請求,控制芯片與外圍電路進行 數(shù)據(jù)傳輸。 EZ?USB 芯片內部集成增強型 8051 內核, USB芯片的固件程序實際上就是單片機程序文件,可以采用匯編 語言或 C 語言編寫。 CYPRESS 公司提供的 EZ?USB FX2 固 件程序開發(fā)包中提供了固件程序的基本框架,這為用戶開發(fā) 基于 EZ?USB FX2 芯片的 USB 設備提供了很大的方便。2.1 固件框架 固件程序框架主要包括設備初始化, 處理

7、標準 USB 設備請求和 USB 掛起時的電源管理等。程序框架使用 Keil C51編寫,它是現(xiàn)成的直接可以編譯為 HEX 文件的 8051 程序代 碼,使用者只需要改寫 USB 描述表, 在一些固定函數(shù)下添加 功能代碼,主要是 EZ?USB 芯片的初始化配置和實現(xiàn) USB外設功能的代碼。固件框架的流程圖如圖 2 所示4 。復位后固件先初始化一些全局變量,然后調用初始化函數(shù) TD_Init (),該函數(shù)初始化 USB 設備到沒有配置的狀態(tài), 并打開中斷。循環(huán) 1 s 進行一次設備重枚舉,直到端點 0 收 到一 SETUP 包,然后進入 while 循環(huán)語句,開始 TD_Poll任務處理函數(shù)。依

8、次執(zhí)行下列過程:1)TD_Poll) 用戶任務調度函數(shù);如果發(fā)現(xiàn)USB 設備請求,則分析該請求并執(zhí)行;如果收到USB 掛起信號,則調用 TD_Suspend()掛起函數(shù),內核掛起,直到出現(xiàn) USB 遠程喚醒信號,調用TD_Resume (),內核喚醒,從新進入 while循環(huán)。固件框架包含的文件如表 1 所示。表 1 固件框架文件列表2.2 固件代碼編寫USB固件程序主要的功能有 2個:一是PC機的Windows系統(tǒng)能夠檢測與識別相應設備;二是數(shù)據(jù)的上傳與下傳。Cypress公司為EZ?USB FX2系列芯片提供的固件程序框架極大的簡化了固件開發(fā)。一般的固件開發(fā)只需要修改用戶調 度函數(shù)文件Pe

9、riph.c與USB描述符列表文件 Dscr.a51,這兩個文件在 Keil C51 編程器中都可打開。 Periph.c 文件中只需 要修改 TD_Init ()與 TD_Poll ()函數(shù)。在本設計中為了能進行高速的數(shù)據(jù)傳輸,EZ?USB芯片采用Slave FIFO接口方TD_Poll)函數(shù)不用寫代碼,設置成空函數(shù)就可以了。這樣USB式。此方式下, USB 內核不參與數(shù)據(jù)的傳輸,所以固件程序的開發(fā)主要任務就是改寫 TD_Init ()函數(shù)與 USB描述符列表文件Dscr.a51。在本設計中配置端點6傳輸方向為 IN ,傳輸方式為塊傳輸,緩沖大小設置為1 024 B ,深度為 2 級,作用是上傳采集的數(shù)據(jù)。配置端點2 傳輸方向為OUT,傳輸方式為塊傳輸,緩沖大小設置為1 024 B ,深度固件程序的編為 2 級,作用是下傳 FPGA 的命令配置參數(shù)。譯使用Keil P,Vision2集成編譯環(huán)境,集成編譯環(huán)境中包括有 C51 編譯器, A51 匯編器等工具與調試器。代碼中還需包 含頭文件 FX2.h與Fx2regs.h,庫文件Ezusb

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論