在之前的帖子里(http://blogs.mathworks.com/simulink/2014/12/11/simulink-functions-intro/),我重點(diǎn)介紹了怎么使用 Simulink Function 來構(gòu)造可以導(dǎo)出為函數(shù)的模型,這樣可以把 Simulink Function 模塊放在單獨(dú)的模型里。在仿真的時(shí)候,可以引用這個(gè)模型,然后使用 Function Caller 模塊來調(diào)用它。
還可以將這個(gè) Function Library 模型生成代碼,在自己的手寫代碼里就可以任意調(diào)用這些函數(shù)了。
沒有提到的一點(diǎn)是, Simulink Function 和 Function Caller 模塊完全可以反過來用。也就是說,在被引用的模型里放 Function Caller 模塊,而在主模型里放被調(diào)用的 Simulink Function 模塊。
為什么要這樣做?簡而言之,這是為了模擬一些不直接用于仿真的自定義代碼。我們來看看這是如何實(shí)現(xiàn)的。
使用 Function Caller 模塊來調(diào)用外部代碼
如果我們把上面的子模型 codeGenModel.xls 生成代碼的話,代碼就像下面這樣:
默認(rèn)情況下,這個(gè)代碼不會(huì)被編譯,因?yàn)榫幾g器不知道上哪找這個(gè) timesTwo 函數(shù)。如果你知道怎么去配置模型,這個(gè)函數(shù) timesTwo 可以從任意地方提供。比如在這個(gè)例子里,假設(shè)我們有一個(gè) timesTwo.c 文件。
在模型的配置項(xiàng)里,我可以通過設(shè)置把這個(gè)文件包含到編譯過程中去。
這樣,我就可以調(diào)用我自己寫的 timesTwo.c 然后編譯成可執(zhí)行文件了。
總結(jié)來說,可以通過構(gòu)造一個(gè) Simulink Function 來模擬外部代碼。
我們可以構(gòu)造一個(gè)仿真框架模型(如第二張圖的 simTop),然后引用我們的算法模型(比如 codeGenModel.xls)。對于這個(gè)算法子模型來說,被它調(diào)用的 Simulink Function (對于 simTop 來說)是可見的。但是,當(dāng)把子模型 (codeGenModel 單獨(dú))生成代碼的時(shí)候,它并不知道( 主模型里的)Simulink Function 的存在,而相應(yīng)的,它會(huì)鏈接到你所指定的那個(gè)外部代碼(timesTwo.c)上去。
我必須得說明一下,這只是眾多往Simulink 自動(dòng)生成的代碼中插入外部代碼的方法之一。
如果在主機(jī)上就有外部代碼的話,我會(huì)推薦使用 S-function 來包裝和重用,可用于仿真和代碼生成。
但是,如果沒有外部代碼,比如說這些代碼是目標(biāo)板上面的 OS 服務(wù)程序,那么這種方法倒有點(diǎn)意思(用Simulink Function 來模擬這些硬件 OS 服務(wù)程序)。
-
代碼
+關(guān)注
關(guān)注
30文章
4858瀏覽量
69550 -
編譯
+關(guān)注
關(guān)注
0文章
668瀏覽量
33217
發(fā)布評論請先 登錄
相關(guān)推薦
用matlab里的simulink仿真一個(gè)推挽升壓仿真電路,輸出帶載能力很差?
Simulink與 Simscape的結(jié)合使用
Simulink模型仿真與分析技巧
Simulink自定義模塊開發(fā)教程 Simulink 在控制系統(tǒng)中的應(yīng)用
EasyGo 實(shí)時(shí)仿真丨DC-AC-MMC 實(shí)時(shí)仿真應(yīng)用
Matlab/Simulink/Stateflow建模開發(fā)及仿真測試
【干貨分享】硬件在環(huán)仿真(HiL)測試

常用的仿真軟件有哪些
simulink動(dòng)態(tài)系統(tǒng)建模仿真-第9章
EasyGo使用筆記丨分布式光伏集群并網(wǎng)控制硬件在環(huán)仿真應(yīng)用
Vivado 使用Simulink設(shè)計(jì)FIR濾波器
lwip出現(xiàn)錯(cuò)誤: recvmbox must be deallocated before calling this function怎么解決?
電路仿真軟件simulink的工作原理
電路仿真軟件simulink使用方法
硬件測試服務(wù)項(xiàng)目的重要性和作用

評論