新版从Matlab Simulink生成易读可重用代码.docVIP

新版从Matlab Simulink生成易读可重用代码.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
新版从Matlab Simulink生成易读可重用代码.doc

天天快乐 从Matlab Simulink生成易读可重用代码 by: 吴少风 MATLAB提供从MATLAB代码或simulink模型生成C/C++代码的功能。从MATLAB 2011b版开始,MATLAB将代码生成Coder作为单独模块发布。MATLAB每年更新两次,经过不断完善,新版本的Coder功能更强大。用MATLAB生成C/C++代码具有MATLAB Coder、Simulink Coder、Embedded Coder三个功能模块,MATLAB Coder从MATLAB 代码生成代码,Simulink Coder从Simulink模型生成代码,Embedded Coder结合MATLAB Coder和Simulink Coder,生成嵌入式代码。利用代码生成功能,可以快速从模型生成可靠的代码,应用越来越广泛。 要生成易于阅读、重用性好的代码,必须进行详细设置。文中内容以易读、可重用为目标,建立嵌入式代码生成的演示模型,了解Simulink代码生成相关工具,介绍详细设置步骤,最终生成容易阅读、可重用代码,供单处理器单任务实时嵌入式系统应用。文中的方法为严格控制生成代码的个人总结。以文档呈现,方便自己今后查看,也希望能为其他人提供一些方便。 简单示例 本部分搭建一个简单的PI控制器模型,示范模型建立、设置、生成代码的详细步骤。 新建嵌入式代码生成模型,MATLAB-simulink,New / Embedded Coder / Code Generation System。不选择一般simulink模板,可减少模型配置参数的设置。 搭建如 REF _Ref501709697 \h 图 1所示简易模型,保存文档,设置文件名。 图  SEQ 图 \* ARABIC 1. 一个简单示例模型 点击工具栏图标 ,设置模型配置参数,应用并保存。对嵌入式应用,固定步长,离散,可调参数,ERT目标,C语言,设置基本固定,未设置的地方保持默认。 solver options: type -- Fixed step. solver -- Discrete. optimization-signals and parameters: Default parameter behavior -- tunable. Pass reusable subsystem outputs as --输出较多选用structure reference. hardware implementation: 按实际设hardware board, device, device details. code generation: System target file -- ert.tlc, Language -- C, generate code only. code generation objectives. comments: include comments, 默认全选,可按需要选择。 symbols: 命名规则设置,按各自代码规范设置。 interface: 设置整个模型生成代码的接口。 code interface package,可选择可重用,Pass root level I/O as,模型输入输出参数一???较多,一般选择结构体,structure reference,模型数据、输入、输出通过各自独立结构体传入参数;part of model data structure,一个结构体传入参数。也可选择不可重用。 configure model functions,点击进入,设置模型具体的C原型。get default configuration,可修改模型默认initialize/step函数名,及参数,各输入输出单独作为函数参数,这与结构体传参是矛盾的,不能同时设置。 code style: 设置代码风格。 Parentheses括号, -- Nominal(readability),按可读性优化。 Casting mode 强制转换方式,Nominal. Code indentation 代码缩进, size -- 4. Code placement: 代码放置,可设置变量定义或声明在单独文件还是和源代码放一起,头文件包含是 head.h 还是 head.h 。 Data type replacement: 数据类型替换。 设置模型中每一个基本模块的属性。 包括名称、值、数据类型、采样时间等。子模块或者引用模型等这类自定义模块,除了内部基本模块的属性外,还要设置各自的模块属性。模块中参数等值,必须按照设计配置;如果想使用可调参数,则将参数设置为变量,再设置变量值。生成代码模型中的模块名设置,最好遵循目标语言的命名规则,因为

文档评论(0)

liuxiaoyu99 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档