迅为-i.MX6ULL开发板-QT实战项目DHT11&网络编程实战练习(一)

发布者:快乐的小鸟最新更新时间:2025-04-08 来源: cnblogs关键字:i  DHT11  网络编程 手机看文章 扫描二维码
随时随地手机看文章

1 项目前准备
工具及环境:
1.开发环境:Ubuntu16.04
2.工具:Qt creator
3.迅为电子i.MX6ULL终结者开发板
MX6ULL终结者开发板已板载了DHT11传感器,且提供的Linux镜像和设备树已配置好了dht11接口,dht11驱动程序使用高版本Linux内核自带的稳定驱动程序,根文件系统使用网盘资料里的Yocto镜像,使用手册有详细的系统移植和 Qt5移植步骤。开发板要保证iio接口正常,如图 1.1:
cd /sys/bus/iio/devices/iio:device1

多cat几次, cat in_temp_input ,出现00为结尾的数字为正常

2 软件流程图
本实验目的是练习Qt的使用。把dht11采集的温度湿度显示在触摸屏的Qt上,并通过TCP传输到PC机的Qt界面上。应用程序将采集到的数据利用UDP网络套接字传输给终结者的 Qt进程,终结者的Qt将数据转发给PC端的Qt显示界面。流程图如图 2.1:

3 Linux应用程序
功能描述:
1.获取温湿度数据。
2.将温湿度封装成消息通过UDP发送到i.MX6ULL服务器。
高版本Linux内核自带了dht11 的驱动,使用者不用再去关心它的时序问题,可以用标准IO读取sysfs的/sys/bus/iio/devices/iio:device1/下的温湿度端口,测试读取成功后将数据发送到Qt进程。
为了让读者更好地理解Qt的 UDP,所以此处没有用到操作系统进程间通信机制,直接使用UDP网络套接字,代码在readDHT11.c:





编译:arm-linux-gnueabihf-gcc -o read readDHT11.c

4 终结者Qt服务器
Qt服务器功能描述:
1.接收应用程序发来的数据并解析;
2.界面显示出:温湿度,PC客户端的连接状态,系统时间;
3.通过 TCP向 PC客户端发送数据包。

4.1 界面布局
温度显示:LCD Number
湿度显示:LCD Number
系统时间,连接状态提示: Label
关闭按钮:push Button
Mainwindow.ui :


在属性栏设置主窗口尺寸,宽度为1024,高度为600,添加两个LCD Number组件,设置最小宽度500,最小高度为290,然后垂直布局两个LCD Number,如:图 4.1.2

给LCD Number添加颜色,右击此组件,选择“改变样式表”,

在弹出的界面选择“添加颜色”,点击“color”,

在弹出的颜色选择框中选择想要添加的颜色,然后点击“OK”。

自动回到样式表编辑器,可以看到添加的color,点击”apply”,然后点击”OK”,发现 LCD Number的颜色已经改变,另外一个 LCD Number的操作方法不再赘述。

在主界面右上角添加两个 Label,一个用来显示时间,一个显示TCP连接状态,宽度500,高度130,垂直布局,如图 4.1.7:

添加退出按钮,设置最小高度80,最小宽度100,修改字体大小:

在按钮左侧添加 Label,最小宽度300,最小高度290,在按钮和Label间添加弹簧,然后水平布局,效果如图 4.1.9:.

点击主窗口,然后点击栅格布局,效果如图 4.1.10:

最后改变各控件的名称,方便在代码中调用。
到此,服务器端基本ui界面组装完成,读者可以在此基础上美化。

关键字:i  DHT11  网络编程 引用地址:迅为-i.MX6ULL开发板-QT实战项目DHT11&网络编程实战练习(一)

上一篇:迅为-i.MX6ULL开发板-网络测试方法(二)
下一篇:迅为-IMX6ULL-QT应用_在开发板上移植ssh

推荐阅读最新更新时间:2026-03-20 11:27

