最近要完成一项试验,需要大气压传感器、温度传感器、气体传感器搭建项目装置,自然要请出树莓派了,毕竟可以快速实现传感器数据采集和人机界面。下图是新到的raspberryPi 3B+、32G TF卡、7寸1024*600触摸屏。

第一步:下载和安装Raspbian

到官网https://www.raspberrypi.org/downloads/raspbian/去下载Raspbian最新镜像,先下载BT种子再用迅雷下要快很多。

Raspbian Stretch with desktop and recommended software镜像5.1G,推荐的软件对QT开发并没有用。我选择Raspbian Stretch with desktop镜像,3.2G大小。

都说要格式化一下,我直接用Win32DiskImager.exe烧写并没有发生问题。

为了接7寸触摸屏,参考了 树莓派对7寸显示屏设置参数(1024*600)的分辨率  和 树莓派3b+ raspberry 设置HDMI 分辨率1024*600去黑边方法 ,但黑边依旧,文字模糊,改成下面就好了:

disable_overscan=1
overscan_left=0
overscan_right=0
overscan_top=0
overscan_bottom=0
framebuffer_width=1024
framebuffer_height=600hdmi_force_hotplug=1max_usb_current=1
hdmi_group=2
hdmi_mode=87#hdmi_cvt=<width> <height> <framerate> <aspect> <margins> <interlace> <rb>hdmi_cvt=1024 600 60 6 0 0 0

接上鼠标和键盘,设置语言为中文;更改用户名和登录密码,先用缺省值;设置WIFI;等待更新软件完成。

第二步:安装RealVNC的VNC Viewer和FileZilla

在主菜单的首选项中选中Raspberry Pi Configuration,按下图配置好,重启一下树莓派。。在PC机上安装windows版VNC Viewer和FileZilla,这样就可在PC上看到树莓派的屏幕和进行文件传输了。

第三步:配置小企鹅输入法Fcitx快捷键

为了避免在VNC Viewer输入中文时与PC机的输入法中英文激活键冲突,需要修改Fcitx的中英文切换快捷键。在主菜单的首选项中选中Fcitx配置,点击“切换激活/非激活输入法”缺省的“Ctrl+Space”,换成自己喜欢的快捷键,我的是“Ctrl+Alt+Space”。

第四步:配置树莓派禁止休眠、屏幕常亮

图形界面需要常亮显示,按树莓派禁止休眠、屏幕常亮一文的方法设置,重启。

第五步:树莓派上安装QT

参考 树莓派下简单安装配置QT5 一文,因为前面已更新系统,直接安装QT的2个包即可。

如果配置时自动检测不到cmake,参考 新手上路——树莓派3B+安装cmake 一文。

通过主菜单->编程->QT Creator右键添加QT桌面快捷方式。

第六步:wiringPi安装

参考 树莓派安装WiringPi库 安装I2C库和wiringPi库。

第七步:C++代码

hello.pro

#-------------------------------------------------
#
# Project created by QtCreator 2019-03-23T09:18:57
#
#-------------------------------------------------QT       += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsTARGET = hello
TEMPLATE = app# The following define makes your compiler emit warnings if you use
# any feature of Qt which as been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGSDEFINES += QT_NO_DEBUG_OUTPUT# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0SOURCES += main.cpp\mainwindow.cpp \bmp180a.cpp \uart.cppHEADERS  += mainwindow.h \bmp180a.h \uart.hFORMS    += mainwindow.uiLIBS    += -lm
LIBS    += -lwiringPi

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <stdio.h>
#include <unistd.h>
#include <QString>MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{ui->setupUi(this);wiringPiSetup();pCO2_uart = new Uart(QString("/dev/ttyUSB0"),9600);fTimer=new QTimer(this);fTimer->stop();fTimer->setInterval(1000);fTimer->start();connect(fTimer,SIGNAL(timeout()),this,SLOT(on_timer_timeout()));
}MainWindow::~MainWindow()
{delete ui;
}void MainWindow::on_pushButton_clicked()
{close();
}void MainWindow::on_timer_timeout()
{float t = bmp180.bmp180_temperature();long p = bmp180.bmp180_pressure();ui->label_T->setText(QString::number(t));ui->label_P->setText(QString::number(p));if(pCO2_uart->isOpen()){pCO2_uart->loopRead();QString rev = pCO2_uart->recvData;int ipos = rev.indexOf("Z ");if(ipos>=0 && rev.length()> ipos+7){QString CO2_data = rev.mid(ipos+2,5);int idata  = CO2_data.toInt();ui->label_CO2->setText(QString::number(idata));}}
}

第八步:运行结果

第九步:建立程序自启动与桌面快捷方式

参考 树莓派3b+指南(十七)程序自启动与桌面快捷方式 即可。

