用java设计智能钟的上位机应用配置程序

技术设计 · 2019/08/30
← 返回技术文章

第一章:引言1.1项目介绍随着社会的发展,人们的追求越来越个性化,每天的清晨,如何舒服地被唤醒成为了一件大家迫切需要实现的事情。针对这一点,本项目设计了一款闹钟的上位机程序,实现了自主设置闹钟时间、日期、自由选择唤醒音乐、WIFI等功能。 ...

第一章:引言

  • 1项目介绍

随着社会的发展,人们的追求越来越个性化,每天的清晨,如何舒服地被唤醒成为了一件大家迫切需要实现的事情。针对这一点,本项目设计了一款闹钟的上位机程序,实现了自主设置闹钟时间、日期、自由选择唤醒音乐、WIFI等功能。

第二章 系统概述

  • 1 系统需求分析

针对闹钟软件的性质,用户最基础的需求是设置闹钟响的时间和日子。系统总体功能可以描述为以下几点:

(1) 设置闹钟时间

(2) 设置闹钟日期

(3) 添加唤醒音乐(mp3)

(4) 查看WIFI信息

(5) 串口检测和打开串口

(6) 发送字节流到下位机

第三章 系统设计

本章描述了软件的各个模块的设计以及整个软件系统的功能框架。软件使用了Window-builder作为辅助工具来对整个系统进行设计。

  • 1 系统界面设计

软件界面如下:

用java设计智能钟的上位机应用配置程序

图3.1 软件界面

用java设计智能钟的上位机应用配置程序

图3.2 WIFI设置

用java设计智能钟的上位机应用配置程序

图3.3.1 打开文件.1

用java设计智能钟的上位机应用配置程序

图3.3.2 打开文件2

用java设计智能钟的上位机应用配置程序

图3.4.1 保存文件.1

用java设计智能钟的上位机应用配置程序

图3.4.2 保存文件.2

用java设计智能钟的上位机应用配置程序

图3.5 新增

用java设计智能钟的上位机应用配置程序

图3.6 删除

用java设计智能钟的上位机应用配置程序

图3.7.1 串口检测1

用java设计智能钟的上位机应用配置程序

图3.7.2 串口检测2

第四章 系统的实现

(代码因占篇幅太长,不在此处贴任何代码)

  • 软件界面: 软件界面通过Eclipse的可视化辅助工具Window-Builder创建,用到的控件有:ScrollPane、JTable、JButton、JLabel、ComboBox、JTextArea。
  • 显示WIFI:添加actionPerformed(ActionEvent e)事件对按键点击进行响应。通过Runtime.getRuntime().exec(); 命令运行脚本命令,此处调用的command命令为:netsh wlan show networks,即显示探测到的无线局域网以及其信息。将cmd命令返回的结果通过textArea.setText();函数显示在textArea中。将textArea嵌入scrollPane中,这样可使得textArea具有当文字溢出时,文本框可以下拉以及左右拉。
  • 打开文件:添加按键响应。导入部分必要的xml包。使用 JFileChooser() 设置选择文件对话框,通过DefaultTableModel类,((DefaultTableModel)table.getModel()).insertRow()将文件内容导入到JTable中。
  • 保存文件:添加按键响应。创建ArrayList()数组,通过for循环,将JTable中所有列的数据添加进ArrayList中。并创建文件(如果文件存在则删除),通过ExcelHelper.writeExcel()将数据写进文件中。
  • 新增:通过DefaultTableModel类,((DefaultTableModel)table.getModel()).insertRow(); 在JTable中插入空白行。
  • 删除:通过((DefaultTableModel)table.getModel()).removeRow(); 删除JTable中删除行。
  • 串口检测:由于java.comm 比较老了,而且不支持64位系统,运行时报错,所以下载了RXTXcomm.jar包。由于电脑没有串口,所以下载了VSPD虚拟串口。定义Enumeration<CommPortIdentifier> portList = CommPortIdentifier.getPortIdentifiers(); 再定义一个ArraryList,将可用串口名添加到LIist里。使用ComboBox.addItem();方法将List中的串口添加到ComboBox中。