国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

關于一種實現條件編譯的建模方法分析和介紹

MATLAB ? 來源:djl ? 作者:董淑成 ? 2019-09-16 15:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上次介紹過可以使用Variant Subsystem或者Model Variant實現帶有條件編譯的代碼(條件編譯助力Simulink模型平臺化開發)。最近了解到,從MATLAB R2016a開始,又有一種新的方式可以實現C代碼中的條件編譯。這就是Variant Sourc模塊的使用。

關于一種實現條件編譯的建模方法分析和介紹

假設有如下模型:

關于一種實現條件編譯的建模方法分析和介紹

雙擊Variant Source模塊,可以看到如下配置界面:

關于一種實現條件編譯的建模方法分析和介紹

不難看出,除了要定義Simulink Variant對象K1、K2之外,還需要勾上Analyze all choices during update diagram and generate prepropcessor conditionals選項。顯然,如果K==1條件成立,則Port 1分支對應的代碼被編譯,如果K==2,則Port 2分支對應的代碼被編譯。這里的K可以定義為Simulink Parameter對象,Storage Class定義為Define(Custom),并且需要指定宏定義的文件。

如此設置之下,得到的模型算法實現函數如下:

voidtestvariantSource_step(void)

{

real_T rtb_VariantMerge_For_Variant_So;

#ifK1

rtb_VariantMerge_For_Variant_So = u1 + u2;

#endif

#ifK2

rtb_VariantMerge_For_Variant_So = u3 + u4;

#endif

y = rtb_VariantMerge_For_Variant_So;

}

這種方式實現帶有條件編譯的代碼也非常簡單,條件編譯的好處可以通過控制宏定義K控制需要編譯哪部分代碼,那么,如果不設置條件編譯呢?

上述模型中,如果不再勾選Analyze all choices during update diagram and generate prepropcessor conditionals選項,我們得到如下代碼:

voidtestvariantSource_step(void)

{

y = u1 + u2;

}

代碼中只有當前參數條件下有效算法的代碼。

