Vector - CAPL - 诊断模块函数(设置和获取)

 

目录

CanTpGetRxIdentifier

CanTpGetTxIdentifier

CanTpSetRxIdentifier

CanTpSetTxIdentifier

代码示例

CanTpGetPadding & CanTpSetPadding

代码示例

CanTpGetAcceptOtherMode & CanTpSetAcceptOtherMode

代码示例


        对于使用OSEK.dll文件调用发送诊断数据和接收诊断数据,对于诊断发送ID和接收ID的设置是为重中之重,如果没有这个设置,我们将无法对我们的诊断数据进行发送和接收的检查,因此我们需要对其进行设置;如果对于大型的脚本框架来说,在脚本的不同的位置,我们可能还需要对于诊断ID进行获取和校验,因此这类函数也是必要的。下面我们就来介绍下这4个函数:发送ID的设置、接收ID的设置、发送ID的获取、接收ID的获取。

CanTpGetRxIdentifier

功能:获取连接用于接收 (Rx) 协议数据的消息的 CAN ID。

CanTpGetTxIdentifier

功能:获取连接用于发送 (Tx) 协议数据的消息的 CAN ID。

CanTpSetRxIdentifier

功能:设置连接用于接收 (Rx) 协议数据的消息的 CAN ID。

CanTpSetTxIdentifier

功能:设置连接用于发送 (Tx) 协议数据的消息的 CAN ID。

代码示例

long handle;
handle = CanTpCreateConnection(0);
if( handle <= 0)
  return; // error
CanTpSetRxIdentifier( handle, 0x80000000 | 0xABCDEF);
CanTpSetTxIdentifier( handle, 0x80000000 | 0x987654);

CanTpGetPadding & CanTpSetPadding

功能:获取和设置 CAN 消息填充的状态,并指定填充字节(如果使用);CanTpGetPadding 返回 connHandle 引用的 TP 连接设置的 paddingValue。 即,默认值或先前使用 Set 函数设置的值(或者可能是错误值)。

paddingValue值设置:

        -1:不要将 CAN 消息填充到 8 个数据字节,即 CAN 消息的 DLC 将有所不同。
        0 - 255:给定的字节值用于将 CAN 消息填充为 8 个数据字节。
        256:CAN 消息以 DLC 8 发送,但字节未初始化,即字节的内容是任意的并且取决于先前发送的消息。
        其他:保留

connHandle:传输协议的句柄

返回值:

        0:设置成功

        -1:设置失败

代码示例

创建的TP连接的填充值设置为0xAA。

long handle;
//正常链接模式
handle = CanTpCreateConnection( 0); 
CanTpSetTxIdentifier(handle, 0x100);
CanTpSetRxIdentifier(handle, 0x101);
// 将填充字节值设置为 0xAA
CanTpSetPadding(handle, 0xAA); 

CanTpGetAcceptOtherMode & CanTpSetAcceptOtherMode

功能:获取或设置有关 CAN 2.0 或 FD 帧的连接行为:激活后,CAN 2.0 连接将接受 CAN FD 帧,甚至可能继续发送 CAN FD 帧。 CAN FD 连接将接收 CAN 2.0 帧,甚至可能继续发送 CAN 2.0 帧。

注意:此函数可能会导致 TP 层出现非标准行为,因此必须谨慎使用!

connHandle:传输协议连接的句柄。

acceptType:

        0:忽略 CAN FD (CAN 2.0) 连接上的 CAN 2.0 (CAN FD) 帧(默认)
        1:在CAN FD(CAN 2.0)连接上接受CAN 2.0(CAN FD)帧,但继续发送CAN FD(CAN 2.0)
        2:在CAN FD(CAN 2.0)连接上接收CAN 2.0(CAN FD)帧,并通过发送CAN 2.0(CAN FD)帧来适应其余的数据传输

返回值:

CodeShort Description
-19没有这样的连接,即连接创建失败或给定的句柄未知。
-18连接已知,但同时已关闭。
-17该功能尚未实现。
-16CAPL 函数接收到错误的参数。
-15CAPL 函数只能从适当的回调函数中调用。
-14无法为其所应用的寻址模式调用函数。
-13这在回调函数中是不可能的。
-12故障注入未激活。
0好的,没有错误

