精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

探究USB接口的VSAT基帶數據采集系統的設計

電子工程師 ? 來源:電子工程師期刊 ? 作者:徐廷生;唐波;閔 ? 2021-04-08 10:10 ? 次閱讀

“針對衛星接收設備數據采集的實際需要,提出一種基于USB接口的VSAT(甚小口徑衛星終端)基帶數據采集系統的設計方案。”

0 引言

在眾多的衛星通信系統中,VSAT(甚小口徑衛星終端)衛星通信系統由于具有眾多特點,近年來發展很快,特別在專業通信網領域存在廣闊的市場,利用此系統進行通信具有靈活性強、可靠性高、成本低、使用方便及小站可直接裝在用戶端等特點,并且VSAT用戶數據終端可直與計算機聯網,完成數據傳遞、文件交換、圖像傳輸等通信任務,從而擺脫了遠距離通信地面中繼站的問題,因此,此系統廣泛用于石油、銀行、鐵路、民航、軍事等行業。

在VSAT系統中,用戶終端通常是由數字衛星接收機和計算機終端組成,數字衛星接收機包括下變頻器、解碼器、FEC(前向糾錯),解復用器、數字基帶處理器和頻率合成器等部分,接收機輸出的數據一般通過RS-232,RS-422/449以1.2kbit/s-64kbit/s的數據率交給計算機完成應用處理。

有些高速衛星數據接收設備解調以后,數據通過額外高速數據卡送入計算機。這種傳統的數據卡不僅安裝麻煩,且易受機箱內環境的干擾,特別是這種卡通常只能接收單路數據,受計算機插槽數量和地址,中斷資源的限制,不可能掛接多個設備,因此,資源浪費尤其嚴重。

針對這種情況,本文結合衛星接收設備數據采集的實際需要,設計了一種基于USB(通用串行總線)接口的USAT基帶數據采集系統,該系統通過對USB接口控制邏輯的合理設計和芯片內部FIFO的有效運用,充分應用了CPLD(復雜可編程邏輯器件)的靈活性,僅采用單片USB接口控制芯片就實現了對多路多速率數字信號的實時采集,這與以往采用USB集線器來實現對多路多速率數字信號采集的系統相比,具有成本低、實現方便等優點。

該系統最多可同時采集8路數字信號,單路最高速率可達2Mbit/s,系統用于控制的CPLD采用Altera公司的EPM7128SLC84;USB接口控制芯片采用Cypress公司EZ-USB FX2系列CY7C68013。

1 系統原理

1.1 USB簡介

USB(通用串行總線)是一種應用在PC領域的新型接口技術,支持在主機與各種即插即用外設之間進行數據傳輸,它由主機預定傳輸數據的標準協議,在總線上的各種設備分享USB總線帶寬,它的主要優點是:數據傳輸速率明顯快于一般的串口,支持控制傳輸、中斷傳輸、塊傳輸的和同步傳輸4種傳輸方式,以滿足不同外設的需要,最多可連接127個外設,支持熱拔插和即插即用,占用的系統資源少(只占用1個IRP(I/O請求包));無總線競爭等。

USB總線技術的提出就是想利用單一的總線技術來滿足多種應用領域的需要,USB1.1協議支持低速1.5Mbit/s和全速12Mbit/s兩種傳輸速度。2000年發布了USB2.0協議,它向下兼容USB1.1協議,但在USB1.1的基礎上有了質的提高,其理論傳輸速度可到480Mbit/s。

1.2 系統結構

該系統總體框架分采集控制部分、USB接口控制部分和主機3部分,系統框圖如圖1所示。

o4YBAGBuZRuAMX0GAABPym6Sp9c662.png

外部輸入的8路信號時鐘、數據均為TTL電平,采集用的統一時鐘為3M赫茲,是由USB控制芯片的外部時鐘經八分頻得到的。

系統的工作過程如下:每路信號在CPLD的控制下,按采集時鐘的統一節拍,各路信號的數據和時鐘都被采集進CPLD。在CPLD內,先進行各路信號的時鐘上升沿檢測,如檢測到時鐘上升沿,則在相應路數的標志位置1,這表明此時采到的數據有效,若沒檢測到時鐘上升沿,則在相應路數地標志位置0,表明此時采集的數據無效,這樣形成的各路信號數據。

再加上各路信號數據是否有效的標志,形成2字節的數據送入USB控制芯片的FIFO中,數據進入USB控制芯片后,通過USB接口將數據傳輸到主機,數據在主機中用軟件進行處理,按照各路信號數據是否有效的標志位,將有效數據取出,組合成各路數據。