九步用树莓派开发板实现QT工程项目相关推荐

  1. ARM开发板下Qt实现中文输入法的波折历程

    ** ARM开发板下Qt实现中文输入法的波折历程 ** 在移植软键盘输入法时候,如果用到中文输入法一定会用到数据库,移植的Qt工程运行时如果碰到如下error,一定要看看我的文章,对你会有所帮助!!! ...

  2. opencv-3.4.3 交叉编译并且移植到高通820开发板(包括Qt 5.11.2部分交叉编译及移植),NEON OpenCV编译

    opencv-3.4.3 交叉编译并且移植到高通820开发板(包括Qt 5.11.2部分交叉编译及移植),NEON OpenCV编译 原文我是用有道笔记记录的,下面排版不是很好,可参看有道笔记原文:h ...

  3. linux开发板添加qt库文件_QT程序怎么移植到开发板并运行

    需要的条件: 1.上位机编译好的可执行文件,以hello为例 在虚拟机的Ubuntu下,写好代码之后,定位到当前目录,执行命令 $ qmake -project //生成工程文件.pro $ qmak ...

  4. linux安装qt_采用STM32MP1的PanGu Board开发板运行Qt应用

    PanGu Board开发板是西安湃兔核科技基于STM32MP1系列处理器设计的SoC开发板,提供了HDMI.以太网.LCD.USB OTG.USB Host.TF Card.Camera.音频等丰富 ...

  5. 香橙派(Orange Pi)树莓派开发板USBCAN适配器usb转can调试软件使用教程

    一.硬件准备 1.windows7电脑*1 2.Orange Pi zero开发板*1(可以不带显示设备,六叶树的USBCAN调试软件可以使用远程桌面) 硬件要求很低,不需要显示屏,相当于只要手里有1 ...

  6. 基于MDKA5D31-EK_T70开发板的QT示例-demo05:计算器

    By Mcuzone 硬件平台:MDKA5D31-EK_T70开发板  QT版本:4.8.5  简要说明:本示例主要演示QT下自带的计算器的例子,支持加减乘除平方开根号等操作,最大显示位数为15位. ...

  7. 基于MDKA5D31-EK_T70开发板的QT示例-demo02:TempSerialcom

    By Mcuzone 硬件平台:MDKA5D31-EK_T70开发板 QT版本:4.8.5  简要说明:本示例主要演示QT下编写串口应用程序与单片机进行通讯(本示例采用的是KL25),从单片机端获取温 ...

  8. 基于MDKA5D31-EK_T70开发板的QT示例-demo08:TCP通讯

    By Mcuzone 硬件平台:MDKA5D31-EK_T70开发板  QT版本:4.8.5  简要说明:本示例主要演示应用程序作为UDP服务器和客户端的通讯过程. 应用程序运行效果: 一.网络连接: ...

  9. 基于MDKA5D31-EK_T70开发板的QT示例-demo07:UDP通讯

    By Mcuzone 硬件平台:MDKA5D31-EK_T70开发板  QT版本:4.8.5  简要说明:本示例主要演示应用程序作为UDP服务器和客户端的通讯过程. 应用程序运行效果: 一.网络连接: ...

  10. 基于MDKA5D31-EK_T70开发板的QT示例-demo14:Ftp演示

    By Mcuzone 硬件平台:MDKA5D31-EK_T70开发板  QT版本:4.8.5  简要说明:本示例主要演示应用程序实现ftp上传.下载功能. 应用程序运行效果: 输入服务器地址.用户名和 ...

最新文章

  1. FusionNet:基于稀疏雷达点云和RGB图像的深度图补全
  2. python打不开-python程序无法打开是怎么回事
  3. 题目1209:最小邮票数
  4. vue2.0 练习项目-外卖APP(2)
  5. boost的chrono模块运行时解析的测试程序
  6. 跟我一起学.NetCore之选项(Options)核心类型简介
  7. [转载]如何做到 jQuery-free?
  8. C++:32---IO库
  9. 分级调节是调节机制吗_机制砂大热,5种制砂工艺及特点介绍,选对生产工艺,保证高效生产...
  10. 杭州登山地图是谁开发的_好天气继续,重阳节登高,五条杭州登山线路奉上
  11. 面试题之Error和Exception总结
  12. 扫锚工具:xscan.exe
  13. gigabyte计算机主板图解,技嘉主板BIOS如何设置及进入 技嘉主板BIOS设置图解教程(2)...
  14. CADD课程学习(13)-- 研究蛋白小分子动态相互作用-III(蛋白配体复合物 GROMACS)
  15. windows删除文件trustedinstaller权限
  16. MapReduce端的二次排序以及对移动计算而不是移动数据的理解
  17. Typecho Fancybox 给文章图片添加灯箱效果
  18. PDP激活被拒绝原因码表
  19. linux优化deepin启动速度,如何优化 Deepin 引导开机速度?
  20. 如何让计算机从固态硬盘启动不了,电脑设置固态硬盘启动的方法

热门文章

  1. 【新概念4】【15】Secrecy in industry
  2. 打乱魔方软件_怎样打乱魔方
  3. 女程序员未来的职场出路在哪里?
  4. 用c语言求积分程序,菜鸟学C语言(五)之求定积分
  5. 云上解锁Web3.0 阿里云XR平台助力彼真科技呈现沉浸式演唱会
  6. r语言中的或怎么表示什么不同_R语言学习笔记(一)
  7. VIJOS-P1152 肥猫的游戏
  8. 哈斯图的画法,以及利用哈斯图寻找极大元之类
  9. tvb php 香港IP,优酷与TVB签订战略合作协议,实现内容IP与平台资源结合
  10. 基于PG与PostGIS搭建实时矢量瓦片服务