【技术实现步骤摘要】
本申请涉及电子信息领域,尤其涉及一种文件生成方法及装置。
技术介绍
Matlab作为一款科学计算软件,将高性能数值计算与可视化集成在一起,并提供了大量的内置函数,从而被广泛应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作。在Matlab中,m编程语言和图形化的Simulink建模工具结合在一起,通过m语言程序调用Simulink模型。Matlab本身为m编程语言调用Simulink模型提供了专用的函数接口,即sim函数。由于sim函数运行时会先对Simulink模型进行编译,所以调用模型会花费一定时间,当调用模型的次数较多时,由于每次调用sim函数都需要重新编译模型,因此会累积大量的调用时间,这无疑极大地增加了程序运行的时间,从而导致程序使用效率的降低。因此,如何加快Simulink模型的调用,成为亟待解决的问题。申请内容本申请提供了一种文件生成方法及装置,目的在于解决如何加快Simulink模型的调用的问题。为了实现上述 ...
【技术保护点】
一种文件生成方法,其特征在于,包括:在接收到用户的编译指令后,将Simulink模型生成C语言程序,所述C语言程序中至少包括第一主程序及保存所述模型的数据的第一程序;通过在所述第一主程序中增加第一类型的头文件以及第一类型的函数,形成第二主程序,所述第一类型为能够被Matlab函数编译的类型;通过将所述第一程序中的所述模型的数据写入所述第二主程序中,形成第三主程序;通过编译所述第三主程序,生成基于C语言的调用模型文件。
【技术特征摘要】
1.一种文件生成方法,其特征在于,包括:
在接收到用户的编译指令后,将Simulink模型生成C语言程序,所述C
语言程序中至少包括第一主程序及保存所述模型的数据的第一程序;
通过在所述第一主程序中增加第一类型的头文件以及第一类型的函数,
形成第二主程序,所述第一类型为能够被Matlab函数编译的类型;
通过将所述第一程序中的所述模型的数据写入所述第二主程序中,形成
第三主程序;
通过编译所述第三主程序,生成基于C语言的调用模型文件。
2.根据权利要求1所述的方法,其特征在于,在所述通过编译所述第三
主程序,生成基于C语言的调用模型文件之前,还包括:
如果所述第三主程序中包括至少两个子函数,则判断所述子函数在所述
第三主程序中的顺序是否正确;
在所述子函数的顺序不正确的情况下,调整所述子函数的顺序。
3.根据权利要求1或2所述的方法,其特征在于,在所述通过编译所述
第三主程序,生成基于C语言的调用模型文件之前,还包括:
在所述第三主程序中存在无用的头文件的情况下,将所述无用的头文件
改为注释类型。
4.根据权利要求3所述的方法,其特征在于,所述通过在所述第一主程
序中增加第一类型的头文件以及第一类型的函数,形成第二主程序,包括:
接收所述用户输入的所述第一主程序的存储路径;
通过所述存储路径,查找到所述第一主程序;
在所述第一主程序中增加第一类型的头文件以及第一类型的函数,形成
第二主程序。
5.根据权利要求4所述的方法,其特征在于,所述第一类型的头文件包
括:mex.h头文件;
所述第一类型的函数包括:mexfunction函数;
所述无用的头文件包括:_private.h文件。
6.一种文件生成装置,其特征在于,包括:
C语言程序生成模块,用于在接收到用户的编译指令后,将Simulink模
型生成C语言程序,所述C语言程序...
【专利技术属性】
技术研发人员:张天宇,余正宁,罗喜霜,
申请(专利权)人:北京润科通用技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。