论文部分内容阅读
代码自动生成工具是工业产品V字型开发流程的重要组成部分,它连接数学建模和原型开发两个环节,在加快产品开发进度的同时,大大降低手工编码所引入的错误,让开发人员有更多时间和精力用于核心的数学建模。在工业应用中,复杂的控制和运算逻辑要求使用嵌入式操作系统高效管理系统软硬件资源,代码生成工具必须能够提供对嵌入式操作系统的支持,保证开发流程的连贯统一。MathWorks公司的代码自动生成工具Real-Time Workshop Embedded Coder虽然已经提供了强大的代码生成能力,但其内置支持平台并不能满足应用中的广泛需求,针对这个问题,掌握Real-Time WorkshopEmbedded Coder生成代码的定制方法,通过实现对自有软硬件平台的支持来满足不同应用的需求就尤为重要。本文基于Real-Time Workshop Embedded Coder,以具有广泛应用的嵌入式实时操作系统μC/OS-II为例,探讨实现在Real-Time Workshop Embedded Coder代码生成框架中引入操作系统接口的方法,分析了以Simulink、Real-Time Workshop Embedded Coder为主体的模型仿真和代码生成流程的内在机制。主要研究内容及结果如下:
⑴归纳出了修改Real-Time Workshop Embedded Coder代码框架应完成的五方面工作,分别是Real-Time Workshop Embedded Coder任务接口的封装、任务调度机制的迁移、任务间通信机制的修改、后台任务的替换和中断处理函数的修改,并结合Real-Time Workshop Embedded Coder的代码定制规则,实现了能与μC/OS-II代码无缝连接共同编译的target实例。
⑵总结了按照将操作系统API功能映射到仿真平台,并分解为模块函数的方法来实现相关模块的编写,并以实现异步支持模块为例,说明了具体的使用方法。
⑶依照本文介绍的代码定制方法,并基于文中实现的target实例,可以设计更加全面、强大的代码生成方案。由于μC/OS-II操作系统在业界应用的广泛性以及模型仿真和代码自动生成工具对于提高企业产品研发能力的重要性,将μC/OS-II接口引入代码生成工具具有极大的应用价值。