开发体重指数计算器课程设计

体重计算器  时间:2021-04-12  阅读:()

武汉理工大学《嵌入式系统开发实训》课程设计说明书

课程名称 嵌入式系统开发实训

题 目 基于安卓的体重指数计算器程序设计

学 院 计算机科学与技术

专 业 计算机科学与技术

班 级 计科1103班

姓 名 闫敏

指导教师 夏又新

2014年 12月 28日

武汉理工大学《嵌入式系统开发实训》课程设计说明书

课程设计任务书

学生姓名 闫敏 专业班级 计算机1103

指导教师 夏又新 工作单位 计算机学院

题 目: 基于Andro i d的体重指数计算器程序的设计与实现

初始条件

1 理论综合运用嵌入式系统设计、计算机组成原理、 java语言程序设计方法等课程的专业知识。

2实践学习和使用嵌入式实验箱飞凌ok210的使用方法、基于Android的交叉编译软件环境。在飞凌ok210实验箱上完成课程设计题目要求的功能。

要求完成的主要任务: 包括课程设计工作量及其技术要求 以及说明书撰写等具体要求

课程设计内容

利用嵌入式实验箱飞凌ok210搭建嵌入式系统开发环境在Android环境下编写应用程序完成以下功能并撰写嵌入式系统设计报告

1.友好的人机界面

2.可以输入相关参数

3.计算后给出体重指数值和建议。

课程设计报告书正文的内容应包括

1 系统描述问题域描述 

2 系统总体分析

3 系统总体设计

4 详细的流程图或伪代码

5 软件的测试方法和测试结果

6 研制报告研制过程本设计的评价、特点、不足、 收获与体会等 

时间安排

指导教师签名 夏又新2014年12月6

武汉理工大学《嵌入式系统开发实训》课程设计说明书

系主任或责任教师签名 年 月 日

武汉理工大学《嵌入式系统开发实训》课程设计说明书

目录

1.系统描述. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . .. .. .. .. ..2

1.1背景. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . .. .. .. .2

1.2功能描述. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..3

1.3开发环境介绍. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .3

1.3.1Android体系结构简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1.3.2Android架构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1.3.3应用框架.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..4

1.3.4库.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..4

1.3.5应用.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..5

1.4开发环境的安装. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..5

1.4.1下载Eclipse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

1.4.2安装Eclipse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

1.4.3安装ADT扩充套件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

1.4.4下载并设定AndroidSDK. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

1.4.5创建名为BMI的工程. . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .7

2.需求分析. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .7

2.1功能需求. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .7

2.1.1用户触发事件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

2.1.2基本需求控制. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

2.2性能需求. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .8

2.2.1响应时间.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .8

2.2.2稳定性.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .9

2.2.3安全性. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..9

3.系统总体设计. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .9

3.1工程总体架构. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .9

3.2系统框架设计. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .10

3.3界面设计. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..11

4.详细的流程图和伪代码. . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .11

4.1流程图. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . .11

4.2主要功能伪代码. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..12

5.软件的测试方法和测试结果. . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..13

5.1测试用例. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .13

5.2测试结果及分析. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..13

6.研制报告. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .15

6.1系统的缺陷. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .15

6.2总结. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..15

7.参考文献. . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .16

0

武汉理工大学《嵌入式系统开发实训》课程设计说明书

1.系统描述

1.1背景

很多国家及地区每年都会为当地的人口作身高和体重的统计。这些统计数据都可以转化成为BMI值从而再统计出当地人口的BMI值分布。根据这个分布地方健康政府可以推算出当地人口的过重及过轻指标。一般来说都会采用统计出来的平均BMI值及其标准差值再计算出其常态分布的最高5%及最低5%作为过重及过轻指标。我国在这个方面还没有引起太大的重视有的软件是只是功能单一没有相应的指导意见。这个软件就根据这个缺点并加入一些人性化的建议说明而开发的。

2007年11月5日 Google与其他33家手机制造商(包含摩托罗拉、宏达电、三星、 LG) 、手机晶片供应商、软硬体供应商、 电信业者所联合组成的开放手持装置联盟(OpenHandsetAlliance) 发布了名为[Android]的开放手机软硬体平台。参与开放手持装置联盟的这些厂商都会基于Android平台来开发新的手机业务。

