QT调用TSmaster库来发送can

2023-11-22 10:40
文章标签 qt 调用 发送 库来 tsmaster

本文主要是介绍QT调用TSmaster库来发送can,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

QT调用TSmaster库来发送can


自己一直使用的上位机开发都是使用的qt,Visual Studio使用的C#语言奈何自己确实不会,然后调各种库,有点吃力。还是C/C++的QT更适合自己。
下面介绍通过QT调用TSMaster.dll来通过同星来发送can网络数据。同星集合了ZLG/CANOE/PCAN等主流的can卡驱动,那么就不需要自己在写驱动。
下面介绍下QT调用Tmaster库。

第一步,创建一个qt工程,在工程添加这句话

win32: LIBS += -L$$PWD -lTSMaster

Alt

第二步把dll和lib文件放入工程目录,同时注意把.h文件添加进来即可。

Alt

这个时候编译就先尝试编译看能否编译通过。

接下来查看编程文档,可以在TSmaster中打开

Alt

可以先看第5章节。了解其使用的一个步骤

Alt

这里主要提到的一个点下面这个函数,如果使用同星和VECTOR不需要使用下面这个函数,如果使用zlg、pcan这些can卡就需要使用下面这个函数了。这里也是关键点。

/当你使用非同星或者CANOE就需要调用这个函数,选取哪个can卡就哪个置1/

tsapp_set_vendor_detect_preferences(0,0,1,0,0,0);

硬件连接有2种方式

第一种使用下面这个函数我们需要了解TLIBTSMapping这个结构体。

对其赋值即可。然后看文档也有对波特率这些参数设置的函数

TLIBTSMapping m;
tsapp_set_mapping(&m)

Alt

第二种可以直接调用同星的硬件配置界面。注意升级最新版本的Tsmaster软件,下载地址

http://www.tosun.tech/TOSUNSoftware/TSMaster_Setup_beta.exe

打开同星界面的函数tsapp_show_tsmaster_window。

传入字符串Hardware,即可打开。

tsapp_show_tsmaster_window("Hardware",1);

Alt

调用这句话就直接打开同星的硬件配置界面
Alt

这里有个坑就是每次使用其他家的can卡都需要再次点击选择厂商。

跳出下面界面然后勾选所有,点击确定才会弹出其他家的识别
Alt
最后确定完毕关闭这个窗口就硬件配置成功了。

注意关闭界面。

连接硬件就可以使用同星的API函数了。同星提供了很多api函数,目前没有时间一一研究。

发送数据的api很简单就是使用。使用

tsapp_transmit_can_async();

Alt
下面就是把2个can卡连接查看总线数据。
Alt
很清楚的查看到已经发送成功了

获取demo代码方式
关注我的公众号爱捣鼓的程序猿(可以微信右上角添加朋友点击公众号输入:aidg_cxy即可)回复
Tsmaster即可获取下载链接
在这里插入图片描述

这篇关于QT调用TSmaster库来发送can的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/409570

相关文章

Java发送SNMP至交换机获取交换机状态实现方式

《Java发送SNMP至交换机获取交换机状态实现方式》文章介绍使用SNMP4J库(2.7.0)通过RCF1213-MIB协议获取交换机单/多路状态,需开启SNMP支持,重点对比SNMPv1、v2c、v... 目录交换机协议SNMP库获取交换机单路状态获取交换机多路状态总结交换机协议这里使用的交换机协议为常

MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决

《MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决》MyBatis默认开启一级缓存,同一事务中循环调用查询方法时会重复使用缓存数据,导致获取的序列主键值均为1,... 目录问题原因解决办法如果是存储过程总结问题myBATis有如下代码获取序列作为主键IdMappe

使用Go调用第三方API的方法详解

《使用Go调用第三方API的方法详解》在现代应用开发中,调用第三方API是非常常见的场景,比如获取天气预报、翻译文本、发送短信等,Go作为一门高效并发的编程语言,拥有强大的标准库和丰富的第三方库,可以... 目录引言一、准备工作二、案例1:调用天气查询 API1. 注册并获取 API Key2. 代码实现3

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

使用Python的requests库来发送HTTP请求的操作指南

《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送

Java调用Python脚本实现HelloWorld的示例详解

《Java调用Python脚本实现HelloWorld的示例详解》作为程序员,我们经常会遇到需要在Java项目中调用Python脚本的场景,下面我们来看看如何从基础到进阶,一步步实现Java与Pyth... 目录一、环境准备二、基础调用:使用 Runtime.exec()2.1 实现步骤2.2 代码解析三、

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

Python如何调用另一个类的方法和属性

《Python如何调用另一个类的方法和属性》在Python面向对象编程中,类与类之间的交互是非常常见的场景,本文将详细介绍在Python中一个类如何调用另一个类的方法和属性,大家可以根据需要进行选择... 目录一、前言二、基本调用方式通过实例化调用通过类继承调用三、高级调用方式通过组合方式调用通过类方法/静

C#控制台程序同步调用WebApi实现方式

《C#控制台程序同步调用WebApi实现方式》控制台程序作为Job时,需同步调用WebApi以确保获取返回结果后执行后续操作,否则会引发TaskCanceledException异常,同步处理可避免异... 目录同步调用WebApi方法Cls001类里面的写法总结控制台程序一般当作Job使用,有时候需要控制