女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

關于如何定義結構體的分析和介紹

MATLAB ? 來源:djl ? 作者:柚籽 ? 2019-09-16 10:31 ? 次閱讀

我們來聊聊結構體。

E-Coder 在做自動代碼生成的時候,在默認情況下,它會把所有的輸入信號定義為一個結構體_U,把所有的輸出信號定義為另一個結構體_Y,把所有的參數定義為一個結構體_P。雖然這樣的結構體不一定是我們想要的,但至少,說明自動代碼生成是支持結構體的。

本文并不解決“哪些情況下應該使用結構體”這個問題,這里來說說:

怎么實現我想要的結構體?

從之前的文章中我們說到,自動生成代碼時,想讓各種信號、參數定義和聲明采用什么樣的方式,都是通過數據對象 (Data Object) 來實現的。那,如果我希望把信號 a ,b,c 或者參數 k1,k2,k3 定義為一個結構體,該怎么實現呢?

構造結構體

要得到:

typdef struct {

double k1;

double k2;

double k3;

} kk_type;

kk_type kk={2.0,3.0,4.0};

怎么做:

設置數據對象的Storage Class屬性為 Struct

或者使用Simulink Bus來定義新的結構體類型 outyy

舉個例子

1.新建如下的簡單模型并生成代碼

先看一下 “正常的” 不使用結構體的情況:

關于如何定義結構體的分析和介紹

看下面這張圖,定義好了對應的信號數據對象 (Simulink.Signal) u1、u2、u3、yy1、yy2、yy3,與參數數據對象(Simulink.Parameter) k1、k2、k3。

通過名字對應以及關聯操作,實現關聯,也就是上圖中的藍色小叉子。具體如何操作以前介紹過。

關于如何定義結構體的分析和介紹

Ctrl + B,生成代碼:

關于如何定義結構體的分析和介紹

2.把參數 k1、k2、k3 放在指定的結構體 kk 里

選中數據對象 k1,k2,k3,把 StorageClass 都設置為 Struct(Custom),并指定結構體名字為 kk。這樣在自動生成代碼時,這幾個參數會自動放入結構體 kk 中。

關于如何定義結構體的分析和介紹

看到,在生成的代碼里,得到一個新的結構體類型 kk_type:

關于如何定義結構體的分析和介紹

并且,根據這幾個參數的值,得到了結構體變量 kk:

關于如何定義結構體的分析和介紹

3.把信號 yy1、yy2、yy3 也放在一個輸出結構體里

剛才的參數結構體是通過設置數據對象的 StorageClass 為 Struct 來實現的。而現在,以信號為例,使用另一種方式來實現這個目的: Simulink Bus。

a.首先,通過 Simulink Bus 來定義一個新的結構體數據類型 outyy:

關于如何定義結構體的分析和介紹

定義這個 Bus 的結構,里面的成員名就是最后出現在代碼里的名字:

關于如何定義結構體的分析和介紹

那么此時,一個新的數據類型就構造好了。將來在生成代碼時,這個新的結構體類型就是這樣:

關于如何定義結構體的分析和介紹

數據類型定義好了,接著,我們就要來用它了。

b. 把 Simulink 的三個輸出信號使用 Bus Creator 模塊變成總線信號,取名叫 outStruct:

關于如何定義結構體的分析和介紹

設置這個 Bus Creator 模塊的數據類型為剛定義好的結構體 outyy。另外,還得勾選它為非虛擬總線。那么這樣,它在生成代碼時,就會被當做結構體來看:

關于如何定義結構體的分析和介紹

c. 如同之前每一個 double\single 類型的信號一樣,接著,也為 outStruct信號定義一個同名的數據對象 outStruct。

在 Simulink 模型上的 outStruct 信號線的屬性界面上勾選關聯到這個數據對象,得到藍色小叉子。

關于如何定義結構體的分析和介紹

4. 最后生成代碼

