电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

从MatlabSimulink生成易读可重用代码VIP免费

从MatlabSimulink生成易读可重用代码_第1页
从MatlabSimulink生成易读可重用代码_第2页
从MatlabSimulink生成易读可重用代码_第3页
实用标准文案大全从MatlabSimulink生成易读可重用代码by:吴少风MATLAB提供从MATLAB代码或simulink模型生成C/C++代码的功能。从MATLAB2011b版开始,MATLAB将代码生成Coder作为单独模块发布。MATLAB每年更新两次,经过不断完善,新版本的Coder功能更强大。用MATLAB生成C/C++代码具有MATLABCoder、SimulinkCoder、EmbeddedCoder三个功能模块,MATLABCoder从MATLAB代码生成代码,SimulinkCoder从Simulink模型生成代码,EmbeddedCoder结合MATLABCoder和SimulinkCoder,生成嵌入式代码。利用代码生成功能,可以快速从模型生成可靠的代码,应用越来越广泛。要生成易于阅读、重用性好的代码,必须进行详细设置。文中内容以易读、可重用为目标,建立嵌入式代码生成的演示模型,了解Simulink代码生成相关工具,介绍详细设置步骤,最终生成容易阅读、可重用代码,供单处理器单任务实时嵌入式系统应用。文中的方法为严格控制生成代码的个人总结。以文档呈现,方便自己今后查看,也希望能为其他人提供一些方便。1.简单示例本部分搭建一个简单的PI控制器模型,示范模型建立、设置、生成代码的详细步骤。1)新建嵌入式代码生成模型,MATLAB->simulink,New/EmbeddedCoder/CodeGenerationSystem。不选择一般simulink模板,可减少模型配置参数的设置。实用标准文案大全2)搭建如错误!未找到引用源。所示简易模型,保存文档,设置文件名。图1.一个简单示例模型3)点击工具栏图标,设置模型配置参数,应用并保存。对嵌入式应用,固定步长,离散,可调参数,ERT目标,C语言,设置基本固定,未设置的地方保持默认。solveroptions:type--Fixedstep.solver--Discrete.optimization->signalsandparameters:Defaultparameterbehavior--tunable.Passreusablesubsystemoutputsas--输出较多选用structurereference.hardwareimplementation:按实际设hardwareboard,device,devicedetails.codegeneration:Systemtargetfile--ert.tlc,Language--C,generatecodeonly.codegenerationobjectives.?comments:includecomments,默认全选,可按需要选择。?symbols:命名规则设置,按各自代码规范设置。?interface:设置整个模型生成代码的接口。实用标准文案大全codeinterfacepackage,可选择可重用,PassrootlevelI/Oas,模型输入输出参数一般较多,一般选择结构体,structurereference,模型数据、输入、输出通过各自独立结构体传入参数;partofmodeldatastructure,一个结构体传入参数。也可选择不可重用。configuremodelfunctions,点击进入,设置模型具体的C原型。getdefaultconfiguration,可修改模型默认initialize/step函数名,及参数,各输入输出单独作为函数参数,这与结构体传参是矛盾的,不能同时设置。?codestyle:设置代码风格。Parentheses括号,--Nominal(readability),按可读性优化。Castingmode强制转换方式,Nominal.Codeindentation代码缩进,size--4.?Codeplacement:代码放置,可设置变量定义或声明在单独文件还是和源代码放一起,头文件包含是还是"head.h"。?Datatypereplacement:数据类型替换。4)设置模型中每一个基本模块的属性。包括名称、值、数据类型、采样时间等。子模块或者引用模型等这类自定义模块,除了内部基本模块的属性外,还要设置各自的模块属性。模块中参数等值,必须按照设计配置;如果想使用可调参数,则将参数设置为变量,再设置变量值。生成代码模型中的模块名设置,最好遵循目标语言的命名规则,因为生成代码中的一些名称可以从模块名继承。嵌入式应用大多无浮点单元,定点数据的设置在模块属性的代码生成栏。实用标准文案大全将图1中各模块可按如下方式设置:inport,点击模块下方名称,设置模块名,将其设置为In;双击模块进入模块属性设置,main栏设置编号,编号会体现在子系统或引用模型上;signalattributes设置数据类型为定点数,16b字长10b小数部分fixdt(1,16,10)。其它模块设置方法类似。view->modeldata,弹出modeldata窗口。simulink提供的modeldata窗口,用于显示当前层级下的所有输入输出、信号、状态、参数,并将对应属性罗列成表格,而且表格可编辑部分属性。K...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

爱的疯狂+ 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部