В этом примере показано, как использовать Функциональный блок C, чтобы интегрировать наследие C функции, которые имеют, запускают и отключают действия.
В этом примере наследие C функции задано в fault.h
, и реализованный в fault.c
.
Чтобы позволить вызвать функции C от Функционального блока C, в модели, задают заголовочный файл и исходный файл в Параметрах конфигурации> Целевая панель Симуляции. Эта модель открывает файл журнала, записывает данные к нему, и затем закрывает файл журнала. openLogFile
функция вызвана в Секции кода Запуска и closeLogFile
функция вызвана в Секции кода Terminiate Функционального блока C. В Выходной Секции кода, incAndLogFaultCounter
функция вызвана. Прототип устаревших функций:
void* openLogFile()
closeLogFile(void* fid)
incAndLogFaultCounter(void *fid, unsigned int counter, double time)
где, void *fid
указатель файла, unsigned int counter
счетчик отказа и double time
указывает время.
В этом примере порты Функционального блока C сконфигурированы можно следующим образом:
Указатель файла возвращен openLogFile
функционируйте и счетчик отказа персистентные символы Функционального блока C.
Вход Функционального блока C сопоставлен со временем.
model = 'slexCFunctionStartTerm'; open_system(model); sim(model); slcc('clearCustomCodeModules');