• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      數(shù)字合成掃頻儀USB2.0接口設(shè)計(jì)

      2012-06-23 06:42:28孫學(xué)君白譜偉
      電子科技 2012年5期
      關(guān)鍵詞:外設(shè)固件下位

      孫學(xué)君,白譜偉

      (西安電子科技大學(xué)電子工程學(xué)院,陜西 西安 710071)

      數(shù)字合成掃頻儀的USB接口設(shè)計(jì),分為硬件和軟件兩部分,硬件包括掃頻儀主體和USB接口兩部分,設(shè)計(jì)選用Philips公司的ISP1362作為USB接口芯片,該芯片支持USB2.0全速模式,支持OTG模式,芯片由外設(shè)控制器、OTG控制器、主機(jī)控制器、USB收發(fā)器、OTG收發(fā)器和緩存器組成,通過內(nèi)部集成的總線接口可與CPU相連。軟件部分包括接口的底層固件程序、USB設(shè)備驅(qū)動(dòng)程序和用戶應(yīng)用程序。

      1 硬件設(shè)計(jì)

      1.1 數(shù)字合成掃頻儀電路設(shè)計(jì)

      數(shù)字合成掃頻儀主要由數(shù)據(jù)處理、控制接口電路邏輯、掃頻信號(hào)產(chǎn)生與輸出、幅度與相位檢測、數(shù)據(jù)采集、USB接口等部分構(gòu)成。數(shù)據(jù)處理部分采用ADI公司的ADSP-BF532處理器,加電后BF532實(shí)現(xiàn)對(duì)系統(tǒng)各部分的初始化,并對(duì)采集到的數(shù)據(jù)進(jìn)行處理,得到幅度與相位數(shù)據(jù)并實(shí)現(xiàn)曲線描繪、數(shù)據(jù)存儲(chǔ)和USB通信;控制接口電路邏輯部分采用Altera的EP1C6T144實(shí)現(xiàn),設(shè)計(jì)中采用FPGA實(shí)現(xiàn)了DDS信號(hào)發(fā)生控制、數(shù)據(jù)采集控制、鍵盤掃描、增益控制以及顯示控制;掃頻信號(hào)產(chǎn)生與輸出部分包括信號(hào)產(chǎn)生部分和輸出增益控制部分,信號(hào)產(chǎn)生部分產(chǎn)生兩路I、Q信號(hào),其中I路信號(hào)用來實(shí)現(xiàn)相位測量,Q路經(jīng)增益調(diào)節(jié)后得到所需測量輸出信號(hào);幅度與相位檢測部分將信號(hào)的幅度與相位信息轉(zhuǎn)換為對(duì)應(yīng)的電壓信號(hào);數(shù)據(jù)采集部分通過采集信號(hào)幅度和相位對(duì)應(yīng)的電壓值將幅度與相位信息轉(zhuǎn)換為數(shù)字信息,F(xiàn)PGA將采集到的數(shù)據(jù)通過SPI口送入DSP處理后得到幅度與相位曲線。

      圖1 數(shù)字合成掃頻儀的硬件結(jié)構(gòu)

      1.2 USB接口電路設(shè)計(jì)

      Philips生產(chǎn)的ISP1362提供兩個(gè)USB端口,端口1通過軟件配置可用作上行、下行或OTG端口,若以O(shè)TG模式進(jìn)行配置,ISP1362既可做主機(jī)又可做外設(shè),并支持主機(jī)與外設(shè)之間角色轉(zhuǎn)換的主機(jī)通信協(xié)議HNP(Host Negotiation Protocol)和對(duì)話請(qǐng)求協(xié)議SRP(Session Request Protocol)。ISP作為主機(jī)使用時(shí),能夠關(guān)閉VBUS以響應(yīng)SRP,而作為外設(shè)使用時(shí),能夠啟動(dòng)SRP以喚醒主機(jī)。設(shè)計(jì)中BF532通過EBIU接口與ISP1362連接,引出Host和OTG接口,OTG接口又分成一個(gè)Host接口和一個(gè)Device接口,供接USB外設(shè)使用。如圖2所示,其中CPLD為該模塊提供基地址。DSP通過向CPLD寄存器讀入狀態(tài)字或?qū)懭肟刂谱謱⒓拇嫫鞯牡刂酚成湓?DSP的 I/O空間,通過訪問CPLD中相應(yīng)的寄存器,可實(shí)現(xiàn)對(duì)ISP1362狀態(tài)查詢和控制。

      圖2 ISP1362和DSP連接簡圖

      作為外設(shè)控制器(DC)時(shí),ISP1362支持兩個(gè)控制端點(diǎn),還能以全速 12 Mbit·s-1和低速 1.5 Mbit·s-1將多達(dá)14個(gè)端點(diǎn)編程為任何4種傳輸類型,并為每個(gè)端點(diǎn)分配片上緩沖RAM空間,緩沖存儲(chǔ)器獨(dú)立于主機(jī)控制器緩沖存儲(chǔ)器,當(dāng)緩沖存儲(chǔ)器溢出,DC將數(shù)據(jù)傳輸?shù)経SB總線上,當(dāng)緩沖存儲(chǔ)器是空的,產(chǎn)生一個(gè)中斷通知微處理器提供數(shù)據(jù)。這里提到的微處理器和DC之間數(shù)據(jù)的傳輸可以是PIO(Programming Input/Output)模式或者 DMA(Direct Memory Access)模式[1]。設(shè)計(jì)中ISP1362與ADSP-BF532之間采用中斷方式進(jìn)行通信,設(shè)計(jì)中所需傳輸數(shù)據(jù)量大,且對(duì)傳輸時(shí)間和速率均無具體要求,因此采用塊傳輸(ATL)方式傳輸數(shù)據(jù),ISP1362的設(shè)備控制器內(nèi)置了一個(gè)2462 Byte的緩沖存儲(chǔ)器,這里將端點(diǎn)1配置成雙緩沖,每個(gè)緩沖大小為256 Byte。當(dāng)傳輸準(zhǔn)備就緒時(shí),DSP將數(shù)據(jù)寫入其中一個(gè)緩存,當(dāng)緩存被寫滿時(shí),數(shù)據(jù)通過SIE傳輸給計(jì)算機(jī),傳輸同時(shí)DSP向另一個(gè)緩存寫數(shù)據(jù)。當(dāng)緩存中的數(shù)據(jù)被完全讀取后,DSP會(huì)繼續(xù)向緩存中寫數(shù)據(jù)寫滿為止[2]。圖3給出ISP1362外圍電路設(shè)計(jì),前面提到為方便后續(xù)升級(jí),硬件上配置為OTG模式,OTG規(guī)范是對(duì)USB2.0規(guī)范的補(bǔ)充,允許便攜式設(shè)備成為受限的USB主機(jī),以代替特定功能的PC[3]。

      圖3 ISP1362外圍電路設(shè)計(jì)

      2 軟件設(shè)計(jì)

      USB接口的軟件設(shè)計(jì)主要包括USB接口的固件程序、USB驅(qū)動(dòng)程序以及用戶應(yīng)用程序3部分,底層固件程序控制整個(gè)硬件系統(tǒng)的運(yùn)行,并負(fù)責(zé)處理PC機(jī)發(fā)來的各種USB請(qǐng)求,以完成數(shù)據(jù)傳輸;驅(qū)動(dòng)程序包含WDM(Windows Driver Mode)驅(qū)動(dòng)程序所需的入口例程、即插即用例程、分發(fā)例程、電源管理例程和卸載例程;應(yīng)用程序?yàn)橛脩籼峁┡c軟面板的接口,并對(duì)接收到的數(shù)據(jù)進(jìn)行處理和分析[4]。

      2.1 底層固件程序設(shè)計(jì)

      設(shè)計(jì)中采用VisualDSP++5.0平臺(tái)設(shè)計(jì)底層固件程序。該固件程序包含cpu.c,文件實(shí)現(xiàn)了ADSPBF532一些常用的初始化函數(shù);usb_bfinit.c實(shí)現(xiàn)了USB工作下ADSP-BF532的一些常用初始化函數(shù);usb-isp1362.c實(shí)現(xiàn)了USB的通信功能;main.c實(shí)現(xiàn)了具體的傳輸功能,當(dāng)DSP檢測到ISP1362產(chǎn)生的中斷時(shí),根據(jù)計(jì)算機(jī)發(fā)送的命令進(jìn)入相應(yīng)的傳輸程序,控制isp1362的設(shè)備功能向計(jì)算機(jī)傳輸數(shù)據(jù)。頭文件實(shí)現(xiàn)對(duì)isp1362的寄存器和各種控制命令進(jìn)行定義。

      2.2 設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)

      USB驅(qū)動(dòng)程序是基于WDM的內(nèi)核程序,驅(qū)動(dòng)程序由運(yùn)行于內(nèi)核模式的系統(tǒng)級(jí)代碼組成。USB系統(tǒng)驅(qū)動(dòng)程序包括USB設(shè)備驅(qū)動(dòng)程序,USB總線驅(qū)動(dòng)程序和USB主控制器驅(qū)動(dòng)程序,Windows操作系統(tǒng)中嵌入了USB總線驅(qū)動(dòng)程序、USB主控制器驅(qū)動(dòng)程序以及通用的USB設(shè)備驅(qū)動(dòng)程序,如U盤、USB接口的其他數(shù)碼設(shè)備等。設(shè)計(jì)的USB設(shè)備是特殊功能的設(shè)備,Windows操作系統(tǒng)中通用的設(shè)備驅(qū)動(dòng)程序不支持其運(yùn)行,因此需要編寫特定的設(shè)備驅(qū)動(dòng)程序。設(shè)計(jì)中采用Visual StudioC++.NET+WindowsXPDDK+DriverStudio 3.2綜合平臺(tái)進(jìn)行本設(shè)備驅(qū)動(dòng)程序設(shè)計(jì),運(yùn)用DriverWizard生成驅(qū)動(dòng)程序的基本框架,該驅(qū)動(dòng)程序框架包含了幾個(gè)基本類,然后在VC集成環(huán)境下修改有關(guān)程序,增加相關(guān)的具體操作代碼以完成應(yīng)用程序和驅(qū)動(dòng)程序之間的信息交換,包括驅(qū)動(dòng)入口例程、加載設(shè)備和卸載驅(qū)動(dòng)例程,設(shè)備的枚舉、打開、讀寫、關(guān)閉設(shè)備和入口端點(diǎn)等函數(shù)設(shè)計(jì)。

      2.3 應(yīng)用程序設(shè)計(jì)

      應(yīng)用程序設(shè)計(jì)運(yùn)用NI的Lab Windows CVI9.0開發(fā)平臺(tái)設(shè)計(jì),該程序主要完成以下幾方面功能:(1)與下位機(jī)進(jìn)行數(shù)據(jù)交換,讀取下位機(jī)所采集到的點(diǎn)數(shù)據(jù)并將其以圖像的形式實(shí)時(shí)顯示。并且可對(duì)顯示的圖像進(jìn)行移位、參考點(diǎn)選擇、頻率標(biāo)記、相關(guān)參數(shù)計(jì)算等功能。(2)將下位機(jī)的參數(shù)設(shè)置信息以.dat文件的形式保存,在需要時(shí)可調(diào)用保存的設(shè)置信息對(duì)下位機(jī)進(jìn)行參數(shù)設(shè)置與控制。還可將下位機(jī)顯示的波形文件以及相關(guān)的參數(shù)以word形式保存。(3)用戶界面模擬下位機(jī)儀器的操作面板進(jìn)行設(shè)計(jì),如圖3所示。界面分為6個(gè)區(qū)域,包括參數(shù)設(shè)定區(qū)域、測量功能設(shè)置、系統(tǒng)設(shè)置、信號(hào)源設(shè)置、圖形顯示界面以及相關(guān)參數(shù)顯示區(qū)域。參數(shù)設(shè)定區(qū)域主要用于設(shè)置頻率參數(shù)、參考電平、輸入輸出阻抗等;測量功能設(shè)置;系統(tǒng)設(shè)置包括系統(tǒng)復(fù)位設(shè)置、接口與之間設(shè)置、幅度與相位校正設(shè)定以及存儲(chǔ)設(shè)定;信號(hào)源設(shè)定頻率參數(shù)帶寬、幅頻與相頻測量開關(guān)、顯示刻度與參考位置設(shè)定;圖形顯示主要是將采集到的點(diǎn)數(shù)據(jù)以圖形的形式連續(xù)顯示以及頻標(biāo)等標(biāo)記符號(hào)顯示;相關(guān)參數(shù)顯示區(qū)域顯示圖形的顯示格式與顯示方式,輸出電平與輸出狀態(tài),中心頻率及掃描帶寬、顯示刻度與參考電平;點(diǎn)擊相應(yīng)按鈕可對(duì)下位機(jī)進(jìn)行相應(yīng)操作,即用主機(jī)來控制下位機(jī)工作。

      圖4 用戶界面

      3 結(jié)束語

      從硬件和軟件兩方面對(duì)數(shù)字合成掃頻儀的USB接口設(shè)計(jì)進(jìn)行了論述,具有結(jié)構(gòu)簡單、傳輸數(shù)據(jù)量大、操作方便、設(shè)計(jì)靈活且易于升級(jí)的特點(diǎn)。USB接口的設(shè)計(jì)硬件配置為OTG模式,方便數(shù)字合成掃頻儀作為Host和其他USB設(shè)備進(jìn)行通信,如U盤等存儲(chǔ)設(shè)備,更為方便地存儲(chǔ)經(jīng)DSP處理后的數(shù)據(jù)。經(jīng)測試與實(shí)驗(yàn)表明,基于ISP1362設(shè)計(jì)的USB接口能夠使數(shù)字合成掃頻儀穩(wěn)定、準(zhǔn)確的傳輸數(shù)據(jù),且能同步進(jìn)行數(shù)據(jù)上傳和下傳,滿足設(shè)計(jì)需求。

      [1]Philips.ISP1362 single-chip universal serial bus on-thego controller[M].Ultra:Philips Conpration,2004.

      [2]吳慧鑫,王厚軍.數(shù)字存儲(chǔ)示波器中USB接口功能的開發(fā)[J].自動(dòng)化信息,2007(8):33-34.

      [3]周立功.USB2.0與OTG規(guī)范及開發(fā)指南[M].北京:北京航空航天大學(xué)出版社,2004.

      [4]劉君華.虛擬儀器編程語言LabWindows/CVI教程[M].北京:電子工業(yè)出版社,2001.

      [5]王西龍.通用串行總線(USB)設(shè)備的設(shè)計(jì)與開發(fā)[J].西安郵電學(xué)院學(xué)報(bào),2005,6(4):143 -146.

      猜你喜歡
      外設(shè)固件下位
      發(fā)射機(jī)房監(jiān)控系統(tǒng)之下位機(jī)
      基于固件的遠(yuǎn)程身份認(rèn)證
      景洪電廠監(jiān)控系統(tǒng)下位機(jī)數(shù)據(jù)傳輸網(wǎng)絡(luò)改造
      圍觀黨“下位”,吐槽帝“登基”
      CAN總線并發(fā)通信時(shí)下位機(jī)應(yīng)用軟件設(shè)計(jì)
      提取ROM固件中的APP
      電腦愛好者(2015年7期)2015-04-09 08:54:02
      一種通過USB接口的可靠固件升級(jí)技術(shù)
      Microchip推出具備雙ADC外設(shè)的全新器件,擴(kuò)展其低成本8位PIC?單片機(jī)產(chǎn)品線
      奧林巴斯XZ—2新固件升級(jí)
      中國攝影(2014年1期)2014-02-24 01:50:23
      貼身呵護(hù) 必不可少的PSP外設(shè)
      万荣县| 华阴市| 正安县| 永靖县| 城固县| 元谋县| 绍兴县| 西畴县| 万山特区| 易门县| 珠海市| 和硕县| 孝义市| 辉县市| 启东市| 澄迈县| 图木舒克市| 庆阳市| 富宁县| 诸城市| 泾阳县| 娱乐| 永平县| 邯郸县| 义乌市| 桑植县| 石首市| 麻栗坡县| 芜湖市| 临城县| 卫辉市| 宿迁市| 镇安县| 尖扎县| 泰宁县| 余江县| 台南市| 凉山| 廊坊市| 庆安县| 广宗县|