Всем привет, я пытаюсь использовать устаревший инструмент кода для генерации функции s для моего кода C, сгенерированного с помощью simulink-кодера (для теста SIL), но проблема в том, что моя функция вывода недействительна (мой ввод-вывод объявляется как extern в начале кода) это как «void function_step (void)», поэтому, когда я генерирую свою функцию с унаследованным кодом, она генерируется без входов и выходов.
и даже когда я добавляю входы и выходы в свой прототип функции, сгенерированная функция s не работает, и это совершенно нормально, потому что унаследованный код не может знать мой ввод / вывод ... так что, если кто-то может мне помочь, пожалуйста, потому что я пытаюсь больше месяца, чтобы измените сгенерированную функцию s и попробуйте каждое решение, но без результата ....
спасибо всем заранее
вот мой сценарий
load('myBues.mat')
def = legacy_code('initialize');
% Find c files:
list = dir('*.c');
def.SourceFiles = {list.name};
% Find header files:
list = dir('*.h');
def.HeaderFiles = {list.name};
% mex function name and output spec:
def.SFunctionName = 'Sfunc';
% here when i have the problem
% instead of void my code has 12 inputs and 22 outputs and when
% i use them in the function_step the S function generated doesnt work
% correctly
def.OutputFcnSpec = 'void function_step(void)';
def.InitializeConditionsFcnSpec = 'void func_initialize(void)';
def.TerminateFcnSpec = 'void func_terminate(void)';
% % to compile and launch the s function in simulink
legacy_code('generate_for_sim',def);
legacy_code('slblock_generate',def);