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

vTESTstudio - VT System CAPL Functions - VT7001

vtsSerialClose - 关闭VT系统通道的串行端口

功能:关闭由系统变量命名空间指定的VT系统通道的串行端口。

Target:目标通道变量空间名称,例如:VTS::ECUPowerSupply

返回值:

0:成功重置目标通道最大和最小值

-1:非特定错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

Demo演示

查看vtsSerialConfigure函数

vtsSerialOpen - 打开VT系统通道的串行端口

功能:要确保没有数据丢失,请在调用此函数和随后发送或接收数据之间执行等待命令。

Target:目标通道变量空间名称,例如:VTS::ECUPowerSupply

返回值:

0:成功重置目标通道最大和最小值

-1:非特定错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

Demo演示

查看vtsSerialConfigure函数

vtsSerialConfigure - 配置VT系统通道的串行端口

功能:要配置由系统变量命名空间指定的VT系统通道的串行端口。如果不配置,则使用默认配置。

默认波特率:1200,8个数据位,1个停止位,无奇偶校验。

注意:为了确保使用了正确的设置,请在调用此函数和随后发送或接收数据之间执行等待命令

Target:目标通道变量空间名称,例如:VTS::ECUPowerSupply

baudrate:用于接收和传输的波特率,设置值如下表:

Value

Enum

Short Description

1200

eVTSBaudRate1200

用于接收和发送的串口通信波特率1200

2400

eVTSBaudRate2400

用于接收和发送的串口通信波特率2400

4800

eVTSBaudRate4800

用于接收和发送的串口通信波特率4800

9600

eVTSBaudRate9600

用于接收和发送的串口通信波特率9600

19200

eVTSBaudRate19200

用于接收和发送的串口通信波特率19200

38400

eVTSBaudRate38400

用于接收和发送的串口通信波特率38400

numberOfDataBits:传输帧内的数据位数。设置值如下表:

Value

Enum

Short Description

7

eVTSDataBitsSeven

7 Data Bits

8

eVTSDataBitsEight

8 Data Bits

numberOfStopBits:传输帧内的停止位数,设置值如下表:

Value

Enum

Short Description

1

eVTSStopBitsOne

1 StopBit

2

eVTSStopBitsTwo

2 StopBits

parity:指定使用的校验模式,设置如下表:

Value

Enum

Short Description

0

eVTSParityNone

no parity used, i.e. frame contains no parity bit

1

eVTSParityOdd

odd parity

2

eVTSParityEven

even parity

返回值:

0:成功重置目标通道最大和最小值

-1:非特定错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

Demo演示

以下示例是初始化串口

RS232Init_Example ()
{//声明RS232通信的变量char stringToSend[20] = "Hello World !"; // 字符串发送byte sendBuffer[20];                     // 用于保存发送数据的字节数组byte receiveBuffer[20];                  // 定义接收bufferint i;                                   // 字符长度//注册RS232回调函数vtsSerialSetOnErrorHandler("VTS::ECUPowerSupply", "OnRS232Error");vtsSerialSetOnReceiveHandler("VTS::ECUPowerSupply", "OnRS232Receive");vtsSerialSetOnSendHandler("VTS::ECUPowerSupply", "OnRS232Sent");//配置串行端口,即用于与外部通信//ECU电源至9600波特,8个数据位,1个停止位,无奇偶校验vtsSerialConfigure("VTS::ECUPowerSupply", eVTSBaudRate9600, eVTSDataBitsEight, eVTSStopBitsOne, eVTSParityNone);// 打开串行端口,即与外部ECU电源通信vtsSerialOpen("VTS::ECUPowerSupply");// 短暂等待以确保应用了设置并且端口已就绪TestWaitForTimeOut(10);// 关闭串口vtsSerialClose("VTS::ECUPowerSupply");
}

vtsSerialReceive - 从串行端口接收字节块

功能:开始从指定VT7001通道的串行端口接收字节块。将接收的数据复制到指定的缓冲区。只能在OnSerialReceive回调中访问数据。

Target:目标通道变量空间名称,例如:VTS::ECUPowerSupply

buffer:接收数据复制到的字节数组,缓冲区仅在OnSerialReceive回调中有效。

size:一次可接收的最大字节数。值必须大于0且小于65

返回值:

0:成功重置目标通道最大和最小值

-1:非特定错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

-3: 其中一个参数的值无效。

-5:串行端口未打开。

Demo演示

发送数据demo

// **** 接收数据 ****// 在10秒内,将所有接收到的数据输出到写入窗口
Write("Waiting for incomming data...");
vtsSerialReceive("VTS::ECUPowerSupply", receiveBuffer, elcount(receiveBuffer));
TestWaitForTimeOut(10000);

vtsSerialReceive - 从串行端口接收字节块

功能:向指定VT7001通道的串行端口发送一个字节块

Target:目标通道变量空间名称,例如:VTS::ECUPowerSupply

