(信号与信息处理专业论文)移动多媒体广播信号路测系统的设计与实现.pdf_第1页
(信号与信息处理专业论文)移动多媒体广播信号路测系统的设计与实现.pdf_第2页
(信号与信息处理专业论文)移动多媒体广播信号路测系统的设计与实现.pdf_第3页
(信号与信息处理专业论文)移动多媒体广播信号路测系统的设计与实现.pdf_第4页
(信号与信息处理专业论文)移动多媒体广播信号路测系统的设计与实现.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(信号与信息处理专业论文)移动多媒体广播信号路测系统的设计与实现.pdf.pdf 免费下载

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

文档简介

中文摘要 中国移动多媒体广播( c m m b ) 是我国自主研发的移动多媒体广播标准,于 2 0 0 6 年正式颁布,主要面向m p 3 、p d a 、手机等便携式移动设备。c m m b 的迅 速发展以及网络建设工作的进行,使得对c m m b 信号测试仪的需求日益增大。 本文详细论述了c m m b 信号路测系统的设计与实现。本应用借鉴软件工程 的设计规范,首先确定用户需求,根据用户需求设计程序界面。并将整个软件划 分为实现不同功能的模块,使整个软件结构清晰,易于调试并有利于后期维护。 本文第三章对软件的用户需求做了详细的分析,并依此对软件界面功能进行 划分,最后按照功能将界面分解为不同的子模块。并介绍了软件的解决方案以及 硬件平台的选择。本章在最后对整个系统的结构、软件结构和硬件结构做了说明。 本文第四章主要论述了整个软件的设计。首先对程序界面的设计做了说明, 并详细分析了各界面子模块的设计原理。界面程序设计的主要目标是操作简单、 稳定性强、响应及时,所有数据处理都放在后台执行,避免阻塞消息线程导致界 面卡住。除了程序界面,本章还对其他的模块的实现原理做了说明,其他模块的 设计所遵循的原则如下,接口简洁易用,稳定性强。有较好的可扩展性。 关键词:c m m b ;信号测试;软件设计:电子地图 a b s t r a c t c h i n am o b i l em u l t i m e d i ab r o a d c a s t i n g ( c m m b ) i si n d e p e n d e n t l yd e v e l o p e db y c h i n a ,p r o m u l g a t e di n2 0 0 6 ,m a i n l yf o rm p 3 ,p d a , c e l lp h o n e sa n do t h e rp o r t a b l e m o b i l ed e v i c e s t h er a p i dd e v e l o p m e n to fc m m ba n dn e t w o r kc o n s t r u c t i o nm a k e s c m m b s i g n a lt e s t e rh a v eav e r yl a r g ed e m a n d t h i sp a p e rd e s c r i b e sc m m bs i g n a lt e s t e rs y s t e md e s i g na n di m p l e m e n t a t i o n t h ea p p l i c a t i o nr e f e r e n c es o f t w a r ee n g i n e e r i n gd e s i g n a tf i r s tt h eu s e rn e e d si s d e t e r m i n e d , d e s i g no fp r o g r a m m i n gi n t e r f a c ei sb a s e do nu s e rn e e d s t h es o f t w a r ei s d i v i d e di n t od i f f e r e n tf u n c t i o n a lm o d u l e s ,s ot h a tt h ew h o l es o f t w a r es t r u c t u r ec l e a r a n de a s yt od e b u ga n dc o n t r i b u t et op o s t - m a i n t e n a n c e i nt h et h i r dc h a p t e r , t h e r ei sad e t a i l e da n a l y s i so ft h es o f t w a r eu s e rn e e d s ,w h i c h i su s e dt od e t e r m i n es o f t w a r ei n t e r f a c ef e a t u r e s a c c o r d i n gt of u n c t i o n , i n t e r f a c ei s d i v i d e di n t om a n ys u b - m o d u l e s t h i sc h a p t e ra l s od e s c r i b e st h es o f t w a r es o l u t i o na n d h a r d w a r ep l a t f o r mc h o i c e s i nt h ee n do ft h i s c h a p t e r , w h o l es y s t e ms t r u c t u r e , s o f t w a r es t r u c t u r ea n dh a r d w a r es t r u c t u r ea r ei l l u s t r a t e d t h ef o u r t hc h a p t e rm a i n l yd i s c u s s e st h ed e s i g no ft h es o f t w a r e f i r s t ,t h ed e s i g n o ft h ep r o g r a mi n t e r f a c ea r ei l l u s t r a t e d t h ed e s i g no fa l ls u b - m o d u l e so fp r o g r a m i n t e r f a c ei si l l u s t r a t e d t h em a i no b j e c t i v eo fi n t e r f a c ed e s i g ni n c l u d eu s e r - f r i e n d l y , s t r o n gs t a b i l i t y , r e s p o n s et i m ea n ds oo n a l ld a t a - p r o c e s s i n ga r ep l a c e di nt h e b a c k g r o u n d ,t oa v o i db l o c k i n gm e s s a g et h r e a dl e a d i n gt oi n t e r f a c es t u c k s e c o n d , t h i s c h a p t e ri l l u s t r a t e st h ed e s i g no fo t h e rm o d u l e s t h eg o a lo ft h ed e s i g no ft h em o d u l e i n c l u d e ,h a ss i m p l ei n t e r f a c e ,h i g h l yr e l i a b l e ,h a sg o o ds c a l a b i l i t y k e y w o r d s :c m m b ;s i g n a lt e s t ;s o f t w a r ed e s i g n ;e l e c t r o n i cm a p 第一章绪论 1 1 选题背景 第一章绪论 c m m b 是英文c h i n am o b i l em u l t i m e d i ab r o a d c a s t i n g ( 中国移动多媒体广播) 的简称,是我国自主研发的移动多媒体广播的行业标准。主要应用于手机、p d a 、 m p 3 、m p 4 、数码相机、导航仪、笔记本电脑等便携式移动终端上。为用户提供 电视节目、交通导航、股票行情、娱乐信息等服务。国家广电总局在2 0 0 8 年北 京奥运会期间提供了c m m b 试播服务,为用户提供各项赛事的直播。【l 】 2 0 0 9 年初,已在北京、上海、青岛、秦皇岛、广州、深圳、长沙、杭州、 呼和浩特、银川i 、石家庄、昆明、武汉、重庆、福州、西安、南京等十七个城市 建成、开通了c m m b 单频网,共计建设了5 5 个大功率发射点。截止到目前,已 经完成了全国3 0 0 多个城市的基本覆盖。国家广电总局计划在将来对大陆全部地 市级以上的城市达到深度覆盖,同时覆盖所有的县级市,以及覆盖1 0 0 0 个以上 的县和主要的高速公路。 随着c m m b 网络建设工作的进行,对于c m m b 信号测试仪的需求也越来 越大,移动测试的需求也非常大。本工程主要面向移动测试,着眼于便携性好、 操作简单易用、测试结果直观性强、测试数据支持共享等功能。 1 2 国内外研究现状 广电总局在2 0 0 7 年成立了具体运营与管理c m m b 业务的中广卫星移动广播 有限公司,并将在中广卫星移动广播有限公司基础上成立一家新的股份公司,股 东既包括中央和地方广电机构,还包括非广电系统的单位和厂商,新公司在全国 将建立多个分公司,实现c m m b 业务的全国性运营与管理。目前c m m b 已经在 技术、资金、内容、芯片和终端等方面做好了产业化发展的准备,c m m b 产业链 正处于加速完善阶段。【z 】 c m m b 已被列为“十一五国家科技支撑规划重点项目,该项目实施年限为 3 年,从2 0 0 8 年至2 0 1 0 年,由广电总局科技司具体组织实施,向相关企业公开 招标。c m m b 工作组的成员单位包括广电机构、科研机构以及生产制造企业。 c m m b 标准已经吸引了大量c m m b 产业链各环节企业参与进来,上游企业包括 第一章绪论 c m m b 研发和c m m b 芯片厂商,中间环节企业包括c m m b 调制器、c m m b 复用 设备、c m m b 激励器、c m m b 发射机、c m m b 测试仪器、c m m b 配套设备等厂 商,下游企业包括c m m b 终端接收设备厂商。1 2 1 2 0 0 7 年三月,创毅视讯成功研发全球首枚c m m b 标准信道解调芯片i f l 0 1 1 3 1 , 其灵敏度、功耗、体积、成本等各项性能指标都达到并优于商用要求,并实现大 规模量产。随后s i a a o 、泰合志恒、展讯等公司也相继推出了c m m b 解调芯片产 品。 随着c m m b 网络的覆盖日趋完善,运营公司的组建,c m m b 在全国开展了 商业运营。2 0 0 9 年,随着3 g 牌照的发放,中国移动同c m m b 运营商中广移动 签订了t d + c m m b 推广协议,所有的t d 终端都将加载c m m b 芯片。 目前为止已经完成了全国3 0 0 多个城市的基本覆盖。目前是全球最大的移动 多媒体广播电视覆盖网络,共建设了5 0 0 多个发射点,覆盖了3 0 0 多个城市,已 经成为了全球最大的移动多媒体广播覆盖网。 1 3 论文的主要工作 论文分为五章。 第一章介绍选题背景和c m m b 的研究现状。 第二章简介c m m b 系统的技术特点,并论述c m m b 广播信道物理层和复 用原理。 第三章详细分析了软件的功能需求,并简单介绍了移动多媒体广播信号路测 系统的软件和硬件系统的设计。 第四章对整个软件部分做了详细介绍,首先介绍整个系统的数据处理流程, 然后介绍了界面程序的设计并对各子模块的设计做了详细论述,最后介绍了 c m m b 业务管理模块和联机数据处理模块的设计原理。 第五章对整个工程做了总结,并指出下一步的工作方向。 2 第二章c m m b 系统及信号测试 第二章c m m b 系统及信号测试 2 1c m m b 标准及信号测试 2 1 1c m m b 标准及技术 c m m b 是我国自主研发的多媒体广播行业标准,主要应用于m p 4 、手机、p d a 等移动手持设备。c m m b 是针对我国幅员辽阔及东部地区城市密集、用户众多和 业务需求多样化的情况,立足我国国情,通过吸纳成熟的先进技术设计的“天地 一体化”的技术体系,拥有低成本、可快速实现移动多媒体广播信号全国覆盖的 优点。1 4 c m m b 系统覆盖网络的建设目标是以较低成本、在较短时间内建成天地一 体、星网结合、统一标准、全国全程全网覆盖、全国漫游的移动多媒体广播网络 系统。 2 1 图2 1c m m b 传输示意图 c m m b 系统主要由c m m b 卫星、s 波段网络和地面协同覆盖网络实现移动多 媒体广播信号覆盖。其中s 波段广播信道用于多媒体信号的直接广播,上行采用 k u 波段,下行采用s 波段。增补分发信道采用s 波段地面增补网,对卫星覆盖阴 影区信号转发覆盖,上行、下行均采用k u 波段。为使城市人口密集区域有效覆 3 第二章c m m b 系统及信号测试 盖移动多媒体广播信号,c m m b 系统采用u 波段地面无线发射点构建城市u 波段 地面覆盖网络。同时,在实现广播方式开展移动多媒体业务的基础上,利用地面 双向网络逐步开展双向交互业务,如图2 1 所示。 4 1 由图2 - 1 可以看出,最终覆盖到终端的信号包括s 波段和u 波段两个网络,其 中,s 波段网络利用c m m b 卫星和地面增补网络协同覆盖,主要用于中央节目的 全国广播。【4 】具体过程为: 1 ) 首先,中央节目播出平台将播出节目经c m m b 复用后分别处理为k u 广播 信号和k u 增补分发信号两种,前者采用o f d m 方式调制,后者采用t d m 方式调 制,卫星上行站使用k u 波段频率将两者同时传送至c m m b 卫星。【4 】 2 ) c m m b 卫星对接收到的k u 广播信号转换为s 波段广播信号进行放大广播。 对k u 增补分发信号依然采用k u 波段频率放大广播,两者的调制方式不变。【4 】 3 ) 城市中的高大建筑群、地铁、隧道都容易形成屏蔽区域,使用地面增补网 络可对无法直接接收卫星s 波段广播信号的屏蔽区域进行覆盖,保证业务信号接 收的连续性。地面增补网络由s 波段直放站和k u s 转发站组成,其中s 直放站接 收从c m m b 卫星的s 波段信号直接放大后广播:k u s 转发站接收c m m b 卫星广播 的增补分发信号,首先进行t d m 解调,然后重新调制为o f d m 信号,放大后使用 s 波段发射。图2 - 1 中的u 波段网络可对城市人口密集区域进行移动多媒体广播信 号覆盖,主要用于中央节目和地方节目广掰4 1 。具体过程为: 1 ) 首先,中央节目播出平台将节目内容直接利用k u 波段内容分发信号向地方 节目播出平台传送。【4 】 2 ) 地方节目播出平台接收k u 内容分发信号,获取中央节目内容,同时整合本 地节目内容。所有节目经c m m b 复用后通过光纤传送给u 波段发射机。在发射机 端使用激励器进行信道编码和调制后,使用u 波段广播。多个地面u 波段发射点 可组成单频网,从而形成u 地面广播网络,从而对终端用户实现无缝覆盖。【4 】 3 ) 本地其他相关信息业务,如电子业务指南、紧急广播、数据广播等均在 地方节目平台中进行制作播出。图2 1 中的回传通道利用移动通信网络、互联网 等构成,终端通过回传通道向中央、地方两级节目播出平台发送信息,从而实现 交互业务。因此,c m m b 系统中既有卫星网络的大面积覆盖,又有地面网络的协 同覆盖,适合在全国范围内实现多城市、跨地区的业务开展,特别是实现了对地 面和空间区域的立体覆盖,能够非常方便地支持全国漫游,让用户真正体验到随 时随地收看电视节目的乐趣。 4 1 2 1 2c m m b 广播信道物理层相关技术 广播信道物理层带宽( f b ) 包括8 m h z 和2 m h z 两种选项。广播信道物理层 4 第二章c m m b 系统及信号测试 以物理层逻辑信道的形式向上层业务提供传输速率可配置的传输通道,同时提供 一路或多路独立的广播信道。物理层逻辑信道支持多种编码和调制方式用以满足 不同业务、不同传输环境对信号质量的不同要求。本标准定义的广播信道物理层 支持单频网和多频网两种组网模式,可根据应用业务的特性和组网环境选择不同 的传输模式和参数。物理层支持多业务的混合模式,达到业务特性与传输模式的 匹配,实现业务运营的灵活性和经济性。【习 本节概括描述移动多媒体广播系统广播信道物理层结构。广播信道物理层通 过物理层逻辑信道( p l c h ) 为上层业务提供广播通道。物理层逻辑信道分为控 制逻辑信道( c l c h ) 和业务逻辑信道( s l c h ) 。控制逻辑信道用于承载广播系 统控制信息,业务逻辑信道用于承载广播业务。物理层只有一个固定的控制逻辑 信道,占用系统的第0 时隙发送。业务逻辑信道由系统配置,每个物理层带宽内 业务逻辑信道的数目可以为1 - 3 9 个,每个业务逻辑信道占用整数个时隙,见图 2 2 。【5 】 物理层对每个物理层逻辑信道进行单独的编码和调制,其中控制逻辑信道采 用固定的信道编码和调制模式:r s 编码采用r s ( 2 4 0 , 2 4 0 ) ,l d p c 编码采用l 2 码 率,星座映射采用b p s k 映射,扰码初始值为选项0 。业务逻辑信道的编码和调 制模式根据系统需求可灵活配置,配置模式通过系统控制信息向终端广播。【5 】 r1r 1 ri p 1 r c l c h l s l c h o ii s l c h il s l c h k il s l c h n l p l c h 1 信道编码、调制、时隙分配 ,1 l,l 1 时隙时隙时隙时隙时隙时隙时隙时隙时隙时隙时隙 01234bkk + lk + 23 83 9 图2 2 移动多媒体广播系统广播信道物理层逻辑信道 物理层逻辑信道的编码和调制功能框图见图2 3 。来自上层的输入数据流经 过前向纠错编码、交织和星座映射后,与离散导频和连续导频复接在一起进行 o f d m 调制。调制后的信号插入帧头后形成物理层信号帧,再经过基带至射频变 换后发射。【5 】 第二章c m m b 系统及信号测试 o f 【埘基带 频域 0 m l 刘射 符号 _ 扰码 _ _ 成帧_ 调制频的 形成变换 图2 - 3 物理层功能框图 图2 - 4 基于时隙划分的帧结构 物理层信号每1 秒为l 帧,划分为4 0 个时隙。每个时隙的长度为2 5 m s ,包 括1 个信标和5 3 个o f d m 符号。基于时隙划分的帧结构见图2 4 。 5 1 2 1 3c m m b 的业务复用方式 在移动多媒体广播的前端系统中,复用的功能是完成音频、视频、数据、电 子业务指南等信息封装和排列,使其能够在移动多媒体广播信道上传送,见图 2 5 。同一业务的音频基本流、视频基本流和数据流封装在同一复用子帧中。电 子业务指南、用户管理等辅助信息分别封装在不同的复用子帧中,控制信息封装 在专用的复用帧中。1 6 1 6 第二章c m m b 系统及信号测试 图2 5复用在移动多媒体广播前端系统中的位置 一个广播信道帧包括多个复用帧。每个复用帧由m fi d a - - 标识,m f i d 取值范围为0 - - , 3 9 ,其中m fi d 一0 的复用帧用于承载控制信息,其它的复用帧 用于承载业务。填充部分使用0 x f f 填充。 6 1 i 复用子帧1复用子帧2复用子帧n l 复用帧头复用帧净荷填充 复用帧0 复用帧1 业务数据 复用帧n复用帧0 控制信息 业务数据 控制信息 n i n i t a p p l i c a t i o n 0 ; p a p p - i n i t l n s t a n e e 0 ; p a p p - r u n 0 ; ) 通过a f x g e t a p p 函数获得的指针指向t h e a p p 对象,所以接下来的函数调用 是在调用t h e a p p 的i n i t a p p l i e a t i o n 、i n i t i n s t a n c e 和r u n 函数。一般而言,我们只 需改写i n i t l n s t a n c e 虚函数,因此在此处实际上调用的是其父类c w i n a p p 类的 i n i t a p p l i c a t i o n 和r u n 函数。 i n i t a p p l i c a t i o n 函数主要初始化一些用于m f c 内部管理的资源,i n i t l n s t a n c e 函数中完成了创建窗口的工作,r u n 函数实现了消息循环。a f x w i n m a i n 中的过 程与w m d o w s 程序中w i n m a i n 函数的流程大体上是一致的。 接下来介绍一下创建窗口的相关信息,i n i t l n s t a n c e 函数代码整理如下: b o o lc m y v r o j a p p :i n i t i n s t a n c e 0 c s i n g l e d o e t e m p l a t e p d o c t e m p l a t e ; p d o c t e m p l a t e = n e wc s i n g l e d o c t e m p l a t e ( i d r _ m a i n f r a m e , r u n t i m e _ c l a s s ( c m y p r o j d o e ) , r u n t i m e _ c l a s s ( c m a i n f r a m e ) , m a i ns d if r a m ew i n d o w r u n t i m e _ c l a s s ( c m y p r o j v i e w ) ) ; a d d d o c t e m p l a t e ( p d o c t e m p l a t e ) ; m _ p m a i n w n d - s h o w w i n d o w ( s w _ s h o w ) ; m _ p m a i n w n d - u p d a t e w i n d o w 0 ; ) 程序中没有直接创建窗口,而是创建了一个c s i n g l e d o c t e m p l a t e 类,将 c m y p r o j d o e 、c m a i n f r 锄e 和c m y p r o j v i e w 的c r u n t i m e c l a s s 指针作为其构造函 数的参数,并动态创建出以上三个类的实例。任何类只要在声明时使用 d e c l a r ed y n c r e a t e 或d e c l a r ed y n a m i c 或d e c l a r es e ria i ,宏, 第四章移动多媒体广播信号路测系统的软件设计 就会拥有一个内嵌的静态c r u n t i m e c l a s s 对象,并可以进行动态创建。 c s i n g l e d o c t e m p l a t e 是一种d o c u m e n tt e m p l a t e 。用户界面通常是由窗口视 图与数据组成,窗口是数据的外在体现,也就是说窗口与数据是相联系的,不同 的数据也对应了不同的窗口。当打开一份数据时,就会产生相应的三个对象,一 个是d o c u m e n t 对象,一个是v i e w 对象,一个是f r a m e 对象,其中f r a m e 是外 框窗口,是v i e w 的容器,包括菜单栏和工具栏,v i e w 类所显示的区域就是f r a m e 窗口框架所围起来的部分,d o c u m e n t 类则是v i e w 类所显示的数据。每一个 d o c u m e n t 类都需要一个与其相匹配的v i e w 类,为了解决这一问题,微软引入了 d o c u m e n tt e m p l a t e 的概念。d o c u m e n tt e m p l a t e 主要有两种,另一种是 c m u l t i d o c t e m p l a t e ,用于开发多视图的程序,本工程中只采用 c s i n g l e d o c t e m p l a t e 。 窗口创建完成后,程序执行到r u n 函数,也就是说进入到消息循环阶段。 在m f c 程序设计中,任何从c w n d 派生的窗口类都能够拦截w i n d o w s 消息,每 个消息都需要相应的处理函数,m f c 采用了一种称为“消息映射”的机制,将 消息和处理函数相联系。开发人员只需要几个宏,类似于填空题的方式,就可完 成消息和其处理函数的关联。m f c 程序的窗口类一般都有独立的头文件和源文 件,在头文件中类的声明最后加上宏d e c l a r em e s s a g em a p ,在类的源文 件中加入宏: b e g nm e s s a g em a p ( 窗口类,父类) e n d _ m e s s a g e _ m a p o 在两个宏之间加入制定消息和处理函数的宏即可完成消息映射,例如 o nc o m m a n d ( i d _ f i l ep r i n t , c f o r m v i e w :o n f i l e p r i n t ) 。 4 2 2 基于c t a b c t r l 的标签页的实现 在设计用户界面程序的过程中,往往会遇到界面空间有限,不能容纳太多的 控件或者显示太多的内容,通过实现标签页的功能可以有效的解决这一问题,开 发人员可以按照功能或者其他方式对控件进行分类,使每个标签页的控件在功能 上都相对的独立,用户可以通过切换标签来获取不同的功能。在本小节中介绍在 m f c 程序中通过c t a b c t r l 类实现标签页。 仍以4 2 1 小节的m y p r o j 工程为例,来说明实现的整个过程。 第一步,进入资源编辑页面,然后在对话框中添加一个t a b c o n t r o l 控件,其 i d 设置为i d cm a i nt a b 。并通过c l a s s w i z a r d 为其添加变量,类型为c t a b c 仃l , 名称为mm a i n t a b 。 第二步,添加两个新的对话框。i d 分别设置为i d dd i a l o g i 和 3 0 4 第四章移动多媒体广播信号路测系统的软件设计 i d dd i a l o g 2 ,并将s t y l e 设置为c h i l d ,b o r d e r 设置为n o n e 。通过c l a s s w i z a r d 创建两个新类,分别为c d i a l o g l 和c d i a l 0 9 2 ,父类都为c d i a l o g 。在c m y p r o j v i e w 类中分别为c d i a l o g l 和c d i a l 0 9 2 创建两个对象。 第三步,在c m y p r o j v i e w 类的o n l n i t i a l u p d a t e 函数中进行初始化工作,使 c d i a l o g l 和c d i a l 0 9 2 分别对应于标签页的第一页和第二页,并调整对话框的大 小。 第四步,添加切换标签页时的响应函数。具体如下,在c l a s s v i e w 页面下找 到c m y p r o j v i e w 类,右键单击,选择a d dw i n d o w sm e s s a g eh a n d l e r ,然后在 弹出的页面右下找到并选择i d cm a i nt a b ,然后在页面左边列表中选择 t c ns e l c h a n g e ,点击a d da n de d i t ,弹出对话框选择o k 即可。然后改写 刚刚添加的o n s e l c h a n g e m a i n t a b 函数,使其在获取标签页的索引时显示不同的 对话框。 4 2 3 基于对话框的分割窗口的实现 为了使用户界面布局更加清晰,本工程中采用分割窗口的方法,按照不同的 功能将界面划分成不同的区域。在本工程中,采用的是静态分割窗口,并且分割 后的子窗口大小不能改变。下面就以m y p r o j 工程为例对整个实现过程做详细介 绍。 窗口分割采用c s p l i t t e r w n d 类来实现,由于c s p l i t t e r w n d 派生自c w n d 类, 因此可以捕获w i n d o w s 消息,只要让其在获取鼠标点击或拖动的消息时不做出 动作,即可实现窗口大小的固定。而w m d o w s 消息w mn c h i t t e s t 就是表示 鼠标位置的消息,因此需要在w mn c h i t t e s t 的响应函数中忽略对鼠标位置 变化所产生的动作。这就需要从c s p l i t t e r w n d 类派生出一个新类,命名为 c s p l i t t c r ,为其添加w mn c h i t t e s t 的响应函数o n n c h i t t e s t ,在该函数中直 接返回h t n o w h e r e 即可。 下面在4 2 2 小节的m y p r o j 工程的基础上实现窗口的分割,该工程有两个对 话框分别对应于两个标签页,对话框l 和对话框2 ,以分割对话框l 并实现三叉 分割为例。这里只做原理性的说明,并未对所有细节做详细说明。 第一步,创建三个新的类,派生自c f o r m v i e w 类,方法如下,在v c 的资 源编辑器中添加三个对话框,s t y l e 项设置为c h i l d ,b o r d e r 项设置为n o n e ,i d 分别设置为 i d ds p l i t t e rd i a l o g l 、i d ds p l i t t e rd i a l o g 2 和 i d ds p l i t t e rd i a l o g 3 接着利用c l a s s w i z a r d 创建三个新类,命名为 c s p l i t t c r d i a l 0 9 1 、c s p l i t t e r d i a l 0 9 2 和c s p l i t t e r d i a l 0 9 3 ,基类都选择c f o r m v i e w 。 这么做是因为创建分割窗口时需要用到v i e w 类,即每一个子窗口对应一个 第四章移动多媒体广播信号路测系统的软件设计 v i e w 类,而c f o r m v i e w 又需要以对话框为基础。 第二步,通过c l a s s w i z a r d 为c d i a l o g l 添加w mc r e a t e 的响应函数 o n c r e a t e ,并改写该函数。由于c s p l i t t e r w n d 的创建需要以c f r a m e w n d 为基础, 在c d i a l o g l 类的定义中加入变量c f r a m e w n d mp n e w f r a m e ,由于创建了一个 新的c f r a m e w n d ,需要先注册窗口类,然后创建mp n e w f r a m e 。然后通过 c s p l i t t e r w n d 的成员函数c r e a t e s t a t i c 创建一行两列的静态拆分窗口。然后再通 过c r e a t e s t a t i c 函数将右半部分拆分成一列两行的拆分窗口。然后再通过 m o v e w i n d o w 成员函数来控制f r a m e 以及分割窗口的位置。 通过以上步骤就可以实现简单的分割窗口。 4 2 4 电子地图模块的设计 电子地图模块完成的主要工作如下: 1 完成电子地图的创建。 2 实现电子地图的控制。 3 获取c m m b 信号强度。 4 获取g p s 卫星定位信息。 5 将c m m b 信号强度与g p s 定位信息写入数据库。 6 处理并在地图上显示已测试的数据。 电子地图模块由c m a p v i e w 类来实现,该类的主要函数如下: o n i n i t i a l u p d a t e :在c m a p v i e w 窗口创建工作完毕后被调用,用于进行初始 化工作。所完成的主要工作如下: 创建一个c m a p x 类实例,用于显示电子地图。 初始化串口。由于g p s 硬件模块的输出接口为u s b 接口,因此需要将u s b 数据转换为串口的形式,这个工作在驱动程序中完成,在此只需设置波特率为 9 6 0 0 b p s 。 向c m m b 业务管理模块注册窗口句柄、w i n d o w s 消息及所要接收的数据对 应的消息。由于c m a p v i e w 类具有捕获w i n d o w s 消息的能力,因此自定义一个 w i n d o w s 消息,n mc m m bm a pv i e w ,并为该消息创建一个处理函数 o n c m m b m a p m e s s a g e ,当c m a p v i e w 类从消息队列中捕获到该消息时,就会调 用o n c m m b m a p m e s s a g e 函数。c m a p v i e w 类只需要获取c m m b 信号质量,获 取信号质量数据所对应的消息就是 s m s h o s t l i bm s gg e tr e c e p t i o nr e s ,即s i a n oh o s t l i ba p i 函数的返回 消息。相关的h o s t l i b a p i 函数由c m m b 业务管理模块调用,c m a p v i e w 类只负 责接收即可。当c m m b 硬件模块获取到c m m b 信号质量后,就会通过s i a n o 第四章移动多媒体广播信号路测系统的软件设计 h o s t l i b 将消息发送至c m m b 业务管理模块,该模块接收到 s m s h o s t l i bm s gg e tr e c e p t i o nr e s 消息后,向c m a p v i e w 类发送 n mc m m bm a pv i e w 消息,s m s h o s t l i bm s gg e tr e c e p t i o nr e s 消息及其相关数据同n mc m m bm a pv i e w 一起传递,最终由 o n c m m b m a p m e s s a g e 函数处理。 开启一个定时器线程t i m e r t h r e a d ,用于处理测试数据。 o n c m m b m a p m e s s a g e :n m c m m bm a pv i e w 消息的响应函数,在 c m m b 硬件模块返回数据中,c m a p v i e w 类只需要c m m b 信号质量, o n c m m b m a p m e s s a g e函数中只需要处理一个消息, 即 s m s h o s t l i bm s gg e tr e c e p t i o nr e s ,在接收到该消息后,将信号质量 保存。 o n c o m m :串口消息w mc o m mr x c h a r 的响应函数。在c m a p v i e w 类 的串口数据接收中使用了一个开源的串口工具,c s e r i a l p o r t 类,该类会接收串口 数据,然后产生一个w mc o m mr x c h a r 消息,接收的数据同消息一起被放 入消息队列,最终由o n c o m m 将数据保存,等待o n t i m e r 函数的处理。 o n t i m e r 函数:w i n d o w s 消息w mt i m e r 的响应函数,w mt i m e r 是一 个定时器消息,在c m a p v i e w 类中该定时器设置为1 秒。该函数中主要完成的工 作为,分析o n c o m m 函数中所接收到的数据,从中获取到卫星定位的坐标,然 后将坐标保存,并刷新地图的导航图层。需要注意的是,o n t i m r 函数中不能有 处理时间过长的任务,这样会阻塞消息线程,造成程序界面假死。 o n m e s s a g e m a p v i e w c t r l :自定义消息n mm e s s a g em a pv i e wc t r l 的响应函数,用于接收来自测试控制模块发送的控制码。因为写入数据库,保存 数据的工作是在电子地图模块中,而控制写入数据库等操作是在测试控制模块, 因此需要两模块间的通信。该函数主要负责处理以下控制码,s t a r ta n a l y s e , 开始将测试数据写入数据库:s t o pa n a l y s e ,停止写入数据库工作; d i s p l a ys a m p l e s ,将所有测试数据显示在电子地图上: p r o c e s ss a m p l e s ,将测试数据经过处理后显示在电子地图上;s e tt i m e , 设置每次写入数据库的时间间隔。 t i m e r t h r e a d :定时器线程,每次启动时间间隔默认为1 秒,允许用户改变 时间间隔设置,时间设置操作在测试控制模块,最终在o n m e s s a g e m a p v i e w c t r l 函数中完成时间间隔的变更。该线程主要负责将其他线程中保存的c m m b 信号 强度和g p s 卫星定位信息写入数据库。 o n b u t t o n m a p z o o m l n :自定义消息n mb u t t o nm a pz o o mi n 的响应 函数。从图4 6 可以看出,电子地图窗口的左边为操作工具栏,但是工具栏并不 3 3 第四章移动多媒体广播信号路测系统的软件设计 属于c m a p v i e w 类,而是属于c m a p v i e w 类所属的框架窗e l ,因此对工具栏的 操作只能由框架窗口才能捕获到。因此需要将消息从框架窗1 2 1 发送给c m a p v i e w 类,由o n b u t t o r l m a p z o o m l n 函数处理电子地图的放大操作。工具栏的其他操作 类似于放大操作,在这里不再列出。 4 2 5 测试控制模块的设计 测试控制模块主要负责的工作如下: 1 处理界面的操作,包括开始测试、停止测试、设置时间等。 2 接收并显示c m m b 信号质量。 测试控制模块由c m a p c t r l v i e w 类实现,其主要函数为: o n i n i t i a l u p d a t e :c m a p c t r l v i e w 类的窗1 3 创建成功后进行初始化工作,主要 工作为,向c m m b 业务管理模块注册窗口句柄、自定义消息 n mc m m bm a pc t r lv i e w 以及s i a n oh o s t l i b a p i 函数的返回消息 s m s h o s t l i b m s g 一( 3 e t r e c e p t i o n r e s 。 o n m a p s t a n a n a l y s e b u t t o n :i d c m a p s t a r t a n a 工,y s e b u t t o n 的响j 立 函数,i d cm a ps t a r ta n a l y s eb u t t o n 为开始按钮的i d 。由于写入数据 库的工作不在测试控制模块,而是在电子地图模块,因此需要通知电子地图模块 用户已经开始进行测试。该函数的主要任务是向c m a p v i e w 的消息队列中添加消 息n mm e s s a g em a pv i e wc t r l ,并伴随消息发送控制码 s t a r ta n a l y s e ,由响应函数o n m e s s a g e m a p v i e w c t r l 做相应处理。 停止,设置时间等按钮的响应函数与o n m a p s t a r t a n a l y s e b u t t o n 类似,在此 不再列出。 o n c m m b m a p c t r l m e s s a g e :自定义消息n mc m m bm a pc t r lv i e w 的 响应函数,用于接收c m m b 业务管理模块所发送的数据。c m a p c t r l v i e w 类只需 要c m m b信号质量,因此该函数中只对返回消息 s m s h o s t l i bm s gg e tr e c e p t i o nr e s 做相应处理。c m m b 信号质量分 为6 个级别,c m a p c t r l v i e w 类所对应的窗口中通过不同b i t m a p 来表示不同等级 的信号质量。当o n c m m b m a p c t r l m e s s a g e 函数被调用后,首先判断接收的信号 质量,然后选择一幅对应的图片显示出来。 o n n m c t r l m e s s a g e :自定义消息n mc t r lm e s s a g em a pc t r lv i e w 的响应函数,用于处理各窗口发送到c m a p c t r l v i e w 类的数据。目前该函数只处 理一个控制码,c t r lm s gc l e a rl i s t 。该控制码的作用是当用户切换频点 后通知各界面清除相关数据,例如业务信息、信道参数、信号质量等。 第四章移动多媒体广播信号路测系统的软件设计 4 2 6 视频播放模块的设计 视

温馨提示

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

评论

0/150

提交评论