簡(jiǎn)易USB接口卡的設計和實(shí)現
目前比較常用的方法是在PC機或工控機內安裝ISA或PCI數據采集卡(如A/D卡及422,485卡).但這些數據采集卡存在安裝麻煩,受計算機插槽數量、地址、中斷資源的限制,可擴展性差等缺點(diǎn)特別是在一些電磁干擾較強的工業(yè)現場(chǎng)。隨著(zhù)USB總線(xiàn)的發(fā)展和應用以及USB接口芯片出現,現在USB接口卡應該是一個(gè)即實(shí)用又方便的選擇了。這項設計實(shí)現的是一個(gè)動(dòng)態(tài)采集和存儲系統的計算機通信接口卡,基本上可分為CY7C68013 USB接口芯片、CPLD芯片擴展控制部分、軟件的實(shí)現部分。
本文引用地址:http://dyxdggzs.com/article/82820.htm一、 整體結構圖
USB設備包含一些向主機軟件提供一系列USB 設備的特征和能力的信息的設備描述符,用來(lái)配置設備和定位USB 設備驅動(dòng)程序。這些信息確保了主機以正確的方式訪(fǎng)問(wèn)設備。通常,一個(gè)設備有一個(gè)或多個(gè)配置( Conf iguration) 來(lái)控制其行為。配置是接口( InteRFace) 的集合,接口指出軟件應該如何訪(fǎng)問(wèn)硬件。接口又是端點(diǎn)( endpoint) 的集合,每一個(gè)與USB交換數據的硬件就為端點(diǎn),它是作為通信管道的一個(gè)終點(diǎn). 圖1-1就是整個(gè)動(dòng)態(tài)采集和存儲系統中的USB接口連接部分的基本框。在計算機上的應用程序通過(guò)調用USB驅動(dòng)從接口中讀取數據,讀到輸入緩沖區中。計算機通過(guò)接口采數存數并發(fā)出控制信號然后由驅動(dòng)程序通過(guò)接口將其轉換為電壓信號,而接口卡則是將其有限的控制信號進(jìn)行擴展而且轉換為USB設備可以正常接收的電壓信號,使被控制部分執行相應的操作由于CY7C68013 USB接口芯片廠(chǎng)商提供了基本的固件程序所以用戶(hù)只需編相應的應用程序和簡(jiǎn)單的驅動(dòng)程序就可以實(shí)現一般用戶(hù)要實(shí)現的基本功能,如果有特殊的需要只需稍加修改。所以CY7C68013 USB接口芯片是一款使用起來(lái)快速方便又簡(jiǎn)單的USB接口芯片。
二、芯片
EZ2USB FX2是一款集成USB2. 0的微處理器,它集成了USB 2. 0收發(fā)器、SIE (串行接口引擎) 、增強的8051微控制器和可編程的外圍接口(GP IF) 。FX2這種獨創(chuàng )性結構可使數據傳輸率達到56Mbp s,即USB 2. 0允許的最大帶寬。在FX2中,智能SIE可以硬件處理許多USB 1. 1和USB 2. 0協(xié)議,從而減少了開(kāi)發(fā)時(shí)間和確保了USB 的兼容性。GP IF ( General Pro2grammable Interface)和主/從端點(diǎn)F IFO ( 8 位或16 位數據總線(xiàn))為ATA,UTOP IA, EPP, PCMCIA,DSP等提供了簡(jiǎn)單和無(wú)縫連接接口。EZ2USB FX2 CY7C68013內部的微處理器是一個(gè)增強的8051內核,內部的RAM可用于存儲程序和數據,使EZ2USB具有軟配置特性。USB主機(如PC機)通過(guò)USB總線(xiàn)將8051程序代碼和設備描述符裝載到RAM中后, EZ2USB使用已下載的固件程序中定義的外設特性進(jìn)行重枚舉。內置的8051 處理器,相對標準的8051處理器有以下改進(jìn):
(1)獨立的地址總線(xiàn)和數據總線(xiàn),總線(xiàn)周期為四個(gè)時(shí)鐘;
(2)雙數據指針和自動(dòng)指針可用于存儲器之間的快速數據傳輸,提高數據傳輸效率;
(3)通用可編程接口(GP IF) ,可以直接連接到并口( 8位和16位) ,可編程波形描述符和配置寄存器;支持多個(gè)Ready輸入和Control輸出;
(4)矢量USB中斷,獨立的數據緩沖區供Setup 包和Data包控制傳輸;
(5)四個(gè)F IFO,可與ASIC和DSP等無(wú)縫連接;
(6)擴展的中斷系統支持13 個(gè)中斷源,并支持F IFO 和GP IF自動(dòng)矢量中斷;
(7)一個(gè)I2C接口;兩個(gè)UART接口, 40個(gè)可配置I/O端口;www.51kaifa.com
(8)三個(gè)16 位內置定時(shí)/計數器、512 字節內部寄存器RAM;
(9)外部時(shí)鐘可達48MHz;
(10)芯片內部集成有8KB、外部RAM, 8051 內核使用MOVX指令訪(fǎng)問(wèn)此RAM區。
三、基本電路圖的設計結構
圖3-1基本的原理圖結構
其中的主要芯片是CY7C68013,起基本的USB接口通信功能,EPM7128SQ是一款CPLD主要用來(lái)通過(guò)編程擴展控制引腳的,剩下的芯片都是起電壓轉換給CY7C68013和CPLD芯片供電用的或一些起穩壓和調理作用的。一般USB接口的通信可以通過(guò)驅動(dòng)程序將其設為高速或低速形式,只要在接口卡上給出一個(gè)電壓判斷信號進(jìn)行確認是高速還是低速的就可以在驅動(dòng)里加以判斷自動(dòng)進(jìn)行速度的調整。
四、程序
程序的大體結構如圖4-1所示:
固件程序是芯片廠(chǎng)家提供的在此就不做詳細介紹了。
評論