快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

澳门新葡萄旗下所有网站:怎样对ECU进行固件升级



在汽车电子开拓、测试和售后诊断中,我们常常必要对ECU进行固件进级,即“刷新”。

当前市道市面上的主流规划是经由过程硬编码的要领实现,但这种要领的毛病也显而易见:只有懂编程的工程师才能做,一样平常工程师无法胜任;当必要改动刷新流程的时刻,刷新对象必须从新编译天生软件。这对付刷新对象的掩护极为不便。

针对这一痛点,勤壮供给了一套经由过程脚本实现的规划。因为采纳图形化设置设置设备摆设摆设界面,任何类型的工程师都可以轻松胜任;当必要改动的时刻也只需改动脚本本身,无需从新编译天生全部软件,比拟其他规划更方便、更机动、更轻易上手。

接下来我们按照步骤逐一解析:

1.若何设置设置设备摆设摆设脚本?

首先我们有需要懂得下两个专着名词:刷新规范和QzTitan。

刷新规范

刷新规范一样平常由整车厂拟订,具体定义了刷新的详细步骤。一样平常分为刷新前、刷新中、刷新后。

刷新前:切换会话、安然造访等;

刷新中:34/36/37办事履行详细刷新动作;

刷新后:完备性校验、兼容性校验等。

QzTItan

QzTItan是一款简单易用的、图形化的、综合流程设置设置设备摆设摆设对象,文件后缀为ttn和ttb。

QzTItan可用于各类功能的开拓,如刷新、IMMO等,同时可用于根基软件测试用例的开拓,如:诊断测试用例、NM测试用例等,能够满意绝大年夜多半汽车电子开拓中的开拓和测试场景。

因为应用图形化的设置设置设备摆设摆设要领,QzTItan比拟于应用硬编码具有更强的机动性,使得非软件开拓职员也能轻松应用。

流程由语句和语句之间的关系组成。语句采纳根基加扩展的基础要领,软件预定义了一些常用的语句,如:If、delay、assign、math、service、sendmsg。若预定义语句无法满意要求,可以经由过程usercall机制调用外部自定义函数。

因为脚本文件是二进制的,以是可以在各类软硬件平台上应用。软件平台包括:windows、linux、无操作系统情况,硬件平台包括:PC、MCU等。

用Titan实现刷新规范

经由过程不合语句的组合形成一个刷新流程,下面以1001为例来阐明若何设置设置设备摆设摆设办事:

1.从左侧选中10办事;

2.拖放到中心的画布;

3.在右侧属性窗口设置设置设备摆设摆设该办事的属性。

留意:1.什么是FastSA?SA一样平常由两条办事组成:RequestSeed和ResponseKey,FastSA指的便是这两条办事的组合。系统会自动根据设置设置设备摆设摆设调用SADLL,谋澳门新葡萄旗下所有网站略Key。2. 添加语句的要领:拖放。

ttn与ttb的关系

ttn是ttb的源文件,ttn可天生ttb,ttb弗成以反向天生ttn,以是必要留意保存ttn。

2.若何履行脚本?

我们首先会用到QzSaturn这个对象,QzSaturn是一款总线和诊断测试对象,是全部对象链中的主软件,文件后缀为:*.stn。

QzSaturn的主要功能包括:报文监控、图形监控、总线记录与回放、全车诊断、工程面板、流程、诊断、刷新、网报报文发送等,覆盖了汽车电子开拓与测试中最常用的功能。刷新是其功能之一。

刷新步骤:

1.导入ttb文件

将设置设置设备摆设摆设完成的脚本导入到QzSaturn刷新子窗口中。

2.导入刷新数据文件

指的是要刷的数据文件,支持HEX、S19和BIN。

3.基础参数的设置设置设备摆设摆设

对ECU基础参数进行设置设置设备摆设摆设,如:RequestID、ResponseID。

4.SA算法库的导入

刷新前一样平常必要解SA,解锁算法由SA算法库实现。在windows平台的文件后缀为*.dll,DLL本身的制作措施见下文。

5.CRC设置设置设备摆设摆设

选择响澳门新葡萄旗下所有网站应的CRC类型及相关信息,并点击按钮谋略CRC。

6.开始刷新。

若何制作SA算法库?

本色是制作一个特定接口的动态链接库*.dll。

制尴尬刁难象:Visual Studio 2015

开拓说话:C++/C++

接口函数:extern “C澳门新葡萄旗下所有网站” __declspec(dllexport) UINT32 saturn_key_generate(UINT8* p_seed,

UINT32 seed_length,

UINT32 level,

UINT8* param

UINT8* p_key,

UINT32 key_length,

UINT32& key_size)

参数阐明:

P_seed:Seed

Seed_length:Seed长度,一样平常为4;

Level:SA level.以2701为例,应填01

Param:用户澳门新葡萄旗下所有网站自定义

P_key:Key Buffer,用于存储函数返回的Key

Key_length:Key Buffer的指定长度,

Key_size:Key实际长度,一样平常跟Seed长度同等

两种要澳门新葡萄旗下所有网站领:源码封装要领、二次封装要领。

源码封装要领:直接在图示位置写代码实现SA算法。

二次封装要领:在图示位置调用外部算法库。一样平常用于整车厂必要对算法保密的场景。

经由过程以上操作,可以实现适应不合场景、机动和高效的刷新。

责任编辑:ct

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: