第一章:引言1.1项目介绍随着社会的发展,人们的追求越来越个性化,每天的清晨,如何舒服地被唤醒成为了一件大家迫切需要实现的事情。针对这一点,本项目设计了一款闹钟的上位机程序,实现了自主设置闹钟时间、日期、自由选择唤醒音乐、WIFI等功能。 ...
第一章:引言
- 1项目介绍
随着社会的发展,人们的追求越来越个性化,每天的清晨,如何舒服地被唤醒成为了一件大家迫切需要实现的事情。针对这一点,本项目设计了一款闹钟的上位机程序,实现了自主设置闹钟时间、日期、自由选择唤醒音乐、WIFI等功能。
第二章 系统概述
- 1 系统需求分析
针对闹钟软件的性质,用户最基础的需求是设置闹钟响的时间和日子。系统总体功能可以描述为以下几点:
(1) 设置闹钟时间
(2) 设置闹钟日期
(3) 添加唤醒音乐(mp3)
(4) 查看WIFI信息
(5) 串口检测和打开串口
(6) 发送字节流到下位机
第三章 系统设计
本章描述了软件的各个模块的设计以及整个软件系统的功能框架。软件使用了Window-builder作为辅助工具来对整个系统进行设计。
- 1 系统界面设计
软件界面如下:

图3.1 软件界面

图3.2 WIFI设置

图3.3.1 打开文件.1

图3.3.2 打开文件2

图3.4.1 保存文件.1

图3.4.2 保存文件.2

图3.5 新增

图3.6 删除

图3.7.1 串口检测1

图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中。
