【问题标题】:Call C function in matlab-simulink/stateflow在 matlab-simulink/stateflow 中调用 C 函数
【发布时间】:2012-08-20 17:29:40
【问题描述】:

我在 test.c 中创建了一个 C 函数

#include <stdio.h>


int Test()
{
    FILE * fp = fopen("C:\\workspace\\test.txt", "rw");
    fprintf(fp, "test hello world");
    fclose(fp);
    return 10;
}

我在 simulink 的状态流中定义了一个状态。我用过

en: Test();

我在 Tools->Open Simulation Target->Custom Code->Include List of Additional 和 Include Custom C Code in generated(使用绝对路径和文件名)中指定了文件 当我尝试运行模型时,出现解析器错误: zh: 测试(); ^ 名为“Test”的函数不是 Stateflow 函数。

我该怎么办?

【问题讨论】:

    标签: matlab simulink stateflow


    【解决方案1】:

    我自己搞定的。 在“Include Custom C Code in generated:”->头文件选项卡中, 我应该将我的头文件指定为

    #include "test.h"
    

    而不是

    test.h
    

    并且c文件应该在“包括附加列表”中指定->源文件为

    test.c
    

    【讨论】:

      【解决方案2】:

      添加对将自定义 C 代码添加到 Stateflow 的在线示例的引用,这将帮助遇到类似问题的其他用户: http://www.mathworks.com/support/solutions/en/data/1-1727V/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-10-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多