代码示例

long CreateCANFDConnection( WORD txId, WORD rxId)
{
  long handle;
  handle = CanTpCreateConnection( 0); // normal链接模式
  CanTpSetTxIdentifier( handle, txId);
  CanTpSetRxIdentifier( handle, rxId);
  CanTpSetMaxCANFDFrameLength( handle, 24); // 使能CANFD
  CanTpSetBitRateSwitch( handle, 1); // activate BRS
  CanTpSetAcceptOtherMode( handle, 2); // 适应peer指示的模式
  return handle;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/54634.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【element-plus】 table表格每行圆角解决方案 element也通用

系列文章目录 【Vue3ViteTselement-plus】使用tsx实现左侧栏菜单无限层级封装 前言 我们在使用element-plus或element 的table时是否有时UI给到的UI效果是如下面这样的&#xff0c;但是我们翻遍了组件库的文档 调整了很多次样式 发现在 左右侧栏固定的时候 普通的方法是完全…

基于小程序+spring boot流浪动物救助系统-计算机毕设 附源码12783

小程序spring boot流浪动物救助系统 摘 要 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;流浪动物救助系统被用…

音视频技术开发周刊 | 304

每周一期&#xff0c;纵览音视频技术领域的干货。 新闻投稿&#xff1a;contributelivevideostack.com。 更强的Llama 2开源&#xff0c;可直接商用&#xff1a;一夜之间&#xff0c;大模型格局变了 Meta 终于发布了大家期待已久的免费可商用版本 Llama 2。 6000份问卷透露出AI…

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像&#xff08;图生图&#xff0c;img2img&#xff09;为例 学习前言源码下载地址网络构建一、什么是Stable Diffusion&#xff08;SD&#xff09;二、Stable Diffusion的组成三、img2img生成流程1、输入图片编…

如何获取微信公众号关注主页地址

1&#xff0c;首先。在公众号后台发布一篇文章&#xff0c;&#xff08;文章也可以关注公众号&#xff09; 2&#xff0c;浏览器打开文章地址 。在页面找到_biz码 3&#xff0c;https://mp.weixin.qq.com/mp/profile_ext?actionhome&__bizxxxxx&scene110#wechat_redi…

减轻 PWM 的滤波要求

经典脉宽调制器 (PWM) 发出 H 个连续逻辑高电平&#xff08;1&#xff09;&#xff0c;后跟 L 个连续逻辑低电平&#xff08;0&#xff09;的重复序列。每个高电平和低电平持续一个时钟周期 T 1/F (Hz)。结果的占空比可定义为 H/N&#xff0c;其中 N HL 时钟周期。N 通常是 2…

谷粒商城第六天-商品服务之分类管理下的获取三级分类树形列表

目录 一、总述 1.1 前端思路 1.2 后端思路 二、前端部分 2.1 在网页中建好目录及菜单 2.1.1 建好商品目录 2.1.2 建好分类管理菜单 ​编辑 2.2 编写组件 2.2.1 先完成组件文件的创建 2.2.2 编写组件 2.2.2.1 显示三级分类树形列表 三、后端部分 3.1 编写商品分类…

matlab编程实践16、17

捕食者与猎物模型 人口增长 在人口增长或衰减的最简单模型中&#xff0c;增长速度或衰减速度与人口本身的数目成正比。增加或减少人口规模会导致出生和死亡数量成比例地增加或减少。在数学上&#xff0c;可以由以下微分方程描述。 可以得出&#xff1a;&#xff0c;其中。 该简…

2023-08-01 LeetCode每日一题(英雄的力量)

2023-08-01每日一题 一、题目编号 2681. 英雄的力量二、题目链接 点击跳转到题目位置 三、题目描述 给你一个下标从 0 开始的整数数组 nums &#xff0c;它表示英雄的能力值。如果我们选出一部分英雄&#xff0c;这组英雄的 力量 定义为&#xff1a; i0 &#xff0c;i1 &…

Redis - 三大缓存问题(穿透、击穿、雪崩)

缓存穿透 概念&#xff1a; 查询一个数据库中也不存在的数据&#xff0c;数据库查询不到数据也就不会写入缓存&#xff0c;就会导致一直查询数据库 解决方法&#xff1a; 1. 缓存空数据 如果数据库也查询不到&#xff0c;就把空结果进行缓存 缺点是 - 消耗内存 2. 使用布…

ModuleNotFoundError: No module named ‘_sqlite3‘

前言 遇到报错信息如下&#xff1a; ModuleNotFoundError: No module named _sqlite3解决方式 参考解决方式&#xff1a; https://blog.csdn.net/jaket5219999/article/details/53512071 find / -name _sqlite*.socp /usr/lib64/python3.6/lib-dynload/_sqlite3.cpython-36…

Go语言性能优化建议与pprof性能调优详解——结合博客项目实战

文章目录 性能优化建议Benchmark的使用slice优化预分配内存大内存未释放 map优化字符串处理优化结构体优化atomic包小结 pprof性能调优采集性能数据服务型应用go tool pprof命令项目调优分析修改main.go安装go-wrk命令行交互界面图形化火焰图 性能优化建议 简介&#xff1a; …

从0到1开发go-tcp框架【1-搭建server、封装连接与业务绑定、实现基础Router、抽取全局配置文件】

从0到1开发go-tcp框架【1-搭建server、封装连接与业务绑定、实现基础Router】 本期主要完成对Server的搭建、封装连接与业务绑定、实现基础Router&#xff08;处理业务的部分&#xff09;、抽取框架的全局配置文件 从配置文件中读取数据&#xff08;服务器监听端口、监听IP等&a…

记一次phpmyadmin巧妙利用

声明&#xff1a;文中涉及到的技术和工具&#xff0c;仅供学习使用&#xff0c;禁止从事任何非法活动&#xff0c;如因此造成的直接或间接损失&#xff0c;均由使用者自行承担责任。 点点关注不迷路&#xff0c;每周不定时持续分享各种干货。 原文链接&#xff1a;众亦信安&a…

Spring中最简单的过滤器和监听器

1. 过滤器概念引入 Filter也称之为过滤器&#xff0c;它是Servlet技术中最实用的技术&#xff0c;Web开发人员通过Filter技术&#xff0c;对web服务器管理的所有web资源&#xff1a;例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截&#xff0c;从而实现一些特殊的功…

在Windows 10和11中恢复已删除的照片

可以在Windows 10或11上恢复已删除的照片吗&#xff1f; 随着技术的发展&#xff0c;越来越多的用户习惯在电子设备上存储照片。如果这些照片被删除&#xff0c;可能会给用户带来重大损失。当照片丢失时&#xff0c;您可能会想是否可以恢复已删除的照片&#xff1f; …

LabVIEW 开发在不确定路况下自动速度辅助系统

LabVIEW 开发在不确定路况下自动速度辅助系统 智能驾驶辅助系统是汽车行业最先进的升级和尖端技术&#xff0c;智能交通系统依靠智能驾驶辅助系统在公共交通部门工作。该智能驾驶辅助系统技术包括自适应巡航控制&#xff0c;防抱死制动系统&#xff0c;安全气囊展开&#xff0…

腾讯云从业者认证考试考——云服务器

文章目录 云服务器的产品概览腾讯云服务器的优势腾讯云服务器选型腾讯云服务器计费方案 云服务器的产品概览 腾讯云服务器的产品&#xff1f; CVM云服务器&#xff08;Cloud Virtual Machine&#xff0c;CVM&#xff09;提供安全可靠的弹性计算服务。 可以在云端获取和启用 CV…

根据前序和中序遍历序列构造二叉树 (递归+迭代两种方法实现)

给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 输入: preorder [3,9,20,15,7], inorder [9,3,15,20,7] 输出: [3,9,20,null,null,15,7]源代码如下…

《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(13)-Fiddler请求和响应断点调试

1.简介 Fiddler有个强大的功能&#xff0c;可以修改发送到服务器的数据包&#xff0c;但是修改前需要拦截&#xff0c;即设置断点。设置断点后&#xff0c;开始拦截接下来所有网页&#xff0c;直到取消断点。这个功能可以在数据包发送之前&#xff0c;修改请求参数&#xff1b…