chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

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

掃碼添加小助手

加入工程師交流群

我原來寫了一些很漂亮的 C 函數(shù),寫得非常不錯,想把它集成到 Simulink 環(huán)境中來,怎么辦?

點擊末尾的 “閱讀原文” 下載本文的案例模型

集成外部C代碼到Simulink模型

要得到:

把自己編寫的 C 函數(shù)集成到 Simulink 模型中

怎么做:

Simulink 提供了多種方法來集成外部的 C 代碼。從簡單到復(fù)雜來看,可以:

使用 Stateflow;

使用 MATLAB Function 模塊;

使用 Legacy Code Tool 構(gòu)造 S-fcn 模塊;

自己寫 S-fcn

只介紹簡單的方法

1.假設(shè)已有代碼 table1D.c 以及 table1D.h

table1D 是個簡單的 1 維查表函數(shù)。這是它的函數(shù)原型。第1、2個輸入是表格數(shù)據(jù),第 3 個輸入是表格長度數(shù)據(jù),第 4 個輸入就是要查找的 x,查到的結(jié)果作為返回值。

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

2. 函數(shù)調(diào)用

我現(xiàn)在希望在 Simulink 環(huán)境下使用這個查表函數(shù)。當(dāng)前的應(yīng)用場景是:在給定表格的情況下,通過輸入 u 查出相應(yīng)的 y 出來。

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

在Stateflow中,參照 .h 文件里定義的函數(shù)原型直接調(diào)用這個函數(shù):

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

然后如下圖說明一下各個變量:u 是這個 Chart 模塊的輸入,y 是 Chart 的輸出, uMap,yMap,n 是固定的表格參數(shù)。

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

在MATLAB Function模塊中,需要使用到coder.ceval調(diào)用這段代碼,引用傳遞使用 coder.rref:

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

跟 Stateflow 類似,在 MATLAB Function 中也需要對 m 腳本里用到的各個變量名做一個說明。

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

3. 在Workspace 里定義數(shù)據(jù)對象

再來看 Simulink 模型,它現(xiàn)在有 4 個信號

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

我希望控制這 4 個信號的名字以及定義方式,所以新建這 4 個信號對應(yīng)的數(shù)據(jù)對象。另外,也給之前的 3 個參數(shù)定義對應(yīng)的數(shù)據(jù)對象。

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

4.并把該模型生成代碼

Ctrl + B,得到如下所示,兩句函數(shù)調(diào)用的語句:

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

另外,為了保證模型的正確編譯鏈接,生成代碼之前還需要在源文件中 include 手寫的 .h 文件。如圖,要在模型.h 文件中增加這一行 include 的代碼。

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

那這一行 include 是怎么加進去的呢?如下頁面得到:

關(guān)于的集成外部C代碼到Simulink模型分析和介紹

總結(jié)

