target.MainFunction class

Пакет: цель

Предоставьте зависимости C и C++ для main функция целевого аппаратного приложения

Описание

Используйте target.MainFunction класс для предоставления main зависимости функций для приложения main функция, которая запускается на вашем целевом компьютере. Для кода инициализации и завершения примера, C и C++, include директивы препроцессора и спецификация main аргументы функции для приложения.

Как создать target.MainFunction объект, использовать target.create функция.

Свойства

расширить все

Имя набора main зависимости.

Атрибуты:

GetAccess
public
SetAccess
public

Зависимости инструмента сборки компилятора main функция, которая включает заголовочные файлы, исходные файлы и библиотеки.

Атрибуты:

GetAccess
public
SetAccess
public

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

Атрибуты:

GetAccess
public
SetAccess
public

Массив заголовочных файлов, которые должны быть включены в целевую main функция при помощи директивы препроцессора #include "path-spec".

Атрибуты:

GetAccess
public
SetAccess
public

Массив заголовочных файлов, которые должны быть включены в целевую main функция при помощи директивы препроцессора # include <path-spec>.

Атрибуты:

GetAccess
public
SetAccess
protected

Форматированная строка кода C or C++, которая main функция используется для инициализации целевых ресурсов.

Атрибуты:

GetAccess
public
SetAccess
public

Форматированная строка кода C or C++, которая main функция используется для завершения работы целевых ресурсов.

Атрибуты:

GetAccess
public
SetAccess
public

Примеры

свернуть все

Создайте target.MainFunction объект и связать его с target.Board object, который захватывает main зависимости функций для Arduino® плата. Рабочие процессы, такие как процессор в цикле (PIL), могут использовать эту информацию при генерации main функция для приложения, работающего на целевом компьютере.

board = target.create('Board', 'Name', 'Arduino Board')
mainFunction = target.create('MainFunction');
mainFunction.Name = 'Arduino Main Dependencies';

mainFunction.IncludeFiles = { 'Arduino.h' };
mainFunction.InitializationCode = fileread('arduino_main_initialization.c');

board.MainFunctions = mainFunction;

В фрагменте кода arduino_main_initialization.c содержит код С Для примера:

/* Initialize system */
init();

Этот фрагмент кода из Set Up PIL Connectivity by Using target Package показывает, как можно создать и использовать target.MainFunction объект, чтобы задать main аргументы функции, необходимые для реализации API.

comms = target.create('CommunicationInterface');
comms.Name = 'Linux TCP Interface';
comms.Channel = 'TCPChannel';
comms.APIImplementations = target.create('APIImplementation', ...
                                         'Name', 'x86 rtiostream Implementation');
comms.APIImplementations.API = target.create('API', 'Name', 'rtiostream');
comms.APIImplementations.BuildDependencies = target.create('BuildDependencies');
comms.APIImplementations.BuildDependencies.SourceFiles = ...
                                                        {fullfile('$(MATLABROOT)', ...
                                                        'toolbox', ...
                                                        'coder', ...
                                                        'rtiostream', ...
                                                        'src', ...
                                                        'rtiostreamtcpip', ...
                                                        'rtiostream_tcpip.c')};
comms.APIImplementations.MainFunction = target.create('MainFunction', ...
                                                      'Name', 'TCP RtIOStream Main');
comms.APIImplementations.MainFunction.Arguments = {'-blocking', '1', '-port', '0'};
hostTarget.CommunicationInterfaces = comms;
Введенный в R2020b