Вызов функции

В этом примере показано, как сгенерировать вызов функции путем добавления подсистемы, которая реализует операции, которые вы хотите.

Конструкция C

void add_function(void)
{ 
   y1 = u1 + u2;
}

Процедура

1. Открытая модель ex_function_call в качестве примера.

Подсистема имеет два входных параметров и возвращает один выходной параметр.

При выборе Treat, когда атомарный модульный параметр включает параметры на вкладке Code Generation. Вкладка Code Generation обеспечивает эти индивидуальные настройки:

  • Набор упаковки функции к Nonreusable function

  • Набор опций имени функции к User specified

  • Имя функции, заданное как add_function

  • Набор опций имени файла к Use function name

2. Чтобы создать модель и сгенерировать код, нажмите Ctrl+B.

Результаты

В ex_function_call.c, функция вызвана от ex_function_call_step:

/* Model step function */
void ex_function_call_step(void)
{
  /* Outputs for Atomic SubSystem: '<Root>/Add_Subsystem' */
  add_function();

  /* End of Outputs for SubSystem: '<Root>/Add_Subsystem' */
}

Прототип функции внешне объявляется через файл подсистемы, add_function.h:

extern void add_function(void);

Функциональное определение находится в файле подсистемы add_function.c:

void add_function(void)
{
  /* Outport: '<Root>/y1' incorporates:
   *  Inport: '<Root>/u1'
   *  Inport: '<Root>/u2'
   *  Sum: '<S1>/Sum'
   */
  rtY.y1 = u1 + u2;
}

Смотрите также

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте