Set ports properties from Level2-M-File

10 views (last 30 days)
Bolivar
Bolivar on 28 Jan 2013
Commented: Davide Vertuani on 17 Sep 2021
Hallo,
I'm looking on how to write a Level 2 M-File for a simulink block. both inputs port get frame data. In fact i've got two Imput ports and three Outputs. When i set Imput ports Mode to 'Inherited', and then register the SetInputPortSamplingMode methode, the program generate error like "too many ouputs ports" two of output ports deliver frame sample. How can i fix that?? Do the SetInputPortSamplingMode has to define output ports sampling mode as well? My SetInputPortSamplingMode methode look as follow:
function setInPortSamMode (block)
block.InputPort(1).SamplingMode = 'frame';
block.InputPort(2).SamplingMode = 'frame';
block.OutputPort(1).SamplingMode = 'frame';
block.OutputPort(2).SamplingMode = 'frame';
thanks for helping me!
Bolivar

Answers (1)

Kaustubha Govind
Kaustubha Govind on 28 Jan 2013
Yes, you do have to specify the output port sampling modes as well. Also, your setInPortSamMode doesn't have the correct prototype. According to the documentation, you need:
function setInPortSamMode(block, idx, fd)
  1 Comment
Davide Vertuani
Davide Vertuani on 17 Sep 2021
The link to the documentation page is broken.
More detailed / extensive documentation about this argument (or generally any documentation about S-functions) would be more than welcome. One is faced with errors during development and has no documentation other than Q&As here and in StackOverflow to rely on.

Sign in to comment.

Categories

Find more on Block and Blockset Authoring in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!