一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

MATLAB ? 來源:djl ? 2019-09-17 10:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

循環(huán)邏輯

要得到:

y1 = 0;

for(inx = 0; inx <10; inx++)

{

y1 = u1[inx] + y1;

}

或者

while(flag && (num_iter <= 100)

{

flag = func ();

num_iter ++;

}

怎么做:

Stateflow 有相應(yīng)的流程圖向?qū)Э梢灾苯邮褂茫詣由蓪?yīng)的流程圖結(jié)構(gòu)。

For循環(huán)

1. 模型

在 Stateflow 里有各種控制流的構(gòu)造向?qū)В缦聢D。如果對 Stateflow 的流程圖構(gòu)建不熟悉的話,可以使用它來自動生成,再在它的基礎(chǔ)上進行修改:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

從而得到所需要的框圖:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

2. 數(shù)據(jù)

定義 Stateflow 模塊的端口和本地變量,輸入端口 u1,輸出端口 yy1,以及本地變量 inx 如下:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

在 Base Workspace 里定義輸入輸出信號 u1,yy1 的 Data Object:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

3. 關(guān)聯(lián)

在信號線上右鍵,設(shè)置信號屬性,勾選 “Signal name must resolve to Simulink signal object”,將信號與 Base Workspace 的數(shù)據(jù)對象關(guān)聯(lián)在一起。關(guān)聯(lián)輸入輸出信號后,會看到如圖的藍色小叉子:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

4. 代碼

Ctrl+B,它所自動生成的代碼:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

While循環(huán)

1. 模型

下圖就通過向?qū)?gòu)造的,得到跟 for 循環(huán)類似的流程圖:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

這里的func作為一個 事件Event ,觸發(fā)外面的 function call 子系統(tǒng) func 計算flag:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

2. 數(shù)據(jù)

Stateflow 內(nèi)的數(shù)據(jù)定義如下圖,輸入端口名稱 u1,輸出端口名稱 yy2,本地變量 num_iter。flag 由外部函數(shù) func 來更新而作為輸入。另外, func 事件觸發(fā)調(diào)用外部的 func 函數(shù)。( inx 這里沒有用)

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

在 Base Workspace 里定義相應(yīng)的數(shù)據(jù)對象。因為這個 Simulink 模型的信號線上已經(jīng)命名為 u2,所以定義的數(shù)據(jù)對象名稱要跟信號線的名字一致: u2,yy2,flag。

并設(shè)置 flag 的初始值為 true。將數(shù)據(jù)對象與 Simulink 信號線關(guān)聯(lián)。

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

3. 生成代碼

Ctrl+B,生成的代碼如下圖所示。設(shè)置了 func()子系統(tǒng)的屬性,把它變成一個子函數(shù)來調(diào)用。沒有截圖顯示,但是func() 函數(shù)里修改了全局變量 flag 的值。

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

代碼正常生成,但此時會得到如下的警告:

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

也就是說,我們之前對數(shù)據(jù)對象 flag 所設(shè)置的初始值是沒用的,會被模型中 func 子系統(tǒng)的輸出端口 Out1 的初始值所覆蓋。

默認情況下 Out1 端口的初始值為 0 ,所以看下圖的初始化函數(shù)里, flag 被初始化為 false,我們之前所設(shè)置的初始值 true 沒有發(fā)生作用。

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

主程序里的 while(flag&(inx<100)) 都不會被執(zhí)行。這個問題,通過仿真也會測出來。

所以,需要雙擊 func 子系統(tǒng)的 Out1 端口,設(shè)置初始值為 true,仿真才能得到正確的結(jié)果。同時,也會最后得到下面的初始化代碼。

關(guān)于Stateflow實現(xiàn)循環(huán)邏輯的相關(guān)分析和介紹

do while循環(huán)

使用流程圖的向?qū)?,選擇 do while 模式,把 Chart 里面的流程圖改改就行了。另外,被調(diào)用的 func 函數(shù),也可以寫在 Chart 里面。