buffer:接收数据复制到的字节数组,缓冲区仅在OnSerialReceive回调中有效。

number:要从缓冲区发送的字节数。数字的值必须大于0且小于65

返回值:

0:成功重置目标通道最大和最小值

-1:非特定错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

-3: 其中一个参数的值无效。

-5:串行端口未打开。

Demo演示

发送数据demo

// **** 发送数据 ****// 将字符串复制到字节数组并发送
for (i=0; i<strlen(stringToSend); ++i) sendBuffer[i] = stringToSend[i];
vtsSerialSend("VTS::ECUPowerSupply", sendBuffer, strlen(stringToSend));

相关文章:

vTESTstudio - VT System CAPL Functions - VT7001

vtsSerialClose - 关闭VT系统通道的串行端口功能&#xff1a;关闭由系统变量命名空间指定的VT系统通道的串行端口。Target&#xff1a;目标通道变量空间名称&#xff0c;例如&#xff1a;VTS::ECUPowerSupply返回值&#xff1a;0&#xff1a;成功重置目标通道最大和最小值-1&am…...

「可信计算」论文初步解读

可信计算组织&#xff08;Ttrusted Computing Group,TCG&#xff09;是一个非盈利的工业标准组织&#xff0c;它的宗旨是加强在相异计算机平台上的计算环境的安全性。TCG于2003年春成立&#xff0c;并采纳了由可信计算平台联盟&#xff08;the Trusted Computing Platform Alli…...

CSDN 算法技能树 蓝桥杯-基础 刷题+思考总结

切面条-蓝桥杯-基础-CSDN算法技能树https://edu.csdn.net/skill/algorithm/algorithm-530255df51be437b967cbc4524fe66ea?category188 目录 切面条 大衍数列 门牌制作 方阵转置 微生物增殖 成绩统计 星系炸弹 判断闰年的依据: 特别数的和 *日志统计*&#xff08;双指…...

信小程序点击按钮绘制定制转发分享图

1. 说明 先上代码片断分享链接&#xff1a; https://developers.weixin.qq.com/s/vl3ws9mA72GG 使用 painter 画图 按钮传递定制化信息 效果如下&#xff1a; 2. 关键代码说明 文件列表如下&#xff1a; {"usingComponents": {"painter": "/com…...

Python自动化测试-使用Pandas来高效处理测试数据

Python自动化测试-使用Pandas来高效处理测试数据 目录&#xff1a;导读 一、思考 二、使用pandas来操作Excel文件 三、使用pandas来操作csv文件 四、总结 一、思考 1.Pandas是什么&#xff1f; 功能极其强大的数据分析库可以高效地操作各种数据集 csv格式的文件Excel文件H…...

语音增强学习路线图Roadmap

语音增强算是比较难的研究领域&#xff0c;从入门到精通有很多台阶&#xff0c;本文介绍一些有价值的书籍&#xff0c;值得反复阅读。主要分为基础类和进阶类书籍&#xff0c;大多都是理论和实践相结合的书籍&#xff0c;编程实践是抓手,让知识和基础理论变扎实。基础书籍《信号…...

nginx配置ssl实现https访问

文章目录一、介绍二、创建证书1、OpenSSL创建自签名密钥和证书三、nginx配置四、开放端口一、介绍 nginx配置ssl证书&#xff0c;实现https访问&#xff0c;可以使用自签名SSL证书或者购买机构颁发的证书两种方式参考链接 https://blog.csdn.net/weixin_39198406/article/deta…...

JavaScript 语句

JavaScript 语句向浏览器发出的命令。语句的作用是告诉浏览器该做什么。JavaScript 语句JavaScript 语句是发给浏览器的命令。这些命令的作用是告诉浏览器要做的事情。下面的 JavaScript 语句向 id"demo" 的 HTML 元素输出文本 "Hello Dolly" &#xff1a;…...

将古老的ASP项目转换为PHP初探

ASP 是一种服务器端脚本语言&#xff0c;主要用于开发动态 Web 应用程序。ASP 可以在服务器上执行代码&#xff0c;并将结果返回给客户端浏览器&#xff0c;实现动态生成 Web 页面的功能。ASP 代码通常包含在 <% %> 标记中&#xff0c;以下是一个简单的 ASP 程序示例&…...

数据结构复习(七)模板类封装实现不带头结点的单链表

一、代码 二、总结 一、代码 #include<iostream> using namespace std;template<class T> struct ListNode {T _data;ListNode* next;ListNode(const T& data T()){_data data;next nullptr;}~ListNode(){next nullptr;} };template<class T> class…...

IDEA插件 RestfulTool插件——Restful服务开发辅助工具集

IDEA插件 RestfulTool插件——Restful服务开发辅助工具集 目录IDEA插件 RestfulTool插件——Restful服务开发辅助工具集1.插件介绍2.安装方式3.使用方法1.插件介绍 RestfulTool插件。一套 Restful 服务开发辅助工具集&#xff1a; 提供了一个 Services tree 的显示窗口 双击 …...