2008年9月24日 T-Mobile首度公布第一台Android手机(G1)的细节 同日Google也释出了AndoridSDK1.0rc1。对应用程式开发者而言 1.0代表了开发者可以放心地使用API而不必再担心API有太大的变动。 G 1在同年10月20正式发售。在发售前仅针对原T-Mobile用户的预购活动中 已经被预购了150万台。在10月21日OpenHandsetAlliance公开了全部Android的原始码。从此开发者拥有了一个完全开放的手机平台。截止目前已经有多款使用Android的智能手机超过8万的应用程序。

在不到两年时间的发展中,美国市场研究公司NPD2010年发布的统计数据显示第一季度期间 Android手机在美国市场的销量已超过iPhone 占据该季度美国智能手机总销量的28% iPhone相应的份额为21%。

1

武汉理工大学《嵌入式系统开发实训》课程设计说明书

1.2功能描述

该系统主要实现体重指数的计算通过身高和体重来计算体重指数指数公式为体重除以身高的平方 即为BMI的值如果大于25则为偏重如果小于

20则体重偏瘦若在20到25之间则体重正常。

1.3开发环境介绍

Android是基于Linux内核的操作系统早期由Google开发后由开放手机联盟开发。它采用了软件堆层的架构主要分为三部分。底层以Linux内核工作为基础只提供基本功能其他的应用软件则由各公司自行开发 以Java作为编写程序的一部分。另外为了推广此技术 Google和其它几十个手机公司建立了开放手机联盟。 目前最新版本为Android3. 0。

1.3.1Android体系结构简介

Android平台是一组面向移动设备的软件包 它包含了一个操作系统、 中间件和关键应用程序。开发人员可以使用AndroidSDK(软件开发工具包)为这个平台创造应用程序。应用程序使用Java语言编写并在Dalvik之内运行。 Dalvik是一款量身定制的虚拟机它专为嵌入式应用设计运行在Linux内核上层。

1.3.2Android架构

下图显示了Android操作系统的主要组件。

2

武汉理工大学《嵌入式系统开发实训》课程设计说明书

图1Android操作系统的主要组件

1.3.3应用框架

Android的核心应用程序就是依赖框架层次API开发的程序员们可以充分使用这些API。应用架构设计的初衷是简化组件复用机制任何应用都能发布自己的功能这些功能又可以被任何其他应用使用当然要受来自框架的强制安全规范的约束 。和复用机制相同框架允许组件的更换。

1.3.4库

Android包含一套C/C++库 Android系统的各式组件都在使用。这些功能通过Android应用框架暴露给开发人员。 Android的核心类库提供Java类库所提供的绝大部分功能。每个Android应用都运行在自己的进程上享有Dalvik虚拟机为它分配的专有实例。为了支持多个虚拟机在同一个设备上高效运行 Dalvik被改写过。 Dalvik虚拟机执行的是Dalvik格式的可执行文件 . dex该格式经

3

武汉理工大学《嵌入式系统开发实训》课程设计说明书

过优化 以降低内存耗用到最低。 Java编译器将Java源文件转为class文件class文件又被内置的dx工具转化为dex格式文件这种文件在Dalvik虚拟机上注册并运行。在一些底层功能——比如线程和低内存管理方面 Dalvik虚拟机是依赖Linux内核的。

1.3.5应用

Android将预装一组核心应用程序包括email客户端、短信服务、 日历日程、地图服务、浏览器、联系人和其他应用程序。所有应用程序都是Java编程语言编写的。

编写Android的应用程序需要一套个人电脑系统。至于操作系统的部份几个主流操作系统都有支持。

支持的操作系统如下

WindowsXP、 Vista或Windows7

MacOSX10.4.8或之后版本(适用x86架构的IntelMac)

Linux(官方于Ubuntu6. 10DapperDrake上测试)

1.4开发环境的安装

1.4.1下载Eclipse

首先需要下载Android开发时会用到的整合开发环境Eclipse。 目前Android应用程序只支持使用[Java]程式语言来编写Android应用程式。所以开发前必须先安装Java 开发套件(JavaDevelopmentKit,JDK) 。各平台的JDK可至http://java. sun.com/下载。 MacOSX作业系统则已内建JDK。安装好JDK后可以前往Eclipse网站下载Eclipse这个方便的整合开发环境。下载Eclipse时可以选[EclipseIDEforJavaDevelopers]或[EclipseIDEforJavaEEDevelopers]这两种版本 只有这两种版本才会预装Ecl ipseJDT扩充套件。 我选择的是[EclipseIDEforJavaDevelopers]版本。下载完同样先解压缩到适当目录下。

4

武汉理工大学《嵌入式系统开发实训》课程设计说明书

1.4.2安装Eclipse

