新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > 基于Matlab的雷達系統仿真軟件包設計與實現

        基于Matlab的雷達系統仿真軟件包設計與實現

        作者: 時間:2010-10-15 來源:網絡 收藏

        C語言的MEX文件源程序主要由兩個部分組成:第一部分是算法程序,用于完成實際工作;另一部分是入口子程序,它是算法程序與Matl-ab的接口。入口子程序實現接口功能是通過在輸入指針數組中獲得算法程序所需的數據,同時也能把計算結果返回到輸出指針數組。在這里mexFunction有著輸入/輸出與變量轉換的作用。參照本文編寫的mexrun.cpp文件,需要注意以下幾點:
        (1)void mexFunction(int nlhs,mxArray*plhs[],int nrhs,const mxArray*prhs[])。函數頭中nlhs是命令行方式下輸出參數的個數;*plhs[]是一個mxArray結構體類型指向所有輸出參數的指針數組;*prhs[]也是是一個mxArray結構體類型指向所有輸入參數的指針數組;nrhs是輸入參數的個數。
        (2)還需定義以下幾個變量:char*input_arg1,*input_arg2;int len1,len2,status1,status2。其中:*input_arg1,*input_arg2是兩個字符指針;len1,len2表示分配空間長度;status1,status2是兩個數據空間變量。
        (3)輸入的必須是單行字符串,行矢量,如下:

        (4)把輸入的字符串拷貝到C字符串里面,如下所示:

        按照上述流程設置好編譯環境和源程序后就可以編譯此工程,編譯成功后,在debug文件夾中會生成mexrun.dll鏈接庫文件。實驗結果表明,只要把mexrun.dll鏈接庫文件放在的當前工作區中,就可以在GUI設計中的m文件編寫中直接調用。

        2 系統模塊的設計與實現
        系統的總體結構采用分離式的多模塊結構,即各功能模塊彼此相互獨立,分別完成一定的功能。從方便用戶的角度出發,設計的系統采用多層次的分級菜單驅動形式,先由主菜單選擇進入各功能模塊的子菜單,在每一個功能模塊的菜單下,可以選擇參數設置、程序運行、獲取幫助和返回上級菜單等操作。
        2.1 系統實現方法
        圖形用戶界面(graphical user interfaces,GUI)是用戶與計算機進行信息交流的方式。計算機在屏幕顯示圖形和文本,用戶通過輸入設備如鍵盤、鼠標等與計算機通信。GUI中包含各種控件,通過對控件設置一些事件響應函數,這些函數可以在控件創建或刪除等事件發生時執行,從而實現特定事件觸發下需要的某些功能。這些事件響應函數即是句柄圖形對象的回調函數。
        本文使用GUIDE界面來對各種控件進行布局,并利用屬性編輯器對每個控件進行設置。的實驗界面主要有登陸界面、主界面和各部分子界面。下面以登陸界面為例,說明圖形用戶界面的設計過程。
        2.2 登陸界面設置
        圖2表示GUIDE界面下對登錄界面進行設置,其中包含了按鈕、靜態文本框、編輯框和坐標軸。在對每種控件的屬性編輯器進行編輯時,對于每個控件都會在其相應的m文件中初始化出一個回調函數。

        本文引用地址:http://www.104case.com/article/187766.htm


        首先,可以通過調用混合編程實現的mexrun.dll庫文件打開help文檔、MP3文件和MP4文件。以video按鈕為例,打開它的屬性編輯器可以看到其對應的Tag屬性pushbuttonl,在其回調函數中加入如下代碼。video按鈕打開后是關于軟件包使用說明的一段簡單視頻。

        其次,編寫坐標軸控件的屬性和構造函數,這里的坐標軸函數是用來顯示一張JPEG格式的靜態圖片。Matlab提供imread()函數和imshow()函數來讀取和存放靜態圖片,函數中的X是一個矩陣。

        c++相關文章:c++教程




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 桂平市| 宁河县| 四平市| 西盟| 元阳县| 新建县| 聊城市| 安远县| 宜宾市| 泽州县| 吴川市| 水富县| 饶阳县| 金山区| 成武县| 京山县| 渝中区| 聂荣县| 盐源县| 思南县| 武鸣县| 京山县| 永安市| 永济市| 涿州市| 开远市| 淅川县| 盐城市| 旅游| 双牌县| 连城县| 台东市| 洛川县| 垦利县| 双江| 舒兰市| 德州市| 曲松县| 南皮县| 苏州市| 平远县|