How to call API in simulink?

조회 수: 2 (최근 30일)
sneha bharadwaj
sneha bharadwaj 2017년 1월 11일
편집: Shaunak 2025년 6월 13일
I have a c code as follows # include "dfg_uu_file.h" extern double dfg_uu_getmaxsize_a(void)
how to call this using an API in simulink? given that a=[1 2]

답변 (1개)

Shaunak
Shaunak 2025년 6월 13일
편집: Shaunak 2025년 6월 13일
It is my understanding that you want to call a C function from within Simulink using the S-Function Builder block, where your C code includes a header file and returns a double.
To achieve this, follow these steps:
  • Add an S-Function Builder block to your Simulink model (found under User-Defined Functions in the Simulink Library Browser).
  • Double-click the block to open the configuration editor:
  1. Under the "Inputs" tab, no input is needed since your function has no arguments.
  2. Under the "Outputs" tab, define one output port, e.g., y, with:
- Port Name: y
- Port Width: 1
- Data Type: double
  • Go to the "Data Properties" tab and add the line mentioned below to the "Include" section:
#include "dfg_uu_file.h"
  • Under the "Outputs" section, add the function call:
y[0] = dfg_uu_getmaxsize_a();
  • Click "Build" to generate the S-function.
  • Use the generated block in your model—this will now call your external C function during simulation.
For more information, kindly refer to the following MathWorks documentation on the S-function Builder Block:
Hope this helps!

카테고리

Help CenterFile Exchange에서 Simulink Coder에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by