工作中经常会在Matlab启动完毕后先导入一些变量到工作空间,然后才可以开始Simulink建模。本文研究通过Matlab脚本在启动时自动运行某些函数,以达到导入变量的目的。
1 startup.m文件
Matlab在启动的时候,会在其搜索路径中找到名为startup.m的文件,并运行其中的内容。创建并编写startup脚本,可以实现在启动的时候执行某种功能。
具体可以参考matlab中关于startup的帮助文档。
2 自定义启动函数示例
1.建立一个文件夹,将其设置为Matlab搜索路径。
2.在该路径下建立一个文件startup.m,写入以下代码。
tic
disp('正在加载Matlab变量...');
%Signal1对象
Signal1 = Simulink.Signal;
Signal1.DataType = 'single';
Signal1.StorageClass = 'ExportToFile (Custom)';
Signal1.CoderInfo.CustomAttributes.HeaderFile = 'Global.h'; %头文件
Signal1.CoderInfo.CustomAttributes.DefinitionFile = 'Global.c'; %源文件
Signal1.CoderInfo.CustomAttributes.Owner = 'Jackson'; %Owner
toc
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
这段代码创建了一个Signal对象,并简单配置了一下其中的属性。tic和toc配合使用可以显示中间的一段代码运行了多少时间。
3.保存startup.m文件,重启Matlab。启动完毕后会在Matlab工作区出现Signal1对象。
同时,在命令行可以看到**‘正在加载Matlab变量…’**以及显示的时间。
3 finish.m文件
相应的,在Matlab关闭的时候也会执行搜索路径中的finish.m文件。可以在其中写入一些关闭时想执行的代码,例如保存变量等。本文就不再举例。
4 总结
这两个文件的使用并不复杂,但是这个技巧可以避免一些重复性劳动。
评论记录:
回复评论: