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

基于Qt5开发图形界面——WiringPi调用Linux单板电脑IO

Qt5——WiringPi

  • Qt5
  • WiringPi
  • 示例
  • 教程

Qt5

https://doc.qt.io/qt-5/classes.html
Qt是一种跨平台的应用程序开发框架。它被广泛应用于图形用户界面(GUI)开发,可以用于构建桌面应用程序、移动应用程序和嵌入式应用程序。Qt提供了丰富的功能和工具,使开发人员可以快速、高效地构建各种类型的应用程序。

下面是一些Qt的主要特点和优势:

  1. 跨平台性:Qt可以在多个操作系统上运行,包括Windows、MacOS、Linux和嵌入式系统等。这意味着可以使用相同的代码库开发应用程序,并在不同平台上部署和运行。

  2. 强大的图形用户界面:Qt提供了一套丰富的UI控件和布局管理器,使开发人员可以轻松创建各种各样的用户界面。它还支持自定义样式和主题,以满足不同应用程序的设计需求。

  3. 多语言支持:Qt支持多种编程语言,包括C++、Python、JavaScript和QML。可以根据自己的喜好和项目需求选择适合的编程语言。

  4. 数据库集成:Qt提供了对各种数据库的支持,包括SQLite、MySQL和PostgreSQL等。这使得开发人员可以轻松地将应用程序与后端。

Qt 5.15 https://doc.qt.io/qt-5/classes.html

WiringPi

在这里插入图片描述

WiringPi是一套用于树莓派(Raspberry Pi)的C编程库,它提供了方便使用GPIO(通用输入/输出)的函数和工具。GPIO是连接树莓派与其他电子设备的接口,可以用于读取传感器的数据、控制LED灯、操作电机等等。

WiringPi库使得在树莓派上进行GPIO编程变得更加简单和方便。它包含了一系列函数,可以直接通过编程来配置和控制GPIO引脚的状态,比如设置引脚为输入或输出模式,读取或写入引脚的电平状态,以及注册中断等。

此外,WiringPi还提供了一些实用工具,比如gpio命令行程序,可以通过命令行方式来控制GPIO引脚的状态,而无需编写代码。这对于快速测试和调试GPIO功能非常有帮助。

总之,WiringPi是一个强大而实用的C编程库,为树莓派提供了简单、灵活和可靠的接口,使得GPIO编程变得更加容易。
某个人博客总结文档 https://www.cnblogs.com/lulipro/p/5992172.html
WiringPi2 https://www.rubydoc.info/gems/wiringpi2/2.0.1/WiringPi/GPIO

示例

pushButton点灯
在这里插入图片描述

LIBS += -lwiringPi

头文件添加
#include "wiringPi"

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);wiringPiSetup();pinMode(2,OUTPUT);
}Widget::~Widget()
{delete ui;
}void Widget::on_pushButton_clicked()
{static char io = 0;if(io == 0){digitalWrite(2,HIGH);io = 1;ui->pushButton->setText("关灯");}else{digitalWrite(2,LOW);io = 0;ui->pushButton->setText("开灯");}
}

教程

【速学Linux】手把手教你学嵌入式Linux Qt5(C++)开发

相关文章:

基于Qt5开发图形界面——WiringPi调用Linux单板电脑IO

Qt5——WiringPi Qt5WiringPi示例教程 Qt5 Qt是一种跨平台的应用程序开发框架。它被广泛应用于图形用户界面(GUI)开发,可以用于构建桌面应用程序、移动应用程序和嵌入式应用程序。Qt提供了丰富的功能和工具,使开发人员可以快速、高…...

【MySQL】组合查询

目录 一、组合查询 1.创建组合查询 2.union规则 3.包含或取消重复的行 4.对组合查询结果排序 一、组合查询 多数SQL查询都只包含从一个或多个表中返回数据的单条SELECT语句。MySQL也允许执行多个查询(多条SELECT语句),并将结果作为单个查…...

ChatGPT:引领人机交互的未来

前言 在信息技术飞速发展的时代,人机交互的方式也在不断演进。技术对人们生活和工作的影响。本文将带您深入探讨一款引领人机交互未来的人工智能模型——ChatGPT。 ChatGPT简介 ChatGPT 是一种由开放AI(OpenAI)开发的人工智能模型&#xf…...

【算法】经典的八大排序算法

点击链接 可视化排序 动态演示各个排序算法来加深理解,大致如下 一,冒泡排序(Bubble Sort) 原理 冒泡排序(Bubble Sort)是一种简单的排序算法,它通过多次比较和交换相邻元素的方式,将…...

防溺水预警识别系统算法

