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

Qt编程技巧小知识点(6)根据 *IDN? 对程控仪器连接状态进行确认

文章目录

  • Qt编程技巧小知识点(6)根据 *IDN? 对程控仪器连接状态进行确认
  • 小结

Qt编程技巧小知识点(6)根据 *IDN? 对程控仪器连接状态进行确认

  确定仪器连接问题,常用的是监测仪器的连接状态,如下代码所示:

void onconnected(QAbstractSocket::SocketState socketStatue)
{qDebug()<<socketStatue;switch (socketStatue){case QAbstractSocket::ConnectingState:{ui->label_Text->setText("QAbstractSocket::ConnectingState");break;}case QAbstractSocket::UnconnectedState:{ui->label_Text->setText("QAbstractSocket::UnconnectedState");break;}case QAbstractSocket::ConnectedState:{ui->label_Text->setText("QAbstractSocket::ConnectedState");break;}case QAbstractSocket::HostLookupState:{ui->label_Text->setText("QAbstractSocket::HostLookupState");break;}case QAbstractSocket::BoundState:{ui->label_Text->setText("QAbstractSocket::BoundState");break;}case QAbstractSocket::ClosingState:{ui->label_Text->setText("QAbstractSocket::ClosingState");break;}case QAbstractSocket::ListeningState:{ui->label_Text->setText("QAbstractSocket::ListeningState");break;}default:{ui->label_Text->setText("Don't have normal QAbstractSocket");}}}
  • 但实际上,这种方式并不是特别好用,这里可以用 程控的通用命令 *IDN? 以及其返回信息进行确认,比如我们连接 santec 激光器。

  • 创建 socket ;

socket = new QTcpSocket(this);
  • 发送 IDN? 命令;
// 连接仪器
socket->abort();
socket->connectToHost(ip,qint16(port));// 发送资讯信息
QThread::msleep(100);
QString str = "*IDN?\r\n"
socket->write(str.toLatin1());
  • 接收返回信息,并确定返回信息中是否有关键字符。
QByteArray read;
read.clear();
while(socket->waitForReadyRead(100))//需要等待所有的数据传输完成
{read += socket->readAll();
}if(read.contains("SANTEC"))
{qDebug()<<"SANTEC 已连接。";
}
  • 另外,记录一个问题即解决办法。
19: error: 'ABCThread' does not name a type; did you mean 'ABC'?ABCThread*ABCThreadEvent;^~~~~~~~~~~~~~~~~~ABC

解决办法,不要头文件互相引用。

小结

  学习,加油,共勉。

相关文章:

Qt编程技巧小知识点(6)根据 *IDN? 对程控仪器连接状态进行确认

文章目录 Qt编程技巧小知识点&#xff08;6&#xff09;根据 *IDN? 对程控仪器连接状态进行确认小结 Qt编程技巧小知识点&#xff08;6&#xff09;根据 *IDN? 对程控仪器连接状态进行确认 确定仪器连接问题&#xff0c;常用的是监测仪器的连接状态&#xff0c;如下代码所示&…...

【Android】Kotlin教程(4)

文章目录 1.field2.计算属性3.主构造函数4.次构造函数5.默认参数6.初始化块7.初始化顺序7.延迟初始化lateinit8.惰性初始化 1.field field 关键字通常与属性的自定义 getter 和 setter 一起使用。当你需要为一个属性提供自定义的行为时&#xff0c;可以使用 field 来访问或设置…...

机票电子行程单如何批量查验?Java机票电子行程单查验接口示例-发票查验接口

机票电子行程单来了&#xff0c;它方便了人们的出行。现如今&#xff0c;随着旅游、差旅市场的回暖与线上业务的蓬勃发展&#xff0c;机票电子行程单的需求量急剧攀升&#xff0c;如何高效且准确地查验这些电子行程单成为许多企业和财务部门关注的焦点。传统的人工查验流程耗时…...

记录element-ui改造select显示为table,并支持多查询条件

最近遇到的一个需求 &#xff0c; 很有趣&#xff0c;是需要一个select组件&#xff0c;要求显示工号&#xff0c;员工姓名&#xff0c;以及区域 三个字段&#xff0c;并且要支持三个字段的查询。显然element原生的组件不适用&#xff0c;这时候我们需要改造一下&#xff0c;把…...

Spearman、Pearson、Euclidean、Cosine、Jaccard,用来衡量不同数据之间的相似性或差异性

1. Spearman相关系数&#xff1a; 用于衡量两个变量之间的排序关系的强度和方向。Spearman相关系数关注的是两个变量的排序一致性&#xff0c;而不关心具体的数值大小。值的范围为-1到1&#xff0c;1表示完全正相关&#xff0c;-1表示完全负相关&#xff0c;0表示无相关性。常…...

Suno 歌曲生成 API 对接说明