Stateflow 有相應(yīng)的流程圖向?qū)Э梢灾苯邮褂?,自動生成對?yīng)的流程圖結(jié)構(gòu)。

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

    關(guān)注

    0

    文章

    302

    瀏覽量

    12248
  • 初始化
    +關(guān)注

    關(guān)注

    0

    文章

    50

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    技術(shù)干貨驛站 ▏深入理解C語言:嵌套循環(huán)循環(huán)控制的底層原理

    大家好!在上一節(jié)中,我們學(xué)習(xí)了C語言中的基本循環(huán)語句,如for、while和do...while循環(huán)。今天,我們將進一步探討嵌套循環(huán)循環(huán)控制,這些技巧可以幫助我們
    的頭像 發(fā)表于 02-21 18:26 ?658次閱讀
    技術(shù)干貨驛站  ▏深入理解C語言:嵌套<b class='flag-5'>循環(huán)</b>與<b class='flag-5'>循環(huán)</b>控制的底層原理

    汽輪機熱力循環(huán)分析

    汽輪機熱力循環(huán)是熱力工程中的重要部分,以下是對其進行的分析: 一、熱力循環(huán)概述 熱力循環(huán)是指工質(zhì)從某一狀態(tài)點開始,經(jīng)過一系列狀態(tài)變化又回到原來這一狀態(tài)點的封閉變化過程。在這個過程中,工
    的頭像 發(fā)表于 02-06 16:52 ?979次閱讀

    可靠性溫度循環(huán)試驗至少需要幾個循環(huán)?

    溫度循環(huán)作為自然環(huán)境的模擬,可以考核產(chǎn)品在不同環(huán)境條件下的適應(yīng)能力,常用于產(chǎn)品在開發(fā)階段的型式試驗、元器件的篩選試驗。一、溫度循環(huán)測試介紹溫度循環(huán)試驗,也稱為熱
    的頭像 發(fā)表于 01-23 15:26 ?575次閱讀
    可靠性溫度<b class='flag-5'>循環(huán)</b>試驗至少需要幾個<b class='flag-5'>循環(huán)</b>?

    請問關(guān)于ADS5407內(nèi)部寄存器有沒有相關(guān)的中文介紹的?

    請問關(guān)于ADS5407內(nèi)部寄存器有沒有相關(guān)的中文介紹的?其中有幾個寄存器的功能不是特別明白,麻煩啦
    發(fā)表于 01-17 07:36

    CMOS邏輯IC應(yīng)用中的噪聲問題和解決對策

    前面兩期的芝識課堂,我們介紹了大量關(guān)于CMOS邏輯IC應(yīng)用的一些細節(jié)事項,本期課堂讓我們進入實際的應(yīng)用案例,解決電路設(shè)計中的噪聲問題。
    的頭像 發(fā)表于 01-13 10:30 ?1371次閱讀
    CMOS<b class='flag-5'>邏輯</b>IC應(yīng)用中的噪聲問題和解決對策

    深入理解C語言:循環(huán)語句的應(yīng)用與優(yōu)化技巧

    在程序設(shè)計中,我們常常需要重復(fù)執(zhí)行某一段代碼。為了提高效率和簡化代碼,循環(huán)語句應(yīng)運而生。C語言作為一門經(jīng)典的編程語言,提供了多種循環(huán)控制結(jié)構(gòu),幫助程序員高效地實現(xiàn)重復(fù)操作。掌握循環(huán)語句
    的頭像 發(fā)表于 12-07 01:11 ?639次閱讀
    深入理解C語言:<b class='flag-5'>循環(huán)</b>語句的應(yīng)用與優(yōu)化技巧

    邏輯異或和邏輯或的比較分析

    邏輯異或(Exclusive OR,簡稱XOR)和邏輯或(OR)是數(shù)字邏輯和編程中兩種基本的邏輯運算,它們各自具有獨特的功能和應(yīng)用場景。以下是對邏輯
    的頭像 發(fā)表于 11-19 09:48 ?1474次閱讀

    關(guān)于LRU(Least Recently Used)的邏輯實現(xiàn)

    湊巧看到一個有關(guān)LRU(Least Recently Used)的邏輯實現(xiàn),其采用矩陣方式進行實現(xiàn),看起來頗有意思,但文章中只寫方法不說原理,遂來研究下。LRU(Least Recently
    的頭像 發(fā)表于 11-12 11:47 ?955次閱讀
    <b class='flag-5'>關(guān)于</b>LRU(Least Recently Used)的<b class='flag-5'>邏輯</b><b class='flag-5'>實現(xiàn)</b>

    邏輯介紹

    長虹邏輯板培訓(xùn)教材適合新手和老司機。
    發(fā)表于 10-31 11:19 ?0次下載

    利用位反轉(zhuǎn)尋址實現(xiàn)循環(huán)緩沖器

    電子發(fā)燒友網(wǎng)站提供《利用位反轉(zhuǎn)尋址實現(xiàn)循環(huán)緩沖器.pdf》資料免費下載
    發(fā)表于 10-28 10:01 ?0次下載
    利用位反轉(zhuǎn)尋址<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>循環(huán)</b>緩沖器

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

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

    淺談邏輯分析儀的技術(shù)原理和應(yīng)用領(lǐng)域

    或時序)開始捕獲信號。這些觸發(fā)條件可以根據(jù)工程師的需求進行設(shè)置,以實現(xiàn)靈活的信號捕獲和分析。 信號分析:存儲的信號數(shù)據(jù)可以通過邏輯分析儀的軟
    發(fā)表于 09-12 15:04

    時序邏輯電路故障分析

    時序邏輯電路的主要故障分析是一個復(fù)雜而重要的課題,它涉及電路的穩(wěn)定性、可靠性以及整體性能。以下是對時序邏輯電路主要故障的全面分析,旨在幫助理解和解決這些故障。
    的頭像 發(fā)表于 08-29 11:13 ?1873次閱讀

    時序邏輯電路中如何判斷有效狀態(tài)和無效狀態(tài)

    在時序邏輯電路中,有效狀態(tài)和無效狀態(tài)的判斷是電路分析和設(shè)計的重要環(huán)節(jié)。有效狀態(tài)是指電路在實際工作過程中被利用到的狀態(tài),它們構(gòu)成了電路的有效循環(huán);而無效狀態(tài)則是指那些沒有被利用到,或者雖然存在但不影響電路正常工作的狀態(tài)。以下是對如
    的頭像 發(fā)表于 08-12 15:51 ?5191次閱讀

    分析組合邏輯電路的設(shè)計步驟

    和可靠性。 需求分析 需求分析是設(shè)計組合邏輯電路的第一步,也是最重要的一步。在這個階段,我們需要明確電路的功能、輸入輸出信號、性能要求等。需求分析的目的是確保電路設(shè)計滿足實際應(yīng)用的需求
    的頭像 發(fā)表于 07-30 14:39 ?1702次閱讀