软件工具>EcoCoder自动代码生成工具

EcoCoder自动代码生成工具


EcoCoder自动代码生成工具

EcoCoder是一个功能强大的自动代码生成库,基于Matlab / Simulink,直接链接到目标控制器。EcoCoder集成了代码生成,编译和一键生成可执行文件功能。

兼容操作系统:Windows XP & Windows 7 & Windows 10

支持MATLAB版本:EcoCoder 支持 MATLAB2012b 及以上版本

MATLAB 组件需求:① MATLAB ② Simulink ③ Real Time Workshop ④ Realtime Workshop Embedded Coder ⑤ Stateflow,⑥ Stateflow Coder

EcoCoder基本库和S-Functions

EcoCoder介绍

● 运行EcoCoder安装包,自动将所有EcoCoder的库模块和S-Function添加到Simulink;

● EcoCoder的S-Function库封装了面向控制器硬件的所有驱动软件,包括CAN总线、ADC模拟输入、数字IO、PWM输入、高底边驱动、H桥等;同时EcoCoder的任务调度函数S-Function库封装了实时操作系统;

● 在Simulink环境中,通过EcoCoder的封装库模块和S-Function将用户的应用程序软件(即Simulink模型)链接到硬件驱动程序软件;

● 运行Simulink仿真,验证模型和软件功能完整性;

● 在Simulink中定义信号属性和参数属性,将其输出到生成的A2L文件中。

● 点击“自动代码生成”按钮,EcoCoder将生成微处理器兼容的可执行代码文件。

● 点击“编译”按钮,将调用在后台运行的编译链接过程,后者将运行编译器(如CodeWarrior),将应用程序代码和硬件驱动程序代码一起编译并生成可执行代码。

EcoCoder编译过程将生成3个文件:

●机器可执行文件,例如飞思卡尔MPC56xx,57xx系列微处理器的MOT文件;

●A2l文件,其中描述文件包含校准工具解释控制器协议所需的全部信息;

●CAL文件,只包含校准数据,不包含代码。

A2L文件生成

Simulink生成A2L文件不包含控制器和标定协议的所有必要信息。EcoCoder包含一个“A2L更新工具”,它是一个通用的脚本工具,通过从编译产品中提取必要的信息,验证比较A2L文件完整性的。生成A2L更新工具的结果是一个完整的A2L文件,并且与大部分标定工具兼容。


EcoCoder Target Definition

在“常规参数”选项卡下,这个模块定义了您正在使用的Ecotrons VCU硬件软件的特定模型。将此块放置在应用程序模型中,通常位于顶层,用于为用户的应用程序选择VCU模型。

ADC

ADC 模块用于采集处理模拟输入信号。

Digital IN/OUT

Digital IN/OUT 模块用于处理数字IO输入和控制开关信号输出,包含开关模式和PWM模式。

Digital OUT

Digital IN

IPWM

OPWM

CAN

CAN模块包含:Read CAN Message(CAN数据接收),Send CAN Message(CAN数据发送),数据解析等等

Task Scheduler

任务调度模块提供两种类型的任务调度,高优先级任务和低优先级任务。

另外,任务调度模块还提供了附加功能:监视任务负载率。 如果任务执行时间太长,负载率太高则用户需要调整应用层软件并将繁重计算模块重新分配任务。

SCI

SCI模块包括SCI_RxData和SCI_TxData,读取/发送所选通道的SCI数据。

System Management Blocks

System Management Blocks模块包括电源管理,电源下电,读取系统自由运行计数器时间。

System Management Blocks

Diagnostic Blocks

Diagnostic Blocks(诊断系统管理器)旨在满足用户OBD需求,包括HardWare_DTC,PwrStgDTCGetBit,SoftWareCoreCheck_DTC。