Eclipse不需要安装只要确认你的系统上有安装Java 即可直接开启Eclipse资料夹 点击Eclipse 开始执行Eclipse整合开发环境。第一次启动Eclipse时会弹出视窗让你决定预设的工作目录。一般使用Eclipse预设的工作目录即可。进入到EclipseIDE后就能安装Android开发工具扩充套件。

1.4.3安装AD T扩充套件

在Eclipse上安装Android开发工具(ADT) 。

我采用的是离线安装前往http://developer.android. com/sdk/adt_download.html 手动下载最新的开发工具版本来离线安装。下载完最新的ADT扩充套件后打开Eclipse开发环境找到屏幕上方的选单列选择[Help->SoftwareUpdates]选项这选项会带出一个新视窗。选择[AvailableSoftware]标签选择右方的[AddSite. . . ] (新增网站)按钮会弹出一个输入框。选择右上角的[Local. . . ]按钮并选取刚下载的Android最新开发工具档案选到之后按下"OK"按钮离开。在视窗中全选新出现项目的所有选项后按下右方的[Install]按钮。 Eclipse会花一点时间开始安装ADT扩充套件。

1.4.4下载并设定AndroidSDK

到google官网上下载最新版本的AndroidSDK并解压。打开偏好设定页面(Preference) 选择Android标签(请确认您已安装好ADT扩充套件 Android标签才会出现在偏好设定页面中) 在SDKLocation栏位按下"Browse. . . "键选择刚刚解压缩完的[android_sdk]文件夹所在地然后按下视窗右下角的应用(Apply)按钮。这样一来 AndroidSDK就算是设定好啦。

设定好AndroidSDK后就拥有了一个完整的Android开发环境。

5

易探云美国云服务器评测,主机低至33元/月,336元/年

美国服务器哪家平台好?美国服务器无需备案,即开即用,上线快。美国服务器多数带防御,且有时候项目运营的时候,防御能力是用户考虑的重点,特别是网站容易受到攻击的行业。现在有那么多美国一年服务器,哪家的美国云服务器好呢?美国服务器用哪家好?这里推荐易探云,有美国BGP、美国CN2、美国高防、美国GIA等云服务器,线路优化的不错。易探云刚好就是做香港及美国云服务器的主要商家之一,我们来看一下易探云美国云服...

rfchost:洛杉矶vps/双向CN2 GIA,1核/1G/10G SSD/500G流量/100Mbps/季付$23.9

rfchost怎么样?rfchost是一家开办了近六年的国人主机商,一般能挺过三年的国人商家,还是值得入手的,商家主要销售VPS,机房有美国洛杉矶/堪萨斯、中国香港,三年前本站分享过他家堪萨斯机房的套餐。目前rfchost商家的洛杉矶机房还是非常不错的,采用CN2优化线路,电信双程CN2 GIA,联通去程CN2 GIA,回程AS4837,移动走自己的直连线路,目前季付套餐还是比较划算的,有需要的可...

Virmach($7.2/年)特价机器发放

在八月份的时候有分享到 Virmach 暑期的促销活动有低至年付12美元的便宜VPS主机,这不开学季商家又发布五款年付VPS主机方案,而且是有可以选择七个数据中心。如果我们有需要低价年付便宜VPS主机的可以选择,且最低年付7.2美元(这款目前已经缺货)。这里需要注意的,这次发布的几款便宜年付方案,会在2021年9月30日或者2022年4月39日,分两个时间段会将INTEL CPU迁移至AMD CP...

体重计算器为你推荐
SetSysIdroutesetOwnerjavaflashftpFLASHFXP怎么用有没有详细的说明??access数据库修复请问Access数据库修复恢复该怎么办啊,有些页和模块打不开了,也不知道是怎么回事,丢了文件还中国企业在线如何查询企业是否可靠?dell服务器bios设置dell R410服务器 bios设置参数如何恢复出厂设置?重庆杨家坪猪肉摊主杀人重庆忠县的猪肉市场应该好好整顿一下了。6月份我买到了母猪肉。今天好不容易才下定决心去买农贸市场买肉。什么是支付宝支付宝是什么意思360防火墙在哪里怎么查找到360防火墙在自己电脑里的位置?并且关闭掉购物车通过自己的体会总结购物车的作用
淘宝抢红包攻略 高防dns 国内免备案主机 omnis gitcafe 网通服务器ip 服务器架设 hnyd 华为网络硬盘 cpanel空间 权嘉云 股票老左 linux使用教程 ca187 移动服务器托管 什么是web服务器 秒杀品 石家庄服务器托管 德隆中文网 万网空间 更多