99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

分享Simulink子系統(tǒng)生成單獨(dú)的子函數(shù)的教程

MATLAB ? 來源:djl ? 作者:柚籽 ? 2019-09-17 09:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們寫 C 代碼的時(shí)候,為了主程序結(jié)構(gòu)清晰,通常會(huì)把具有獨(dú)立功能的代碼變成子函數(shù)的形式。類似的,為了 Simulink 模型結(jié)構(gòu)清晰,我們?cè)谀P屠镆步?jīng)常會(huì)用把具一片實(shí)現(xiàn)某種功能的模塊變成子系統(tǒng)的形式。

那么,如果我希望這些Simulink 子系統(tǒng)在自動(dòng)代碼生成時(shí),也能真的生成單獨(dú)的子函數(shù),該如何配置呢?

把某個(gè)子系統(tǒng)編程函數(shù)調(diào)用

要得到:

自動(dòng)生成代碼時(shí),讓某個(gè) Simulink 子系統(tǒng)的算法生成單獨(dú)子函數(shù)形式。

怎么做:

把該子系統(tǒng)變?yōu)樵酉到y(tǒng) (Atomic Subsystem),并配置子系統(tǒng)的代碼生成選項(xiàng)。

舉個(gè)例子

1. 模型

這是在前一篇帖子最后用到的一個(gè)模型。MATLAB Function 里面寫了一個(gè)循環(huán)語句,并在循環(huán)內(nèi)部調(diào)用了外部子系統(tǒng) func:

分享Simulink子系統(tǒng)生成單獨(dú)的子函數(shù)的教程

它所生成的代碼如下圖??梢钥吹?Simulink 子系統(tǒng) func 在生成代碼后,具體的 C 代碼并不會(huì)平鋪在主程序里。它而是作為一個(gè)函數(shù)調(diào)用的形式出現(xiàn)的的 func( ):

分享Simulink子系統(tǒng)生成單獨(dú)的子函數(shù)的教程

2. 設(shè)置

這是因?yàn)閷?duì)該模塊的屬性做了設(shè)置,如下圖。

首先右鍵點(diǎn)擊模型,打開 Block Parameters 界面,首先要在 Main 的頁面將子系統(tǒng)勾選為Atomic Subsystem。只不過在這個(gè)案例模型里,由于 func 是觸發(fā)子系統(tǒng),默認(rèn)就是 Atomic 的。

然后,點(diǎn)開出現(xiàn)的 Code Generation 頁面,將 Function packaging 配置為 Nonresusable function,主函數(shù)調(diào)用它時(shí)通過全局變量來傳遞數(shù)據(jù)(總之不選擇 Inline 和 Auto)。

分享Simulink子系統(tǒng)生成單獨(dú)的子函數(shù)的教程

也可以設(shè)置為 Reusable ,這時(shí)主程序調(diào)用它的時(shí)候,會(huì)通過傳參的方式來進(jìn)行數(shù)據(jù)傳遞。最后生成的代碼如下圖:

分享Simulink子系統(tǒng)生成單獨(dú)的子函數(shù)的教程

模型的默認(rèn)設(shè)置是 Auto,所以在這種情況下,代碼生成工具會(huì)把這個(gè)子系統(tǒng)的算法代碼寫在主程序里,而不會(huì)采用函數(shù)調(diào)用的方式,如下圖:

分享Simulink子系統(tǒng)生成單獨(dú)的子函數(shù)的教程

總結(jié)

如果希望某個(gè)子系統(tǒng)的 C 代碼單獨(dú)生成一個(gè)子函數(shù),那么:

把子系統(tǒng)配置為元胞子系統(tǒng)(Atomic Subsystem);

設(shè)置 Code Generation 屬性為 Reusable 或者 NonReusable。

