新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于NIOSⅡ的聲納主機與顯控臺之間的RS232通信協議

        基于NIOSⅡ的聲納主機與顯控臺之間的RS232通信協議

        作者: 時間:2012-05-30 來源:網絡 收藏


        設備工作之前,操作員在顯控臺要完成開機與參數設置等動作。此時,開關等外圍設備會觸發處理器的中斷處理程序,完成參數設置和顯示。這些參數不僅要在顯控臺顯示,還得通過UART發送到(DSP),作為信號處理運算的某些參數。因為是通過串口發送,所以這些數據要進行適當的分割與編碼,并加上地址信息等。
        (DSP)接收到開始工作的指令后,主機會把處理過程中或者處理后的數據通過UART發送到顯控臺,方便操作員實時了解設備的工作狀態和工作結果。
        3 在ⅡIDE上實現串口
        ⅡIDE是ALTERA公司開發套件中用來進行嵌入式開發的平臺。所有軟件開發任務都可以在ⅡIDE下完成,包括編輯、編譯和調試程序。它支持C/C++語言編程,可以根據SoPC建立的SoC,生成相應makefile,在編譯時,又可以根據makefile生成系統頭文件system.h,從而把軟硬件隔離開來[5]。
        3.1 串口
        在NIOSⅡIDE下用C語言開發較為方便。由于每幀數據有效數據位為8 bit,所以將unsigned char 作為協議中的基本數據類型。在庫文件中,這種數據類型被定義為alt_u8。指令的前4位為0,后4位為指令內容。數據前4位為數據的地址信息,后4位為數據內容。
        顯控臺與主機所有通信數據和指令分為三種:(1)顯控臺處理器發送到主機(DSP)的指令,取值范圍為0x00~0x0f。典型的如0x00為開始工作指令,0x0f為停止工作指令,0x01~0x07為通信檢查指令。(2)顯控臺處理器發送到主機(DSP)的數據,取值范圍為0x1x~0xfx。典型的如0x9x和0xax,分別為多普勒頻移的低4位數據和高4位數據。(3)主機(DSP)發送到顯控臺處理器的數據,取值范圍為0x0x~0xfx。典型的如0x5x噪聲級別。
        3.2 程序設計
        根據以上分析,以訓練靶為例,設計C語言程序。框圖如圖4所示。

        NIOSⅡ嵌入式編程可以直接調用ALTERA的庫函數進行操作。例如對PIO的操作函數:IOWR_ALTERA_AVALON_PIO_DATA(BASE,DATA)(寫IO函數),IOWR_
        ALTERA_AVALON_PIO_DATA(BASE,DATA)(讀IO函數)。也可以構建硬件寄存器的結構,例如UART_ST這樣的結構,通過對結構實例化的操作,同樣可以方便地編程。本設計中結合了這兩種編程的優勢,對于結構復雜,操作要求簡單的硬件,采用庫函數的操作方法,如Flash;對結構較為簡單、操作較為細化的硬件,采用寄存器結構化的操作方法,如UART。
        本文利用FPGA芯片構建了設備的顯示控制分機。ALTERA公司的 NIOSⅡ嵌入式處理器,建立了片上系統,實現了顯示控制分機和主機(DSP)通信協議。在以EP2C8Q208C為主芯片的FPGA開發板上,實現了硬件系統的構建和軟件編程以及下載。此顯示控制分機應用在一體化聲靶中,工作穩定可靠。由于片上系統構建的靈活性,所以這種顯示控制方案在聲納設備中具有很好的可擴展性,便于維護和升級。
        參考文獻
        [1] 蔣均齊.魚雷聲靶技術研究[D].長沙:國防科技大學,2006:8-9.
        [2] 李金力,劉文怡,彭旭峰.FPGA的異步串行口IP核設計[J].電子設計工程,2009,17(8):31-35.
        [3] Altera Corporation.Cyclone II Device Handbook[S].2007(1):12-34.
        [4] 張新喜,許軍,楊雨迎,等.SoPC技術的戰車綜合顯控終端設計[J].火力與指揮控制,2008,33(增刊):109-112.
        [5] 洪勝峰.基于嵌入式技術的軍用車輛車載顯控終端的研制[D].青島:中國海洋大學,2007:25-26.


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 柞水县| 香河县| 孝昌县| 微山县| 福贡县| 河东区| 嘉义市| 雷山县| 贵港市| 衢州市| 鄂伦春自治旗| 江门市| 铜陵市| 华亭县| 安仁县| 太湖县| 元谋县| 崇仁县| 封开县| 民和| 淮安市| 美姑县| 类乌齐县| 东宁县| 巴东县| 马尔康县| 汽车| 定襄县| 北京市| 陵川县| 苏尼特左旗| 天峨县| 张家界市| 南川市| 五指山市| 罗田县| 瑞丽市| 怀化市| 大石桥市| 灵寿县| 鹤山市|