新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于Simulink的OSEK嵌入式软件开发方法

基于Simulink的OSEK嵌入式软件开发方法

作者:时间:2009-06-30来源:网络收藏

①mdlInitializeSizes,用于细化SimStruct结构中不同参数的维数(SimStruct是指数据结构,Sim-Struct及其相关的宏定义参见Matlab目录下文件sim-strue.h)。
②mdlInitializeSampleTimes,用于细化该模块的采样时间。
③mdlOutputs::对输入设备来讲,从硬件中读取值加以计算并传递到模块输出端;对输出设备而言,从上流模块读取数据,加以处理并写回硬件。
文件block.tlc用来控制代码生成过程,通过相应函数将语句写入生成的源文件中,代码段3是一个例子。文件中使用的函数主要包括:%function BlockTypeSetup(block,system)void、%function Start(block,system)Output、%function Outputs

本文引用地址://m.amcfsurvey.com/article/152446.htm

4 应用实例
图5是一个简单的应用。其中建立了两个任务,任务ADC_SUM每0.1 S执行1次,任务ADC_GPIO每0.5 S执行1次。第一个任务包含一个ADC S函数模块。该S函数属输入设备,并被封装成具有图5所示的参数输入界面;第二个任务包含另外一个S函数模块,GPIO,在这个应用中为输出模块。

像第二部分描述的一样,算法可以进行仿真。仿真完成后可通过RTW生成代码(本文选择osekworks.tlc为系统TLC文件,并对该文件进行了适当修改)。生成的源代码(包括*.c源文件和*.h头文件)可以在Keil C166环境下联合编译并进行软件调试运行,如图6所示,这样也便于集成传统手动开发流程中成熟的算法代码。最终图6 Keil C166环境下编译带μo/os―ll的生成源代码代码可在目标硬件上运行。

5 结 论
目前越来越多的汽车电子系统的开发借助Matlab/,并且其已变成标准的开发工具。本文提出的Sireulink环境和 OS规范。在环境下开发的算法可以结合 RTOS(本文为修改过的μC/OS-II)直接应用到目标硬件上。该已通过实例进行了验证,与传统比较极大地缩短了开发时间。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