新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ARM 微處理器的機載語音告警系統設計

        基于ARM 微處理器的機載語音告警系統設計

        作者: 時間:2010-11-17 來源:網絡 收藏

          3 軟件設計

          3.1 U-Boot 的移植因1.1.4 版本U-Boot(Universal Boot Loader)并不支持本系統設計所使用的微處理器S3C2440,但對S3C2410 有完善的支持[5]。本文U-Boot 移植工作在微處理器S3C2410 的基礎上展開,U-Boot 移植操作實際上就是根據系統硬件資源對相關的文件進行修改。本系統相關硬件由S3C2440 嵌入式微處理器、64 MB 的NAND Flash、64 MB 的SDRAM 及串口組成,這里關鍵介紹存儲系統的初始化部分:

          1)Flash 驅動程序采用board/Cmi/Flash.c, 由于Cmi 中的flash.c 寫入時要交換字節,因而刪除了其write_short()和write_buff()函數,利用board/ep7312/Flash.c 中write_word()和write_buff()函數,并且把flash.c 中的FLASH_BASE_PRELIM 改為CFG_FLASH_BASE。把FLASH_BLOCK_SIZE 改為0x4000,(NAND Flash K9F1208 塊的大小是16 KB。

          2)Board/ smdk2410/smdk2410.c 中函數dram_init( ) 定義了SDRAM 的真實地址和實際大小。由于本設計中,SDRAM的大小為64 MB, 所以修改Include/configs/Smdk2410.h 中的PHYS_SDRAM_1_SIZE,改為0x04000000。

          經過以上修改后生成目標代碼, 通過JTAG 將二進制文件燒入NAND Flash。燒寫成功后通過超級終端進行測試, 測試結果表明U-Boot 移植成功并且可以在系統板上穩定運行。

          3.2 系統軟件流程

          系統的軟件流程如圖5 所示, 系統上電或復位后,從NAND Flash 啟動,S3C2440 把NAND Flash 的前4 KB 加載到SDRAM 中, 并把SDRAM 的首地址設為0x00000000,CPU 從0x00000000 開始執行。NAND Flash 的前4 KB 程序中包含從NAND Flash 把BootLoader(引導加載程序)的其余部分裝入SDRAM 的程序, 進行系統初始化; 系統接收到RS422 接口傳來的告警命令后首先進行告警命令真偽及優先權判定,當判定當前告警命令為真并且為優先級最高后,系統從SDRAM 讀取告警語音數據; 當檢測到此時系統無新告警命令或高優先級命令時, 將語音數據輸出給音頻轉換器進行解碼、數模轉換,功率放大后把告警語音送到飛行員耳機完成故告警語音播放。


          3.3 告警命令優先級調度單元

          語音告警系統功能是以分布在飛機各處的主要傳感器信號為觸發,將飛機當前的工作狀態、危險狀況或通過數據鏈獲取的作戰任務命令, 根據信息的重要緊急程度的不同,在語音告警系統里將各系統的告警命令分成了不同的告警優先級。一般將告警命令分為3 級:危險級、警告級、注意級[6],這樣按優先權將告警命令分成先后順序。本系統采用的告警命令優先級調度流程如圖6 所示。


          4 結論

          實踐證明, 采用 微處理器和數字音頻轉換器設計的機載語音告警系統工作穩定、可靠,告警語音的控制和播放更加靈活、快速,適應復雜多變戰場環境,符合體積小、重量輕、功耗低的機載需求。


        上一頁 1 2 3 下一頁

        關鍵詞: ARM

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 盐池县| 绍兴县| 高台县| 康平县| 锦屏县| 二连浩特市| 大埔区| 大化| 尤溪县| 静乐县| 永兴县| 丁青县| 辽宁省| 广丰县| 襄垣县| 苏州市| 蒙山县| 龙里县| 浑源县| 山东省| 莲花县| 上高县| 五大连池市| 渝中区| 汨罗市| 厦门市| 盘山县| 霍林郭勒市| 崇义县| 普兰店市| 甘泉县| 汶上县| 开鲁县| 阿克陶县| 独山县| 泾川县| 大港区| 佳木斯市| 革吉县| 邢台县| 玉山县|