2023年全国最新会计专业技术资格精选真题及答案1

百分百题库提供会计专业技术资格考试试题、会计考试预测题、会计专业技术资格考试真题、会计证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 11.下列各项中&#xff0c;影响企业利润表“利润总额”项目的是&#xff08;&…...

Linux 配置RAID组

目录 配置RAID&#xff08;软件RAID&#xff09; 创建RAID组 RAID中出现坏盘如何操作 RAID 添加热备盘 删除RAID组 RAID所解决的问题 提升硬盘的I/O吞吐率 提高硬盘的读写能力 提高硬盘的安全性 进行备份 减少硬盘成本 RAID级别 存储RAID——RAID级别_静下心来敲木鱼的博…...

【2021/推荐/社交网络】Socially-Aware Self-Supervised Tri-Training for Recommendation

部分公式、图表和排版等显示可能异常,可在个人公众号(码农的科研笔记)进行全文免费阅读。 【2021/推荐/社交网络】Socially-Aware Self-Supervised Tri-Training for Recommendation 原文:https://dl.acm.org/doi/10.1145/3447548.3467340 源码:[伯乐 SEPT]、https://git…...

Django搭建个人博客Blog-Day06

展示所有文章Django提供的分页功能说明import os os.environ.setdefault(DJANGO_SETTINGS_MODULE, blog.settings.dev) import django django.setup() # 这个时候才有django的环境 所以导入django中的模块必须写在这句话的后面才有效 from articles.models import Articles #…...

DQL 多表查询

1、多表关系 一对多&#xff08;多对一&#xff09; 案例: 部门 与 员工的关系 关系: 一个部门对应多个员工&#xff0c;一个员工对应一个部门 实现: 在从表的一方建立外键&#xff0c;指向主表一方的主键 多对多 案例: 学生 与 课程的关系 关系: 一个学生可以选修多门课程&am…...

BUUCTF Reverse xor

题目&#xff1a;BUUCTF Reverse xor 一些犯傻后学到了新东西的记录 查壳&#xff0c;没壳&#xff0c;IDA打开 main函数很好理解&#xff0c;输入一个长度为33的字符串&#xff0c;1-32位与前一位异或后与global相等&#xff0c;则判定flag正确 找global 在strings window直…...

vite和esbuild/roolup的优缺点

esbuild 优点 基于go语言&#xff0c;go是纯机器码不使用 AST&#xff0c;优化了构建流程多线程并行 缺点 esbuild 没有提供 AST 的操作能力。所以一些通过 AST 处理代码的 babel-plugin 没有很好的方法过渡到 esbuild 中&#xff08;比如babel-plugin-import&#xff09;。…...

32-Golang中的map

Golang中的map基本介绍基本语法map声明的举例map使用的方式map的增删改查操作map的增加和更新map的删除map的查找map的遍历map切片基本介绍map排序map的使用细节基本介绍 map是key-value数据结构&#xff0c;又称为字段或者关联数组。类似其它编程语言的集合&#xff0c;在编程…...

LeetCode-384-打乱数组

1、列表随机 为了能够初始化数组&#xff0c;我们使用nums保存当前的数组&#xff0c;利用orignal保存初始化数组。为了实现等可能随机打乱&#xff0c;考虑到随机数本质上是基于随机数种子的伪随机&#xff0c;我们采用如下的方式实现等可能随机&#xff1a;我们将所有元素压…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

day52 ResNet18 CBAM

在深度学习的旅程中&#xff0c;我们不断探索如何提升模型的性能。今天&#xff0c;我将分享我在 ResNet18 模型中插入 CBAM&#xff08;Convolutional Block Attention Module&#xff09;模块&#xff0c;并采用分阶段微调策略的实践过程。通过这个过程&#xff0c;我不仅提升…...

【解密LSTM、GRU如何解决传统RNN梯度消失问题】

解密LSTM与GRU&#xff1a;如何让RNN变得更聪明&#xff1f; 在深度学习的世界里&#xff0c;循环神经网络&#xff08;RNN&#xff09;以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而&#xff0c;传统RNN存在的一个严重问题——梯度消失&#…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 &#xff08;一&#xff09;概念解析 TRS&#xff08;Total Return Swap&#xff09;收益互换是一种金融衍生工具&#xff0c;指交易双方约定在未来一定期限内&#xff0c;基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

力扣-35.搜索插入位置

题目描述 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...

JS手写代码篇----使用Promise封装AJAX请求

15、使用Promise封装AJAX请求 promise就有reject和resolve了&#xff0c;就不必写成功和失败的回调函数了 const BASEURL ./手写ajax/test.jsonfunction promiseAjax() {return new Promise((resolve, reject) > {const xhr new XMLHttpRequest();xhr.open("get&quo…...