跟上次介紹的條件編譯相比,實現方式不同,應用場景也可能不同,如何取舍,這里就不去分析了。但是,在基于模型的開發模式下,到底在模型級別上做選擇,還是通過C代碼級別的條件編譯做選擇,這是個值得我們思考的問題。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4968

    瀏覽量

    73988
  • 編譯
    +關注

    關注

    0

    文章

    694

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    C/C++條件編譯

    條件編譯一種編譯時根據條件選擇性地包含或排除部分代碼的處理方法。在 C/C++ 中,
    發表于 12-05 06:21

    關于系統鏈接腳本的介紹

    、隊伍介紹 本篇為蜂鳥E203系列分享第四篇,本篇介紹的內容是系統鏈接腳本。 二、如何實現不同的下載模式? 實現
    發表于 10-30 08:26

    一種基于PWM的電壓輸出DAC電路設計

    誤差的方法,論文給出了兩從PWM到0~5V電壓輸出的電路實現方法,第2電路具有很高的轉換精度。 純分享帖,點擊下方附件免費獲取完整資
    發表于 08-04 14:58

    一種帶通濾波器在無位置傳感器轉子檢測中的應用

    摘 要:論文研究了一種直流無刷電機的無位置傳感器的轉子位置的硬件電路檢測方法。結合傳統“反電動勢\"方法分析并設計了一種新的帶通濾波器延時
    發表于 08-04 14:56

    多種空間矢量調制方法的諧波分析

    摘 要:以三相電壓型逆變器為研究對象,介紹了多種空問矢量調制方法。該方法易于數字化,避免繁瑣的計算。本文通過一種在標準正弦波的基礎上,注入零序分量來統
    發表于 07-25 14:03

    介紹一種直流過壓保護電路

    本篇博文將詳細分析一種典型的過壓保護電路,探討其工作原理、元件選擇及實際應用,幫助大家深入理解如何保護電子設備。
    的頭像 發表于 07-05 11:06 ?1457次閱讀
    <b class='flag-5'>介紹</b><b class='flag-5'>一種</b>直流過壓保護電路

    漢思新材料取得一種PCB板封裝膠及其制備方法的專利

    漢思新材料取得一種PCB板封裝膠及其制備方法的專利漢思新材料(深圳市漢思新材料科技有限公司)于2023年取得了關于PCB板封裝膠及其制備方法
    的頭像 發表于 06-27 14:30 ?749次閱讀
    漢思新材料取得<b class='flag-5'>一種</b>PCB板封裝膠及其制備<b class='flag-5'>方法</b>的專利

    VirtualLab:醫用衍射透鏡

    技術方法實現經典透鏡精確快速建模和衍射透鏡不同級次衍射效率計算的關鍵。 為了說明該軟件在這方面的能力,在實例中分析了所設計混合透鏡的近場和遠場視圖。此外,為了進
    發表于 06-12 08:54

    VirtualLab Fusion應用:多反射系統的非序列建模

    嗎,還是向后反射也很有趣?)增強了方法的靈活性,使您能夠獲得盡可能準確和快速的結果。 我們以兩不同的場景為例演示了這概念。首先,我們展示了赫里奧特池的情況,這是一種充滿弱吸收氣體的
    發表于 06-12 08:49

    PanDao:實際約束條件下成像系統的初始結構的生成

    “First Time Right”(FTR)方法,能夠基于給定的規格與約束生成多樣化的約束成像系統。結合PanDao這創新的光學制造技術(OFT)分析軟件,可對面向量產的系統快速完成設計、
    發表于 05-07 08:57

    電機瞬態過程分析的MATLAB建模與仿真

    研究電機瞬態過程的意義 電機的瞬態過程是電機運行狀態的變化過程,是從一種穩態運行到另一種穩態運行的過渡過程,它是電機內的一種電磁場儲能和轉子動能隨時間而變化的過程。當與電機相關聯的任
    發表于 04-29 16:29

    一種新型激光雷達慣性視覺里程計系統介紹

    針對具有挑戰性的光照條件和惡劣環境,本文提出了LIR-LIVO,這是一種輕量級且穩健的激光雷達-慣性-視覺里程計系統。通過采用諸如利用深度與激光雷達點云關聯實現特征的均勻深度分布等先進技術,以及利用
    的頭像 發表于 04-28 11:18 ?1095次閱讀
    <b class='flag-5'>一種</b>新型激光雷達慣性視覺里程計系統<b class='flag-5'>介紹</b>

    一種分段氣隙的CLLC變換器平面變壓器設計

    ,驗證理論設計的正確性,為變壓器制作提供理論依據。文中基于圖1電路拓撲研究了平面變壓器的設計與實現方法。 2 一種分段氣隙的CLLC平面變壓器設計圖1中拓撲變壓器副邊三繞組并聯,實際上等效為三個變壓器
    發表于 03-27 13:57

    一種基于分數階 PID 直流電機調速的 AGV 控制系統

    為設計一種低成本、抗干擾、穩定可靠的 AGV,提出一種基于磁帶導航的 AGV 系統。采用 Megawin 公司的80C51單片機為控制核心,以并排對稱設計的霍爾傳感器實現循跡和糾偏,紅外光
    發表于 03-25 15:10

    一種多模態駕駛場景生成框架UMGen介紹

    端到端自動駕駛技術的快速發展對閉環仿真器提出了迫切需求,而生成式模型為其提供了一種有效的技術架構。然而,現有的駕駛場景生成方法大多側重于圖像模態,忽略了其他關鍵模態的建模,如地圖信息、智能交通參與者等,從而限制了其在真實駕駛場景
    的頭像 發表于 03-24 15:57 ?1690次閱讀
    <b class='flag-5'>一種</b>多模態駕駛場景生成框架UMGen<b class='flag-5'>介紹</b>