(通信与信息系统专业论文)移动通信终端mmi架构设计与实现.pdf_第1页
(通信与信息系统专业论文)移动通信终端mmi架构设计与实现.pdf_第2页
(通信与信息系统专业论文)移动通信终端mmi架构设计与实现.pdf_第3页
(通信与信息系统专业论文)移动通信终端mmi架构设计与实现.pdf_第4页
(通信与信息系统专业论文)移动通信终端mmi架构设计与实现.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(通信与信息系统专业论文)移动通信终端mmi架构设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

i 摘摘 要要 在移动通信迅猛发展的今天,手机已无可置疑地成为了当今应用范围最广、用户 最多、 最引人注目的移动通信终端设备, 也越来越成为人们生活中不可缺少的一部分。 本次我们所研究的课题就是武汉某通信公司一款手机产品人机接口(mmi)的软件架构 设计,mmi软件是进行移动通信的人与提供移动通信服务的手机之间交互的界面, 对 其最基本的要求是清晰友好,运行稳定。gsm协议标准对协议栈软件做出了结构和功 能两方面的规定, 而对于mmi却只做出了行为界定各个终端厂商需要通过不同的 mmi结构体现自己的产品特色。 本文第一章首先介绍了 gsm 协议的由来以及 gsm 网络的发展状况, 还对手机的 发展过程以及课题背景进行了说明。 在第二章中,对移动通信系统的基本体系结构和各个接口进行了简要的说明,重 点介绍了手机软件的特性以及软件模型,对各层软件的功能进行了介绍。 然后在第三章中,重点介绍了手机系统的设计,包括文件系统、wap 协议、电 源管理、gsm 中间件等,并对手机软件的模拟组织结构和分层体系结构,进行了介 绍并分析。 最后在第四章中,我们从 mmi 的任务、接口设计、窗口组织管理等方面详细讨 论了对 mmi 层软件的设计思想, 给出了我们此次设计的实现方法。 我们还在 pc 上对 mmi 软件进行了仿真,最后对系统的性能进行了测试以及成果进行了分析。 关键词:关键词:gsm 移动终端软件 mmi gui ii abstract today, as the rapid development of mobile communications, mobile phones have undoubtedly become the most widely used mobile communications terminals, and the necessary in peoples life. this subject we studied is the design of man machine interface (mmi) on a certain mobile phone from wuhan honsyn communications technology company. mmi is the contact interface between the mobile phone and its user. the gsm protocol only defined the behavior of mmi, so mobile phone manufacturer should produce its own products by designing different mmi software style. in the first chapter, we introduced gsm protocol and its development, and we discuss mobile phone development process and the background of this subject. in the second chapter, we make a brief description on mobile communications systems, highlighting the characteristics of mobile phone software and software models. then in the third chapter, not only the design of mobile phone system from the ffs and wap protocol, but also the simulation software for mobile phones and flat organizational structure, were introduced and analyzed. finally, in chapter iv, we discussed design concepts in detail of the mmi software from its task and interface, and finally give out the realization of this design methodology, system performance and results analysis. keywords: global system for mobile communications gsm portable software for mobiles man-machine interface graphic user interface 独创性声明独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集 体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中 以明确方式标明。本人完全意识到,本声明的法律结果由本人承担。 学位论文作者签名:韩冰 日期:2006 年 5 月 8 日 学位论文版权使用授权书学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保 留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本 人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索, 可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密 ,在_年解密后适用本授权书。 不保密 。 (请在以上方框内打“” ) 学位论文作者签名:韩冰 指导教师签名:韩涛 日期:2006 年 5 月 8 日 日期:2006 年 5 月 8 日 1 1 绪论绪论 1.1 手机的发展手机的发展 从 1876 年贝尔发明电话以来,经历了长达一个多世纪的发展,电话通讯服务已 走进了千家万户,成为国家经济建设、社会生活和人们交流信息所不可缺少的重要工 具。在最近二十年来,电话技术和业务发生了巨大变化,通信的地点由固定方式转向 移动方式1。 1982 年,欧洲邮电大会(cept)成立了一个新的地标准化实体 gsm(global system for mobile communications),其目的是制定欧洲 900mhz 数字 tdma(time division multiple access)蜂窝移动通信系统(gsm 系统)技术规范。gsm 系统集中运用了现代 通信中窄带数字调制解调技术、信源编码技术、自适应均衡技术及扩频技术等,它具 有频谱利用率高,通信容量大,通话质量好,抗干扰性能强,数据传输速率高,保密 性以及集成度高等优点2。 1991 年, 欧洲各国都采用这一标准, 解决了国际漫游问题。 gsm 是一个开发的标准系统,自 1992 年投入商用以来,gsm 标准得到不断验证,而 且稳步发展,直到今天,gsm 的用户市场还是呈稳定增长态势。gsm 移动通讯系统 成为迄今以来最为成功的通信运营个案之一3。 中国移动 gsm 数字移动电话网成为世界上最大的 gsm 网。gsm 移动终端作为 gsm 网内与人关系最密切的部分正在进行着爆炸性的增长。 在移动通信迅猛发展的今天,手机已无可置疑地成为了当今应用范围最广、用户 最多、最引人注目的移动通信终端设备。现在的手机不再只是具有接打电话和收发短 消息的基本语音和数据传输功能,它具有的符合人们各种日常需要的功能使它越来越 成为人们生活中不可缺少的一部分,每一个手机制造厂商也都在竭尽所能地改善产 品,争取和巩固自己的客户群4。 事实上, 手机发展的历史不光代表着科技的进步, 同时也是人类文明发展的见证, 从模拟到 gsm、从 gsm 到 gprs、从单频到双频、从英文菜单到中文输入、从语音 到短信手机发展的速度与日剧增。 gsm 的发展首先有标准,后有设备。由于 gsm 协议栈的标准化,手机的基本架 2 构和通话功能都是相同的,手机厂商如若想要在竞争激烈的市场上赢得先机,就必须 着重解决产品质量中的几个问题: (1)外形是否新潮,重量是否轻盈; (2)存储容量要大,耗电要省; (3)mmi(人机界面)软件是否友好,操作是否方便; (4)是否支持一些外挂协议。 其中前两项多与硬件和制造成本相关,这里不多讨论。而后两项属于软件内容, 手机的“smart and multi-function”多体现于此,外挂协议,比如 wap,gprs 等,往 往需要网络方的支持,而 mmi 则是体现手机厂商软件自己特色的地方,所以这里也 就成为厂商竞争的重中之重。 简单的说,mmi 就是人机交互的界面,对其最基本的要求是清晰友好,运行稳 定。gsm 协议标准对协议栈软件做出了结构和功能两方面的规定,而对于 mmi 却只 做出了行为界定各个终端厂商需要通过不同的 mmi 结构体现自己的产品特色。 gsm02.30 第 6 版(phase2+)给出了一个最小化的 mmi 规范,这是一个行为级的描 述,重点在呼叫控制和补充业务过程5。ets(欧洲电联)把 mmi 的功能扩展和具体 实现完全交给了设备生产厂家,随着技术的进步,mmi 涵盖的内容也越来越广。首 先,通话、收发电子邮件、wap 上网这些协议功能要有优良的交互界面供用户进行 浏览、选择和发出命令;另外,mmi 还包括一些与协议关系不太密切的功能,比如 菜单组织,汉字现实,输入法集成,电话簿,记事本,录音,语音拨号,闹钟,计算 器, 游戏等等, 软件设计人员充分发掘手机 mpu (micro processing unit) 和 dsp (digital signal processing)的每一分潜力,使手机越来越向多用途化发展,逐渐与 pda、掌 上电脑等走向融合6。 1.2 课题的背景和意义课题的背景和意义 武汉恒烁通信技术有限公司是一家专业通讯终端设备设计制造商,拥有手机开发 和制造有领先技术。 本论文作者在某型号手机的开发过程中参与了手机软件 mmi 部分的设计。本论 文主要研究了手机软件的设计思想和实现方法,着重讨论了 mmi 部分及其实现。 如此众多的应用功能是如何有机的组织在一起的,mmi 技术的关键在于它的体 3 系结构。mmi 软件结构必须具备灵活、鲁棒,可扩展以及硬件无关等特性。 gsm 手机软件设计是一项大型软件系统工程。虽然 gsm 规范规定了 gsm 协议 栈软件的分层结构,但是包括层内构架、信号定义在内的具体实现方案厂家都各有不 同,再加上各个手机厂商选用的芯片组和操作系统各不一样,这些大型、复杂的代码 基本上彼此是不兼容的7。 由于协议栈(除 l1 物理层外)的功能固定,实现难度较大,并且软件提供商予 以技术保密,手机制造商一般购买或定制;但是应用层的设计是手机提供商回避不了 的问题, 因为手机的特色正体现于此。 技术实力雄厚的手机制造商, 如 nokia, motorola 都拥有自主设计的 mmi。 以 oem 方式起家的国产手机厂商很早就意识到了拥有独立知识产权的应用层软 件的重要性,国内各大手机厂商都加入对应用层软件的研究,工作的重点首先集中在 对软件的本土化方面(界面汉化、开机动画等) 。在对应用层软件进行本土化的过程 中,至少具有以下两方面的问题: (1)基于状态转换的结构导致函数关系庞杂,在加入新功能时转换接口众多。 (2)硬件依赖性强,一旦输入输出设备有些改变,将直接影响到许多应用层的 处理函数。 这些不利因素严重影响了国产手机厂商的开发进度和产品选型方面的自由度,因 此迫切需要引进更为合理、灵活、易于扩展的软件架构。在这方面,英国的软件提供 商 condat 走在了技术的前沿, 它为手机生产商提供从协议栈到 mmi 架构的一揽子 解决方案。 我的课题正是针对恒烁 m126 手机进行的基于 mfw 架构的结构研究和应用层程 序设计,恒烁公司希望通过我们的研究不仅解决软件本地化的问题,而且能提出新增 功能的通用加载方案和通用的硬件适配方案,从而掌握 mmi 设计的核心内容。经过 课题小组的通力协作,这个目标已经基本完成,经我们设计修改的 mmi 软件成功运 行在 m126 上。 1.3 攻读学位期间完成的主要工作攻读学位期间完成的主要工作 学位论文来自武汉恒烁通信技术有限公司的手机研发项目。我分析了当前的主流 手机的功能特点, 研究对比了 smartphone2003、 symbian os 等手机操作系统平台软件, 4 完成了本手机软件解决方案的功能需求分析,设计了手机的总体 mmi 体系结构,将 一个庞大的解决方案分解成多个字模块,该款手机目前处于产品化阶段。我主要完成 了一下工作: (1)完成了手机软件解决方案的需求分析何定义。 (2)组织并参与完成了 mmi 设计和评审。 (3)完成了系统的 mmi 总体架构设计,并参与编程实现。 (4)参与设计了通话等多个应用模块的实现。 5 2 移动通信系统及课题概述移动通信系统及课题概述 2.1 gsm 数字移动通信系统的组成数字移动通信系统的组成 gsm 数字蜂窝通信系统的主要组成部分可分为移动台 (ms) 、 基站子系统 (bss) 和网络子系统(nss) 。移动台部分包括移动终端(ms)和客户识别卡(sim) 。基站 子系统由基站收发台(bts)和基站控制器(bsc)组成;网络子系统由移动交换中 心(msc)和操作维护中心(omc)以及归属位置寄存器(hlr) 、访问位置寄存器 (vlr) 、鉴权中心(auc)和设备标志寄存器(eir)等组成8。其原理框图如图 2-1 所示。 图 2-1 gsm 数字蜂窝移动通信系统的组成 移动台就是移动客户设备部分,是 gsm 系统中用户所使用的入网设备。它分阶 段地为用户提供 gsm 系统的所有业务功能。 gsm 规定移动台设备应能提供的性能包 括基本性能、 补充性能和附加性能, 同时又规定某些强制性性能包括: 显示被叫号码、 pstn omc omc nmc oms sim me ms bts bts bsc bsc a um mscmsc mscmsc vlr vlr hlr hlr auc auc eireir b c e f g h d bss bss abis bts bts 6 呼叫进展信号指示、国家/plmn 指示、国家/plmn 选择、用户识别管理(即对 imsi 管理) 、无效 pin 码指示、imei 的管理、业务指示、移动台自测等9。它由两部分组 成,移动终端(ms)和客户识别卡(sim)。 移动终端就是“机” ,它可完成话音编码、信道编码、信息加密、信息的调制和 解调、信息发射和接收。 移动台设备应包括一套无线收发信机、一个控制器及话音编译码器,另外还应提 供用户接入网络必需的键盘、显示器,除此以外还应提供 isdn 终端接入功能,因此 在移动台中还应提供终端接入所必须的码速适配功能10。 (1)sm 接口 sm 接口是人机接口,是客户与网络之间的接口,主要包括客户对移动终端进行 的操作程序、 移动终端向客户提供的显示和信号音等。 sm 接口还包括客户识别卡(sim) 与移动终端(me)间接口的内容。 (2)um 接口 um 接口是空中无线接口, 是移动台和 bts 之间的通信接口, 用于移动台与 gsm 系统的固定部分之间的互通,其物理连接通过无线链路实现。um 接口传递的信息包 括无线资源管理、移动性管理和接续管理等。 (3)abis 接口 abis 接口是 bss 系统的两个功能实体 bsc 与 bts 之间的通信接口,用于 bts 和 bsc 之间的远端互连方式, 物理连接通过标准的 2mbit/s 或 64kbit/s 的 pcm 数字传 输链路来实现。abis 接口支持系统向移动台提供的所有服务,并支持对 bts 无线设 备的控制和无线频率的分配。 由于 abis 接口是 gsm 系统 bss 的内部接口, 所以是一 个为开放的接口,各设备厂家可自行定义。 (4)a 接口 bss 部分与 msc 之间的接口为 a 接口。a 接口基于 2mbit/s 数字接口,采用 14 位七号信令方式,主要传递呼叫处理、移动性管理、基站管理、移动台管理等信息。 (5)b 接口 msc 与 vlr 之间的接口为 b 接口, 主要用于 msc 向 vlr 询问有关移动台当前 位置信息,或通知 vlr 有关移动台的位置更新信息等。b 接口作为设备内部接口, 一般不作规定,只需完成 gsm 规范所规定的功能。 7 (6)c 接口 msc 与 hlr 之间的接口为 c 接口,它是一个至七号信令网的接口(采用 24 位七 号信令方式),2mbit/s 或 64kbit/s 的数字接口。它主要完成被叫移动用户信息的传递 和获取被叫用户被分配的漫游号码。 (7)d 接口 hlr 和 vlr 之间的接口为 d 接口它也是一个至七号信令网的接口(采用 24 位七 号信令方式),2mbit/s 或 64kbit/s 的数字接口。它主要交换位置信息和用户信息。 (8)e 接口 msc 与 msc 之间的却称为 e 接口,它也是采用 24 位七号信令方式,用于移动 台在呼叫期间从一个msc区域移动到另一个msc区时为了通话的连续而进行的局间 切换,以及两个 msc 间建立用户呼叫接续时传递有关信息。 (9)f 接口 msc 与 eir 之间的接口为 f 接口,它也是采用 24 位七号信令方式,用于 msc 检验移动台的 imei 时使用。 (10)g 接口 g 接口是 vlr 之间的接口,当移动台以 tmsi 启动位置更新时,vlr 使用 g 接 口向前一个 vlr 获取 ms 的 imsi 和相应的信息。 (11)nss 或 bss 与 omc 之间的接口 该接口是基于 x.25 接口或七号信令网的接口,执行 tmn q3 协议。 上面介绍了移动通信系统中的设备以及它们的接口,下面来重点看看此次我们课 题研究的对象移动终端。 2.2 gsm 手机软件特性手机软件特性 移动终端人机接口可能包括与 gsm/gprs 不相干的功能, 比如集成的 pda 功能, 游戏以及日程管理等11。 现在移动台制造商们正在将越来越多的注意力集中到移动台 人机接口的设计上,力争提供给用户一个美观易用、功能齐全的操作平台。显示屏由 原先的黑白小屏幕显示,发展为现在的真彩色大屏幕,移动终端存储器容量也快速增 长,硬件设备的高速发展,为人机接口的各种改进提供了可能性。 为了更好地实现上述功能,手持设备软件应该做到以下几点: 8 (1)软件工作稳定可靠,与底层软件接口方便,以保证整机的性能。 (2)选用代码效率高,可移植性好的编程语言,以便提高产品的性能价格比, 降低开发成本。 (3)根据 gsm/gprs 手机界面的具体情况,充分利用彩屏 led 显示器的表达 能力,借鉴、采用最新的软件开发技术,运用图形、动画、汉化界面及汉字功能,美 化产品、方便使用。 (4)精心组织程序结构,使软件结构清晰,各模块独立性强,可扩充性、可封 装性好, 便于开发小组分工合作以及各阶段开发成果的充分利用, 缩短产品开发周期。 (5)发挥创造性,开发特色功能、实用功能,提高产品吸引力12。 2.3 gsm 手机软件模型手机软件模型 gsm 手机软件体系结构包括: (1) 人机界面(mmi)软件 (2) gsm 第一层软件(l1 层软件) (3) gsm 第二层软件(l2 层软件) (4) gsm 第三层软件(l3 层软件) (5) 数据/传真服务软件 (6) gprs 协议软件 (7) wap 应用协议软件 具体各层软件之间的逻辑结构如图 2-2 所示。 l1 层软件层软件 按照 osi 参考模型的定义,l1 层软件支持在物理介质上传输 bit 数据流所要求的 所有功能,是在上层协议软件和硬件之间的接口13。 l1 软件结合上次软件执行小区选择、帧同步、发送功率、接收功率、调频等低 层功能。 l1 层与 l2 层的接口用以支持控制信道信息的传递;与无线资源管理(rr)的接 口用以支持信道的分配以及物理层系统信息的传递; 与无线链路控制/介质访问控制层 (rlc/mac)的接口用以支持分组数据业务等。另外,l1 还提供对射频硬件和 dsp 接口的驱动,但不包含信号处理功能。通过完成对 dsp 的驱动控制,还可完成语音编 9 解码、解调/均衡算法、数据交织/解交织算法、噪声抑制、信道编码等功能14。 mn mn cm cm sm sm gm gm layer layer layer 1 layer 1 hardware driver hardware driver v. 24 driver v. 24 driver dc dc mmi mmi wap ip wap ip l ayer 3 l ayer 3 llc llc rlc rlc mac mac gprs gprs sndcp sndcp mmc mmc cmm cmm mmr mme mmr mme mm mm grr grr rr rr rr rr mmi:人机界面 wap:无线应用协议 gprs:通用分组无线协议 cm:控制管理 rlc/mac:无线链路控制/介质访问控制 grr:grps 无线资源管理 gmm:gprs 移动管理 sndcp:子网相关结合层协议 mm:移动管理 l1:gsm 第一层(物理层)协议 sm:短消息 l2:gsm 第二层(数据链路层协议) l3:gsm 第三层(网络层)协议 llc:逻辑链路控制 rr:无线资源管理 gm:gprs 管理 图 2-2 2.5g gsm 手机软件体系结构 10 l2 层软件层软件 数据链路层是 osi 参考模型的次低层,它包括各种数据传输结构,对数据传输进 行控制。其主要功能包括:数据链路上的格式和操作错误的检测、流量控制、随即接 入信道在有接入请求后建立数据链路时的争抢判决等。 l3 层软件层软件 第三层是gsm协议的核心, 它分为无线资源管理子层 (rr) 、 移动管理子层 (mm) 、 连接管理子层(cm) 。cm 子层又有呼叫控制(cc) 、补充业务(ss)和短消息管理 (sms)等实体。 rr 子层负责对无线链路连接(物理的)和数据链路连接(逻辑的)的建立、保 持和释放。在空闲模式下,rr 子层负责协调进行小区的选择和重选。在专用模式下, rr 子层负责协调从报告监测结果到信道重新分配的整个切换过程15。 mm 子层主要考虑移动站在空闲模式下如何想网络通报它的地理位置。一个大的 plmn 服务区域被划分为许多个小的定位区域 la,mm 子层的任务就是当移动站进 入一个新的定位区域时通知网络,以便能够继续跟踪移动站。此外,mm 子层还将所 有其它上层协议实体的呼叫多路复用到一个单一的无线信道,也就是 sdcch;同时 mm 子层完成呼叫重建任务的过程相对于用户时透明的。 cc 子层负责移动终端与网络一方的 msc 之间的操作,它管理与呼叫建立和保持 相关的任务,这些任务对用户来说是不可见的。cc 子层要为呼叫议定一条合适的通 路,并告知用户呼叫进行的情况(即是否被叫已经振铃、占线或号码无效等) 。每个 呼叫,不管呼入还是呼出,都有自己专用的 cc 呼叫实体与之对应。cc 使得用户不 必面对网络或无线接口的出错信息,保证呼叫双方的控制信息按照正确的顺序进行。 ss 子层是一个简单的状态机,它支持呼叫无关补充服务信息以简单的信息格式 (fie)传送,这种简易的信息格式主要承载了建议无线接口消息。向 fie 信息格式 的转换由内核的用户层来完成。 mmi 软件软件 mmi 软件负责终端与用户之间的交互,因此所要求的主要功能有: (1)输入用户操作信息; (2)以声、光、振动等手段显示手机及网络的状态、输出操作结果; (3)实现 gsm 相关协议, 如 dra ft pr ets300 906 移动台特性,ets300 907 11 移动台 mmi 等标准对 mmi 的各项要求; (4)提供合理、方便的操作方法; (5)对众多的功能进行分类、组织, 以方便用户使用; (6)增加计算器等附加功能, 提高手机的实用性; (7)加入动画、图标、问候语等修饰功能,使产品界面美观、友好16。 为了满足上述功能,对 mmi 软件的开发工作提出了以下相关要求: (1)充分消化 gsm 协议,完整地实现协议要求的各项基本功能; (2)软件工作稳定可靠,与底层软件接口方便,以保证整机的性能; (3)选用代码效率高,表达能力强,可移植性好的编程语言,以便提高产品的性 能价格比,降低开发成本; (4)根据 gsm 手机界面的具体情况,充分利用 lcd 显示器的表达能力, 借鉴、 采用最新的软件开发技术, 运用图形、动画及汉化界面、汉字功能,美化产品、方便 使用; (5)精心组织程序结构,使软件结构清晰,各模块独立性强,可扩充性、可封装 性好, 便于开发小组分工合作以及各阶段开发成果的充分利用,达到缩短产品开发周 期、丰富产品功能的目的; (6)发挥创造性,开发特色功能、实用功能,提高产品吸引力17。 上面对手机软件进行了分析,根据手机软件的特性要求,下面将具体看看此次课 题中我们对手机系统的整体设计方案以及 mmi 在系统中的分析。 12 3 系统设计及其系统设计及其 mmi 体系结构分析体系结构分析 3.1 手机系统设计手机系统设计 本次,我们基于手机通信模块进行整机周边电路设计并进行软件开发。所谓手机 通信模块,就是集成了射频和基带元件的手机主板,它嵌入了 gsm/gprs 协议18; 周边电路设计,就是要在这块主板上设计出显卡、声卡、键盘等设备的周边电路。 本课题涉及到的软件设计和开发,主要是完成计算功能,进行人机界面交互、高 层数据协议软件处理等。gsm 基带、射频、协议处理则由通信模块完成,我们使用 标准的 at 命令驱动通信模块工作。 3.1.1 嵌入式实时操作系统嵌入式实时操作系统 操作系统内核为基于 nucleus 的,为 ti2112 系列芯片设计的实时操作系统。提供 任务管理、任务间的通信与同步、内存管理、中断管理和定时器管理等功能,并提供 实时性保证的机制,使移动通信过程中的语音和数据等内容能够得到及时处理。除此 以外,还具有可移植性和代码精简等特性。 任务管理包括任务的创建、删除、挂起、解挂、调度,以及任务的优先级改变等 功能,保证任务状态的正确变迁和处理器资源的有效使用;任务间的通信与同步为任 务与任务之间和任务与终端处理程序之间提供信号量、消息队列和事件管理等通信与 同步的机制; 内存管理实现系统内存的分配与释放操作, 并避免由此可能产生的碎片; 中断管理建立硬件中断同中断服务程序的联系,并提供现场的保护和恢复机制,简化 用户的中断服务程序;定时器管理为系统提供时钟管理,是多任务能够正常运转的重 要机制19。 3.1.2 ffs(文件系统)(文件系统) 通过文件系统对手机存储设备的管理,将抽象的平面存储空间变为具有层次关系 的,以目录及文件为存储对象的方便、简洁、通用的存储形式。 针对手机存储设备的特点,文件系统具有以下主要特点: (1)可移植性。支持多种存储设备及其相应的驱动程序,既能很好的支持手机中 常见的普通 flash 设备,也支持各种卡式存储设备,还应支持即插即用设备的处理。 13 (2)支持多任务。能够支持多个任务对文件系统的操作。 文件系统提供对文件的以下操作: (1)基本操作。创建,更名,打开,关闭,读,写,删除。 (2)文件属性操作。可以设置、查询和改变文件的属性。 (3)目录、路径操作。可以创建或是删除目录,也可以改变路径或是设置当前工 作目录。 另外,以 flash 为存储介质时,还充分考虑了文件系统对 flash 的损耗平衡问题, 避免对同一区域进行大量的操作,尽量使 flash 中的每一个存储区域被擦除的次数相 等,以增加 flash 的使用寿命20。 3.1.3 wap 协议协议 wap 协议栈实现 wap1.2.1 规范,主要包括 wsp、wtp、wtls 和 wdp 等协议, 提供面向连接的服务和无连接模式的服务,支持 push,多会话和异步交易,并能有 效兼容主流网关平台21,包括以下功能: (1)会话协议(session protocol) 提供两种服务:面向连接服务和无连接服务22 支持 get、post 和 head 支持能力协商(capability negotiation) 支持 ota 的推服务模式 支持 push over sms 支持用户代理配置(user agent profile) (2)传输服务(transfer service) 支持 class0,1 和 2 的 initiator 和 responder 支持分段重组功能(segmentation 和 reassenmbly-sar) (3)承载网服务(transport servie) 提供通用报文传输服务框架,支持不同承载网络的报文传输23 3.1.4 电源管理电源管理 连续使用时间的长短对手机的产品化具有重要的影响,要求手机的功耗情况能够 与手机当前的活动状况一致,即所消耗的功耗都是必需的,从而减少不必要的功耗, 14 延长手机的使用时间。为此,本模块实现了一下内容: (1) 适合手机平台的功耗管理模式。 操作系统的功耗管理模式同硬件平台的功耗 管理特性有着密切的联系,需要建立一种比较灵活的、能够适应大多数硬件平台的功 耗管理模式,不同的管理模式功耗不同,根据系统当前的活动状况,确定出合适的工 作功耗模式,从而实现系统的低功耗目标。 (2)适合手机平台的功耗管理策略。以操作系统的功耗管理机制为基础,建立适 于手机平台的功耗管理策略。不同手机平台的外围设备可能不同,需要有灵活的外围 设备功耗管理机制24。 系统处在不同的状态,也代表不同的功耗模式。在每个状态下对 mcu 和外设的 控制都有其各自的特点,通过不同的功耗管理策略的组合来实现整机功耗的降低,延 长手机的通话时间和待机时间。 3.1.5 gsm 服务中间件服务中间件 gsm服务中间件是介于上层mmi应用和底层gsm/gprs协议栈之间的一层中间 件,它封装了所有的 gsm 业务和第二阶段附加业务25,包括: (1)cm(呼叫管理) (2)nm(网络管理) (3)sms(短信) (4)stk(sim 卡工具箱) (5)ss(附加业务) (6)mux(复用协议) 通过本中间件的封装了 gsm/gprs 协议,屏蔽不同 gsm/gprs 通信模块的差异 性,向上层 mmi 应用(电话、短消息等)提供统一的接口。这样把 mmi 处理和底层 协议逻辑分开,即简化了 mmi 的处理逻辑,又提高了解决方案的可移植性26。 3.1.6 消息处理消息处理 我们研究并实现了 sms(short message service)和 mms(multimedia messaging service)的接收和发送处理,为手机建立一个能够处理多种类型消息的平台。 sms 是最早的短消息服务标准,也是目前普及率和使用率最高的一种短消息业 务。 15 mms 为多媒体信息服务。多媒体功能除可以传送纯文本消息外,还可以传输包 括视频、图片、音乐等在内的各种内容,既支持电路交换数据格式,也支持通用分组 无限服务 gprs 格式27。 3.1.7 数据同步数据同步 与 pc 连接, 用于手机通过同步电缆和 pc 进行手机基本信息和配置文件的同步28。 包含 pc 端同步工具和手机端连接管理器两个部分,可以通过串口、usb、irda 进行 连接。 (1)在 pc 上查看、编辑、下载手机基本信息,如:铃声、墙纸、电话本、日程 安排信息、短消息等。 (2)在 pc 上对手机进行相应的设置,并注册到手机,如:wap 配置、彩信配 置等。 pim 提供常用的应用程序:电话本、通话记录、行程备忘、文件管理等。 将以上诸多功能组件,通过用户事件和 gsm 事件驱动作为主线,进行有机的连 接在一起,这样形成了一个有机的整体系统。 接下来对 mmi 软件单独进行分析。 3.2 mmi 软件功能模拟的组织结构软件功能模拟的组织结构 gsm 手机的 mmi 软件有一个主程序, 主要作用是建立消息循环, 负责分发消息。 当收到来自底层的开机消息时,mmi 层软件进行初始化,并创建基本窗口。 窗口(window)是一个术语,它可以接收消息,可能在显示屏上有一个对应的显 示区域,也可以没有。字符显示区,编辑域,或者既有字符显示区又有编辑域的对话 窗口都是窗口的例子。基本窗口是 mmi 层所有窗口的“根” ,其它窗口都是这个窗口 的子窗口。到达 mmi 层的 gsm 消息,其它窗口不处理时,都送到基本窗口中作缺省 处理。在基本窗口中,根据不同情况,进行状态转换,分别创建等待关机、充电、等 待插入 sim 卡、等待输入 pin、等待 sim 卡解锁等子窗口,处理开机及关机过程中 的各项工作。顺利完成各项开机工作后,转入待机状态,创建待机窗口。如果因接听 来电或拨打电话进入通话状态,则取消待机窗口,创建通话窗口。 待机窗口可以完成拨号、启动快捷功能等工作,也可以进一步创建电话本、功能 16 菜单等子窗口。 菜单窗口可以派生一系列子菜单窗口,形成一棵菜单树。这棵菜单树把手机的众 多功能有机地组织在一起。各个菜单窗口都是菜单窗口类的实例,菜单的选择、显示 等功能都在菜单类中完成。图 3-1 的树形结构图直观地反映了 mmi 软件中各种功能 模块的组织结构。菜单树的末端树叶部分是具体的功能,在此不做讨论。 主程序 主程序 初始化 初始化 基本窗口 基本窗口 待机窗口 待机窗口 菜单1窗口 菜单1窗口 通话窗口 通话窗口 主菜单窗口 主菜单窗口 电话本窗口 电话本窗口 菜单1.1窗口 菜单1.1窗口 菜单1.1.1窗口 菜单1.1.1窗口 功能1.1.1.1窗口 功能1.1.1.1窗口 功能n.1.1窗口 功能n.1.1窗口 功能n.1.2窗口 功能n.1.2窗口 菜单n窗口 菜单n窗口 菜单1.1.2窗口 菜单1.1.2窗口 功能1.1.2.1窗口 功能1.1.2.1窗口 快捷菜单窗口 快捷菜单窗口 等待关机、充电、等待插入sim卡、等 待输入pim码、等待sim卡解锁等窗口 等待关机、充电、等待插入sim卡、等 待输入pim码、等待sim卡解锁等窗口 功能1.1.2.3窗口 功能1.1.2.3窗口 功能1.1.2.2窗口 功能1.1.2.2窗口 功能1.1.1.2窗口 功能1.1.1.2窗口 菜单n.1窗口 菜单n.1窗口 开机消息 开机消息 图 3-1 mmi 功能模块组织结构示意图 17 3.3 mmi 软件的分层体系结构软件的分层体系结构 mmi(man machine interface)的体系结构大致可以分为三部分:mmi逻辑层 (mmi logic),mmi框架层(mmi framework)和应用控制接口(application control interface)。 aci(application control interface)层位于各种通信协议栈(包括移动通信协 议、wap通信协议、蓝牙通信协议等)的上面,它以at命令的格式和协议栈进行 通信。 mfw(mmi framework)起着mmi和aci的桥梁作用。它大大减少了mmi的开发 的工作量,使代码的编写更加简洁、高效。它以c语言库模块的形式为上层提供各种 服务(呼叫管理、sim卡管理、sms 管理、网络管理、电话簿管理等等)29。 它们的层次结构见下图。 mmi mmi driver driver mfw mfw mfw object handler mfw object handler aci g23 图 3-2 分层体系结构 三层结构各司其职,它们之间如何通信就显得非常重要。体系结构之间的通信机 制如下图3-3所示。 18 mfw mfw aci aci logic mmi logic mmi function function return event event call back call back a.直接交互 b.通过事件回答 c.通过事件报告 图3-3 体系结构之间的通信机制 下面首先介绍一下mfw层。 3.3.1 mfw 层层 mfw mmi framework,mmi man-machine interface。 可以将mfw理解为类似于visual c+中的mfc, 它为人机界面的开发定义了一种 可扩展的框架模型。它定义和封装了各种基本元素以及元素间交互作用的过程,并提 供用户实现应用逻辑的手段。另外,作为程序运行的基础,mfw还实现了用于动态 分配元素对象的内存堆。 3.3.1.1 mfw 元素类型元素类型 mfw中所管理的元素主要包含两类:界面元素和下层设备或服务。 如图3-4,左边所列举的模块主要是对下层设备/服务的封装或第三方提供的模块。 主要包括网络管理、 呼叫管理、 sim卡管理、 短信 (sms) 管理、 辅助服务 (supplementary services,信号强度、电池容量管理等) 、sim卡扩展应用(sim application toolkit) 、文 字输入管理等。右边所列举的模块主要是图形界面中的基本元素。主要包括窗口管理、 键盘管理、文字编辑、菜单管理、计时器管理、图标(指屏幕上方的固定图标,如信 号强度指示、电量指示、未接来电指示等)管理以及其他设备管理。 19 图 3-4 mfw 逻辑结构图 3.3.1.2 mfw 元素结构元素结构 mfw 元素采用类似的数据结构表达。一般来说,他们在运行时从指定的堆里动 态分配,然后根据需要,一般会放入一个特定的元素链表中去。 在 c 语言程序中,一般将一个对象的属性数据组织成一个结构体。然后定义一组 相关的函数,作为属性数据的访问方法。mfw 元素对象的数据结构也不例外。 mfw 元素对象由一个 mfwhdr 结构和一个记录自有数据的结构组成。如窗口元 素的自有结构是 mfwwin,菜单元素的是 mfwmnu,计时器元素是 mfwtim,键盘元 素是 mfwkbd。 多数 mfw 元素的数据结构如下图所示。header 部分即 mfwhdr 结构体,其中的 成员 type 用于标志元素的类型,成员 next 用于组成链表,成员 data 则指向该元素的 自有结构体(如 mfwwin) ,即图 3-5 中的“control block”部分。 20 element element header header control block control block type of element type of element next header next header event mask event mask event handler event handler mmi event handler mmi event handler current state current state type next data mask flags handlers type speciafic data 图 3-5 mfw 元素的数据结构 “control block”中的数据内容则根据元素的类型各不相同,但(可能是)所有的 元素结构中都含有一个类型为“mfwcb”的回调函数指针,不过该回调函数所相应的 事件则不尽相同。 3.3.1.3 mfw 元素内存组织元素内存组织 每一个 mfw 元素都含有一个 mfwhdr 结构体作为元素数据的头部。mfwhdr 结 构体主要用于形成单向链状结构。这种链状结构在运行时数据组织和消息分发机制中 起着重要作用。 typedef struct mfwhdrtag /* header structure */ struct mfwhdrtag *next; /* next header */ mfwtyp type; /* elem type code */ void *data; /* elem control structure */ mfwhdr; 如下图 3-6 所示,在 mfw 运行时,会存在两种主要的链表结构。 一种以 mfwroot 变量所指向的节点作为首节点。 这个链表在程序的一些注释中被 称为“root chain” 。 另一种存在于窗口元素内部,以 mfwwin 结构中的成员变量 elems 所指向的节点 作为首节点。这种链表被称为 window chain。 21 hdr hdr eorc eorc hdr hdr control block control block control block control block hdr hdr eoc eoc hdr hdr control block control block control block control block data elems nextnextnext datadata data next nextnextnext mfwroot next = 0 winnm 图 3-6 mfw 元素内存组织 root chain 主要用于存放顶层窗口,和一些全局元素(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论