關于如何定義結構體的分析和介紹

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

    關注

    8

    文章

    7237

    瀏覽量

    90932
  • 數據類型
    +關注

    關注

    0

    文章

    237

    瀏覽量

    13806
  • 結構體
    +關注

    關注

    1

    文章

    130

    瀏覽量

    11024
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    LASCAD應用:動態多模分析和調Q運轉模擬

    目錄 動態多模分析和調Q運轉模擬1 1.介紹1 2.激光器連續輸出時輸出功率,模式競爭,和光束質量的模擬2 3.Q開關運轉模擬6 4.光闌影響模擬10 5.結論12 1.介紹 動態多模分析
    發表于 05-19 08:52

    GLAD應用:全息光柵模擬

    用于模擬全息記錄介質中形成的梯度折射率分布。全息結構一旦形成,就可以在傳輸過程中將一束入射光波逐漸轉換成形成體全息結構的另一束光波。兩束光波之間的能量傳遞轉換效率與全息
    發表于 05-15 09:32

    C語言中結構與聯合體的深度解析:內存布局與應用場景

    在于對內存的極致操控。結構構建數據實體,聯合體實現內存復用,二者的組合使用能創造出強大的數據結構。掌握它們的底層原理,配合內存分析工具(如Valgrind、GDB),將助你在嵌入式開
    發表于 04-08 09:18

    連接器元件的定義結構特點

    在現代電子設備中,連接器元件作為實現電路連接或斷開的重要組件,扮演著不可或缺的角色。它們通過插頭和插座的配合,完成了電信號或電源的傳輸,而無需進行永久性連接。本文將深入探討連接器元件的定義結構特點以及其在電子設備中的應用,以期為相關領域的研究者和工程師提供全面的技術參考
    的頭像 發表于 02-05 16:51 ?484次閱讀

    JCMsuite應用:散射的光學手性響應

    在JCMsuite中,利用光學手性的形式和內置的手性參量可以計算光散射的手性響應。結果表明,時間諧波光學手性密度服從局部連續性方程[1]。這使得手性行為的分析類似于研究電磁能量的標準消光實驗。 在
    發表于 12-25 15:37

    鎂合金微觀結構分析:EBSD制樣技術的應用與經驗探討

    電子背散射衍射(EBSD)技術在材料科學領域,電子背散射衍射(EBSD)技術以其卓越的晶體微區取向和結構分析能力,已經成為全球研究者不可或缺的工具。它不僅能夠提供關于材料微觀組織結構
    的頭像 發表于 12-19 12:35 ?672次閱讀
    鎂合金微觀<b class='flag-5'>結構</b><b class='flag-5'>分析</b>:EBSD制樣技術的應用與經驗探討

    JCMsuite應用:散射的光學手性響應

    在JCMsuite中,利用光學手性的形式和內置的手性參量可以計算光散射的手性響應。結果表明,時間諧波光學手性密度服從局部連續性方程[1]。這使得手性行為的分析類似于研究電磁能量的標準消光實驗。 在
    發表于 12-18 13:41

    VirtualLab Fusion應用:用于抑制高衍射級次的角濾波光柵

    ,以抑制不需要的高衍射階數。為此,首先分析光柵的角度靈敏度。 最后,通過使用 VirtualLab Fusion 進行仿真,顯示了對不期望的高衍射級次的抑制效果。 建模任務 volume
    發表于 12-09 12:51

    等離子定義和特征

    等離子定義 等離子是一種由離子、電子和中性粒子組成的電離氣體。在這種狀態下,物質的部分或全部原子被電離,即原子核與電子分離,形成了帶正電的離子和自由移動的電子。這種電離狀態使得等離子
    的頭像 發表于 11-29 10:06 ?3559次閱讀

    結構成員的順序會影響結構的大小嗎

    相同的結構成員,如果把順序調整一下,會不會影響結構的大小? 答案是會的,這主要跟字節對齊有關。 比如這樣的結構
    的頭像 發表于 11-25 16:24 ?490次閱讀

    C語言和C++中結構的區別

    同樣是結構,看看在C語言和C++中有什么區別?
    的頭像 發表于 10-30 15:11 ?627次閱讀

    EMC(電磁兼容性)結構設計基礎

    介紹了電磁兼容的基本定義,要求,結構設計的準則和方法。
    發表于 08-08 14:23 ?13次下載

    ota升級的庫中,結構upgrade_server_info中pespconn的作用是什么?

    check_cb; struct espconn *pespconn; }; 這個結構中已經有ip,port,pespconn這個結構
    發表于 07-12 06:33

    請問esp-idf&amp;vscode結構索引不到對應的成員如何解決?

    兄弟們,我用VSCode 初始化結構時,索引不到對應的成員,并且索引會出現不屬于結構體內的東西,有解決辦法嗎,球球了
    發表于 06-14 06:42

    你是否真的了解結構占用了多少字節?

    結構成員所占內存空間大小一般情況下,如果想知道結構成員的內存占用情況需要:1、先用結構在內
    的頭像 發表于 06-04 08:04 ?791次閱讀
    你是否真的了解<b class='flag-5'>結構</b><b class='flag-5'>體</b>占用了多少字節?