使用 Stateflow 以及 MATLAB Function 模塊可以很方便的集成外部的 C 代碼。

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

    關(guān)注

    3

    文章

    4417

    瀏覽量

    67516
  • C代碼
    +關(guān)注

    關(guān)注

    1

    文章

    90

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    matlab的算法部署在simulink

    有沒有哪位大佬能提供一下思路,遇到一個問題matlab得不到神經(jīng)網(wǎng)絡(luò)fitcnet模型的權(quán)重參數(shù),所以simulink沒辦法部署,那遇到這種情況該如何處理
    發(fā)表于 12-08 15:27

    MXAM常見問題解答:從配置報告生成#simulink模型測試 #simulink

    Simulink
    北匯信息POLELINK
    發(fā)布于 :2025年11月14日 11:48:38

    使用Simulink自動生成浮點運算HDL代碼(Part 1)

    ,生成的HDL代碼與目標(biāo)無關(guān)??梢栽谌魏瓮ㄓ肍PGA或ASIC上部署該設(shè)計。 下面介紹如何在Simulink中創(chuàng)建單精度浮點乘法 直接使用乘法模塊即可,并將輸入口改為單精度浮點 使用Ctrl + g
    發(fā)表于 10-22 06:48

    vision board部署模型openmv的代碼導(dǎo)致連接超時怎么解決?

    在env終端中勾選了tiflte support后燒錄mdk板子上后就開始顯示連接不到 無法部署模型
    發(fā)表于 09-19 07:59

    汽車HIL測試系統(tǒng),歐美標(biāo)充電模型Simulink模型,開發(fā),有償

    提供一個歐美標(biāo)充電模型,交付物為白盒Simulink模型
    發(fā)表于 09-04 16:23

    干貨分享 | TSMaster MBD模塊全解析:從模型搭建自動化測試的完整實踐

    在汽車電子MBD開發(fā)中,TSMasterMBD模塊深度集成于TSMaster先進的總線分析、仿真與測試平臺,旨在為工程師提供一套從模型自動編譯、代碼
    的頭像 發(fā)表于 08-22 20:04 ?2483次閱讀
    干貨分享 | TSMaster MBD模塊全解析:從<b class='flag-5'>模型</b>搭建<b class='flag-5'>到</b>自動化測試的完整實踐

    三相異步電機在SIMULINK下的建模與仿真

    摘要:異步電動機三相原始動態(tài)數(shù)學(xué)模型相當(dāng)復(fù)雜,分析和求解這組非線性方程十分困難,因此,要簡化數(shù)學(xué)模型,必須從簡化磁鏈關(guān)展入手,簡化的基本方法就是坐標(biāo)變換。以異少電動機坐標(biāo)變換為基礎(chǔ)推導(dǎo)出同步旋轉(zhuǎn)
    發(fā)表于 06-16 21:48

    FA模型的ServiceAbility的切換介紹

    的ServiceExtensionAbility為系統(tǒng)API,只有系統(tǒng)應(yīng)用才可以創(chuàng)建。因此,F(xiàn)A模型的ServiceAbility的切換,對于系統(tǒng)應(yīng)用和三方應(yīng)用策略有所不同。下面分別介紹這兩種場景。 系統(tǒng)
    發(fā)表于 06-05 07:24

    FA模型綁定Stage模型ServiceExtensionAbility介紹

    FA模型綁定Stage模型ServiceExtensionAbility 本文介紹FA模型的三種應(yīng)用組件如何綁定Stage模型的Servi
    發(fā)表于 06-04 07:55

    代碼革命的先鋒:aiXcoder-7B模型介紹

    ? ? 國內(nèi)開源代碼模型 4月9日aiXcoder宣布正式開源其7B模型Base版,僅僅過去一個禮拜,aiXcoder-7B在軟件源代碼托管服務(wù)平臺GitHub上的Star數(shù)已超過2
    的頭像 發(fā)表于 05-20 14:41 ?806次閱讀
    <b class='flag-5'>代碼</b>革命的先鋒:aiXcoder-7B<b class='flag-5'>模型</b><b class='flag-5'>介紹</b>

    KaihongOS操作系統(tǒng)FA模型與Stage模型介紹

    FA模型與Stage模型介紹 KaihongOS操作系統(tǒng)中,F(xiàn)A模型(Feature Ability)和Stage模型是兩種不同的應(yīng)用
    發(fā)表于 04-24 07:27

    模型部署S32K3xx EVB時出現(xiàn)“下載失敗”錯誤的原因?如何解決?

    我在使用恩智浦基于模型的設(shè)計工具箱 (MBDT) on MATLAB/Simulink. I am trying to deploy the example model
    發(fā)表于 04-11 06:27

    如何實現(xiàn)MC33774IC在Simulink環(huán)境中使用基于模型的設(shè)計?

    我想熟悉如何實現(xiàn)MC33774IC 在 Simulink 環(huán)境中使用基于模型的設(shè)計。 盡管 MATLAB 提供了一些示例文件,但它們似乎是最終版本。要更深入地了解如何配置MC33774,我正在尋找一個教程,該教程解釋了如何從頭開始在 S
    發(fā)表于 04-10 08:05

    如何將S32K312 MBDT生成的代碼導(dǎo)出到S32 Design Studio?

    → S32DS Application Project”并選擇我的卡創(chuàng)建了一個新項目。接下來,我右鍵單擊我的新項目,選擇導(dǎo)入選項,然后選擇我從 Simulink 導(dǎo)出的文件。最后,我嘗試了幾種不同的方法將我的代碼部署評估板,
    發(fā)表于 03-20 07:02

    cubeide的代碼怎么編譯內(nèi)部+外部FLASH里面去?

    我有一個項目,準(zhǔn)備使用GUI和AI,準(zhǔn)備使用STM32U5,但是編譯出來的代碼很多,STM32U5的內(nèi)部FLASH不夠用,準(zhǔn)備使用OSPI擴展外部FLASH。但是遇到一個問題,我不知道怎么將編譯
    發(fā)表于 03-07 07:48