ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:391.70KB ,
资源ID:5473734      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5473734.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(完整版基于ArmLinux平台的模拟手机设计毕业设计.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

完整版基于ArmLinux平台的模拟手机设计毕业设计.docx

1、完整版基于ArmLinux平台的模拟手机设计毕业设计摘要随着社会的发展,人们的通讯方式越来越多,不仅仅是写信,发邮件,上网。手机的流行已成为了一种趋势。同时手机的普及也给人们的生活带来了很多的便利,如:可以随时随地连接英特网,可以随时和朋友,亲人联系,同时还能拍照,听歌,看文档。同时也兼有计算器,手表,相机的功能。基于Arm-Linux平台的模拟手机设计从理论上来说具备基本的手机功能,能进行通话,电话本管理,信息管理,MP3、MP4功能,具备记事本,计算器,图片查看,号码归属地查询等小功能,同是还能连接英特网,实现了简单的游戏,特别的是此系统能实现跨平台运行,可以交叉编译。如果能烧入开发板上面

2、,将能够和手机媲美。同时它能运行在ARM9,ARM11等开发板上面,进行一系列的模拟实验。关键词:Arm-Linux平台;模拟手机设计;ARM9;ARM11AbstractWith the development of society, peoples communication mode is more and more, just write, email, Internet access. The popular mobile phone at any time anywhere, can at any time and friends, family contact, but also

3、 photos, music, see documents. Also with calculator, watches, the camera functions.Based on the Arm - Linux platform from theory for analog phones of the mobile communication function, can this management, ephone, information management, MP3, MP4 functionality, small function, is also can connect wi

4、th the Internet, realized simple game, special is the system can realize cross-platform operation, can cross-compiling. If can spread on development board, will be able to and cell phone rival. At the same time it can run on ARM9, such as ARM11 above development board, carries on a series of simulat

5、ion experiment.Key words: arm-linux platform; analog phone design; arm9; arm111.3 研究方法 21.4 论文结构说明 2第3章 概要设计 63.1 系统目标 63.2 系统模块图 63.3 系统功能流程图 7第4章 数据库设计 84.1 数据库需求分析 84.2 数据库概要设计 85.7 娱乐 23第7章 开发技术、平台简介 317.1 开发技术简介 31第8章 总结及展望 35第1章 绪论1.1 引言手机的质量是一个手机厂商的生命线,如果没有一个让人们用着放心,用着满意的手机质量,那么这个手机厂商将无立身之地。当

6、然这里所说的手机质量包括硬件和软件两方面。因此,提高手机的质量是一个手机厂商的重中之重。基于Arm-Linux平台的模拟手机设计从理论上来说具备手机的基本功能。同时此系统能实现跨平台运行,可以交叉编译。同是也能在开发板上进行一系列的模拟实验。1.2 课题背景1.2.1 国外研究现状目前,全球手机厂商的竞争已是异常的激烈,然而拥有一个好的手机操作系统已成为各大厂商的首选。根据市场调查公司Ovum表示,手机制造商陆续采用含有先进的图形与影音处理能力 高效能硬件,逐渐从ARM-11系列处理器过度到ARM Cortex A8,且Qualcomm(高通)Snapdragon芯片也正在紧锣密鼓的筹备中。相

7、对于Symbian和Windows Mobile,现状登场的Android要更显年轻。Android是基于Linux内核的软件平台和操作系统,早期由Google开发,后由开放手机联盟Open Handset Alliance开发。它采用了软件堆层的架构,主要分为三部分。低层以Linux内核工作为基础,只提供基本功能,其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分1.2.2 国内研究现状国内手机市场热点频涌,产销量迈上新的台阶。彩屏手机、彩信手机、智能手机已逐渐成为市场主流,高像素照相手机、运营商定制手机、双模双卡手机开始纷纷登台亮相。与此同时,国内手机产销量经过二季度的短暂徘

8、徊,三季度又出现恢复性增长,目前已占得全球三分天下。随着国外手机系统的出现,中国移动OMS智能系统应运而生,OMS是中国移动深度定制的手机操作系统,该系统是基于Linux内核、采用Android源代码进行重新开发的一套系统,在用户界面以及功能上与此前的Google手机有很大不同。在功能方面,OMS深度集合了中国移动现有的各项业务,包括飞信、快讯、139邮箱、移动梦网等数据服务。在用户体验方面,OMS同样也汲取了iPhone,Android,Black Berry等多种移动终端的优势,并结合中国人自己的行为习惯和喜好方式,设计出了完全区别于Android的用户界面,其最大的特点就是采用大屏触摸式

9、设计风格。1.3 研究方法广泛搜集研究资料,参考国内手机系统设计的成果,分析他人的设计方法和思想,对该系统的工作模式及其体系结构进行探讨,对系统进行概要设计。认真请教导师,在导师的指导下利用在大学所学的知识认真仔细做好需求分析,做好详细设计的准备。应用相关的理论、技术编码,如Sqlite数据库理论,C+语法,Qt界面布局,交叉编译。最后运用构建知识将程序移植到mini2440上进行测试,并优化性能。开发过程中主要用到的开发工具有QT Creator4.6,ARM9,超级终端,设备驱动等。该系统预期实现的功能有:登陆功能,通信录管理,通话记录,信息服务,情景设置,多媒体,小工具,娱乐,客户服务,

10、谷歌地图。1.4 论文结构说明本文从软件开发的角度并结合详细的图示和相关关键代码阐述了关于开发基于Arm-Linux平台的模拟手机设计的背景、意义、系统的需求分析,概要设计,详细设计,并对数据库进行了分析,从数据库的用户需求,概要设计,E-R图设计,逻辑设计,物理设计,都进行了详细的阐述。一个好的软件开发过程是漫长的,本系统从设计到完成编码用了差不多三个月的时间,由于本人软件工程知识理解有限,难免会在使用的过程中产生开发过程中隐藏的问题,本文提供了该软件的基本运行,测试环境的搭建和调试方法,并提供了相关说明。由于作者水平和经验的限制,加之编写时间仓促,本文可能存在不当之处,敬请批评指正。第2章

11、 需求分析2.1 系统功能分析基于Arm-Linux平台的模拟手机设计系统统过给定的密码登录页面进行操作。登录判定上首次基于数据库验证。使用者可以在登录成功后对密码进行修改,并同时可以选择进行一系列操作,通话记录,信息服务,情景设置,多媒体,小工具,娱乐,客户服务。该系统的功能需求可归纳为:1. 用户通过密码进入主功能模块;2. 实现电话薄的基本管理;3. 记录本地的通话情况;4. 五子棋小游戏的简单实现;5. 背景,语言,时间的简单设置;6. 媒体播放器的简单实现;7. 计算器,记事本,系统实时监控,号码归属地查询,货币兑换等小工具的使用;8. 浏览器的实现;9. 简单客户信息的查看;2.2

12、 可行性分析2.2.1 技术可行性分析根据自己四年所掌握的知识,熟练掌握的语言有:C , C+,Linux C,同事具备对数据库的基本使用能力,能用Sql, Mysql, Sqlite,进行程序开发。同时,对嵌入式进行过系统的学习,懂得汇编语言,交叉编译,文件系统配置,驱动移植,并且能熟练运用QT进行程序开发。QT 是一个跨平台应用程序和 UI 开发框架。使用 QT 您只要一次性开发应用程序,无需重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序,Qt Creator 是 Qt 被 Nokia 收购后推出的一款新的轻量级集成开发环境(IDE)。此 IDE 能够跨平台运行,支持的系统

13、包括 Linux(32 位及 64 位)、Mac OS X 以及 Windows。根据官方描述,Qt Creator 的设计目标是使开发人员能够利用 Qt 这个应用程序框架更加快速及轻易的完成开发任务综上所述,技术上开发条件具备。2.2.2 经济可行性分析本系统的开发成本包括开发时间、软件、硬件。开发时间为三个月,由本人利用毕业设计的时间完成。软件成本为现有软件,已经网上找到的免费开发工具。完全可以胜任开发要求。硬件成本是已有的一台笔记本电脑,相关现有的外围设备,当然,演示的时候可能不能进行实践的操作。开发本系统的经济条件基本具备,可以开发。第3章 概要设计3.1 系统目标基于Arm-Linu

14、x平台的模拟手机设计,能进行简单的手机功能,通过这个系统,能进行通话,休闲,娱乐,学习等基本功能。3.2 系统模块图通过需求分析可得到模拟手机设计系统的模块由九大部分构成,它们分别是登录模块、通讯管理、通话记录、信息服务、情景设置、多媒体、小工具、娱乐、客户服务。功能模块图如图3.1所示。图 3.1 系统模块图3.3 系统功能流程图图 3.2 系统功能流程图第4章 数据库设计4.1 数据库需求分析数据库需求分析就是要了解在这个系统中,用户需要查询、更新、删除和保存哪些数据,收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础8。4.2 数据库概要设计概念设

15、计是整个数据库设计的关键。它的目的是将需求说明书中关于数据的需求,综合为一个统一的DBMS概念模型。首先根据单个应用的需求,画出能反映每一应用需求的局部E-R模型。然后将这些E-R模型图合并起来,消除冗余和可能存在的矛盾,得出系统总体的E-R模型。E-R图(Entity-Relationship图,实体-关系图)是由P.P.Chen于1976年首先提出。它提供不受任何DBMS约束的面向用户的表达方法,在数据库设计中被广泛用作数据建模的工具。E-R数据模型问世后,经历了许多修改和扩充。E-R模型的构成成分是实体集、属性和联系集,其表示方法如下:1. 实体集用矩形框表示,矩形框内写上实体名。2.

16、实体的属性用椭圆框表示,框内写上属性名,并用无向边与其实体集相连。3. 实体间的联系用菱形框表示,联系以适当的含义命名,名字写在菱形框中,用无向连线将参加联系的实体矩形框分别与菱形框相连,并在连线上标明联系的类型,即11、1M或MM。本系统中的实体以及实体的属性如图4.1-图4.4所图4.1 用户图4.2 通讯人图4.3 号码图4.4 短信4.3 数据库物理设计本系统采用QT里面自带的一种小数据库,不需要另外再去安装。具体部分实现如下:QSqlDatabase db; 创建数据库对象 db = QSqlDatabase:addDatabase(QSQLITE); 设置数炤库类型db.setDa

17、tabaseName(info.db); 设置数据库的名字QSqlQuery query; 声明一个对象 query.exec(create table password(id int primary key, pass varchar(6); 建表query.exec(insert into password values(1, 123); 插入数据query1.exec(select * from password); 查询 stModel = new QSqlTableModel(this, db); 创建数据模型 stModel-setTable(peoples); 模型关联stude

18、nts表stModel-setEditStrategy(QSqlTableModel:OnManualSubmit); 设置模型编辑策略 stModel-select(); 执行默认查询ui-viewInfo-setModel(stModel); viewInfo 关联模型stModel-insertRow(dwMapper-currentIndex() + 1); 增stModel-removeRow(dwMapper-currentIndex(); 删除dwMapper-submit();stModel-submitAll(); 修改第5章 系统详细设计5.1 登录详细设计5.1.1 登录

19、流程本系统登录流程如图5.1所示。图5.1登录流程5.1.2 登录页面登录代码设计密码匹配 while(query1.next() if(strcmp(query1.value(1).toString().toLocal8Bit().data(), pass.toAscii().data() = 0) spass = ; pass = ;Menu *m = new Menu(this); this-;将密码转换成*显示if(strlen(pass.toAscii().data() - strlen(ui-lineEdit-text().toAscii().data()!= 0) for(int

20、 num = 0; num lineEdit-text().toAscii().data(); num+) if(ui-lineEdit-text().toAscii().data()num != *) pass.append(ui-lineEdit-text().toAscii().data()num); spass.append(*); ui-lineEdit-setText(spass); 登陆界面: 图5.2 登录设计 5.2 通讯录管理功能详细设计5.2.1 通讯录管理的流程图图5.3 通讯录管理流程5.2.2 通讯录管理的设计 部分代码设计: QString name = ui-l

21、ineEditName-text();QSqlDatabase db;if(!db.isOpen() db = QSqlDatabase:addDatabase(QSQLITE); 设置数据库类型 db.setDatabaseName(info.db); 设置数据库名 if(!db.open() QMessageBox:warning(this, Error, 打开失败!); return; QSqlQuery query;if(!query.exec(select * from peoples) QMessageBox:information(this, 提示, query.lastErro

22、r().text(); while(query.next() query.value(0).toString().toLocal8Bit().data(); if( !strcmp(name, query.value(1).toString().toLocal8Bit().data() ) ui-lineEditNum-setText(query.value(2).toString(); ui-lineEditOther-setText(query.value(3).toString(); flag = false; break; 通讯录管理的部分界面: 图5.4 通讯录管理页面设计5.3 情

23、景设置5.3.1 语言设置目前设置了2中语言的转换:中、英文,将来可能添加多语言。语言设置的过程是:1. 在工程中 .pro 中添加 translations = MyPhone_ch.ts (ts前面的名字可以不同);2. 通过终端进入项目的目录 执行lupdate .pro 命令 (这时,MyPhone_ch.ts中内容更新了,被tr()标注的字符串被提取出来了);3. 执行 linguistMyPhone_ch.ts,进行编辑,对提取的每个串进行翻译,也就是键入对应字串。在左边面板中列出所有可供翻译的字串,单击之,右边编辑区会显示出来;4. 在“File”菜单下,单击Release项,这

24、会生成我们需要的.qm文件; 语言设置的部分代码:QTranslator translator(this); 声明一个翻译类的对象translator.load(Myphone_ch,.); 将配置文件加载进来qApp-installTranslator(&translator); 在所有界面插入配置文件语言设置的界面: 图5.5 语言切换界面 5.3.2 背景设置背景设置就是皮肤设置,借用css 的灵感, Qt也支持Qt自己的css, 简称qss。同css 相似,qss的主要功能与最终目的都是能使界面的表现与界面的元素分离,即质与形的分离,就如同一个人可以在不同的时候穿上不同的衣服一样,cs

25、s机制的引入,使得设计一种皮肤与界面控件分离的软件成为可能,应用程序也能像web界面那样随意地改变外观。详细内容请参考:(QFile:ReadOnly);qApp-setStyleSheet(qss1.readAll(); qss1.close();5.3.3 日期查询 图5.6 日期查询5.3.4 开机PIN密码的设置 图5.7 PIN的设置5.4 多媒体5.4.1 本系统支持视频,音频的播放,具体部分实现如下:mObject = new Phonon:MediaObject(this); aOutput = new Phonon:AudioOutput(Phonon:MusicCatego

26、ry, this); 音频 vWidget = new Phonon:VideoWidget(ui-frameVideo); 视频 vWidget-setAspectRatio(Phonon:VideoWidget:AspectRatioAuto); 让解码器找到长宽比从媒体文件自动(这是默认的) vWidget-setScaleMode(Phonon:VideoWidget:FitInView); 这个录像将安装角度来填补保持长宽比 sSlider = new Phonon:SeekSlider(ui-frameProcessVideo); vSlider = new Phonon:Volu

27、meSlider(ui-frameProcessListen); 声音进度条 Phonon:createPath(mObject, aOutput); Phonon:createPath(mObject, vWidget); 关联视频与 mObject对象 sSlider-setMediaObject(mObject); 播放进度条与播放位置关联 vSlider-setAudioOutput(aOutput); 声音进度条与音频关联 sSlider-setMinimumWidth(ui-frameProcessVideo-width(); 设置长度 播放进度条 vSlider-setMinim

28、umWidth(ui-frameProcessListen-width(); 设置长度 音量大小进度条5.4.2 实现的界面: 图5.8 视频播放 5.5 小工具5.5.1 计算器支持普通的数学运算功能,能进行 +,-, *、 %。同时还能进行二进制,十进制,十六进制的转换。计算器的部分代码如下:以下是转换为二进制的部分代码:if(T_D_H = 10) 当前是十进制 number = ui-txtEdit-text().toDouble(); number1 = (int)number; pnumber = number - number1; while(number1) listt+= n

29、umber1%2; number1 = 2; t-; while(t != -1) switch(listt) t-; if(pnumber != 0.0) 当前的十进制有小数部分 int pn = 3; temp.append(.); while(pn-) else if(T_D_H = 16) 当前是十六进制 strcpy(clist,ui-txtEdit-text().toLocal8Bit().data(); for(int t = 0 ; t txtEdit-setText(temp);T_D_H = 2;以下是转换为十六进制的部分代码if(T_D_H = 2) else if(T_

30、D_H = 10) j = 1; num = int(ui-txtEdit-text().toLocal8Bit().toDouble(); for(i = 0; ;i+) if(num % 16 9) switch(num%16) else clisti = (num % 16) + 40; num = 16; if(num 9) switch(num) else clist+i = num + 40; break; QString pen(Qt:blue);sceneX-addLine(-VIEW_WIDTH2+10, 10, VIEW_WIDTH2-40, 10, pen);sceneY-addLine(10,-VIEW_HEIGHT2

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1