-i.MX6ULL开发板-QT实战项目DHT11&网络编程实战练习(一)
1 项目前准备 工具及环境: 1.开发环境: Ubuntu 16.04 2.工具:Qt creator 3.迅为 电子 i.MX6ULL终结者开发板 MX6ULL终结者开发板已板载了DHT11 传感器 ,且提供的Linux镜像和设备树已配置好了dht11接口,dht11驱动程序使用高版本Linux内核自带的稳定驱动程序,根文件系统使用网盘资料里的Yocto镜像,使用手册有详细的系统移植和 Qt5移植步骤。开发板要保证iio接口正常,如图 1.1: cd /sys/bus/iio/devices/iio:device1 多cat几次, cat in_temp_input ,出现00为结尾的数字为正常 2 软件流程图 本实验目的是
[单片机]
<font color='red'>迅</font><font color='red'>为</font>-<font color='red'>i</font>.MX6ULL<font color='red'>开发板</font>-QT实战项目DHT11&<font color='red'>网络</font><font color='red'>编程</font>实战练习(一)
4412开发板Qt网络编程-UDP实现服务器和客户端
UDP 协议是开放式,无连接,不可靠的传输层通信协议,但它收发数据的速度相对于 TCP 快很多,常用在传输音视频等数据量非常大的场合。 udp 网络编程只需要使用一个类 QUdpSocket。 本实验中对 QUdpSocket 的基本使用: 1.创建 QUdpSocket 对象。 2.绑定端口号 3.数据到来触发 readyRead()信号。 4.读取发送数据。 5.关闭。 具体步骤: 步骤一:组装 ui 界面,和 TCP 章节搭建 UI 界面方法一致。 步骤二:编写代码 1.创建 QUdpSocket 对象,使用 bind 函数绑定端口号和套接字,数据报到来后会发出信 号 (),在绑定的槽函数内去读取数据。 2.读取数据
[单片机]
<font color='red'>迅</font><font color='red'>为</font>4412<font color='red'>开发板</font>Qt<font color='red'>网络</font><font color='red'>编程</font>-UDP实现服务器和客户端
i.MX8M mini开发板Windots QT系统开发环境搭建
1、 QtCreator 的安装和使用 1)Qtcreator 下载地址:h t t p : / / d o w n l o a d . q t . i o / n e w _ a r c h i v e / q t / 5 . 1 1 /,进入选择版本号界面,本教程使用的是 5.11.1,也推荐读者选择此版本。进入如下图界面后,选择安装包,我们在 windows 下学习 Qt,所以选择 qt-opensource-windows-x86-5.11.1.exe,点击即可下载。网盘里有下载好的安装包,在网盘资料的“i.MX8MM 开发板网盘资料汇总(不含光盘内容)5_i.MX8MM 开发板 Linux 应用开发资料Windows-q
[单片机]
<font color='red'>迅</font><font color='red'>为</font><font color='red'>i</font>.MX8M mini<font color='red'>开发板</font>Windots QT系统开发环境搭建
i.MX8MM开发板ARM嵌入式Linux安卓9.0工业核心板iMX8M Mini板
迅为i.MX8M Mini开发板是恩智浦首款嵌入式多核应用处理器,具有多达五个内核:采用4核ARM Cortex-A53 + Cortex-M4多核处理器+GPU,可提供出色的系统性能。 ∝ 4个Cortex-A53内核平台,每核运行频率高达1.8GHz。32KB L1-I缓存/ 32 kB L1-D缓存,512 kB L2缓存 ∝ 1个Cortex-M4内核,运行频率高达400MHz。16 kB L1-I缓存/ 16 kB L2-D缓存 ∝ 3D GPU (1个着色器,OpenGL® ES 2.0) ∝ 2D GPU iMX 8M Mini采用了先进的14LPC FinFET工艺技术构建,提供更快的速度和更高的电源效率。支持工
[单片机]
<font color='red'>迅</font><font color='red'>为</font><font color='red'>i</font>.MX8MM<font color='red'>开发板</font>ARM嵌入式Linux安卓9.0工业核心板iMX8M Mini板
-i.MX6开发板手册更新-非设备树uboot-修改默认环境变量
本文档主要介绍如何非设备树 uboot 修改默认启动参数。iTOP-iMX6 开发板烧写好之后,默认是android 系统 9.7 寸屏幕的系统参数和屏幕参数,如下图所示。输入以下命令查看默认启动参数printenv 74.1 重要的环境变量 比较重要的环境变量或者说经常使用的环境变量,已经在上图中的红色方框中。 主要是:bootsystem、lcdtype 和 bootargs。这些参数都可以在 uboot 源码中进行设置。具体文件为:“iTOP-iMX6_android4.4.2/bootable/bootloader/uboot-imx/lib_arm/board.c”文件。 74.2 默认启动系统设置 默认启动系统参数是
[单片机]
<font color='red'>迅</font><font color='red'>为</font>-<font color='red'>i</font>.MX6<font color='red'>开发板</font>手册更新-非设备树uboot-修改默认环境变量
iTOP-i.MX6ULL开发板-网络通信-套字节UDP
iTOP-IMX6ULL 实现基于 UDP 的 socket 编程。 78.1 实验操作 UDP 是用户数据报协议,它是一种无连接的传输层协议,提供面向事物的简单不可靠信息传送服务,所以在一些网络质量不满意的环境下,UDP 协议数据包丢失会比较严重,会造成数据的丢失。UDP 的特点是它不属于连接型协议,所以资源消耗小。处理速度快的优点,所以通常音频,视频和普通数据在传送时使用 UDP 较多,因为它们即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。 UDP 的通信框图如图 78.1.1 所示 从上图可以看到基于 UDP 通信的程序也是由服务器和客户端组成。与 TCP 的服务器不同,UDP 的服务器不需要 listen 和
[单片机]
<font color='red'>迅</font><font color='red'>为</font>iTOP-<font color='red'>i</font>.MX6ULL<font color='red'>开发板</font>-<font color='red'>网络</font>通信-套字节UDP
iTOP-i.MX6ULL开发板-网络通信-套字节TCP
iTOP-IMX6ULL 实现基于 TCP 的 socket 编程。 在 linux 下,网络资源非常丰富,底层的东西不需要去管,只需要知道怎么实现最终需要的功能即可。 77.1 实验操作 TCP 是一种面向连接的、可靠的、基于 IP 的传输层协议。通过 TCP 可以保证传送的数据的正确性。 Linux 下网络通信程序基本上都是采用 socket 的方式。socket 起源于 Unix,而 Unix/Linux 基本哲学之一就是“一切皆文件”,都可以用“打开 open- 读写 read/write- 关闭 close”模式来操作。Socket 就是该模式的一个实现,socket 即是一种特殊的文件,一些 socket 函数。就是对
[单片机]
<font color='red'>迅</font><font color='red'>为</font>iTOP-<font color='red'>i</font>.MX6ULL<font color='red'>开发板</font>-<font color='red'>网络</font>通信-套字节TCP
i.MX6ULL终结者QT应用开发Qt for Android
QT是一个非常优秀的跨平台工具。所以我们只需要掌握QT做界面的方法,我们就可以很方便的做QT的跨平台应用了。 为什么要学习QT_For_ Android ? 1.体验QT跨平台的优越性 2.非常适合我们非科班出身的开发人员来开发和调试APP。 1 搭建开发环境 1.安装JDK,选择默认路径,一路点击下一步即可。 安装完成后进入相应的路径查看: 需要注意的问题: (1)建议使用我们提供的版本,如果自己下载可能会出现问题。 (2)建议大家安装到C盘下面,不要有中文路径。 2.安装sdk和ndk,直接解压即可,解压的路径不要有中文路径。我这里是解压到了JDK的安装路径,如果C盘空间不够可以解压到其他盘,但要记住位置,下面需要用到。
[单片机]
<font color='red'>迅</font><font color='red'>为</font><font color='red'>i</font>.MX6ULL终结者QT应用开发Qt for Android
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved