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中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf

Python手搓邮件发送客户端

《Python手搓邮件发送客户端》这篇文章主要为大家详细介绍了如何使用Python手搓邮件发送客户端,支持发送邮件,附件,定时发送以及个性化邮件正文,感兴趣的可以了解下... 目录1. 简介2.主要功能2.1.邮件发送功能2.2.个性签名功能2.3.定时发送功能2. 4.附件管理2.5.配置加载功能2.6.

Idea调用WebService的关键步骤和注意事项

《Idea调用WebService的关键步骤和注意事项》:本文主要介绍如何在Idea中调用WebService,包括理解WebService的基本概念、获取WSDL文件、阅读和理解WSDL文件、选... 目录前言一、理解WebService的基本概念二、获取WSDL文件三、阅读和理解WSDL文件四、选择对接

解决Cron定时任务中Pytest脚本无法发送邮件的问题

《解决Cron定时任务中Pytest脚本无法发送邮件的问题》文章探讨解决在Cron定时任务中运行Pytest脚本时邮件发送失败的问题,先优化环境变量,再检查Pytest邮件配置,接着配置文件确保SMT... 目录引言1. 环境变量优化:确保Cron任务可以正确执行解决方案:1.1. 创建一个脚本1.2. 修

基于Qt Qml实现时间轴组件

《基于QtQml实现时间轴组件》时间轴组件是现代用户界面中常见的元素,用于按时间顺序展示事件,本文主要为大家详细介绍了如何使用Qml实现一个简单的时间轴组件,需要的可以参考下... 目录写在前面效果图组件概述实现细节1. 组件结构2. 属性定义3. 数据模型4. 事件项的添加和排序5. 事件项的渲染如何使用

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

Java调用Python代码的几种方法小结

《Java调用Python代码的几种方法小结》Python语言有丰富的系统管理、数据处理、统计类软件包,因此从java应用中调用Python代码的需求很常见、实用,本文介绍几种方法从java调用Pyt... 目录引言Java core使用ProcessBuilder使用Java脚本引擎总结引言python

Django中使用SMTP实现邮件发送功能

《Django中使用SMTP实现邮件发送功能》在Django中使用SMTP发送邮件是一个常见的需求,通常用于发送用户注册确认邮件、密码重置邮件等,下面我们来看看如何在Django中配置S... 目录1. 配置 Django 项目以使用 SMTP2. 创建 Django 应用3. 添加应用到项目设置4. 创建

java如何调用kettle设置变量和参数

《java如何调用kettle设置变量和参数》文章简要介绍了如何在Java中调用Kettle,并重点讨论了变量和参数的区别,以及在Java代码中如何正确设置和使用这些变量,避免覆盖Kettle中已设置... 目录Java调用kettle设置变量和参数java代码中变量会覆盖kettle里面设置的变量总结ja

python与QT联合的详细步骤记录

《python与QT联合的详细步骤记录》:本文主要介绍python与QT联合的详细步骤,文章还展示了如何在Python中调用QT的.ui文件来实现GUI界面,并介绍了多窗口的应用,文中通过代码介绍... 目录一、文章简介二、安装pyqt5三、GUI页面设计四、python的使用python文件创建pytho