今天给大家介绍基于TSMaster的UDS诊断刷写流程。基本流程主要分为基本参数配置、刷写流程两部分。
一、基本参数配置
1、新建工程
打开TSMaster软件,选择创建新工程-诊断-UDS诊断,然后选择一个新工作目录,创建一个新文件夹,点击选择之后进入到TSMaster工程文件中。
![](https://img-blog.csdnimg.cn/img_convert/cc1ec7cccc9c4802a31f62199690bca4.png)
2、CAN通道设置
如下图所示,电极最上方硬件、通道选择设置一下CAN通道:点击总线硬件、配置波特率。配置通道一为1000kbps,通道二为500kbps。
![](https://img-blog.csdnimg.cn/img_convert/1a3f307a0585f488c27c9e04321fb899.png)
3、新建UDS诊断模块
打开或者新建一个uds诊断模块。
![](https://img-blog.csdnimg.cn/img_convert/f8b68b5cbca0bfb5bcc2c58d4dd8824d.png)
设置诊断基本参数,Protocal的Transport Layer,通道选择channel 2。
![](https://img-blog.csdnimg.cn/img_convert/37763fda69f8b4ef36b7258af384fe0f.png)
设置Diagnostic layer参数。将安全算法的dll导入。
![](https://img-blog.csdnimg.cn/img_convert/8a6fa516d76142571c0847b4565d49f5.png)
二、刷写流程教程
1、进入扩展会话
移步至“Basic Diagnostic Config”选项卡,对照配置文件,对10服务点右键,添加新服务。
![](https://img-blog.csdnimg.cn/img_convert/269c4b63cc8d229ddeebcd8a83798e89.png)
双击新建的服务,修改回话类型为83。
![](https://img-blog.csdnimg.cn/img_convert/9bb6ce86175e1e3c59afc2ccddec3823.png)
2、创建BT刷写动作
来到“Automatic Diagnostic”,在左侧空白区域右键,然后选“add a new uds flow”。
![](https://img-blog.csdnimg.cn/img_convert/072efa81dd49e09bc4c40f3cd528116f.png)
切换至“unlock”,然后在方框所示区域右键,依次选“Add new test step”、“Normol”,根据公司刷写流程,选择是用功能ID还是物理ID,在“Request(0x)”一栏下写10 83;根据配置文件依次在“Basic Diagnostic Config”中配置服务以及在“Automatic Diagnostic”中配置刷写流程。
![](https://img-blog.csdnimg.cn/img_convert/f33805db200a778aac1cc53166006b09.png)
进入编程会话之后,根据配置文件流程,需要通过安全算法来解锁,添加动作时不要选Select Config,要选Seed&Key;然后根据相应规范,选择对应的level。
![](https://img-blog.csdnimg.cn/img_convert/50e791fa5e6274c0ac5ba102b9fc031c.png)
3、加载待刷写文件
在“Basic Diagnostic Config”选项卡,创建服务,在“Service Name”中修改想要的名字,点击+号选中想要烧录的文件之后,下方会显示出了文件中的数据区,以及每个数据区的参数信息,TSMaster会全自动地把这一切全部刷写进去,之后会得到两个重要信息,待刷写数据的地址、待刷写数据的长度。
![](https://img-blog.csdnimg.cn/img_convert/db4559a12e7a60844ebaefe7f612e4d0.png)
4、手动配置擦除服务
烧录完s19文件后需要进行一个校验,在31服务中创建一个新的服务,改好对应的数据,在下方参数中的“Value Type”里选择“SystemVar”,修改数据长度为32,最后添加变量。
![](https://img-blog.csdnimg.cn/img_convert/6eb9d2846a34b92ba2fe8706fda0f675.png)
然后点击下方参数列表中右侧的+号,在内部变量中找到相应文件的校验参数。点击确定。
![](https://img-blog.csdnimg.cn/img_convert/8c83ad4b7272203131b8dab19a870c6d.png)
完成之后,再去把该动作添加至“Automatic Diagnostic”中相应烧录文件的流程后。
然后新建一个“擦除”动作,需要用到上面生成的两个参数。
![](https://img-blog.csdnimg.cn/img_convert/ab76674383afb714d9a81908f5a4b331.png)
然后把该动作添加至“Automatic Diagnostic”中。
![](https://img-blog.csdnimg.cn/img_convert/7cb70db3a77a822a649fe76c6710fec1.png)
5、添加新烧录文件
擦除过后,添加新的烧录文件,重复上面的过程最后在校验,最后根据配置文件把最后的过程添加上去。整个配置过程就完成了,点击左上角的启动后再点击诊断中的运行。
![](https://img-blog.csdnimg.cn/img_convert/5afeeb91105f3c46d20d60fb1fa27959.png)
程序正在刷写中。
![](https://img-blog.csdnimg.cn/img_convert/2dc84b65c38aa071151f39711a6f965a.png)
刷写完成后可在下面直观地观察到响应。
![](https://img-blog.csdnimg.cn/img_convert/41b13bdfff27536febdabf45efe861be.png)
6、自动配置擦除服务
如不想手动配置擦除和checksum,可以自动配置擦除服务进行相应配置。
![](https://img-blog.csdnimg.cn/img_convert/9c44d6ac1d3bdde3204c82b85ee49674.png)
选择相应的回应报文。
![](https://img-blog.csdnimg.cn/img_convert/cf0ac282ddba7b106e83ec401cb6fed4.png)
![](https://img-blog.csdnimg.cn/img_convert/c9f2b38bdf163c2f1a4d47e1ca2bca60.png)
Checksum。
![](https://img-blog.csdnimg.cn/img_convert/68ae0f54dfa9b4d4ca504088fb215ab5.png)
![](https://img-blog.csdnimg.cn/img_convert/53ac5af3cfbc31241b5c614799cbfe79.png)