由于利用Simulink传递数据用到了C函数操作共享内存,这样导致在每次进行Simulink仿真前,需要在Simulink的Simulink target配置上所需要的头文件和C源文件,而且每个运行前需要重复对这些C文件编译,另外如果没有安装MATLAB编译器(mex -setup 没找到编译器)时,导致不能编译这些c文件从而导致无法运行。因此这大大限制了利用C文件中的函数实现所需的功能。有必要将所调用C函数的模块转换为S函数,从而加快模型在仿真前的编译速度,且能够在不安装编译器的电脑上实现模型的运行。
1