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系统通道的串行端口功能:关闭由系统变量命名空间指定的VT系统通道的串行端口。Target:目标通道变量空间名称,例如:VTS::ECUPowerSupply返回值:0:成功重置目标通道最大和最小值-1&am…...
「可信计算」论文初步解读
可信计算组织(Ttrusted Computing Group,TCG)是一个非盈利的工业标准组织,它的宗旨是加强在相异计算机平台上的计算环境的安全性。TCG于2003年春成立,并采纳了由可信计算平台联盟(the Trusted Computing Platform Alli…...
CSDN 算法技能树 蓝桥杯-基础 刷题+思考总结
切面条-蓝桥杯-基础-CSDN算法技能树https://edu.csdn.net/skill/algorithm/algorithm-530255df51be437b967cbc4524fe66ea?category188 目录 切面条 大衍数列 门牌制作 方阵转置 微生物增殖 成绩统计 星系炸弹 判断闰年的依据: 特别数的和 *日志统计*(双指…...
信小程序点击按钮绘制定制转发分享图
1. 说明 先上代码片断分享链接: https://developers.weixin.qq.com/s/vl3ws9mA72GG 使用 painter 画图 按钮传递定制化信息 效果如下: 2. 关键代码说明 文件列表如下: {"usingComponents": {"painter": "/com…...
Python自动化测试-使用Pandas来高效处理测试数据
Python自动化测试-使用Pandas来高效处理测试数据 目录:导读 一、思考 二、使用pandas来操作Excel文件 三、使用pandas来操作csv文件 四、总结 一、思考 1.Pandas是什么? 功能极其强大的数据分析库可以高效地操作各种数据集 csv格式的文件Excel文件H…...
语音增强学习路线图Roadmap
语音增强算是比较难的研究领域,从入门到精通有很多台阶,本文介绍一些有价值的书籍,值得反复阅读。主要分为基础类和进阶类书籍,大多都是理论和实践相结合的书籍,编程实践是抓手,让知识和基础理论变扎实。基础书籍《信号…...
nginx配置ssl实现https访问
文章目录一、介绍二、创建证书1、OpenSSL创建自签名密钥和证书三、nginx配置四、开放端口一、介绍 nginx配置ssl证书,实现https访问,可以使用自签名SSL证书或者购买机构颁发的证书两种方式参考链接 https://blog.csdn.net/weixin_39198406/article/deta…...
JavaScript 语句
JavaScript 语句向浏览器发出的命令。语句的作用是告诉浏览器该做什么。JavaScript 语句JavaScript 语句是发给浏览器的命令。这些命令的作用是告诉浏览器要做的事情。下面的 JavaScript 语句向 id"demo" 的 HTML 元素输出文本 "Hello Dolly" :…...
将古老的ASP项目转换为PHP初探
ASP 是一种服务器端脚本语言,主要用于开发动态 Web 应用程序。ASP 可以在服务器上执行代码,并将结果返回给客户端浏览器,实现动态生成 Web 页面的功能。ASP 代码通常包含在 <% %> 标记中,以下是一个简单的 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 服务开发辅助工具集: 提供了一个 Services tree 的显示窗口 双击 …...
2023年全国最新会计专业技术资格精选真题及答案1
百分百题库提供会计专业技术资格考试试题、会计考试预测题、会计专业技术资格考试真题、会计证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 11.下列各项中,影响企业利润表“利润总额”项目的是(&…...
Linux 配置RAID组
目录 配置RAID(软件RAID) 创建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、多表关系 一对多(多对一) 案例: 部门 与 员工的关系 关系: 一个部门对应多个员工,一个员工对应一个部门 实现: 在从表的一方建立外键,指向主表一方的主键 多对多 案例: 学生 与 课程的关系 关系: 一个学生可以选修多门课程&am…...
BUUCTF Reverse xor
题目:BUUCTF Reverse xor 一些犯傻后学到了新东西的记录 查壳,没壳,IDA打开 main函数很好理解,输入一个长度为33的字符串,1-32位与前一位异或后与global相等,则判定flag正确 找global 在strings window直…...
vite和esbuild/roolup的优缺点
esbuild 优点 基于go语言,go是纯机器码不使用 AST,优化了构建流程多线程并行 缺点 esbuild 没有提供 AST 的操作能力。所以一些通过 AST 处理代码的 babel-plugin 没有很好的方法过渡到 esbuild 中(比如babel-plugin-import)。…...
32-Golang中的map
Golang中的map基本介绍基本语法map声明的举例map使用的方式map的增删改查操作map的增加和更新map的删除map的查找map的遍历map切片基本介绍map排序map的使用细节基本介绍 map是key-value数据结构,又称为字段或者关联数组。类似其它编程语言的集合,在编程…...
LeetCode-384-打乱数组
1、列表随机 为了能够初始化数组,我们使用nums保存当前的数组,利用orignal保存初始化数组。为了实现等可能随机打乱,考虑到随机数本质上是基于随机数种子的伪随机,我们采用如下的方式实现等可能随机:我们将所有元素压…...
Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...
(二)TensorRT-LLM | 模型导出(v0.20.0rc3)
0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...
Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
