项目总结-上位机

来源:互联网 发布:ipv6 端口格式 编辑:程序博客网 时间:2024/06/13 03:25

  • 概述
  • 总结
    • 明确目的
    • 软件结构设计
    • 软件页面的设计与实现
    • 串口通信的实现
    • 关于注释
    • 一些需要注意的问题
    • 评价
    • 结果展示
    • 软件打包
  • 代码

概述:

前几天受朋友之托,给他们的项目写个上位机。有些经验分享给大家项目要求是上位机收到通过串口发送的数据,根据数据显示空车位的数量。*最终上位机拥有的值得一谈的功能:    1.串口通信的相关设置    2.数据保存    3.界面随窗口缩放的实现    4.软件打包    5.。。。然后就没有了

总结

1.明确目的

开始写软件之前首先明确目的,软件应该实行什么功能,然后设计界面,最后才开始写代码。界面设计(Visio设计,当然其他工具也可以):

这里写图片描述这里写图片描述

2.软件结构设计

整个软件只有一个窗口tabwidget,在其中嵌入三个继承自Qwidgetd的类,一个用于串口通信相关设置,一个用于显示车位数,一个是帮助页面。

3.软件页面的设计与实现

之前看过其他人写的上位机,有的界面做得不是很爽,主要是界面固定,不能进行窗口缩放。说一下如何让软件的界面能够大小根据窗口的大小缩放?    1.首先要知道,软件界面的自动缩放,可以由窗口控制。就是说设置好界面后把控制权交给QT的程序框架就行了,框架会进行调整。值得一提的是,个人感觉qt设计师不好用,当界面的控件多的时候,布局起来往往不如人意,特别是要实现窗口缩放的功能,很麻烦。推荐用代码布局,可操作性强,配置起来也简单明了。如果是小项目,界面简单,那就无所谓了。    2.把所有的布局最终嵌入到一个布局里面,然后设置这个布局为窗口的布局,剩下的缩放就交给qt控件了。

4.串口通信的实现

qt5提供了串口类,所以我们只需要调用修改函数进行配置就能够实现通信了。qt5的示例程序里面有查看程序,输入“serial”就可以检索出来。对串口的操作类似文件操作。过程就是:打开串口—>使用串口—>关闭串口。完整的过程:检索串口—>打开串口—>配置波特率、停止位等等—>对串口读写—>不使用时关闭。

5.关于注释

代码有些是有注释,有些是没有注释的,还有一些是自注释(通过函数名称就知道是干啥的)。

6.一些需要注意的问题

1.要想使用串口类需要在工程文件添加serialport    eg. QT       += core gui serialport2.为软件的使用方便性,可以设置“伙伴”(setBuddy)3.注意控件的宽度,有时候界面缩放效果不理想,并不是布局不好,而是控件的一些属性(高度、宽度)影响了布局。

7.评价

这个程序车位显示模块做得真菜,判断有无车位居然使用的是if()else()……..他们做的下位机连个通信协议都定。我这边也是没办法,把老师忽悠过关就行了。反正不是我的项目,O(∩_∩)O~

8.结果展示:

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

这里写图片描述
这里写图片描述

9.软件打包

1.思考一个问题:为什么要打包?    通俗来说,因为用户可能没有Qt SDK,可能有也不知道如何使用,所以需要打包(不同意的同志不要笑)。2.打包工具:3.打包原料:    qt生成的可执行文件(一般使用release版的,因为其占用空间少,使用debug对应用户来说没必要,其占用空间也大)    qt的一些dll(如果不知道你的可执行程序需要那些,就运行可执行程序根据提示去安装目录下的bin文件夹复制过来就行。eg. C:\Qt\Qt5.5.0\5.5\mingw492_32\bin)4.打包步骤:    1.把程序用到的资源,可执行程序、相关dll放置一个文件夹里

这里写图片描述

    2.打开打包工具

这里写图片描述

    3.完成

代码

http://download.csdn.net/detail/w2654189525/9495722

0 0
原创粉丝点击