Jump to content

    
Sign in to follow this  
Alhen

Simulink - относительный путь кастомного кода

Recommended Posts

Подскажите пожалуйста как решить проблему вставки (#include) относительного пути кастомного кода в Simulation Target

при генерации C кода модели

т.е.

Simulink/Model Explorer/ Model Configuration / Simulation Target

Insert custom C code in generated: Source file #include "d:\project\source\example.c"

 

так вот указать относительный путь типа #include "..\source\example.c" никак не получается

не работает((

 

Share this post


Link to post
Share on other sites

Потому что для simulation target относительный путь другой. Код для simulation target генерируется в директорию slprj.

 

Ну, а вообще, вы что-то делаете не так. Если вам нужны #include в сгенерированном коде, то наверное, вы вызываете функции из вашего ручного код (судя по всему, из MATLAB Function или Stateflow). Для этого есть команда coder.cinclude.

Ну и само выражение #include example.c это прямо плохо-плохо по нескольким причинам (не буду в это вдаваться). Если нужно подключить ручной С код к процессу сборку модели, то есть настройка Additional Build Information -> Source files.

Share this post


Link to post
Share on other sites

Спасибо за подсказку,

я действительно вызываю ручной код из Stateflow, посмотрел как можно воспользоваться настройками Additional Building Information

получается я там могу указать путь до папки с кастомным кодом и затем указать имена файлов с сорсом.

Но результат тот же, в сгенерированном коде тот же #include файла с абсолютным путем.

Что касается coder.cinclude, то буду пробовать.

Настораживает что #include это "плохо-плохо", пока не понимаю почему, просто я вижу в примерах подобные юзкейсы.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this