Matlab/RTW仿真與嵌入式共同開(kāi)發(fā)
引言
本文引用地址:http://m.butianyuan.cn/article/226556.htm在日益激烈的競(jìng)爭(zhēng)中,系統(tǒng)的開(kāi)發(fā)周期顯得尤為重要,但開(kāi)發(fā)時(shí)間與系統(tǒng)安全性、可靠性又有一定沖突,如果仍然使用傳統(tǒng)的編寫(xiě)代碼的模式,顯然有些不妥。本文介紹一種基于Matlab/RTW實(shí)現(xiàn)實(shí)時(shí)仿真與嵌入式系統(tǒng)開(kāi)發(fā)的方法。方法所涉及的開(kāi)發(fā)環(huán)境如下:
◆Microsoft Windows XP SP3:
◆Matlab Version 7.5.0.342(R2007b);
◆Keil uVersion2V 2.30;
◆Proteus 7.1SP2。
先借助Matlab/RTW建立模型并生成RTW(Real-Time Workshop)代碼(C語(yǔ)言),再使用Keil編譯、調(diào)試Matlab生成的C語(yǔ)言代碼,并且生成HEX文件。之后,利用Proteus觀察代碼生成的效果,以驗(yàn)證代碼的正確性?;玖鞒倘鐖D1所示。
1 構(gòu)建Simulink模型并生成RTW代碼
以較為簡(jiǎn)單的模型為例,用2個(gè)開(kāi)關(guān)同時(shí)控制一個(gè)報(bào)警燈模型。當(dāng)開(kāi)關(guān)1、2同時(shí)閉合時(shí),報(bào)警燈亮,邏輯真值表如表1所列。在Simulink中構(gòu)建對(duì)應(yīng)模型,只有當(dāng)開(kāi)關(guān)1、2同時(shí)閉合時(shí),報(bào)警燈才亮,故選擇如下模型實(shí)現(xiàn)上述功能。模型連接如圖2所示。
模型連接好之后,打開(kāi)參數(shù)配置選項(xiàng)卡調(diào)整參數(shù)。具體修改項(xiàng)及其對(duì)應(yīng)值如表2所列。
至此生成模型代碼的前期準(zhǔn)備已經(jīng)完成,保存模型,取名Matlab_Test。下一步就是點(diǎn)擊Real_Time Work-shop選項(xiàng)中的Build按鈕,Matlab將自動(dòng)生成模型代碼。
Matlab命令窗口中顯示內(nèi)容如下:
###Starting Real-Time Workshop build procedure for model:
Matlab_Test
……
###Successful completion of Real-Time Workshop build proce-dure for model:Matlab_Test
至此,模型的代碼也生成成功。
完成代碼修改之后,建造目標(biāo)。若暫且不管代碼優(yōu)化問(wèn)題,則所需的HEX文件已經(jīng)成功生成。
2 KeiI與Proteus的連接
將安裝文件夾ProteusModel下的VDM51.dll文件復(fù)制到KeilC51INC文件夾下,用以實(shí)現(xiàn)兩軟件間的通信,并且在 TOOLS.INI文件中加入VDM51.DLL文件的目錄及描述,具體添加內(nèi)容如圖4所示。
至此,Keil與Proteus間的連接前期準(zhǔn)備已經(jīng)完成。下面開(kāi)始Keil與Proteus聯(lián)機(jī)調(diào)試:選擇目標(biāo)1的屬性,彈出對(duì)話框,在調(diào)
linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論