accessing port data types during Complilation
1 次查看(过去 30 天)
显示 更早的评论
Hi,
I am masking addition block, i need to access the port datatypes of the Addition block.
I have written the code in initialization tab of the mask system, to access the port datatypes i used the below code
IportBlks = find_system(mdlName, 'LookUnderMasks', 'on','BlockType', 'Inport')
InportDTs = cell(numel(IportBlks))
modelname([],[],[],'compile')
for i = 1:numel(IportBlks)
IportBlk = IportBlks{i}
q=get_param(IportBlk,'PortHandles')
InportDTs{i} = get_param(q.Outport,'CompiledPortDataType')
end
modelname([],[],[],'term');
Its not working, but if i run the same code on Command window it will work.
let me know do i need to change the code or any alternative way is there.
0 个评论
回答(1 个)
Kaustubha Govind
2012-2-29
You cannot run this code during mask initialization, because mask initialization is actually one of the stages of the model compilation process (the command "modelname([],[],[],'compile')"). Is there a reason you want to get the CompiledPortDataTypes for all Inport blocks in your model? Perhaps there is a better solution.
2 个评论
Kaustubha Govind
2012-3-6
Mask initialization code is not generated into the code generated by Simulink/Embedded Coder.
I would recommend post-processing the generated code using the after_tlc in STF_make_rtw_hook.m - you need to create a custom target that inherits from ert.tlc for this. See http://www.mathworks.com/help/releases/R2011b/toolbox/rtw/ug/bse3c7m-1.html and http://www.mathworks.com/help/releases/R2011b/toolbox/rtw/ug/f10435.html#f10760
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Deployment, Integration, and Supported Hardware 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!