当前位置: 首页 > news >正文

【CAPL实战】LIN校验和测试

文章目录

  • 前言
  • 1、lingetchecksum()函数
  • 2、报文校验和自动化测试


前言

在【LIN校验和:数据完整性的最后防线】文章中我们介绍了LIN校验和基础知识,包括校验和的作用、经典型和增强型两种校验方式对比以及校验和算法翻转八位和的实现,还不清楚的小伙伴可以回看一下原文。在了解这些基础之后,针对LIN校验和我们怎么去做测试呢?


1、lingetchecksum()函数

LIN校验和测试主要是对LIN报文的经典型、增强型校验和字段进行正确性验证。Trace窗口报文如下图,Checksum列给出了每条报文的checksum值及其校验和类型。自动化测试实现上使用lingetchecksum()函数。
在这里插入图片描述
函数功能:计算得出的校验和。
函数定义:

byte linGetChecksum(linFrame linFrame); form 1
byte linGetChecksum(linCSError linCsError); // form 2

2、报文校验和自动化测试

如上图红框,0x05报文的校验和为0x6B。报文校验和计算脚本如下:

/*@!Encoding:65001*/
includes
{}variables
{byte checksumValue;
}on linFrame 0x05
{checksumValue = linGetChecksum(this);write("0x05报文的checksum值为0x%x", checksumValue);
}

write窗口打印:
在这里插入图片描述
结合翻转八位和的CAPL脚本(前文链接有,不再赘述)来得到实际发送报文字节计算出的校验和值与之对比:如果一致,则说明报文检验和正确;反之报文校验和有误。

相关文章:

  • 模型微调参数入门:核心概念与全局视角
  • Step9—Ambari Web UI 初始化安装 (Ambari3.0.0)
  • Proguard代码混淆-springboot3
  • spring4第3课-ioc控制反转-详解依赖注入的4种方式
  • SpringBoot项目快速打包与部署,War包⽅式打包部署与Jar包⽅式打包部署两种方式
  • 基于Vue3.0的【Vis.js】库基本使用教程(002):图片知识图谱的基本构建和设置
  • SpringBoot Controller接收参数方式
  • SpringBoot使用ffmpeg实现视频压缩
  • vue+elementUi+axios实现分页(MyBatis、Servlet)
  • Baklib内容中台驱动资源高效整合
  • matlab中绘图函数plot
  • 《vue.js快速入门》链接摘抄整理
  • DBeaver 连接 OceanBase Oracle 租户
  • vscode 终端 PATH 和python pip 不对
  • 压缩包方式在Linux和Windows下安装mongodb
  • 前端面经 React常见的生命周期
  • D2000平台上Centos使用mmap函数遇到的陷阱
  • 多模态大语言模型arxiv论文略读(九十六)
  • MCU与CPU时钟概念详解:从基础到面试高频问题
  • 嵌入式学习笔记 - 新版Keil软件模拟时钟Xtal灰色不可更改的问题
  • dw 做网站模板/长尾关键词网站
  • 网站建设常识/百度外包公司有哪些
  • 做加盟的网站/百度最新人工智能
  • 哪家公司做网站好/苏州seo培训
  • 给别人做网站/深圳在线制作网站
  • 家里电脑如何做网站/企业整站优化