數據送入主機時的格式如圖2所示,前一字節為各路信號數據是否有效的標志,緊跟著的字節為各路信號的實際數據,采用這種特殊的數據格式,以區分各路信號,便于采用統一的時鐘來實現對多路多速率數字信號的實時采集,從而減少了很多硬件電路,降低了成本和復雜性,實現更為方便,這也是本系統的一個創新點。

pIYBAGBuZSeAZrjLAABSrPk0M90160.png

2 硬件構成

2.1 EZ-USB FX2(CY7C68013)芯片

CY7C68013屬于Cypress公司的FX2系列產品,它提供了對USB2.0的完整解決方案,該芯片雖然采用低價的8051單片機,但仍然能獲得很高的速度,主要包括USB2.0收發器、SIE(串行接口引擎)、增強型8051處理器、8.5KB的片上RAM,4KB FIFO存儲器、I/O口、數據總線、地址總線和GPIF(通用可編程接口)。

CY7C68013與外設有可編程接口GPIE和從FIFO兩種接口方式。可編程接口GPIF是主機方式,可以由軟件設置讀寫控制波形,靈活性很大,幾乎可以對任何8bit/16bit接口的控制器、存儲器和總線進行數據的主動讀寫,使用非常靈活,從FIFO方式是從機方式,外部控制器可像對普通FIFO一樣對FX2的多層緩沖FIFO進行讀寫。在本設計中為了方便控制,采用從FIFO方式。

2.2 CPLD芯片EPM7128SLC84

在本設計中,所用的CPLD采用Altera公司的EPM7128SLC84。它屬于MAX7000系列,是Altera公司的基于第2代MAX結構的CPLD。它提供多達5000個可用門、128個宏單元,其引腳到引腳延時快達6ns。

可以容納各種獨立的組合邏輯和時序邏輯功能,EPM7128S的優點是它基于E2PROM,可以通過JTAG口進行在線編輯,設計者可將設計內容從PC機上通過下載電纜和JTAG口對EPM7128S進行任意次修改,它有多達100個I/O引腳可供編程使用,方便系統擴展存儲空間和外設。

本系統使用EPM7128S的主要功能是對各路信號的時鐘上升沿進行檢測,另外還需要完成一些控制功能,完成各路信號數據的合路,形成特定的數據格式,送入USB控制芯片的FIFO中。

2.3 硬件連接

根據系統對數據傳輸的速度和實時性的要求,配置CY7C6013的工作接口模式為從FIFO模式,硬件連接方式如圖3所示。

pIYBAGBuZTOAD7GVAABmI2Ni1hI005.png

CPLD控制采集外部數據的時鐘可同時作為CY7C68013的從FIFO模式的讀寫控制時鐘,即CY7C68013的接口時鐘連接到IFCLK引腳,FLAGA-FLAGD為FIFO標志引腳,用于映射FIFO的當前狀態,SLWR/SLRD是CY7C68013從FIFO的寫使能/讀允許信號,CPLD向CY7C68013從FIFO提供從FIFO輸出允許信號SLOE,僅在數據輸出時有效,FD[15:0]為16位雙向數據總線。FIFOADR[1:0]為端點FIFO選擇信號。

3 軟件設計

本系統軟件設計部分包括固件、驅動程序和應用程序的設計。

3.1 USB設備固件程序設計

固件程序是指運行在設備CPU中的程序,是整個程序設備的核心,可采用匯編語言和C語言設計,CyPress為用戶提供了一個固件程序框架,幫助用戶完成相當一部分USB協議相關的工作,用戶只需根據外設功能的具體要求,在相應的函數中填寫函數體。Cypress提供的這一框架程序簡化了用戶的固件程序設計。

本系統固件開發所使用的編程語言為德國Keil公司的C51編譯器,集成開發環境為μVision2,該固件共包含以下5個文件:

1)ez-usb.lib

是EZ USB函數庫對象程序代碼

2)usbjmptb.obj

定義了FX2中INT2和INT4的中斷跳轉表。

3)dscr.a51

包含描述符的表數據,包括設備描述符、設置描述符、接口描述符、端點描述符和字串描述符等,用來定義設備的ID號、端點的設置特性,主機就是通過讀取設備的描述符來獲取USB外設的功能特性,從而給設備加載相應的驅動程序并配置設備。

4)fw.c