随着 AI 的应用变广&#xff0c;各类 AI 程序已逐渐普及。AI 已逐渐深入到人们的工作生活方方面面。而 AI 涉及的行业也越来越多&#xff0c;从最初的写作&#xff0c;到医疗教育&#xff0c;再到现在的音乐。 Suno 是一个专业高质量的 AI 歌曲和音乐创作平台&#xff0c;用户…...

详细且系统的Spring Boot应用开发

为了帮助大家更好地理解如何使用Spring Boot来构建一个基础的Web应用程序&#xff0c;我将通过一个简单的例子来进行说明。这个例子将是一个基本的RESTful API服务&#xff0c;用于管理图书信息。 项目准备 1. 开发环境设置&#xff08;这个我之前有发文&#xff0c;这里就不详…...

线程支持库(C++11)

线程支持库包含了线程&#xff0c;互斥锁&#xff0c;线程条件变量(class thread)&#xff0c;定义于<thread> 线程提供一个并发的实例&#xff0c;需要对应一个“线程函数” 线程的主要任务就是去执行这个"线程函数" 既然线程需要提供一个线程函数&#xff0c…...

【计网】深入理解NAT机制,内网穿透与内网打洞,代理服务

我没胆量犯错 才把一切错过 --- 林夕 《我对不起我》--- 一文了解NAT机制&#xff0c;代理服务&#xff0c;内网穿透 1 再谈 NAT 机制2 内网穿透与内网打洞3 代理服务器 1 再谈 NAT 机制 NAT机制我们在解决IP地址不足的问题中提到过。为了解决IP地址不足的问题&#xff0c;采…...

C# 创建型设计模式----工厂模式

1 、什么是工厂模式 简单来说就是由一个对象去生成不同的对象&#xff0c;工厂模式是用工厂方法代替new操作的一种模式。工厂方法封装了多个相关联类的new方法&#xff0c;每次实例化这些类的时候不需要new多次&#xff0c;只需要调用工厂类的对应方法即可实例化这些类&#x…...

java中Scanner的nextLine和next方法

思考&#xff0c;输入1 2 3 4 5加上enter&#xff0c;输出什么 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int[][] m new int[2][2];for (int i 0; i < 2; i) {for (int j 0; j < 2;…...

2024年全国山洪径流模拟与洪水危险性评价技术及典型地区洪水淹没及损失分析

洪水淹没危险性&#xff08;各种年遇型洪水淹没&#xff09;是洪水损失评估、风险评估及洪水应急和管理规划等工作的重要基础。当前开展洪水危险性研究工作中的主要困难之一是水文资料稀缺&#xff0c;尤其是径流资料稀缺&#xff0c;既包括径流观测资料在时间上的短缺&#xf…...

CDC 同步数据需要的MySQL数据权限

授权命令如下: grant Replication client on *.* to username%; grant Replication slave on *.* to username%; flush privileges;...

Ubuntu20.04 更新Nvidia驱动 + 安装CUDA12.1 + cudnn8.9.7

一、概述 最近客户给了几台GPU服务器,长期放置落灰那种,然后想利用起来,所以上去看看了配置,系统是Ubuntu20.04,相关的驱动版本稍嫌老一些,所以需要更新Nvidia驱动,同时在安装CUDA和CUDNN,查看了显卡型号之后,打算使用onnxruntime进行推理,对比了版本,最后选择了CUD…...

算法自学 Lesson3 - 逻辑回归(LR)

目录 背景 一、适用数据集 1. 数据集选择 1.1 领域 1.2 数据集维度 1.3 记录行&#xff08;样本数量&#xff09; 2. 本文数据集介绍 3. 数据集下载 注意 二、逻辑回归的基本原理 1. 目的 2. Sigmoid 函数 3. 类别划分 4. 召回率 三、代码 1. 导入所需包&数…...

文件IO流

1.文件流概念 2.文件创建方式 3.常用方法 4.IO流原理 &#xff08;1&#xff09;InputStream&#xff0c;OutputStream, Reader, Writer四个都是抽象类&#xff0c;无法直接new, 需要由子类继承&#xff0c;然后new子类&#xff1b; &#xff08;2&#xff09;Reader和Writer…...

拥塞控制与TCP子问题(粘包问题,异常情况等)

​拥塞控制 除了拥塞控制 以上的策越都是为了解决tcp 客户端和服务端提高效率&#xff0c;解决丢包的策略 但是拥塞控制是了为解决网络拥堵 出现了大面积丢包&#xff0c;我们发送方会判定是网络出现了问题&#xff1f; 丢包好解决&#xff0c;我们直接采用超时重传&#…...

stm32入门教程--DMA 超详细!!!

目录 简介 工作模式 1、数据转运DMA 2、ADC扫描模式DMA 简介 工作模式 1、数据转运DMA 这个例子的任务是将SRAM的数组DataA&#xff0c;转运到另一个数组DataB中&#xff0c;这个基本结构里的各个参数应该如何配置呢&#xff1f; 首先是外设站点和存储器站点的起始地址、…...

【使用Flask构建RESTful API】从零开始开发简单的Web服务!