防溺水预警识别系统旨在通过opencvpython网络模型深度学习算法,防溺水预警识别系统算法实时监测河道环境,对学生等违规下水游泳等危险行为进行预警和提醒。Python是一种由Guido van Rossum开发的通用编程语言,它很快就变得非常流行&#xff0…...

Redis 的整合 Jedis 使用

大家好 , 我是苏麟 , 今天带来 Jedis 的使用 . Jedis的官网地址&#xff1a; GitHub - redis/jedis: Redis Java client 引入依赖 <!--jedis--> <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version…...

Mainline Linux 和 U-Boot编译

By Toradex胡珊逢 Toradex 自从 Linux BSP v6 开始在使用 32位处理器的 Arm 模块如 iMX6、iMX6ULL、iMX7 上提供 mainline/upstream kernel &#xff0c;部分 64位处理器模块如 Verdin iMX8M Mini/Plus 也提供实验性支持。文章将以季度发布版本 Linux BSP V6.3.0 为例介绍如何下…...

Mycat教程+面试+linux搭建

目录 一 MyCAT介绍 二 常见的面试题总结 三 linux下搭建Mycat 一 MyCAT介绍 1.1. 什么是MyCAT&#xff1f; 简单的说&#xff0c;MyCAT就是&#xff1a; 一个彻底开源的&#xff0c;面向企业应用开发的“大数据库集群” 支持事务、ACID、可以替代Mysql的加强版数据库 一个可…...

基于工作过程的高职计算机网络技术专业课程体系构建策略

行业人才需求分析高职教育是面向地方行业培养技能型、应用型人才&#xff0c;因此&#xff0c; 在课程体系的构建上要走社会调研、构建岗位群、构建专业模块及课程设置“四步 曲”。即通过社会行业需求调查研究&#xff0c;构建岗位群&#xff0c;设置相应的专业模块&#xf…...

(笔记四)利用opencv识别标记视频中的目标

预操作&#xff1a; 通过cv2将视频的某一帧图片转为HSV模式&#xff0c;并通过鼠标获取对应区域目标的HSV值&#xff0c;用于后续的目标识别阈值区间的选取 img cv.imread(r"D:\data\123.png") img cv.cvtColor(img, cv.COLOR_BGR2HSV) plt.figure(1), plt.imshow…...

一、计算机硬件选购

计算机硬件选购 一、设备选购1.1 I/O设备1.2 机箱1.3 主板1.3.1 主板芯片组的命名方式1.3.2 主板版型1.3.3 Z790-a(DDR5)主板参数 1.4 CPU1.5 硬盘1.6 显卡1.7 内存条1.8 散热器&#xff08;水冷&#xff09;1.9 电源、风扇、网线、插线板1.9.1 电源1.9.2 风扇1.9.3 网线1.9.4 …...

Dockerfile制作LAMP环境镜像

文章目录 使用Dockerfile制作LAMP环境镜像编写Dockerfile不修改默认页面修改默认页面 Start Script目录结构及文件登录私有仓库给镜像打标签上传镜像页面检查检测镜像可用性 使用Dockerfile制作LAMP环境镜像 编写Dockerfile 不修改默认页面 FROM centos:7 MAINTAINER "…...

暴力递归转动态规划(二)

上一篇已经简单的介绍了暴力递归如何转动态规划&#xff0c;如果在暴力递归的过程中发现子过程中有重复解的情况&#xff0c;则证明这个暴力递归可以转化成动态规划。 这篇帖子会继续暴力递归转化动态规划的练习&#xff0c;这道题有点难度。 题目 给定一个整型数组arr[]&…...

debian apt error: Package ‘xxx‘ has no installation candidate

新的debian虚拟机可能会出现这个问题。 修改apt的source.list&#xff0c;位于/etc/apt/source.list&#xff0c;添加两行&#xff1a; deb http://deb.debian.org/debian bullseye main deb-src http://deb.debian.org/debian bullseye main执行&#xff1a; sudo apt-get u…...

c#设计模式-结构型模式 之 外观模式

概述 外观模式&#xff08;Facade Pattern&#xff09;又名门面模式&#xff0c;隐藏系统的复杂性&#xff0c;并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式&#xff0c;它向现有的系统添加一个接口&#xff0c;来隐藏系统的复杂性。该模式…...

Focal Loss-解决样本标签分布不平衡问题

文章目录 背景交叉熵损失函数平衡交叉熵函数 Focal Loss损失函数Focal Loss vs Balanced Cross EntropyWhy does Focal Loss work? 针对VidHOI数据集Reference 背景 Focal Loss由何凯明提出&#xff0c;最初用于图像领域解决数据不平衡造成的模型性能问题。 交叉熵损失函数 …...

运算符(个人学习笔记黑马学习)

算数运算符 加减乘除 #include <iostream> using namespace std;int main() {int a1 10;int a2 20;cout << a1 a2 << endl;cout << a1 - a2 << endl;cout << a1 * a2 << endl;cout << a1 / a2 << endl;/*double a3 …...

