最近用qt做了一个USBCAN和Ecantools二次开发的上位软件。经过本人实际测试,效果不错,界面和官方的软件类似。做此软件的目的主要是学会调用该模块的二次开发库,采集数据时也就可以将数据进行简单的处理,这样调试起来也就方便很多了。Qt版本:qt5.14.2   界面如下:界面1:实现数据接收发送操作:USBCAN版本: 界面2:实现数据
    这篇博客会比较长,因为大部分内容是我写的上位技术手册,很详细,有耐心的同学应该还是能收获不少的,源代码开放于Google code,欢迎大家checkout:http://dian-matrix.googlecode.com/svn/trunk/废话不多少,开始介绍:1.   概述为使用户更为方便的生成汉字和绘制自己的图形,我们为《电子台
转载 2024-05-26 12:53:40
210阅读
基于ROS的QT界面开发史上最强教程  使用ROS下的QT插件开发基于ROS界面的程序1、安装ROS下的ros_qtc_plugin插件及git、gitk工具1.1.官方指导教程    https://ros-industrial.github.io/ros_qtc_plugin/_source/How-to-Install-Users.html1.2.坊间
转载 3月前
49阅读
Qt写串口通信前言:如果用qt写程序作为上位,然后通过和usb和下位通信的时候,就需要用到qt中的串口通信了。使用qt中的串口通信的时候需要用到的两个头文件分别为:官方文档使用串口需要包含的库文件 一般来讲qt串口通信需要经过7步: 1、设置串口名(如COM1):serial = new QSerialPort; serial->setPortName(ui->PortBox-&
目录1、前言免责声明2、RIFFA理论基础3、设计思路和架构4、vivado工程详解5、上板调试验证并演示6、福利:工程代码的获取 1、前言PCIE是目前速率很高的外部板卡与CPU通信的方案之一,广泛应用于电脑主板与外部板卡的通讯,PCIE协议极其复杂,想要掌握不容易,所以Xilinx和Altera等FPGA厂商直接推出了相关IP供用户使用,比如Xilinx的XDMA,这种IP直接集成了PCIE
转载 2023-10-12 17:33:10
2172阅读
1点赞
目标: 通过自定义通信协议,达到以串口发送指令,使STM32单片机能够根据指令控制继电器的通断时间,从而方便开关机的实验。上位的使用方法: 自定义通信协议( ee 00 12 04 ff) ee:帧数据的头部 00 12:十六进制数 --》十进制为18 则代表导通时间为18s 04:继电器的断开时间十进制为4 则代表为断开时间为4s ff:帧的尾部 注意: 在输入数据时,输入ee的头部不能出现空
前言:最近在学习嵌入式qt开发,然后跟着教程编写了一个简单的串口上位程序,在编写的时候还算比较顺利,但在调试的时候花了点功夫,折腾了一下午。最后还是理清了思路,解决了问题,特写此博客进行记录和总结。串口上位机界面设计:整个软件的界面我都是用ui来设计的,其实也可以用代码,但是想了想有好多布局相互嵌套比较麻烦。最后就使用了ui界面来设计。 ui界面设计串口上位程序功能设计:然后像
## Python Qt TCP 上位 在工业自动化领域,上位是指控制工控设备的计算机程序。通过上位,我们可以监控和控制工控设备的运行状态。在本文中,我们将介绍如何使用Python和Qt创建一个基于TCP协议的上位程序。 ### TCP/IP协议 TCP(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它在网络通信中被
原创 2024-04-15 03:35:47
101阅读
# Qt上位开发架构 在工业控制领域,上位是指与下位(如PLC、单片等)进行通信并实现监控、控制功能的软件系统。Qt是一个跨平台的C++图形用户界面应用程序开发框架,具有丰富的库和工具,适用于各种上位开发场景。本文将介绍Qt上位开发的架构以及代码示例。 ## 架构概述 一个典型的Qt上位开发架构包括以下几个部分: 1. **界面设计**:使用Qt的设计器工具设计界面,包括监控
原创 2024-02-27 05:05:59
1278阅读
实现Python Qt USB上位的流程如下: | 步骤 | 动作 | 代码 | |---|---|---| | 1 | 导入必要的库和模块 | `import sys``from PyQt5.QtWidgets import QApplication, QMainWindow``from PyQt5.QtSerialPort import QSerialPort` | | 2 | 创建应用程
原创 2024-02-02 03:55:41
289阅读
Python是一种广泛应用的编程语言,而Qt是一个跨平台的应用程序和用户界面框架。在本文中,我们将介绍如何使用Python和Qt创建一个基于TCP的上位应用程序。 ## 1. 创建TCP连接 首先,我们需要创建一个TCP连接,以便与下位进行通信。我们可以使用Python中的socket模块来实现这一功能。以下是一个简单的例子: ```python import socket HOST
原创 2024-04-04 03:18:29
242阅读
接着嵌入式QT上位开发之串口助手(上)来完善一下串口助手的功能,上一篇博客已经实现了自动获取的功能了。首先要在头文件里面包含一下头文件,再定义一个QSerialPort类型的参数;其次打开widget.cpp文件,在这个文件里面也要定义一个QSerialPort类型的参数。 修改完成之后,编译运行一下,看是否有报错,无报错,继续接着操作串口。第一步:对串口进行初始化 串口的初始化是在“打开”串口
前言上两周利用周末的时间,分别写了基于uFUN开发板的心率计(一)DMA方式获取传感器数据和基于uFUN开发板的心率计(二)动态阈值算法获取心率值,介绍了AD采集传感器数据和数据的滤波处理获取心率值。这篇文章主要是介绍Qt上位如何实现波形的显示,串口数据的解析,以及一些小细节实现。这篇文章写完,uFUN心率计这个小项目就算结束了,最近又做了个uFUN开发板的扩展板,在群里的朋友都已经看到了,
1.Qt串口类的选择最近在做一个小项目,需要用到Qt上位软件,本人也是边学边做,买了本《QtCreator快速入门》看了看就动手了,由于初学不是很了解Qt5的官方资源,一开始串口开发使用的是第三方串口类QExtSerialPort,但是后来发现这个第三方串口类似乎不提供串口信息的查询,就果断放弃了。 同时也发现Qt5本身是提供串口类的,所以就用了官方资源,官方的串口类是提供串口信息查询,也就可
学编程也有将近两年的时间了,终于有机会接触到编程实际的项目。这次项目的目的是设计一个上位机界面,界面中包含串口通讯,TCP通讯,网口相机的通讯,数据库的处理,界面的整理,等等。可以算得上是对我以往学习的一个总结,我原本的目的也是将三年所学全都编写进入这个程序之中,对了,程序之中还包括图像处理,需要调用opencv库,Halcon库,进行一些简单的图像处理工作,下面记录一下,我如何开始进行上位机界面
qt系列之一个简单上位 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录qt系列之一个简单上位前言一、实现简单读取数据二、使用步骤1.项目文件,在里面增加一个serialport2.头文件,写函数声明3.类中函数的实现4.主函数,生成可执行文件5.ui文件,注意:ui文件不可修改总结 前言提示:这里可以添
第二章 QT从零开始作单片机上位-串口调试助手+波形显示目录第二章 QT从零开始作单片机上位-串口调试助手+波形显示-设计QT串口助手界面,添加主窗口控件1、开始QT串口调试助手界面设计:2、从左侧找到所需使用的控件,拖动置主界面;3、几点布局上的技巧:多个TextLabel ,多个Combo Box 怎么均匀整齐排列?4、将所有控件布局基本确定之后,开始修改所有的控件属性值,方便管理、查找、
# QT开发上位插件架构科普文章 随着工业自动化和物联网的发展,上位系统在数据监控与控制中扮演着越来越重要的角色。在众多的开发工具中,Qt被广泛应用于上位软件的开发,其强大的图形界面、跨平台的特性,使得开发者能够高效地构建复杂的用户界面及其功能。本文将探讨Qt的插件架构,并提供示例代码,以帮助读者理解如何在Qt中实现插件功能。 ## 插件架构概述 在Qt中,插件架构允许开发者将应用程序
原创 10月前
213阅读
# QT上位软件架构设计 在工业自动化和嵌入式系统日益普及的今天,QT作为一种强大的跨平台开发框架,越来越多地应用于上位软件的开发。上位软件主要用于监控和控制被控系统,通常与各种硬件设备进行交互。本文将深入探讨QT上位软件的架构设计,帮助读者了解如何构建一款高效、灵活的上位软件。 ## 一、QT上位软件架构概述 QT上位软件通常采取层次化的架构设计,主要包括以下几层: 1.
原创 7月前
436阅读
1点赞
工作上自己自学的Qt开发的一个较为简单,但是使用了常用方法的上位,当时苦于找不到相应的demo来学习,所以现在开源整个项目,下面直接上代码,不懂的可以直接私信。mainwindow.h:#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QtCharts> #include
转载 1月前
415阅读
  • 1
  • 2
  • 3
  • 4
  • 5