是固件運行的主程序文件,負責處理主機發出的各種USB設備請求,該程序首先初始化所有的內部狀態變量,然后調用TD_Init函數進行初始化,并打開中斷。之后,固件程序開始列舉USB設備,直至在端點0上接收到SETUP令牌包時為止。一旦接收到STUP令牌,其將重復執行下面的任務分配過程:調用用戶函數TD_Poll,以完成用戶指定的任務;檢測是否有USB設備請求(SETUP令牌)如果有,則執行指令并作出相應的操作,如果沒有,則繼續向下執行,檢測USB核是否有USB掛起實踐,如果有USB掛起事件,則調用用戶程序TD_Suspend,交由用戶處理;當TD_Suspend返回為真時,USB核檢測是否重新開始事件,如果沒有USB掛起事件,則使處理器處于掛起狀態,當檢測有重新開始的事件,USB核調用用戶程序TD_Resume,并繼續執行本步驟,當TD_Suspend返回為假時,則繼續執行本步驟。

5)periph.c

包含各種用戶功能函數(如TD_Init、TD_Poll等)及其INT2中斷服務子程序的定義,它實現了本系統的主要功能。

在本系統中,把端點2配置為批量傳輸、IN方向,封包大小為512字節,每微幀包含2個封包,數據傳輸速率為64Mbit/s為就可滿足實際需要,終端0作為默認的控制傳輸管道來處理USB事件。

3.2 驅動程序設計

FX2的設備驅動程序有兩種:一種用來在設備接入時從主機下載固件到RAM中,稱為固件下載驅動程序(ezloader.sys);另一種是在設備重新列舉后加載的設備驅動程序(ezusb.sys)。應用軟件通過該設備驅動程序與FX2通信。

固件的程序代碼既可以通過外部E2PROM下載,也可以通過主機下載在本系統中選擇從主機下載,此時外接E2PROM中存放的是固件下載的PID/VID,且第1個字節是0xC0H,系統通過該PID/VID找到固件下載驅動程序(ezloader.sys)將相應的固件代碼下載到FX2的RAM中。

ezloader.sys的生成是利用Cypress公司提供的固件下載驅動程序源代碼和用戶編譯成功的固件代碼。在Win2000 DDK中創建的,并根據E2PROM提供的PID/VID修改相應的.inf文件,在將固件下載RAM中后,系統清楚內存中的固件下載驅動程序,并進行重新列舉,讓C8051固件控制FX2,此時,系統獲得由C8051固件提供的PID/VID(與E2PROM中的不同),認為有新的USB設備接入,并據此加載相應的設備驅動程序。

Ezusb.sys是本系統運行時所使用的主要驅動程序,它定義了幾個IOCTL代碼,其中:IOCTL_Ezusb_GET_DEVICE_DESCRIPTOR用于讀取USB設備描述符;IOCTL_Ezusb_GET_CONFIGURATION_DESCRIPTOR用于讀取USB設備的配置信息,IOCTL_Ezusb_BULK_READ用于主機讀取USB設備發出的塊數據,IOCTL_Ezusb_GET_CURRENT_FRAME_NUMBER,用于讀取USB傳輸過程中當前的幀序號。

3.3 用戶程序設計

應用程序開發中,可用VC++編制應用程序。所有的用戶程序是通過I/O控制調用來訪問EZ-USB的設備驅動程序的,可以把EZ-USB設備當成文件來操作,利用CreateFile得到EZ-USB句柄,通過得到的句柄,用一個Win32函數DeviceIoControl(),把IOCTL和相關的輸入輸出緩沖區提交給驅動程序,來進行控制傳輸,用ReadFile,WriteFile進行批量傳輸。當應用軟件退出時,用CloseHandle()關閉設備。

4 結束語

本文結合實際工程的需要,提出了基于USB接口的VSAT基帶數據采集的設計方案,并給出了硬件系統及軟件設計方法,在USAT通信的實際應用中,該系統與后端軟件結合,很容易實現對VSAT數據的分析與處理,可廣泛應用于VSAT通信系統中。

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    453

    文章

    50396

    瀏覽量

    421793
  • cpld
    +關注

    關注

    32

    文章

    1247

    瀏覽量

    169213
  • USB接口
    +關注

    關注

    9

    文章

    699

    瀏覽量

    55574
  • fifo
    +關注

    關注

    3

    文章

    387

    瀏覽量

    43549
