• 
    

    
    

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

      ?

      基于NIOSⅡ的聲納主機(jī)與顯控臺(tái)之間的RS232通信協(xié)議

      2012-11-24 02:17:58許偉杰
      關(guān)鍵詞:分機(jī)聲納通信協(xié)議

      王 斌,許偉杰

      (中國(guó)科學(xué)院聲學(xué)研究所(上海研究站),上海200032)

      聲納設(shè)備一般由換能器(信號(hào)轉(zhuǎn)換、收發(fā)設(shè)備)、信號(hào)處理主機(jī)(DSP等)和顯示控制分機(jī)(簡(jiǎn)稱顯控臺(tái))三部分構(gòu)成。顯控臺(tái)和主機(jī)之間的通信非常重要[1]。

      顯控臺(tái)和主機(jī)之間的通信距離較遠(yuǎn),對(duì)通信的可靠性和安全性要求高,但是對(duì)通信速度要求不高。所以通信方式可以選擇串口通信協(xié)議RS232[2]。

      顯控臺(tái)上諸多的旋鈕、開(kāi)關(guān)以及指示燈、數(shù)碼管等設(shè)備需要豐富的外圍接口。這些接口之間具有復(fù)雜的邏輯關(guān)系。選用FPGA作為顯控臺(tái)主芯片可以滿足這些要求。以ALTERA公司的CycloneⅡ開(kāi)發(fā)板為例,其主芯片EP2C8Q208C最多可提供182個(gè)用戶I/O口,可以滿足外圍接口要求[3]。在ALTERA公司提供的硬件開(kāi)發(fā)環(huán)境Quartus和片上系統(tǒng)開(kāi)發(fā)環(huán)境SoPC下,可以非常方便地進(jìn)行控制模塊的開(kāi)發(fā)。也可以構(gòu)建NIOSⅡ處理器,以及配置NIOS系統(tǒng)自帶的硬核,如串口通信模塊UART、儲(chǔ)存模塊 Serial Flash等[4]。

      本文利用FPGA芯片設(shè)計(jì)了一套顯示控制分機(jī)系統(tǒng),并且以聲納訓(xùn)練靶為應(yīng)用背景編制了串口通信協(xié)議。

      1 利用SoPC Builder構(gòu)建顯控臺(tái)的片上系統(tǒng)

      SoPC Builder是ALTERA公司提供的片上系統(tǒng)(SoC)開(kāi)發(fā)工具,它可以配合QuartusII完成FPGA芯片的CPU以及外圍設(shè)備的配置工作。

      1.1 片上系統(tǒng)的構(gòu)建

      在SoPC Builder的開(kāi)發(fā)環(huán)境下,選擇ALTERA公司開(kāi)發(fā)的32位RISC處理器NIOSⅡ。標(biāo)準(zhǔn)型的處理器NIOSⅡ/s可以運(yùn)行在100 MHz的系統(tǒng)時(shí)鐘下,運(yùn)算速度超過(guò)50 DMIPS[2]。再構(gòu)建配套的數(shù)據(jù)存儲(chǔ)器SDRAM、程序存儲(chǔ)器Serial Flash、系統(tǒng)地址管理器(System ID Peripheral)、編程調(diào)試接口(JTAG_UART)以及數(shù)碼管(SEG)、顯示和旋鈕(KNOB)、按鍵(KEYS)等 PIO 接口。

      1.2 RS232 Serial Port的結(jié)構(gòu)

      對(duì)UART的控制主要通過(guò)編程寄存器來(lái)實(shí)現(xiàn)[2]。根據(jù)UART的寄存器結(jié)構(gòu),在SoPC對(duì)應(yīng)的軟件開(kāi)發(fā)環(huán)境NIOSⅡIDE下建立C語(yǔ)言的結(jié)構(gòu)體UART_ST,代碼如下:

      2 顯控臺(tái)與主機(jī)之間的通信

      聲納設(shè)備有兩種工作狀態(tài)——設(shè)置和工作。在這兩種狀態(tài)下,顯控臺(tái)與主機(jī)的通信方式有三種,分別如圖1~3所示。

      圖1 設(shè)置狀態(tài)下NIOSⅡ處理器與顯控臺(tái)通信

      圖2 設(shè)置狀態(tài)下NIOSⅡ處理器通過(guò)UART與主機(jī)(DSP)通信

      圖3 工作狀態(tài)NIOSⅡ處理器通過(guò)UART與主機(jī)(DSP)通信

      在聲納設(shè)備工作之前,操作員在顯控臺(tái)要完成開(kāi)機(jī)與參數(shù)設(shè)置等動(dòng)作。此時(shí),開(kāi)關(guān)等外圍設(shè)備會(huì)觸發(fā)處理器的中斷處理程序,完成參數(shù)設(shè)置和顯示。這些參數(shù)不僅要在顯控臺(tái)顯示,還得通過(guò)UART發(fā)送到主機(jī)(DSP),作為主機(jī)信號(hào)處理運(yùn)算的某些參數(shù)。因?yàn)槭峭ㄟ^(guò)串口發(fā)送,所以這些數(shù)據(jù)要進(jìn)行適當(dāng)?shù)姆指钆c編碼,并加上地址信息等。

      在主機(jī)(DSP)接收到開(kāi)始工作的指令后,主機(jī)會(huì)把處理過(guò)程中或者處理后的數(shù)據(jù)通過(guò)UART發(fā)送到顯控臺(tái),方便操作員實(shí)時(shí)了解設(shè)備的工作狀態(tài)和工作結(jié)果。

      3 在NIOSⅡIDE上實(shí)現(xiàn)串口通信協(xié)議

      NIOSⅡIDE是ALTERA公司開(kāi)發(fā)套件中用來(lái)進(jìn)行嵌入式開(kāi)發(fā)的平臺(tái)。所有軟件開(kāi)發(fā)任務(wù)都可以在NIOSⅡIDE下完成,包括編輯、編譯和調(diào)試程序。它支持C/C++語(yǔ)言編程,可以根據(jù)SoPC建立的SoC,生成相應(yīng) makefile,在編譯時(shí),又可以根據(jù)makefile生成系統(tǒng)頭文件system.h,從而把軟硬件隔離開(kāi)來(lái)[5]。

      3.1 串口通信協(xié)議

      在NIOSⅡIDE下用C語(yǔ)言開(kāi)發(fā)通信協(xié)議較為方便。由于RS232每幀數(shù)據(jù)有效數(shù)據(jù)位為8 bit,所以將unsigned char作為協(xié)議中的基本數(shù)據(jù)類型。在庫(kù)文件中,這種數(shù)據(jù)類型被定義為alt_u8。指令的前4位為0,后4位為指令內(nèi)容。數(shù)據(jù)前4位為數(shù)據(jù)的地址信息,后4位為數(shù)據(jù)內(nèi)容。

      顯控臺(tái)與主機(jī)所有通信數(shù)據(jù)和指令分為三種:(1)顯控臺(tái)處理器發(fā)送到主機(jī)(DSP)的指令,取值范圍為0x00~0x0f。典型的如0x00為開(kāi)始工作指令,0x0f為停止工作指令,0x01~0x07為通信檢查指令。(2)顯控臺(tái)處理器發(fā)送到主機(jī)(DSP)的數(shù)據(jù),取值范圍為 0x1x~0xfx。典型的如0x9x和0xax,分別為多普勒頻移的低4位數(shù)據(jù)和高4位數(shù)據(jù)。(3)主機(jī)(DSP)發(fā)送到顯控臺(tái)處理器的數(shù)據(jù),取值范圍為0x0x~0xfx。典型的如0x5x噪聲級(jí)別。

      3.2 程序設(shè)計(jì)

      根據(jù)以上分析,以聲納訓(xùn)練靶為例,設(shè)計(jì)C語(yǔ)言程序??驁D如圖4所示。

      NIOSⅡ嵌入式編程可以直接調(diào)用ALTERA的庫(kù)函數(shù)進(jìn)行操作。例如對(duì)PIO的操作函數(shù):IOWR_ALTERA_AVALON_PIO_DATA(BASE,DATA)(寫(xiě) IO 函數(shù)),IOWR_ALTERA_AVALON_PIO_DATA(BASE,DATA)(讀 IO 函 數(shù))。也可以構(gòu)建硬件寄存器的結(jié)構(gòu),例如UART_ST這樣的結(jié)構(gòu),通過(guò)對(duì)結(jié)構(gòu)實(shí)例化的操作,同樣可以方便地編程。本設(shè)計(jì)中結(jié)合了這兩種編程的優(yōu)勢(shì),對(duì)于結(jié)構(gòu)復(fù)雜,操作要求簡(jiǎn)單的硬件,采用庫(kù)函數(shù)的操作方法,如Flash;對(duì)結(jié)構(gòu)較為簡(jiǎn)單、操作較為細(xì)化的硬件,采用寄存器結(jié)構(gòu)化的操作方法,如UART。

      圖4 程序框圖

      本文利用FPGA芯片構(gòu)建了聲納設(shè)備的顯示控制分機(jī)?;贏LTERA公司的 NIOSⅡ嵌入式處理器,建立了片上系統(tǒng),實(shí)現(xiàn)了顯示控制分機(jī)和主機(jī)(DSP)之間的RS232通信協(xié)議。在以EP2C8Q208C為主芯片的FPGA開(kāi)發(fā)板上,實(shí)現(xiàn)了硬件系統(tǒng)的構(gòu)建和軟件編程以及下載。此顯示控制分機(jī)應(yīng)用在一體化聲靶中,工作穩(wěn)定可靠。由于片上系統(tǒng)構(gòu)建的靈活性,所以這種顯示控制方案在聲納設(shè)備中具有很好的可擴(kuò)展性,便于維護(hù)和升級(jí)。

      [1]蔣均齊.魚(yú)雷聲靶技術(shù)研究[D].長(zhǎng)沙:國(guó)防科技大學(xué),2006:8-9.

      [2]李金力,劉文怡,彭旭峰.基于 FPGA的 RS232異步串行口 IP 核設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009,17(8):31-35.

      [3]Altera Corporation.Cyclone II Device Handbook[S].2007(1):12-34.

      [4]張新喜,許軍,楊雨迎,等.基于 SoPC技術(shù)的戰(zhàn)車(chē)綜合顯控終端設(shè)計(jì)[J].火力與指揮控制,2008,33(增刊):109-112.

      [5]洪勝峰.基于嵌入式技術(shù)的軍用車(chē)輛車(chē)載顯控終端的研制[D].青島:中國(guó)海洋大學(xué),2007:25-26.

      猜你喜歡
      分機(jī)聲納通信協(xié)議
      基于無(wú)線技術(shù)的鐵路客車(chē)火災(zāi)報(bào)警裝置設(shè)計(jì)概述
      Daniel Kish
      船載調(diào)頻連續(xù)波聲納測(cè)深技術(shù)研究
      一種通用的硬幣清分機(jī)設(shè)計(jì)
      電子制作(2018年23期)2018-12-26 01:01:02
      寬帶接入網(wǎng)環(huán)境下區(qū)間電調(diào)分機(jī)接入方式研究
      基于聽(tīng)覺(jué)特征的被動(dòng)聲納目標(biāo)識(shí)別
      某型微波著陸引導(dǎo)設(shè)備模擬訓(xùn)練系統(tǒng)設(shè)計(jì)
      電子制作(2017年16期)2018-01-30 07:15:14
      基于Z-Stack通信協(xié)議棧的紅外地溫采集電路設(shè)計(jì)
      基于DMX512通信協(xié)議的多路轉(zhuǎn)發(fā)器設(shè)計(jì)與研究
      基于NS-3的PLC多頻通信協(xié)議仿真平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)
      庆元县| 岳阳市| 阿克苏市| 河曲县| 呼伦贝尔市| 磐石市| 宜章县| 长沙市| 石狮市| 凤山市| 云南省| 新晃| 兴隆县| 佳木斯市| 郁南县| 新民市| 互助| 方城县| 定远县| 五台县| 绥滨县| 营山县| 射阳县| 舞阳县| 资兴市| 萍乡市| 天全县| 尉犁县| 集贤县| 苍南县| 望都县| 天祝| 那坡县| 乐平市| 德钦县| 尼勒克县| 宕昌县| 大荔县| 诸暨市| 绥化市| 池州市|