Вбудовані функції Matlab у Simulink: coder.cinclude() без заголовків для власних C/C++ функцій

Добре відомо, що ви можете використовувати coder.ceval(...) у поєднанні з coder.cinclude(...) для виконання зовнішніх C/C++ функцій із вбудованих функцій matlab:

Менш відомо те, що ви можете включати C/C++ код “inline” у виклику coder.cinclude(), хоча це дещо штучно. Це дуже корисно, оскільки вам не потрібно керувати файлами заголовків.

Зверніть увагу, що під час компіляції вашої моделі Simulink/Matlab coder все одно повинен перевірити, чи компілюється вона коректно, тому вам потрібно переконатися, що “автономна” компіляція вашого коду можлива.

Пам’ятайте, що абсолютно необхідно використовувати фіктивне включення <math.h> для завершення рядка #include!

Це згенерує наступний код у файлі заголовка:

і, за достатнього рівня коментарів, це код із згенерованого файлу .cpp


Дивіться схожі статті за категоріями: MATLAB/Simulink