Этот пример генерирует разделяемую библиотеку для взаимодействия через интерфейс к средству моделирования, которое работает на вашем компьютере разработчика. Сгенерируйте разделяемую библиотеку при помощи системного конечного файла ert_shrlib.tlc
.
Создавать разделяемую библиотеку из модели и пользоваться библиотекой в приложении:
1. Разработайте свою модель. В данном примере откройте модель rtwdemo_shrlib
. Сохраните копию модели к перезаписываемому местоположению.
open_system('rtwdemo_shrlib');
Модель является односкоростной моделью дискретного времени. 8-битный счетчик питает триггируемую подсистему под названием Amplifier
. Параметры INC
, LIMIT
, и RESET
установлены в постоянные значения 1, 4, и 0, соответственно. Когда equal_to_count
сигнала верно, подсистема усиливает свой входной сигнал фактором усиления
K=3
и выходной сигнал обновляется.
2. Откройте приложение Embedded Coder.
3. Установите Системный конечный файл параметра конфигурации модели на ert_shrlib.tlc
.
4. Создайте совместно использованный файл библиотеки. Файл, который производит генератор кода, зависит от вашей платформы разработки. Например, в системе Windows, генератор кода производит файл библиотеки rtwdemo_shrlib_win64.dll
.
5. Создайте код приложения, который пользуется разделяемой библиотекой. Этот пример использует код приложения, который доступен в этих файлах:
matlabroot\toolbox\rtw\rtwdemos\shrlib_demo\rtwdemo_shrlib_app.h
matlabroot\toolbox\rtw\rtwdemos\shrlib_demo\rtwdemo_shrlib_app.c
Чтобы просмотреть исходный код в этих файлах, в модели, нажимают белые кнопки для .h
и .c
файлы.
6. Скомпилируйте и соедините применение файла, и совместно использовал файлы библиотеки, чтобы произвести исполняемую программу. Следующие компиляции скрипта, сборки и запуски программа.
matlabroot\toolbox\rtw\rtwdemos\shrlib_demo\run_rtwdemo_shrlib_app.m
Чтобы просмотреть код скрипта, в модели, нажимают белую кнопку для .m
файл.
Чтобы создать модель и запустить приложение, которое пользуется сгенерированной разделяемой библиотекой в модели, дважды кликают синюю кнопку.
Для получения дополнительной информации об использовании разделяемой библиотеки смотрите Сгенерированный код Пакета как Разделяемые Библиотеки (Embedded Coder).