开源与专有软件:比较与对比

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…...

openResty+lua+redis实现接口访问频率限制

openResty简介&#xff1a; OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台&#xff0c;其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。 OpenResty 通过汇聚各种设…...

自动化测试(三):接口自动化pytest测试框架

文章目录 1. 接口自动化的实现2. 知识要点及实践2.1 requests.post传递的参数本质2.2 pytest单元测试框架2.2.1 pytest框架简介2.2.2 pytest装饰器2.2.3 断言、allure测试报告2.2.4 接口关联、封装改进YAML动态传参&#xff08;热加载&#xff09; 2.3 pytest接口封装&#xff…...

用HFSS仿真一个简单的波导:不只是S参数,教你如何动态可视化电场分布(Animate功能详解)

HFSS波导仿真进阶&#xff1a;从S参数到电场动态可视化的深度解析 1. 理解波导仿真中的场可视化价值 在微波工程领域&#xff0c;仿真工具的价值不仅在于获取S参数这样的量化指标&#xff0c;更在于揭示电磁场在结构中的真实分布与动态行为。HFSS作为行业标准的全波电磁仿真软件…...

Web安全入门避坑指南:用Pikachu靶场搞懂文件上传的3种Check方式(前端、MIME、getimagesize)

Web安全实战&#xff1a;Pikachu靶场文件上传漏洞攻防全解析 当你第一次接触Web安全时&#xff0c;文件上传功能可能是最令人兴奋又最危险的漏洞之一。想象一下&#xff0c;攻击者仅通过一个看似无害的上传表单就能完全控制你的服务器——这不是电影情节&#xff0c;而是每天都…...

Adobe-GenP 3.0:解锁Adobe全家桶功能的5分钟终极指南 [特殊字符]

Adobe-GenP 3.0&#xff1a;解锁Adobe全家桶功能的5分钟终极指南 &#x1f680; 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP Adobe-GenP 3.0是一款强大的Adobe C…...

从提示词到技能笔记:构建可复用AI工作流的核心方法

1. 项目概述&#xff1a;从“提示词”到“技能笔记”的认知跃迁最近在折腾AI应用开发的朋友&#xff0c;估计没少被“提示词工程”这个词刷屏。从最初的简单指令&#xff0c;到如今动辄上千字的复杂结构化提示&#xff0c;我们与AI的交互方式正在经历一场深刻的变革。但不知道你…...

Adobe GenP 3.0终极指南:3步解锁全系列Adobe CC软件

Adobe GenP 3.0终极指南&#xff1a;3步解锁全系列Adobe CC软件 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP 还在为Adobe Creative Cloud高昂的订阅费用而烦恼吗…...

避开这些坑!RT-Thread+lwip网卡驱动开发中的5个常见误区与实战解法

RT-Thread与lwIP网卡驱动开发中的五大性能陷阱与实战突围 在嵌入式网络开发领域&#xff0c;RT-Thread与lwIP的组合已经成为许多开发者的首选方案。然而&#xff0c;这套看似成熟的网络协议栈背后&#xff0c;却隐藏着诸多性能陷阱。本文将揭示五个最常见的开发误区&#xff0c…...

告别选择困难!3款宝藏听书软件实测分享

在快节奏的生活里&#xff0c;“听书”早已成为千万人获取知识、放松身心的首选方式。无论是通勤路上、做家务时&#xff0c;还是睡前片刻&#xff0c;一副耳机就能打开一个世界。然而&#xff0c;市面上的听书软件琳琅满目&#xff0c;功能参差不齐——有的资源不全&#xff0…...

误删微信记录恢复|官方渠道超稳妥

微信聊天记录误删了&#xff0c;第一反应是不是慌了&#xff1f; 家人朋友的聊天记录找不到了。 工作群里的文件、语音、图片突然消失。 甚至只是手滑点了一下“删除聊天”&#xff0c;结果整段记录都不见了。很多人遇到这种情况&#xff0c;第一时间会去网上搜索&#xff1a; …...

APDS9999三合一传感器实战:从硬件解析到代码应用

1. 项目概述&#xff1a;为什么选择APDS9999这款三合一传感器&#xff1f;在嵌入式项目里&#xff0c;传感器选型常常是个让人头疼的问题。你想做个能根据环境光自动调节亮度的智能灯&#xff0c;需要一个光照传感器&#xff1b;想做个检测物体靠近的感应装置&#xff0c;需要一…...

如何用WeChatExporter一键备份微信聊天记录:完整图文教程

如何用WeChatExporter一键备份微信聊天记录&#xff1a;完整图文教程 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 你是否担心换手机后珍贵的微信聊天记录会消失&#…...