![](https://img-blog.csdnimg.cn/38917822b63e4c7889502dc4eb69434c.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
QT开发学习笔记
文章平均质量分 78
人到万难须放胆,事当两可要平心。
普通网友
这个作者很懒,什么都没留下…
展开
-
QT学习笔记( APP 主界面开发项目\滑动界面的设计)
下 26.1 小节滑动界面的使用,然后自己写一个只带一两个按钮的界面自已经测试一下效果滑动。原创的一个作品,可以方便大家移植到需要写 APP 主界面的程序里。一个好看的车载音乐主界面(只有界面,非功能的实现,笔者模仿网上的车载界面,用 Qt 实现。的),读者可以参考源代码来开发自己的界面。它能控制那种带滚动条的类的界面的滑动。件可以方便的切换页面,但是这种切换页面的方法比较生硬,不能像手机一样滑动,往往这种。验自己写一个滑动界面的类,可以很方便的增加页面,能跟随页面的大小变化而变化,是笔者。原创 2023-04-09 18:19:41 · 1191 阅读 · 0 评论 -
QT开发笔记(语音识别项目I.MX6U运行测试)
点击中间的图标后,注意,请在点击 1.5~2s 后再说话,点击时有音效提醒,避免把音效录。在正点原子 I.MX6U 开发板上运行此录音程序,需要先配置是麦克风(板子上的麦头)。再点击,再次进行语音识别,话语中,包含“开灯”,那么即可点亮板子上的 LED。识别返回结果的过程很快,识别率也挺高,如下图,笔者说了一句“正点原子”,语音识别。后,再次进行语音识别,话语中包含“关灯”,即可熄灭板子上的 LED。请使用正点原子的 I.MX6U 的出厂时的系统测试!请使用正点原子的 I.MX6U 的出厂时的系统测试!原创 2023-04-09 18:15:43 · 234 阅读 · 0 评论 -
QT开发笔记(语音界面 UI 开发 )
项目路径为 4/02_asr_demo/02_asr_demo/02_asr_demo.pro,先看项目界面。项目界面如下,界面简洁大气,界面中间用了一个立体的素材,点击后可以旋转,给人一种智能化的感觉,点击时还会有音效提示,文本提示“请点击,开始说话…”,点击后,提示“正在听您说话,请继续…”,录制 8s 左右的音频,等待返回识别结果即可。编写设计完成的效果不错!请自行查阅源码,掌握了本教程前面第七章的内容,就可以理解这个界面是如何设计的。原创 2023-04-08 21:16:37 · 799 阅读 · 0 评论 -
QT学习笔记(录制 wav 音频 )
stopRecorder()的接口,录音保存的文件为可执行程序当前路径下的 16k.wav 文件。第 114 行,设置文件容器/格式,为 audio/x-wav 格式(项的下标为 20)。在 12.5 小节,已经介绍过开发板如何录制音频文件了,详细请看 12.5 小节,就不详细介绍。wav 格式,通道为单声道,采样率为 16000,源码如下,已用红色字体标出。第 104 行,设置为下标为 2 的项,也就是 16000 采样率。第 106 行,设置通道数下标为 1 的项,也就是单通道。wav 后缀的文件。原创 2023-04-08 21:13:11 · 925 阅读 · 1 评论 -
QT学习笔记(语音识别项目 )
在百度 AI 帮助文档里可以看见如下重要信息。请认真阅读调用流程,了解操作过程,对下面理解笔者编写 Qt 调用百度语音 API 的例子会有一定的帮助。总结:调用流程需要仔细阅读,百度提供了示例 Demo 代码,可以看到里面支持很多种编程语言编写的 API 请求相关示例 demo 代码。没有直接 C++相关的代码。C 语言是 C++语言的子集,我们可以直接参考 C 语言编写的例子(请自行查阅及参考百度提供的 C 语言编写的 API。原创 2023-04-08 21:08:22 · 1395 阅读 · 0 评论 -
QT学习笔记(智能家居物联网项目实验2)
打开 4/01_smarthome/01_smarthome/01_smarthome.pro 项目,此项目为智能家居物联网 UI界面控制端。打开 4/01_smarthome/esp8266/esp8266.pro 项目,此项目设备端(被控端)。打开上面两个项目如下。项目文件夹下内容解释:01_smarthome 项目下: webapi 文件夹为原子云平台的应用程序,主要用来与原子云通信。 Headers 文件夹为界面设计的头文件。 Sources 文件夹为界面设计的源文件。原创 2023-04-06 19:33:07 · 970 阅读 · 0 评论 -
QT学习开发笔记(项目实战之智能家居物联 UI 界面开发 )
项目路径为 4/01_smarthome/01_smarthome/01_smarthome.pro,先看项目界面。项目界面如下,采用暗黑主题设计,结合黄色作为亮色,让用户一目了然。界面笔者从一些智能家居界面中找到灵感的,编写设计完成的效果不错!请自行查阅源码,掌握了本教程前面第七章的内容,就可以理解这个界面是如何设计的。原创 2023-04-05 20:39:21 · 1993 阅读 · 0 评论 -
QT学习开发笔记(项目实战之智能家居物联网项目1 )
本章介绍使用 Qt 开发智能家居中的一个物联应用。简单直白的说就是通过云服务器远程控制设备(与设备通信等)。本章可以直接做毕设,是毕设物联网项目的一大福音!本章将实现远程点亮开发板 LED 作为一个项目实例。在生活中,我们可能使用过 WIFI 智能插座这款产品。智能家居中常用来控制电器开关。比如远程开热水器,远程打开空调,窗帘等等。这些 WIFI 智能插座的原理就是将 WIFI 插座注册到云服务器上,然后通过手机的 APP 来访问云服务器,然后控制 WIFI 插座。嗯,原理我们懂了。原创 2023-04-05 20:35:24 · 4484 阅读 · 1 评论 -
QT开发学习笔记(ICM20608 之应用接口)
本实验提供 ICM20608 的 Qt 访问出厂系统 ICM20608 驱动设备文件/dev/icm20608 的接口。接口类 Icm20608 根据【正点原子】I.MX6U 嵌入式 Linux 驱动开发指南 V1.x.pdf 第六十二章。Linux SPI 驱动实验编写,想要理解原理请看【正点原子】I.MX6U 嵌入式 Linux 驱动开发指南,对于 Qt 访问底层驱动接口,我们需要对驱动有一点了解,否则。学习起来是比较难的!“icm20608.h”,头文件如下。“icm20608.h”,源文件如下。原创 2023-04-01 22:11:06 · 159 阅读 · 0 评论 -
QT学习开发笔记( ICM20608 )
在正点原子 I.MX6ULL ALPHA 开发板底板上有一个 6 轴 MEMS 传感器,也就是在底板上晶振旁边的传感器,采用的是 spi 接口。(注意:I.MX6ULL MINI 开发板没有这个传器)。下图为 I.MX6ULL ALPHA 开发板的 6 轴 MEMS 传感器原理图。开发板底板实物图。原创 2023-04-01 22:08:30 · 159 阅读 · 0 评论 -
QT开发笔记(AP3216C )
在正点原子 I.MX6ULL ALPHA 开发板底板上有一个三合一环境传感器,也就是在拔码开关旁边的传感器,采用的是 I2C 接口。(注意:I.MX6ULL MINI 开发板没有这个传感器)。下图为 I.MX6ULL ALPHA 开发板的三合一环境传感器原理图。开发板实物图位置。原创 2023-03-31 20:38:28 · 1003 阅读 · 0 评论 -
QT开发笔记(USER-KEY)
在正点原子的 I.MX6U 开发板,ALPHA 和 MINI Linux 开发板板载资源上有一个按键。如下图原理图(下图为 ALPHA 开发板的 KEY0 按键原理图)。原创 2023-03-31 20:29:32 · 435 阅读 · 0 评论 -
QT开发笔记(USB Bluetooth)
Qt 官方提供了蓝牙的相关类和 API 函数,也提供了相关的例程给我们参考。笔者根据 Qt官方的例程编写出适合我们 Ubuntu 和正点原子 I.MX6U 开发板的例程。注意 Windows 上不能使用 Qt 的蓝牙例程,因为底层需要有 BlueZ 协议栈,而 Windows 没有。Windows 可能需要去移植。笔者就不去探究了。确保我们正点原子 I.MX6U 开发板与 Ubuntu 可用即可,所以大家还是老实的用 Ubuntu 来开发吧!资源简介。原创 2023-03-30 22:02:39 · 1060 阅读 · 0 评论 -
QT开发笔记(Camera)
正点原子 I.MX6U 开发板底板上有一路“CSI”摄像头接口。支持正点原子的 OV5640、OV2640 和 OV7725(不带 FIFO)。同时有 USB 接口,可以接 USB 免驱摄像头。例程兼容 USB摄像头与正点原子的 OV5640、OV2640 和 OV7725 摄像头。出厂系统请更新到正点原子 I.MX6U 最新的出厂系统,在驱动层正点原子对 OV5640、OV2640 和 OV7725 摄像头维护、优化或者添加支持。原创 2023-03-30 21:52:20 · 2180 阅读 · 0 评论 -
QT开发笔记(CAN Bus)
正点原子 I.MX6U 开发板底板上预留了一路 CAN 接口(6U 芯片最大支持两路)。如下图。在正点原子【正点原子】I.MX6U 用户快速体验 V1.x.pdf 里也有相关的 CAN 测试方法。这里就不多介绍 CAN 了,笔者默认读者是会使用 CAN 的。同时不对 CAN 总线协议进行讲解,主要是讲解如何在 Qt 里对 CAN 编程。原创 2023-03-29 20:11:54 · 3377 阅读 · 2 评论 -
QT开发笔记(Serial Port )
在正点原子的 I.MX6U 开发板的出厂系统里,默认已经配置了两路串口可用。一路是调试串口UART1(对应系统里的节点/dev/ttymxc0),另一路是UART3(对应系统里的节点/dev/ttymxc2)。由于 UART1 已经作为调试串口被使用。所以我们只能对 UART3 编程,(如需要使用多路串口,请自行设计底板与系统)。原创 2023-03-29 20:05:36 · 590 阅读 · 0 评论 -
QT开发学习笔记(Qt 控制 BEEP)
在正点原子的 I.MX6U 开发板,ALPHA 和 MINI Linux 开发板板载资源上有一个蜂鸣器(BEEP)。如下图原理图。此蜂鸣器直接接在一个 GPIO 上,并不是接在 PWM 上,管脚资源限制。所以我们的操作与上一小节是一样的(下图为 ALPHA 开发板的 BEEP 原理图)。原创 2023-03-26 15:09:05 · 1185 阅读 · 0 评论 -
QT学习笔记(实战之Qt 控制 LED)
在正点原子的 I.MX6U 开发板,ALPHA 和 MINI Linux 开发板板载资源上有一个 LED。如下图原理图(下图为 ALPHA 开发板的 LED 原理图)。原创 2023-03-26 15:04:33 · 1342 阅读 · 0 评论 -
QT开发笔记(I.MX6U QT开发)
本章开始写与正点原子 I.MX6U 板子相关的实例。所有例子都是基于正点原子 I.MX6U 的出厂系统上进行。请不要使用其他系统或者自己开发的内核设备树等!否则可能驱动与应用对应不上没法操作硬件设备。本章适用于正点原子 ALPHA 或者 MINI 开发板。搭建 I.MX6U 的 Qt 开发环境,正点原子已经早有相关文档,写的很详细。请大家先熟悉正点原子 I.MX6U 的 Qt 开发环境。交叉编译 Qt 应用程序有两种方法。一种是直接在终端使用命令行编译 Qt 项目。原创 2023-03-24 22:06:05 · 653 阅读 · 0 评论 -
QT开发学习笔记(数据库表格)
本小节设计一个生活中的例子,使用数据库修改/查询员工的编号、姓名、年龄、性别与照片信息。本例将数据库的内容显示到 QTableView 上。如果只是简单的显示数据库的内容到QTableView 上,可以使用下面的方法,此方法 QTableView 上可以看到员工的编号、姓名、年龄、性别信息,同时可以双击表格进行项修改,修改完成将自动保存到数据库里。上面的程序可以修改数据库的内容也可以查看。但是看不到员工的照片信息。本例就讲解。原创 2023-03-24 22:05:45 · 1714 阅读 · 0 评论 -
QT学习开发笔记(数据库之实用时钟)
Qt SQL 模块为数据库提供了编程支持,Qt 支持很多种常见的数据库,如 MySQL、Oracle、MS SQL Server、SQLite 等。Qt SQL 模块里包含了很多个类,可以轻松实现数据库的连接、执行 SQL 语句,获取数据库里的数据与界面显示等功能,一般数据与界面之间会采用 Model/View架构,从而很方便的显示数据界面和操作数据库。在嵌入式里,一般常用的数据库就是 Sqlite3。SQLite 是非常小的,是轻量级的,完全配置。原创 2023-03-23 08:24:35 · 733 阅读 · 0 评论 -
QT开发笔记(多媒体实战之录音)
保存为一个音频文件。而 QAudioInput 则是低层次的实现,从类的名称可以知道它是与输入输出流有关的,它可以将音频录制的数据写入一个流设备。设置完成录音项后,使用 QAudioRecorder 的 record()、pause()和 stop()函数即可完成录音。Qt 官方的 audiorecorder 例程,使用默认的设置,也就是 Default 项,Qt 自动选择系统音频输入。如果是 Line_in 的方式录音,请使用一条 3.5mm 的两头公头的音频线,一头对板子上 Line_in。原创 2023-03-23 08:14:01 · 1181 阅读 · 0 评论 -
QT开发笔记(多媒体实例之视频播放器)
与音乐播放器一样使用 QMediaPlayer 类,不同的是需要使用 setVideoOutput(QVideoWidget*)设置一个视频输出窗口,好让视频在此窗口显示,其他步骤基本都一样。原创 2023-03-22 08:14:07 · 1368 阅读 · 2 评论 -
QT开发笔记(多媒体)
Qt 从 4.4 版本开始提供的一套多媒体框架,提供多媒体回放的功能。在 Qt 4.6 中实现多媒体播放图形界面主要依赖 phonon 框架。phonon 最初是 一个 源于 KDE 的项目,为使用音频和视频的应用程序开发提供的一个框架。应用程序不用去管多媒体播放是通过什么实现的(如gstreamer、xine),只需调用相应的接口就行,但这中间需要一个中转,被称为 backend。Qt 也是通过 phonon 来实现跨平台的多媒体播放。原创 2023-03-22 08:06:31 · 1139 阅读 · 0 评论 -
QT开发学习笔记(网络下载实例 )
Qt 网 络 模 块 还 提 供 了 直 接 访 问 如 HTTP , FTP 等 网 络 协 议 的 类 , 这 些 类 是QNetworkAccessManager、QNetworkRequest 和 QNetworkReply。通常需要这三个类协作才能完成一个网络操作。可以用于从网络获取时间,天气和图片等等数据。比如本例需要下载一张图片,大概流程如下。由 QNetworkRequest 类设置一个 URL 地址发起网络协议请求,QNetworkRequest 类保存要。原创 2023-03-21 06:58:17 · 446 阅读 · 0 评论 -
QT学习开发笔记(UDP通信)
UDP(User Datagram Protocol 即用户数据报协议)是一个轻量级的,不可靠的,面向数据报的无连接协议。我们日常生活中使用的 QQ,其聊天时的文字内容是使用 UDP 协议进行消息发送的。因为 QQ 有很多用户,发送的大部分都是短消息,要求能及时响应,并且对安全性要求不是很高的情况下使用 UDP 协议。但是 QQ 也并不是完全使用 UDP 协议,比如我们在传输文件时就会选择 TCP 协议,保证文件正确传输。像 QQ 语音和 QQ 视频通话,UDP 的优势就很突出了。原创 2023-03-21 06:55:08 · 1303 阅读 · 0 评论 -
QT学习笔记(TCP 通信)
TCP 协议(Transmission Control Protocol)全称是传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP 通信必须先建立 TCP 连接,通信端分为客户端和服务端。服务端通过监听某个端口来监听是否有客户端连接到来,如果有连接到来,则建立新的 socket 连接;客户端通过 ip 和port 连接服务端,当成功建立连接之后,就可进行数据的收发了。需要注意的是,在 Qt 中,原创 2023-03-20 20:59:10 · 531 阅读 · 0 评论 -
QT学习笔记(QT网络编程)
Qt 网络模块为我们提供了编写 TCP / IP 客户端和服务器的类。它提供了较低级别的类,例如代表低级网络概念的 QTcpSocket,QTcpServer 和 QUdpSocket,以及诸如 QNetworkRequest,和之类的高级类来执行使用通用协议的网络操作。它还提供了诸如QNetworkConfiguration,QNetworkConfigurationManager和QNetworkSession等类,实现承载管理。原创 2023-03-20 20:53:37 · 433 阅读 · 0 评论 -
QT开发笔记(继承 QObject 的线程 )
例 06_qthread_example2,继承 QObject类的线程(难度:一般)。我们可以添加一个 bool变量,通过主线程修改这个 bool变量来终止,但是有可能引起访问冲突,所以需要加锁,例程里可能体现不是那么明确,当我们有 doWork1(),doWork2…下面的例子是仿照 Qt官方写的,看似简单,但是流程大家可能不是很明白,所以画个了大体的流程图,给大伙瞧瞧。QObject 类。通过上面的图不难理解,首先我们写一个类继承 QObject,通过 QObject::moveToThread()原创 2023-03-19 19:24:24 · 553 阅读 · 0 评论 -
QT多线程的实现
的 run()函数,另外一种是把一个继承于 QObject 的类转移到一个 Thread 里。用继承 QThread 的 run()这种方法,但是 Qt4.8 之后,Qt 官方建议使用第二种方法。run()方法是继承于 QThread 类的方法,用户需要重写这个方法,一般是。官方文档里说,QThread 类提供了一种独立于平台的方法来管理线程。在第十章的章节开头说过了,继承 QThread 是创建线程的一个普通方法。通过上面的图我们可以看到,主线程内有很多方法在主线程内,但是子线程,只有 run()原创 2023-03-19 19:21:25 · 399 阅读 · 0 评论 -
QT笔记(信号与槽)
connect() 是 QObject 类的一个静态函数,而 QObject 是所有 Qt 类的基类,在实际调用。数,需要带括号,有参数时还需要指明参数。receiver 是接收信号的对象名称,slot() 是槽函数。其中,sender 是发射信号的对象的名称,signal() 是信号名称。信号可以看做是特殊的函。信号与槽的连接方法使用connect函数连接。的名称,需要带括号,有参数时还需要指明参数。槽:对应信号事件发生时,对应去处理的方法。原创 2023-03-18 22:31:12 · 331 阅读 · 0 评论 -
使用 Qt Designer 开发
将简介使用 Qt Creator 里自带的 Qt Designer,使用 Qt Designer 比较方便的构造 UI 界面。特点是方便布局,比较形象。原创 2023-03-17 23:25:36 · 661 阅读 · 0 评论 -
第一个 Qt 程序
其中,左侧有上下两个子窗口,上面的窗口显示了项目的文件结构,显示当前的项目为“01_hello_world”,细心的还会发现“01_hello_world”是用粗体黑色标明。说明此项目是活动项目,活动项目的项目根节点都是用粗体字体表示的。如果打开了多个项目,那么我们只需要观察哪个是加粗的项目名就表示当前活动项目。Qt Creator 和其他 IDE 开发软件一样。都是分组管理项目内的各种源文件,下面是项目内的文件简介。原创 2023-03-16 21:51:38 · 3855 阅读 · 0 评论 -
初识 Qt
本章将介绍什么是 Qt,同时与大家一起安装 Qt,根据不同用户的编程习惯,这里我们介绍在Windows安装和在Ubuntu下安装。教程重点是以在Ubuntu环境下编写Qt作讲解。配置Ubuntu下的 Qt Creator 的中文输入法,讲解 Qt Creator 的界面组成与设置。新建一个简单的“Hello world”例程带大家一起学习 Qt 应用程序的建立、编译及调试步骤。我们重点关注 3.4 小节,搭建 Linux 下 Qt 的开发环境,因为搭建环境是很关键的一步。有。原创 2023-03-16 21:41:30 · 424 阅读 · 0 评论 -
QT开发学习6(Ubuntu 本机 Kits 编译 Qt 应用程序 )
eator 安装时自带的 Kit,名字叫 Desktop Qt5.12.9 GCC 64bit。我们要在 Ubuntu 上运行,那么。在 2.4 小节里我们在 test 工程里已经选择使用 ATK-I.MX6U Kit。至此正点原子 I.MX6U 出厂系统 Qt 的交叉编译环境,已经搭建完成,希望对大家有所帮助!我们就选择此项,编译出的程序就可以在 Ubuntu 上运行啦!图 3.1 2 Ubuntu 上运行编译的 Qt 应用程序。点击运行,可以看到程序执行时是显示一个空白的窗口。原创 2023-03-15 20:34:59 · 358 阅读 · 0 评论 -
QT学习笔记5(无 rsync 方式 Qt 远程调试)
添加 Command 为 scp,Arguments:为-P %{Device:SshPort} %{CurrentRun:Executable:FileName}添加 Command 为 ssh,Arguments:为-p %{Device:SshPort} %{Device:UserName}@%{Device:H。将我们设置的“设备”,在 ATK-I.MX6U Kits 里选择设备类型为我们刚才设置的“I.MX6U”设。点击项目处,选择 ATK-I.MX6U 设备,选择 Run。原创 2023-03-15 20:30:56 · 815 阅读 · 0 评论 -
QT开发学习4(远程调试 Qt 程序)
rsion 选择 2.3 小节里配置好的 ATK-I.MX6U Qt 5.12.9,Qt mkspec 填写 linux-oe-g++。其中,名称我们修改成 IMX6U-rsync,C++选择 2.3 小节设置的 ATK-I.MX6U-GCC,Qt ve。或者直接执行 rsync 指令,也可以查看是否支持 rsync,如下图所示就是支持 rsync。如果文件系统不是 V1.9 的,或者不支持 rsync 指令,请去网盘下载最新的出厂系统,使用。依次打开工具 -> 选项,至此,Qt 远程调试验证结束。原创 2023-03-14 21:04:35 · 2596 阅读 · 2 评论 -
QT开发学习3(配置 Qt Creator Kits )
opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/qmake,用于生成 Makefile,以。点击“帮助” -> “关于插件”,在 C。项目命名为 test,选择工程的位置,这里位置不要随便选择,建议放在家目录下(/home/用户名)。原创 2023-03-14 20:55:19 · 6480 阅读 · 0 评论 -
QT学习开发笔记2(搭建 Qt Creator 交叉编译环境)
交叉编译器为 fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0.我们需要下载这个 qt-opensource-linux-x64-5.12.9.run 直接在 Ubuntu 安装即可。这里需要填写 Qt 帐号,去 Qt 官网 https://www.qt.io/注册一个账号。填写后再点击 Next。下载完成得到 qt-opensource-linux-x64-5.12.9.run 这个文件。原创 2023-03-13 20:06:50 · 1039 阅读 · 0 评论 -
QT开发学习笔记1(安装交叉编译器)
把开发板光盘 A-基础资料->5、开发工具->1、交叉编译器->fsl-imx-x11-glibc-x86_64-metatoolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0.sh。6_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0.sh 需要重新下载重新安装。使用 arm-poky-linux-gnueabi-gcc -v 指令可以查看 gcc 版本,表明环境变量已经生效。原创 2023-03-13 19:59:01 · 833 阅读 · 0 评论