另外,不僅可以將子系統(tǒng)的代碼放在單獨(dú)的子函數(shù)里,還可以配置放在單獨(dú)的文件(在配置菜單里指定文件名即可)里。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3689

    瀏覽量

    95238
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4380

    瀏覽量

    64848
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70715
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    迅為RK3568開發(fā)板新增topeet子系統(tǒng)-在產(chǎn)品中新增子系統(tǒng)

    build/subsystem_config.json文件中增加名為topeet的子系統(tǒng),在3.4節(jié)已經(jīng)新建了topeet 文件夾存放子系統(tǒng)代碼。添加 topeet 子系統(tǒng)進(jìn)行一個(gè)登記,說明
    發(fā)表于 06-16 10:43

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)GPIO子系統(tǒng)API函數(shù)的引入
    的頭像 發(fā)表于 05-29 14:05 ?452次閱讀
    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO<b class='flag-5'>子系統(tǒng)</b>GPIO<b class='flag-5'>子系統(tǒng)</b>API<b class='flag-5'>函數(shù)</b>的引入

    迅為RK3568驅(qū)動(dòng)指南GPIO子系統(tǒng) GPIO操作函數(shù)實(shí)驗(yàn)

    迅為電子RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng) GPIO操作函數(shù)實(shí)驗(yàn)
    的頭像 發(fā)表于 05-28 15:24 ?406次閱讀
    迅為RK3568驅(qū)動(dòng)指南GPIO<b class='flag-5'>子系統(tǒng)</b> GPIO操作<b class='flag-5'>函數(shù)</b>實(shí)驗(yàn)

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)三級(jí)節(jié)點(diǎn)操作函數(shù)實(shí)驗(yàn)

    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO子系統(tǒng)三級(jí)節(jié)點(diǎn)操作函數(shù)實(shí)驗(yàn)
    的頭像 發(fā)表于 05-26 15:39 ?820次閱讀
    迅為RK3568開發(fā)板驅(qū)動(dòng)指南GPIO<b class='flag-5'>子系統(tǒng)</b>三級(jí)節(jié)點(diǎn)操作<b class='flag-5'>函數(shù)</b>實(shí)驗(yàn)

    RK3568驅(qū)動(dòng)指南|第十二篇 GPIO子系統(tǒng)-第135章 GPIO子系統(tǒng)與pinctrl子系統(tǒng)相結(jié)合實(shí)驗(yàn)

    RK3568驅(qū)動(dòng)指南|第十二篇 GPIO子系統(tǒng)-第135章 GPIO子系統(tǒng)與pinctrl子系統(tǒng)相結(jié)合實(shí)驗(yàn)
    的頭像 發(fā)表于 05-23 13:47 ?360次閱讀
    RK3568驅(qū)動(dòng)指南|第十二篇 GPIO<b class='flag-5'>子系統(tǒng)</b>-第135章 GPIO<b class='flag-5'>子系統(tǒng)</b>與pinctrl<b class='flag-5'>子系統(tǒng)</b>相結(jié)合實(shí)驗(yàn)

    飛凌嵌入式ElfBoard ELF 1板卡-input子系統(tǒng)之input子系統(tǒng)簡(jiǎn)介

    在Linux系統(tǒng)中,Input子系統(tǒng)是一個(gè)用于處理輸入設(shè)備的軟件框架。它提供了一種統(tǒng)一的接口和機(jī)制,使得各種輸入設(shè)備(如鍵盤、鼠標(biāo)、觸摸屏、游戲手柄等)能夠與Linux系統(tǒng)進(jìn)行交互。Input
    發(fā)表于 04-15 10:27

    嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-Pinctrl和GPIO子系統(tǒng)之GPIO子系統(tǒng)

    軟件控制設(shè)備上的GPIO信號(hào)。在Linux的GPIO子系統(tǒng)中,提供了一組API函數(shù)來管理和操作GPIO引腳。以下是一些常用的GPIO子系統(tǒng)API函數(shù):gpio_request():請(qǐng)求
    發(fā)表于 03-25 13:29

    飛凌嵌入式ElfBoard ELF 1板卡-Pinctrl和GPIO子系統(tǒng)之GPIO子系統(tǒng)

    軟件控制設(shè)備上的GPIO信號(hào)。在Linux的GPIO子系統(tǒng)中,提供了一組API函數(shù)來管理和操作GPIO引腳。以下是一些常用的GPIO子系統(tǒng)API函數(shù):gpio_request():請(qǐng)求
    發(fā)表于 03-24 15:41

    window 10系統(tǒng)生成的安裝包程序在win7上運(yùn)行,我生成時(shí)也選了配置win7,但是還是報(bào)需要win10以上配置系統(tǒng)

    window 10系統(tǒng)生成的安裝包程序在win7上運(yùn)行,我生成時(shí)也選了配置win7,但是還是報(bào)需要win10以上配置系統(tǒng),怎么解決啊
    發(fā)表于 01-02 14:33

    Simulink與 Simscape的結(jié)合使用

    。用戶可以利用 Simulink 進(jìn)行系統(tǒng)建模、仿真、測(cè)試和驗(yàn)證,以及生成代碼。 Simscape 簡(jiǎn)介 Simscape 是一個(gè)用于創(chuàng)建基于物理的模型的仿真環(huán)境。它提供了一個(gè)庫,包含各種物理組件,如機(jī)械、電氣、液壓和熱力
    的頭像 發(fā)表于 12-12 09:31 ?1808次閱讀

    Simulink與 MATLAB 的結(jié)合使用 Simulink中的信號(hào)處理方法

    在工程和科學(xué)研究中,信號(hào)處理是一個(gè)重要的領(lǐng)域,涉及到信號(hào)的采集、分析、處理和生成。MATLAB 提供了豐富的信號(hào)處理工具箱,而 Simulink 提供了一個(gè)直觀的圖形界面,使得復(fù)雜的信號(hào)處理系統(tǒng)可以
    的頭像 發(fā)表于 12-12 09:25 ?1509次閱讀

    Simulink自定義模塊開發(fā)教程 Simulink 在控制系統(tǒng)中的應(yīng)用

    在控制系統(tǒng)的設(shè)計(jì)和分析中,Simulink 提供了一個(gè)強(qiáng)大的工具集,允許工程師通過圖形化界面快速構(gòu)建和測(cè)試復(fù)雜的系統(tǒng)模型。然而,Simulink 的標(biāo)準(zhǔn)庫可能不包含所有特定的功能,這時(shí)
    的頭像 發(fā)表于 12-12 09:21 ?2178次閱讀

    Matlab/Simulink/Stateflow建模開發(fā)及仿真測(cè)試

    matlab 模擬仿真 熟悉Matlab/Simulink/Stateflow建模開發(fā)及仿真測(cè)試,熟悉V模型開發(fā)流程。 熟悉自動(dòng)代碼生成,能夠編寫或者配置自動(dòng)代碼生成腳本。
    發(fā)表于 10-24 17:23

    RTOS中鉤子函數(shù)的用途及用法

    在很多操作系統(tǒng)中,都存在這樣一類API函數(shù)接口:HOOK函數(shù)(也叫鉤子函數(shù))。
    的頭像 發(fā)表于 10-23 16:25 ?768次閱讀
    RTOS中鉤<b class='flag-5'>子函數(shù)</b>的用途及用法

    PRU子系統(tǒng)特性比較

    電子發(fā)燒友網(wǎng)站提供《PRU子系統(tǒng)特性比較.pdf》資料免費(fèi)下載
    發(fā)表于 09-03 11:13 ?0次下載
    PRU<b class='flag-5'>子系統(tǒng)</b>特性比較