收藏 人收藏

    評論

    相關推薦

    NI數據采集板卡如何連接使用?

    和控制。 ? 1. 了解數據采集板卡: 首先,需要了解所使用的NI數據采集板卡的型號和規格。NI提供了多種型號的數據采集板卡,具有不同的輸入通道數、采樣率、接口類型等特性。在選擇和使用
    的頭像 發表于 07-11 10:05 ?820次閱讀

    多通道數據采集系統的設計的意義

    多通道數據采集系統(Multi-channel Data Acquisition System, 簡稱MDAS)是一種能夠同時采集、處理和存儲多個信號源數據的電子設備。這種
    的頭像 發表于 07-02 09:00 ?711次閱讀

    多通道數據采集系統的轉換誤差怎么算

    多通道數據采集系統是一種廣泛應用于工業、科研、醫療等領域的高精度數據采集設備。它通過多個通道同時采集信號,并對信號進行處理、轉換和存儲,以實現對信號的實時監測和分析。在多通道
    的頭像 發表于 07-01 16:36 ?600次閱讀

    多通道數據采集系統的優缺點

    多通道數據采集系統是一種廣泛應用于工業、科研、醫療等領域的技術,它能夠同時采集多個通道的信號,實現對多種物理量的實時監測和分析。本文將詳細介紹多通道數據采集
    的頭像 發表于 07-01 15:58 ?1257次閱讀

    數據采集系統分為幾類

    數據采集系統是大數據生態系統中的重要組成部分,它負責從各種數據源收集、整合和存儲數據。根據不同
    的頭像 發表于 07-01 15:44 ?1336次閱讀

    數據采集通信網關是什么

    數據采集通信網關是一種專門用于數據采集和通信的設備,它在物聯網(IoT)系統、工業自動化系統和智能家居等領域中廣泛應用。其主要功能是將各種傳感器、設備和
    的頭像 發表于 07-01 15:00 ?341次閱讀
    <b class='flag-5'>數據采集</b>通信網關是什么

    電力數據采集網關是什么

    電力數據采集網關是一種專門用于電力系統數據采集和傳輸的設備。它主要用于將電力系統中的各種設備(如電表、變壓器、斷路器等)的數據進行
    的頭像 發表于 06-28 15:28 ?592次閱讀
    電力<b class='flag-5'>數據采集</b>網關是什么

    工控數據采集平臺是什么?

    工控數據采集平臺是一種用于工業控制和監測領域的系統,該平臺能夠收集來自傳感器、執行器、機械設備以及其他系統的信息,并對這些數據進行處理、存儲和分析。這些
    的頭像 發表于 06-14 15:29 ?383次閱讀

    物聯網工業數據采集系統是什么?

    物聯網工業數據采集系統通過物聯網技術將各種設備和傳感器連接起來,實現數據的實時采集、傳輸和分析,為工業生產提供智能化、自動化的解決方案。 ? 物聯網工業
    的頭像 發表于 05-20 15:16 ?592次閱讀

    GPIB轉USB采集卡在儀器控制和數據采集中的應用

    USB采集卡的應用案例,展示了它在儀器控制和數據采集領域的重要性和價值。 實驗室儀器控制和數據采集: GPIB轉USB
    的頭像 發表于 04-12 09:36 ?680次閱讀

    基于物通博聯工業數據采集網關的工廠數據采集方案

    隨著工業互聯網技術的不斷發展,工廠生產過程中的數據采集和管理變得越來越重要。然而,由于工廠現場設備眾多、種類繁多,數據采集和管理面臨著很多挑戰,如設備接口不統一、數據傳輸不穩定、
    的頭像 發表于 01-26 15:14 ?436次閱讀
    基于物通博聯工業<b class='flag-5'>數據采集</b>網關的工廠<b class='flag-5'>數據采集</b>方案

    PLC遠程監控與數據采集系統的原理及組成

    PLC遠程監控與數據采集系統的原理及組成 PLC遠程監控與數據采集系統是一種可以遠程監控和采集設備運行
    的頭像 發表于 01-22 16:46 ?1604次閱讀
    PLC遠程監控與<b class='flag-5'>數據采集</b><b class='flag-5'>系統</b>的原理及組成

    數據采集卡怎么用 數據采集卡怎么讀取數據

    將物理量(如溫度、壓力、光強等)轉換為數字信號,供電腦進行處理和分析。 以下是使用和讀取數據采集卡的詳細步驟: 1. 硬件連接: 首先,確保數據采集卡與電腦通過適當的接口連接,如USB
    的頭像 發表于 12-15 09:50 ?1699次閱讀

    數據采集網關:工業數據采集上云

    實現數據的整合、轉換和分析。數據采集網關功能數據采集網關具備了強大的數據采集能力。它可以從各種數據源中
    的頭像 發表于 12-12 16:46 ?752次閱讀
    <b class='flag-5'>數據采集</b>網關:工業<b class='flag-5'>數據采集</b>上云

    專注數據采集分析系統研發 做設備與MES系統中轉站

    、聯動響應的生產過程數字化管理平臺,實現制造數字化的總體目標。 每個廠家所使用的設備皆不相同,這也導致接口多種多樣,數據采集分析系統具備多種接口,能適應各種復雜的生產現場,這實現了各種
    發表于 12-01 17:09