这个例子说明了如何使用C功能块整合已经启动和终止行动遗留的C函数。
在这个例子中,传统的C函数定义在fault.h
,并实现了在fault.c
。
为了使从C功能块调用C的功能,在该模型中,指定的头文件和在源文件配置参数>模拟目标窗格。该模型将打开一个日志文件,把它写入数据,然后关闭该日志文件。该openLogFile
函数被调用的起始码段和closeLogFile
函数被调用的Terminiate代码的C功能块的部分。在里面输出代码节中,incAndLogFaultCounter
函数被调用。遗留函数的原型是:
无效* openLogFile()
closeLogFile(无效* FID)
incAndLogFaultCounter(void *的FID,无符号整型计数器,双倍时间)
哪里,void *的FID
是一个文件指针,无符号整型计数器
是故障计数器,双倍时间
表示时间。
在这个例子中C功能块的端口被配置如下:
该文件指针返回由openLogFile
功能和故障计数器是C功能块的持续性的符号。
的C功能块的输入被映射到的时间。
模型='slexCFunctionStartTerm';open_system(模型);SIM(模型);SLCC('clearCustomCodeModules');