汽车音响系统软件设计与实现

更新时间:2023-08-09 23:58:02 阅读量: 工程科技 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

大连理工大学

硕士学位论文

汽车音响系统RDS软件设计与实现

姓名:王辉

申请学位级别:硕士

专业:软件工程

指导教师:朴勇

20080531

大连理工大学专业学位硕士学位论文

摘要

广播数据系统(I①S)为移动用户提供了一种新的便捷的通信手段,其主要功能有:自动跟踪,台名显示,交通信息的及时接收等。目前该技术在欧洲各国汽车上的广播信息接收系统中得到了广泛应用。对于面向欧洲市场的汽车音响产品来说,实现RDS功能是必须进行的研发任务之一。

本文首先简述了RDS技术的相关基础知识以及汽车音响制品中RDS软件实现的硬件平台和系统平台。主要探讨的是汽车音响软件系统中RDS功能实现的过程,作为系统中的一个功能模块,RDS整个的软件base搭建在日本Alpine公司提供的CarAudio制品硬件平台和MX.OS这一特定的嵌入式操作系统平台上。软件的设计采用了CarAudio软件的分层式结构,程序的实现以MX.OS的‘'Event驱动”的方式为主要的机制,采用了“过程引擎”这一软件辅助工具。程序设计语言是基于NECV850系列单片机的类C语言。