使用Flask构建RESTful API&#xff1a;从零开始开发简单的Web服务 引言 随着Web应用程序的广泛使用&#xff0c;RESTful API已成为现代Web服务的核心技术之一。通过RESTful API&#xff0c;我们可以轻松地创建、读取、更新和删除&#xff08;CRUD&#xff09;数据&#xff0c…...

用sdcc给51单片机编译C程序

学习单片机大部分人用的是Keil uVision&#xff0c;虽然好用&#xff0c;可大部分人用的是盗版&#xff0c;其实单片机程序小的话&#xff0c;完全可以用文本编辑器&#xff08;推荐notepad)编写&#xff0c;然后用免费的sdcc来编译&#xff0c;下面介绍一下大致的过程。 sdcc…...

Greasy Fork:开源用户脚本平台的价值探索与实践指南

Greasy Fork&#xff1a;开源用户脚本平台的价值探索与实践指南 【免费下载链接】greasyfork An online repository of user scripts. 项目地址: https://gitcode.com/gh_mirrors/gr/greasyfork 一、价值定位&#xff1a;重新定义浏览器增强体验 1.1 开源平台的核心价值…...

泛微OA Ecology 安全补丁管理账号配置与实战

1. 泛微OA Ecology安全补丁管理账号配置详解 第一次接触泛微OA Ecology系统的安全补丁管理功能时&#xff0c;我完全没意识到这个看似简单的配置背后藏着这么多门道。直到有次系统被恶意攻击&#xff0c;才发现默认的管理账号存在安全隐患。今天就带大家彻底搞懂这个关键配置&a…...

Windows下FFmpeg环境配置全攻略:从下载到视频剪辑实战

Windows下FFmpeg环境配置全攻略&#xff1a;从下载到视频剪辑实战 在数字内容创作爆发的时代&#xff0c;视频处理能力已成为开发者和创作者的必备技能。FFmpeg作为开源多媒体处理领域的"瑞士军刀"&#xff0c;其强大功能与跨平台特性使其成为处理音视频文件的首选工…...

AI显微镜-Swin2SR基础教程:理解‘细节重构技术’对AI生成图的价值

AI显微镜-Swin2SR基础教程&#xff1a;理解‘细节重构技术’对AI生成图的价值 1. 从模糊到高清&#xff1a;AI超分的革命性突破 你是否曾经遇到过这样的情况&#xff1a;AI生成了一张很有创意的图片&#xff0c;但分辨率太低&#xff0c;放大后全是马赛克&#xff1b;或者找到…...

什么时候会触发FullGC

面试 1、老年代空间不足。应该让对象在年轻代多存活一段时间&#xff0c;不要创建过大的对象及数组。 2、元空间满了。说明此时&#xff0c;系统中要加载的类、反射的类和调用的方法较多。 3、MinorGC执行后晋升到老年代的平均大小大于老年代的剩余空间。...

【Linux信号】Linux进程信号(上):信号产生方式和闹钟

&#x1f3ac; 个人主页&#xff1a;艾莉丝努力练剑❄专栏传送门&#xff1a;《C语言》《数据结构与算法》《C/C干货分享&学习过程记录》 《Linux操作系统编程详解》《笔试/面试常见算法&#xff1a;从基础到进阶》《Python干货分享》⭐️为天地立心&#xff0c;为生民立命…...

深度解析ConcurrentHashMap设计演进:从分段锁到无锁化的并发之路

在Java并发编程领域&#xff0c;ConcurrentHashMap绝对是“并发容器扛鼎之作”——它既解决了HashMap并发环境下的数据不一致&#xff08;死循环、数据丢失&#xff09;问题&#xff0c;又突破了Hashtable全表锁的性能瓶颈&#xff0c;成为高并发场景下K-V存储的首选。自JDK1.5…...

Arco design vue 表格排序踩坑

父组件&#xff1a;<template><div class"p-10"><!-- 商户管理 --><div class"invate-box placeholder:"><div class"flex items-center"><SvgIcon :name"user"></SvgIcon><div class&q…...

[2026 职场洗牌系列 01] 程序员正在“杀死”自己的工作?科技行业高危预警

长久以来&#xff0c;学计算机&#xff08;CS&#xff09;在很多年轻人眼里就等同于拿到了通往高薪和阶层跃升的金钥匙。大家都觉得&#xff0c;只要把代码敲得溜&#xff0c;这辈子在职场上基本就稳了。可惜&#xff0c;到了2026年的今天&#xff0c;生成式AI正在毫不留情地把…...

接近开关和光电开关接头:A编码M12一体式防水连接器规格解析

在工业自动化现场&#xff0c;接近开关与光电开关是应用最广泛的传感器。其标准接口——A编码M12一体式防水连接器&#xff08;预铸线缆型&#xff09;&#xff0c;通过统一的机械尺寸与电气定义&#xff0c;实现了传感器的即插即用与高可靠连接。一、规格标准与接口定义A编码M…...