目标系统的设计与实现隶属于嵌入式的软件开发,对应于嵌入式产品的生命周期,采用了“瀑布式”的软件开发流程,经历的主要软件过程包括:需求分析——概要设计——-{羊细设计与实现等。

关键词:嵌入式系统;汽车音响;MX操作系统;过程引擎

汽车音响系统RDS软件设计与实现

Abstract

ARadioDataSystemprovidesmovingusersanewconvenientmeansofcommunicationwhichhasserialsofspecialfunctionssuchas"AutoMaximunStationSearch,DisplaytheProgramServiceNameandReceivetheTrafficeMessageintimeetc.ThetechnologyhasbeenwidelyusedintheBroadcastingSystemoftheCar.SothatitisnessarytoimplicatetheRDSfunctionfortheCarAudioorientedtoEurope.

AtfirstthethesisintroducesthetechnologiesaboutRDSinshort,thendiscussesthe

inHardwarePlatformandSystemPlatformforthesoftwareimplicationofRDSCar

CarAudio.ThispapermainlydiscussesabouttheproceduretorealizeRDSfunctionin

Audio’SSoftwareSystem.As

wholebaseafunctionmoduleintheCarAudio’Ssoftwaresystem,theonframeofRDSisbuiledthespecialHardwarePlatformprovidedbyAlpineandMX-OSSystemPlatform.SothatitisdesignedbythewayofStratificationstructureofCarAudio’SSoftwareSystem.the“EventDrive”mechnisamwhichdeciedbyMX—OS.ThentheprogrammerealizedbythehelpofProcessEnginewhichisanauxiliarysoftwaretoolonlyforEmbeddedSoftware.TheprogramminglanguageisNECV850CLanguagethatissimilartoStanderedCLanguage.

TheobjectivesystemattributestoEmbeddedSoftwareDevelopment,abeyedtotheEmbeddedProduct’SLiftCycleweadopttheWaterfall—Software.Develope.Process.ThemainsoftwareprocessincludesRequirementAnalasys GeneralyDesign—DatailDesign.

KeyWords:EmbeddedSystem;CarAudio;MX-OS;RDS;ProcessEngine

一7II—

独创性说明

作者郑重声明:本硕士学位论文是我个人在导师指导下进行的研究工作及取得研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得大连理工大学或者其他单位的学位或证书所使用过的材料。与我一同工作的同志对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意。

作者签名:垂墅日期:竺丝:£:主!

大连理工大学硕士研究生学位论文

大连理工大学学位论文版权使用授权书

本学位论文作者及指导教师完全了解“大连理工大学硕士、博士学位论文版权使用规定”,同意大连理工大学保留并向国家有关部门或机构送交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连理工大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫描等复制手段保存和汇编学位论文。

作者签名:

导师签名:巡年』月卫日

大连理工大学专业学位硕士学位论文

1绪论

1.1课题背景

RDS是近年来出现在无线广播领域的一项高新技术。它利用现有调频设备,把数据信号加载到调频立体声信道的附加信道上,具有处理数据、文字、符号等信息能力,能用于交通信息广播、广播寻呼、背景音乐,可大面积组网,与计算机相接通信,并具有不增加信道、覆盖面宽、接收自动跟踪、可靠性高等显著特点,该项技术目前在欧美等国正广泛应用【11。RDS的主要应用领域是移动设备的广播信号接收系统,最普遍情况就是汽车上的FM信号接收播放设备。因此作为汽车上的主要音频设备——汽车音响是RDS系统的主要应用平台。

1.2研究内容与主要技术方法

本课题仅是针对Alpine公司的汽车音响制品中的软件系统展开的,因此研究的内容具有较强的针对性,主要包括以下几点:

(1)CarAudio软件的基本架构;

(2)基于“MX.OS”这一特定的系统平台的软件设计机制;

(3)RDS软件系统的软件部分的功能分析以及具体功能点的确定;

(4)CarAudio中以“MX—OS”为系统平台,进行RDS(核心)功能的实现。

(5)Event驱动设计。

由嵌入式软件自身的特点决定,本次的软件开发以既定的硬件平台为背景,以“Event程中主要利用“过程引擎’,_这一软件辅助工具,具体程序实现的语言采用的是基于NECV850系列芯片的类C语言。驱动”的方法为主要的软件设计机制(由目标软件运行的系统平台决定),软件实现过

1.3开发RDS系统的意义

首先从RDS实现的方法考虑,即一个电台、小功率、多频点完成对某一区域的覆盖,替代单频点大功率的发射模式,这样不仅节省了发射功率,减少了电磁污染,更重要的意义在于它可以使覆盖范围信号强度均匀,避免信号发射强度过大造成过载,信号发射强度过小又引起用户无法接收的矛盾12J。

其次,RDS提供给终端用户的自动追踪,交通中断,台名显示等功能极大的方便了移动用户(主要是针对车载Radio用户)。而对于计算机应用领域来说RDS是数字化的产物,是计算机在广播系统中进行应用的典型实例。

汽车音响系统RDS软件设计与实现

RDS系统一个很重要的功能就是“自动追踪”。这完全是出于满足汽车Radio的移动特性而设计的,使车载Radio用户能够拥有满意的移动接收效果。经过多年的研究发展,RDS已经成为欧洲车载Radio标准。

例如,恩智浦半导体(NXPSemiconductors,前身为飞利浦半导体),日前推出了一款新型芯片TEA5766。这款芯片可以使汽车制造商在新产品中加入具有RDS功能的FMRadio。RDS(无线数据系统)早在90年代初期开始就已经成为欧洲汽车收音机的标准功能,它能为用户提供包括电台名称、歌曲信息在内的电台节目相关信息,并可设置为自动调回交通和新闻节目的状态。TEA5766芯片的尺寸只有它前身TEA5764芯片的一半。它使用了更少的元件,减少了PCB的占用空间,从而为制造商节省了50%的成本。这款新型芯片还具有更低的功耗,并通过改进单声道和立体声的信噪比来向用户提供更高音质,特别是在信号弱的情况下。消费者对在手机中集成FMradio功能的需求在不断增长。StrategyAnalytiCS预测,到2010年,全球销售的手机中有45%将带有FMradio功能。

众所周知:欧洲是一个汽车消费的天堂,汽车相关附属设备在那里同样是一个炙手可热的消费主题,Alpine作为一个世界知名汽车音响研发生产厂商,要将自己的产品推向世界,满足欧洲市场的RDS数字广播标准是必不可少的条件。欧洲消费者对汽车Radio功能的需求已经达到相当高的水平,恩智浦半导体公司RadioICMSTRadio个人娱乐解决方案国际产品经理TimothyWang表示,“恩智浦半导体公司是RDS功能技术的领先供应商。将具有RDS功能的FMradio集成在便携设备中,可便于用户调换到所需的电台。同时,它还能确保用户接收各种重要的通知,如:最新交通信息,使其能够对旅程作必要的调整,快速应对各种突发事件”。

以宝马公司为例,宝马3系列轿车的所有信息和无线电通信系统都在RDS中。这一系统的软件和硬件都是西门子VDO公司的产品。这种系统已经于2003年应用在宝马5系列轿车中,于2004年应用在宝马6系列轿车中了。这套系统的操作控制界面、应用元件、硬件驱动和硬件始终都是相互分离的,并通过标准的接口连接在一起。采用这种连接方式可以方便地对电器元件进行更换,并缩短产品的研发时间。另外,BMW公司还可以按照自己的设计理念配置RDS的操作界面,因为它的人一机接口与其他系统是分离的。为了可以使用其他生产厂家提供的信息和通信系统,RDS也留下了方便的数据接口,使其他生产厂开发的程序可以方便地显现在已有的操作界面中。

1.4论文结构

论文主要章节的内容如下:一2一

大连理工大学专业学位硕士学位论文

第1章是本文的绪论部分,简单叙述课题研究的背景,以及本文的相关组成结构和主要内容。

第2章介绍了RDS相关的技术基础,包括RDS的数据源,信号的发射与接收等,侧重点在于目标软件系统建立的硬件平台及其运行的系统平台的介绍部分。

第3章分析了RDS软件系统需求,陈列软件实现的功能点,作为后续软件设计实现的基本依据(由于RDS系统的复杂性,本次软件开发仅对其中“自动追踪”功能进行设计实现,因此这部分功能是分析的重点内容)。

第4章是目标软件系统的概要设计部分,针对RDS中“自动追踪”的功能进行程序结构和基本实现方案的设计。

第5章叙述目标软件系统的详细设计与实现的相关内容,按照已完成的概要设计框架进行具体的软件实现。

论文的结论部分对整个课题研究的过程进行总结,包括对已实现软件系统的综述和软件实现过程中采用的方式方法等内容。

汽车音响系统RDS软件设计与实现

2RDS技术基础

本章作为RDS技术的基础知识介绍,简介了RDS数据信号的相关内容以及RDS对于终端用户来说的一系列特殊功能。针对建立目标系统的特定硬软件平台和系统平台,重点介绍了实现RDS信号接收并处理的软硬件机制,是后续探讨软件设计与实现的前提。

2.1RDS应用的基础条件^I≈DS信号源

RDS功能的实现要以RDS数据源即RDS数据广播为背景条件。也就是需要当地广RDS技术实质是利用调频立体声(FM)广播的副载波携带数据信息的一种工作方式。播系统的支持(目前只有欧洲各国的广播系统支持该数据发送的相关协议)。RDS数据经过FSK调制,成为载波为57KHZ的RDS数据信号,这个声音人的耳朵是听不到的;RDS的数据信号和放送局播放的声音信号混合,成为复合信号,然后经过FM调制,进行发送[3】。RDS信号的发射过程如图2.1所示:灞铴辫?镳獭麟麒獭辫瀚群

图2.1RDS的信号发送过程

Fig.2.1RDSsendingprocedure{蒸愚饕i 嘤霪繁蒸 藜蒸鏊蹇囊蒸

接收的过程正好相反,经过解调得到的复合信号,经过RDS解码,把复合信号分成两路,一路是声音信号送到音频回路,另一路通过IIC总线,把解码的RDS数据给MACON。

2.2RDS的数据格式

RDS信号发送是遵循一种内部协议的,该协议规定了RDS数据的具体格式及其相应的含义。RDS数据是:每8个字节的数据作为一个基本单位,称为一个数据包,她被一次发送;连续的十几个数据包作为一个整体组成一次完整的RDS数据;次完整的RDS数据中每个数据包的含义各不相同,他们每一种类型的数据包称之为一种GROUP,一个GROUP包含4BLOCK,每个BLOCK有2字节,每个bit位的含义以及其所在GROUP的种类和位置都是固定的,整个数据包经过FSK调制,成为载波为57KHZ的RDS数据信号,该声音人耳不可识别【41。4

大连理工大学专业学位硕士学位论文

II●

BLucKl:BLucK2

I:IBLucK3:BLucK4●

●GROUPl:一个数据包、8个子节l

II

图2.2RDS数据格式说明图

Fig.2.2RDSdataformat

2.3RDS功能概述

RDS的功能实现是以发送电台的RDS播放为基础的:RDS信号发送通常遵守的协议是一定的,在这个前提下,终端设备根据接收到的RDS数据,对RDS数据合理利用,可以各自实现具有自己特点的RDS功能,但通常都包含有以下主要功能:

(1)自动追踪功能:

当前台接收的电台播放效果不好时,能够自动向接收状况好的,播放同一节目的电台“跳转”的功能。这是RDS的核心功能。即在播放电台支持的前提下,当用户的接收终端由于发生地理位置上的转移或其他原因,而造成接收信号不好的时候,RDS系统会

汽车音响系统RDS软件设计与实现

自动从用户当前收听电台的伙伴电台(播放内容相同或相似的电台)中挑选一个信号好的电台,并转移到那个电台,以保证CA用户在开车旅行过程中一直收听到同一广播节目的目的。该操作对用户方是“透明”的。

(2)中断功能:

在用户正常收听广播信息或播放音乐等状态下,RDS系统会自动监测一些特殊内容的广播信息,在一定条件下(如战争中断)自动中断用户当前的收听,并切换到指定的广播节目进行播放。

(3)PS\TEXT等显示功能:

指根据PS(ProgramServiceNameCode,广播节目供应商的标号)TEXT的数据,显示广播台的名字、播放节目的相关信息等。

(4)CT功能:

根据CT(Colock&Date)的消息,自动调整时间和日期的功能。保证客户端的时间与服务器的时间一致【5J。

2.4重要I①S术语

下面将介绍RDS开发的一些相关术语:

(1)PS(Program

最大以8字符。Servicename)RDS数据之一。此数据可能是一些文字,这些文字就是接收台的台名,将用于显示,

(2)PI(ProgramIdentificationcode)

RDS数据之一。放送台的识别CODE,由国家CODE、区域CODE等构成,用4文字来表示,用于自动追踪的识别,放送台通过PI来识别是否是同一台

(3)AF(AltemativeFrequencies):

可替换的广播电台的频率。“可替换”的前提是两个广播电台是伙伴电台。通常每个发送台在其发送的RDS信号中都包含若干与这个台内容相同(PI也相同),但频率不同的几个台作为用户的备选接收台,这些台的频率就是当前台的AF;

(4)AFLIST:AF列表,为可替换的伙伴电台的信息记录表,是软件自己维护的一个表。

大连理工大学专业学位硕士学位论文

2.5汽车音响中的RDS功能实现

2.5.1汽车音响制品概述

与普通家庭音响相比,汽车音响在环境适应性,内部结构集成性,能源供给的特殊性等方面均存在一些特殊要求【6】,因此其对应的软件有着一套不同于普通家庭音响软件的体系结构。

2.5.2汽车音响的软件结构

和其它嵌入式制品一样,CA(CarAudio,汽车音响)的功能实现是通过软件对MCU等硬件资源进行控制,最终通过硬件回路来完成的,其中MCU(Micro.Controller微控制单元,构成:Unit)CUP+InternalBus+Rom+Ram+PeripheralI/O。即通常所讲的单片机。对于相应的软件实现来说,首先对已经明确的制品功能需求进行分解,直至每个被分解的节点可以通过软件实现。再对其中相似相关的功能点进行综合,由此形成一系列“功能集群’,.—-‘‘模块”。根据该软件模块是否对应的具体的制品功能可以将其划分为-功能模块和非功能模块【.71。汽车音响软件中主要的功能模块有:

(1)DMM模块:(DisplayManagementModule),显示系统传送的数据信息。

(2)Power模块:系统电源控制管理。

(3)Source模块:系统Source管理,主要完成Source切换等功能。

(4)DVD(CD)模块:DVD/CD.MECH控制与管理。

(5)RDS模块:FM/AM接收与播放,即CA上的Radio的功能实现模块。

(6)Key/Remocon模块:按键/遥控器输入管理。

软件系统的功能实现需要各个模块相互配合动作,因此要系统要引入协调控制机制,这部分功能的实现是由一些非功能性模块实现的(类似于在OOP过程中的提取的控制类(controller

Orientedclass卜抽象的存在,不对应具体的功能实现,其中OOP:Object

Module)——系统的核心模块,通知(以eventProgramming面向对象的程序设计)。主要的非功能模块有:(1)SMM模块:(SystemManagement

的形式)其他的模块来完成各自的动作。接受其他模块的event,经过modecheck,生成outevent发送给其他模块;

(2)MMM模块:(ModeManagementModule)MECH及LrNSION管理模块;

(3)BUS模块:Ai-Net管理,完成H/U与外接Ai-Net制品之间的通信。(4)CA软件系统的“模块化”结构如图2.3所示:

汽车音响系统RDS软件设计与实现

图2.3CA软件模块化结构式简图

Fig.2.3CAmodulestructure

RDS作为整个制品中的一部分功能,其软件实现同样遵循上述的机制,亦即:通过软件实现相关硬件信息的接收处理和反馈,最终得以实现。同时,RDS模块作为SMM和MMM控制下的一个普通模块,要和其他模块争夺资源。因此在汽车音响中要实现RDS功能的软件实现要综合考虑具体的硬件平台,以及其提供的系统平台等各方面的要一求。

2.5.3系统平台—J。MX.OS”概述

计算机系统与其他硬件共同组成整套电子设备,该设备的功能并不是以计算机的软件功能为依据,计算机在其中所起的作用只是局部的控制或数据分析等。这样的计算机系统称为嵌入式系统(EmbeddedSystem)。

在嵌入式软件运行的操作系统平台,称为嵌入式操作系统。它是运行在嵌入式芯片环境中,对整个芯片以及它所操作、控制的各种部件装置等等资源进行统一协调、调度、指挥和控制的系统软件【5】。由于嵌入式产品的多样化,针对自身的功能需求和单片机标准,各厂商定制或选择了自己的嵌入式操作系统,这导致嵌入式系统的硬件的依赖性比较大。

根据I\S事业部的项目经营背景——面向Alpine公司的嵌入式CA软件开发,现主要选用的是ModuleExecutiveOperationSystem——MX.OS的嵌入式操作系统。这是Alpine公司提出的面向汽车音响软件应用的“实时”多任务系统规范。

MX.OS系统的运行机制主要表现为以下几点:

基于“Task”的资源分配方式:

Task是MX—OS管理、实行和终了CPU的资源分配的最小单位启动。在使用MX.OS系统的任务时,通过ID来索引注册在系统中的任务,Task之间无优先级的设定,采用

大连理工大学专业学位硕士学位论文

“FCFS”的调度方式,所以MX—OS并不是真正意义的RTOS(Real

System)。TimeOperation

Task的本质是模块内部的一个处理流程,MX.OS中的Task列表(tasktbl.c)中各Task为各个模块的入口函数,入口函数中会对“外界”的触发条件进行判断(Process—Check过程),然后进行相应的动作,即模块内各功能函数的调用。

周期管理:

MX.OS系统中提供了专门用于周期调用任务的接口,用户可以在指定的位置进行任务的添加注册,这是MX—OS系统维护的专有任务为所有功能模块共享的。系统中定义的周期是4ms,并同时预留了8ms,16ms,64ms定周期任务注册的接口。

中断管理:

MX—OS系统的中断处理采用了“硬件机制”,实现的过程主要是采用直接启动中断Handler(处理程序)的方式来响应中断,这种中断Handler不需要通过OS的管理参与,直接启动中断处理专用程序。

“Event驱动”的程序设计思想:

软件系统中任何动作的执行都要以一定的条件为基础,通常称引起动作的时间为Trigger(触发),类似于OOP中“Message条件”为基础,通常称引起动作的时间为Trigger(触发),类似于OOP中“Message驱动”的程序实现机制,在MX-OS中引入了Event(事件)的概念以其作为模块间的通信的载体。

Event的本质是一个“条件触发”的信息,发送该信息的目的在于通知信息的接收者执行一个指定的Task,从信息接收者的角度看来,接收到这个Event就是其决定执行下一个Task的判定条件。因此Event的发送和接收就成为了决定整个系统Task执行的动力和原因。映射到具体的程序实现中,Event可以以一个结构体的形式表示出来(MX.OS中以一个全局变量‘MON_temp_MessageStruct’进行相关信息的取得)【91。Event结构定义为

structm_entry{

SrcModulelD;//SrcModuleID:INT8U

INT8UEvent发送者——源ModuleID;DestModulelD;//DestModulelD:Event接受者——目标ModuleID;

Event;INTl6U

Optiontu//Event:Event的ID号;EventOpt;//EventOpt:传递的参数;

);

Task与Event之间的关系表现为:发送Event的目的在于驱动Task的执行,而Event的发送和接收本身就是一个Task。对于发送Event的Task来说,其本质的目的就是对

汽车音响系统RDS软件设计与实现

MX—OS中的全局变量进行改写更新。当MX.OS按照Task列表的顺序调用各个模块的Task时,相关模块会去进行该全局变量的数值读取,一旦经过判定动作后发现该信息是针对自己提出的请求时,便会进行相应Task的执行。

2.6本章小结

本章的主要内容是简述RDS技术的基础知识,对目标软件系统的硬件平台——汽车音响制品和系统平台——-ⅣⅨ一OS进行介绍,侧重点在对MX.OS平台上的程序设计实现机制的阐述,这是目标软件结构设计的决定因素。目标软件的设计与实现均是以此为基础进行展开。

大连理工大学专业学位硕士学位论文

3需求分析

本章是目标软件系统的需求分析部分,从CarAudio制品的功能出发,针对RDS系统中的“AMSS”(AutoMAXStationSearch,自动追踪)部分进行逐步的分解和细化,最终转化为软件可实现的功能点,以此作为后续软件设计和实现的基准点。

3.1相关硬件平台

由于广播数据系统RDS的广泛应用,使得可以利用RDS方式数字化的传输经过编码,所有提供的信息都是基于事件的,它能够提供用户消息和系统消息两大类信息。系统消息是指仅供RDS解码器用于解码、信息管理的消息,它们可通过8A、4A、3A或1A数据帧进行传输。其中用户消息是指要提供给用户相关通信信息,它只能由RDS数据帧的8A组传输。除了上述基本信息之外,为了详细地说明具体的事件或位置,用户消息还可能包括一些对基本信息中某些参数进行说明和解释的附加信息。附加信息的传输需要两个或更多个8A数据帧。RDS消息最多可由五个RDS数据帧序列组成,第一帧RDS数据是基本的用户信息,后续的数据帧是对第一帧数据的进一步解释。

消息包括以下五个基本方面:事件描述——信道的可用程度的细节描述;位置——汽车和信号源之间区域、路段或点位置;方向和范围信息——描述外界事件影响的相邻路段或位置点,以及受影响的车辆行驶方向;持续时间——此项信息预测的持续有效时间。用户信息可以通过各种服务和多种通信手段进行发布,包含车载设备、PDA、手机等。对于所有的服务,为保证各个信息提供商和各种产品(接收终端)对发送、接收的数据的兼容性,需要对接口中的用来发布的数据和数据结构进行清晰的定义,并统一使用标准格式。

CA制品中的RDS的功能实现同样需要硬件与软件的共同协作以最终实现。RDS系统需要如下硬件的支持:

(1)MAINCPU:相关数据的接收,处理与发送,是整个系统实现的控制源【111。(2)TunerChip:接收、解析广播信号,并把RDS信号和广播声音信号分离。

(3)DSDecoder:接收TunerChip发送的RDS信号,将其数字化,对其进行解析分组,并通过IIC.BUS发送给txCOM,进行进一步的处理【l引。

(4)E.Volume芯片:接收TunerChip发送的广播信号,进行声音的播放处理ll引。CA制品中的RDS系统的硬件平台结构如图3.1所示:

汽车音响系统RDS软件设计与实现

图3.1RDS系统的硬件结构图

Fig.3.1RDShardwarestructure

3.2RDS系统硬件的功能性需求

嵌入式软件的运行原理是将源代码“烧写”到相关硬件的中执行【141,在图3.1所示的硬件系统结构中,软件的运行平台就是MAINCPU。所以MAINCPU侧实现的功能是软件开发的关注聚焦点。

数据的接收&发送功能:

MAINCPU侧首先要实现数据的接收功能,相关数据包括:

(1)CurrentFreq:当前接收的广播电台的频率。

(2)RDSData:RDSDecoder传送的数字信息。是RDS内部协议中规定的具有特定含义的数据信息,是RDS系统进行工作的基础。

(3)TunerSignal:TunerChip传送来的处理反馈信息,通过IIC.BUS进行【15】。

同时还要进行部分数据的发送,主要实现是通过IIC.BUS向Tuner芯片发送各种控制指令,包括当前接收的周波数等【16】。

数据处理与动作控制如图3.2。

对接收的数据进行解析,按着分析的结果进行相应的RDS机能的处理。上述的功能是整个RDS系统的动作集合,本次的软件实现是基于上述动作的基础上的。由于RDS软件的复杂性和本人在嵌入式软件开发方面学识的初浅.此次的软件开发仅实现了

大连理工大学专业学位硕士学位论文

AMSS功能,即通常所讲的“自动追踪”这一部分功能。以下的文章的阐述说明均围绕这一点进行展开。

图3.2数据的接收与发送

Fig.3.2Datasendingandrecieving

3.3软件系统的需求分析

嵌入式软件与通用软件的主要区别就是与硬件的关联性。嵌入式软件的作用是配合并硬件的相关动作,并最终实现系统功能,因此与硬件的关联性很强,基本上每一个嵌入式软件的开发都是针对具体的硬件平台进行的,硬件的体系结构和设计机理决定了软件的实现方案。通过对整个RDS系统的功能分析和其相关的硬件体系分析,对RDS软件系统的需求分析分以下各点进行陈述。

3.3.1软件环境需求

车载无线电设备的软件系统主体上由嵌入式操作系统、各硬件器件驱动程序和应用系统三部分组成。提出的低成本车载无线电设备使用主控MCU配套的一个文件系统作为底层操作系统,设备板上各器件的驱动程序由厂家提供,应用系统自主开发。针对应用系统开发中出现的各类问题,结合设备的硬件配置,从无线电原理、嵌入式系统、编码规范、程序运行、内存使用五个个方面加以重点阐述。

(1)无线电原理。无线电是车载无线电设备必须提供的基本功能,也是最为核心的功能。无线电接受方式受到以下因素影响包括距离、时间、环境、实时畅通等。其中,实时畅通指根据实时通信计算出的当前时刻畅通信道。

(2)嵌入式系统。嵌入式系统不同于普通计算机系统,主要区别在于容量和处理书读速度。嵌入式系统具有存储信息量小、实时性强、可控性高、尺寸小的特点。

汽车音响系统RDS软件设计与实现

(4)编码规范。嵌入式程序与普通PC程序或服务器程序在诸多方面存在较大的不同,这主要归因于嵌入式硬件设备的功能约束。

(5)程序运行。嵌入式系统的程序运行方式大体上分为三种,即独立型、主从型和并列型。独立型指由主控MCU直接通过数据总线和地址总线控制程序存储器中的程序运行,或控制片内Flash中的程序运行;主从型指从设备程序运行受主控程序的控制,一般主控程序驱动各硬件器件工作,引导受控程序启动运行;并列型指设备板上同时有两个或多个程序运行,各个程序之间无相互控制的关系。

(6)内存使用。嵌入式系统的内存使用与普通PC程序相比,可控性大为提高,同时也带来了较大的编程复杂性。嵌入式系统的内存由开发者统一使用,内存中的每个存储单元,都被严格控制,即使是运行如Linux,WinCE这类大型的操作系统,运行时的内存分配也是由开发者通过程序事先进行处理,而不是由操作系统自行分配。

3.3.2AMSS的动作

RDS系统进行AMSS动作的目的是保证用户对广播信号的收听效果,要达到这个目的,就需要以下三个连续的动作:(1)判定当前的台的接收效果;(2)如果但前台效果不好,则寻找可以替换的台;(3)如果找到了替换的台,则实现替换。软件要完成对台接收效果的判定,需要:对各个授信参数进行量化,再综合各参数,进而得到一个相对的表示效果的数据:效果等级。硬件方对此采取了检测四个相关性能指标的参数再综合比较得出最终量化值的方法【17】。四个参数相关信息如表3.1所示118】,其中,正比表示在本文此处仅表示二者之间变换的制约关系,即该数值越大,受信感度越好。反之即反(非严格意义的数学关系。

表3.1性能指标参数相关信息表

Tab.3.1Performanceparameters

大连理工大学专业学位硕士学位论文

RDS的硬件系统完成的功能包括:上述四个指标参数相关信号量的检测参数值的输出。至于具体参数值的读取,数据的处理,最终信息接收效果的综合衡量,以及相关动作执行的判定则是由软件来完成的。其中S/M、M/P两个参数是通过读取MAINCPU的‘'A/D”口取得,A/I和SYNC两个参数则是通过读取MAINCPU的‘'port”口取得。为了排除硬件的干扰特性,软件的处理要增加容错的处理机制,尽量保证从硬件得到的数值的准确性。

3.3.3AMSS具体动作

对应于具体的硬件机制,软件上的AMSS的过程具体分为几个动作来完成,根据不同的信号接收效果进行相关内容的处理,如上面所说,具体的处理动作可以大致分为三个阶段:受信感度的量化比较——伙伴电台的信息检索——伙伴电台的切换。其中,受信感度表示当前广播电台信号接收效果。

按照AMSS的阶段性处理流程分阶段对其进行解析:

动作1——受信感度的量化比较:

受信感度的量化是软件实现AMSS功能的第一步,基于AMSS过程中的三个大分类的动作,作为其动作执行的判定条件,可以将受信感度量化为三个大分类的取值(视需求还可分更多级),暂定为Level0,Level1,Level2,其所表示的受信感度从好到坏依次排列。依照硬件的实现机制,LEVEL值取决于当前四个参数的综合比较计算。

该阶段动作的功能性需求为:

S/M,M/P,A/I,SYNC四个参数的读取与判断:具体涉及到硬件输出数值的“读取”,以及硬件资源的利用;

四个参数的综合比较与衡量;

受信感度LEVEL值的计算;

软件量值输出:将软件处理后的受信感度的量化值作为本阶段的输出结果,并作为下一阶段软件处理的输入条件。

非功能性需求分析包括:

(1)硬件的容错处理:因为涉及到与硬件的直接接触,基于外界信号干扰等硬件原

因,在取得硬件端口输出信息的时候要进行相关的容错处理,尽量保证所检测值的准确性。

(2)接收效果判定的实时性:当前台的接收效果可能是时刻变化的,所以就要求系

统足够频繁的执行效果判定动作(这个动作的执行间隔以实际测试为准),但这个动作的执行不能影响当前台的当前正常接收;

汽车音响系统RDS软件设计与实现

(3)动作时机的控制:软件的运行要占用CPU的资源,作为CA的软件系统的一个

模块,任何动作都不能无休止的持续下去,所以一定要进行动作的起停控制。

(4)硬件资源的时序利用:基于嵌入式软件的实时特性,软件上的处理要进行严格

的时序控制,因此利用硬件的相关资源同样是要解决的问题。

动作2——AF信息检索与存储检索:

AF的相关信息作为电台切换的候选项,为最终实现AMSS做铺垫。具体动作实现的功能性要求有:

(1)Level值的判断:接收上一阶段的软件输出信息,根据当前受信感度的变化(即当前的Level值)决定该动作是否执行。

(2)AF台的频率设定:根据AFLIST中存储的数据,控制硬件设备对所有AF台逐个受信;

(3)AF电台相关信息的取得&存储:取得并存储相关可替换电台的信息,作为后续软件实现的输入条件;

(4)AF信息的优先顺序排列:根据一定的标准进行AF信息优先级的排列,便于电台切换时的快速定位;

(5)AF信息检索的起停控制:除AMSS外RDS同时还需要具备“中断”等功能,

因此在整个过程中要进行检索动作的条件判断。根据用户方的要求,具体的限定条件为:PTY31过程中不进行该动作的执行。

非功能性需求包括:

(1)动作的时序控制:因涉及硬件输出数据的检测,应根据具体的硬件体系设计进行相关动作顺序以及时间间隔等参数的设定;

(2)硬件的容错处理:同“动作2”中的相关叙述;

(3)硬件资源的利用:同“动作2”中的相关叙述;

(4)动作的时间限定:从上一条需求考虑和AMSS对用户方的透明性,该动作以及后续切换动作的持续时间之和不可以超过人耳的“可分辨范围”(经相关科学检测为8ms)。

(5)MUTE处理:硬件上对电台信息的检索实现方式是切换到该电台进行“受信”,而整个过程对用户应该是透明的,除了此过程应控制在足够短的时间段内外,还应消除电台切换时的杂音干扰,进行暂时的“消音”处理。其中,MUTE处理:由硬件实现,软件上的MUTE处理可以通过控制图2.1中的MUTEIF端口进行。动作3——AF的切换动作:

本文来源:https://www.bwwdw.com/article/60lj.html

Top