数字录音机设计方案

合集下载

专业录音机房的数字化设计方案

专业录音机房的数字化设计方案

专业录音机房的数字化设计方案【摘要】北京广播电台录制机房专业设备多,模拟和数字共存。

模拟系统存在较多劣势已不能满足节目制作需求,而数字设备在加速信号传输速率同时,减化了机房的布线难度。

录音系统数字化是必然的趋势,数字化录音机房的应用,保障录音系统中的模拟设备的正常使用,为录音机房向未来全数字化发展做好铺垫。

【关键词】录音系统;数字化;机房改造1 北京电台录制机房现况北京台的专业录制机房使用率非常高,日常将完成语言录音,简单音乐录音以及难度较低的广播剧,所以专业设备多,制作节目的要求和难度高,系统复杂难以进行灵活的系统升级。

本文中待改造模拟机房的核心设备为studer 962 模拟调音台,其模拟通路不够需要外接跳线盘来扩容,且存在故障点多维护困难,转化复杂,音频文件受介质损耗影响大的问题,所以必须进行数字化改造。

2 机房设计2.1 设备选型机房的核心设备选用的是STUDER OnAir3000的调音台,分别定制了6个推子模块,推子屏模块,推子分配模块,旋钮模块,旋钮分配模块、主屏模块和监听对讲模块。

主机SCORE的核心机箱最多容纳6块DSP卡以及所需的控制板卡、时间和时钟同步接口;下排是标准的D21m输入/输出接口系统,可以支持不同的信号输入输出调音台。

并定制了MIC卡两块,线路输入卡两块,线路输出卡两块,AES/EBU卡两块,ADAT卡两块作为调音台的外部接口,该机房的SCORE共支持8路MIC单声道输入,8路线路立体声输入,8路线路立体声输出,16路数字立体声输入,16路AES/EBU立体声输出和32路光纤立体声输入输出,不仅满足了目前的机房使用需求,也为以后机房增添设备功能,系统扩容做好了准备。

同时配备了辅助设备如下:数字设备:苹果工作站一台,标准工作站两台,TASCAM CD三台,CD刻录机一台,Lexicon的效果器两台;模拟设备有TASCAM CDMD,SONY DAT,OTARI MD,各一台以及五路MIC;且有民用模拟设备SONY 的DVD。

数字录音机设计方案

数字录音机设计方案

数字录音机设计方案:一个使用统一建模语言(UML)设计嵌入式系统的实例,着,译摘要本文内容是采用统一建模语言(UML)对一个嵌入式系统进行面向对象分析和设计的实例。

被分析的系统是一个数字录音机或称口授留声机。

设计实现采用一个嵌入式微处理器和C++编码。

关键字:面向对象的设计,UML,嵌入式系统1 简介统一建模语言(Unified Modeling Language-UML)[BJR1,BJR2]提供了一套标准的符号来表示面向对象的软件分析和设计方法[CY90,MO92,SS95]。

使用UML 图表能够对很复杂的系统建模,包括实时嵌入式系统。

然而,UML并不是软件开发过程,也没有严格区分软件工程中各开发阶段。

UML定义了一套由不同图表组成的标记符号,但是并没有描述怎样创建和应用这些图表。

[Dou98] 介绍了使用UML和面向对象的分析设计技术建造实时嵌入式系统。

本文由Douglass撰写,描述了使用UML对一个数字录音机(或口授留声机)系统进行面向对象设计和实现的过程。

目前市场上已经有一些数字录音机商业化产品。

本文我们描述的模型参照了一家著名厂商的类似产品的设计。

相关需求说明参见本文第二节。

第三节讨论系统的对象模型给出主类图。

第四节继续进行面向对象的分析,但是主要讨论每个对象内部的行为。

第五节进行系统结构设计。

包括数字录音机的硬件结构,以及并行处理模型,在该模型内,为每个对象将分配一个可执行的线程。

第六节将定义不同对象之间的合作关系。

并通过设计模式[GHJV95] 将分析阶段定义的类整合。

详细设计在第七节进行讨论。

最后,第八节讨论系统实现。

我们使用C++进行软件的开发,硬件平台采用一个32位RISC(精简指令集计算机)嵌入处理器。

2 需求分析数字录音机是一个电子消费产品,用来录制和回放语音。

通过内置的麦克录制语音信息,然后将信息保存在数字内存中。

使用者可以很方便的在任何时候回放任意录制好的信息,声音将通过设备前端的扬声器播放。

基于单片机的数码录音机设计

基于单片机的数码录音机设计

摘要本设计是基于单片机的数码录音机设计,主要任务是实现简单的录音和播放功能。

系统可以使用单片机的外扩A/D和D/A转换器来实现录音播放功能,也可以选用专用的语音芯片。

本文从经济实用的角度出发,设计了一款具有按键控制、录音、播放模式的单片机语音录放系统;硬件部分选用美国Atmel公司的AT89C52单片机作为主控芯片,并与ISD2560语音录放芯片相结合,添加外围的控制电路、键盘、扬声器等设备来实现语音录放功能,软件部分主要采用单片机C 语言来编写主控芯片的控制程序和EEPROM读写程序;该设计能真实的再现语音的自然效果。

关键词语音芯片ISD2560 单片机AT89C52AbstractThe design is based on the design of single chip digital recorder, the main task is to achieve a simple recording and playback functions. System can be expanded using external microcontroller A / D and D / A converter to achieve the recording playback, you can also use a dedicated audio chip.From the economical point of view, has designed a button control, recording, voice recording and playback mode of SCM systems; hardware selected Atmel's AT89C52 microcontroller United States as the main chip, and with the ISD2560 voice record chip combination, add External control circuit, keyboard, speakers, voice recorders and other equipment to achieve the function, the software part of the C language used mainly to prepare the master microcontroller chip and EEPROM read and write control program procedures; a true representation of the design is the natural effect of voice.Key words ISD2560 voice chip SCM AT89C52目录摘要 (I)Abstract (II)绪论 (1)第1章课题的技术发展 (2)1.1语音芯片 (2)1.2单片机 (3)1.2.1 单片机硬件开发原理 (3)1.2.2 单片机软件开发原理 (4)第2章课题的任务分析及总体设计方案 (5)2.1任务分析 (5)2.2总体方案设计 (5)2.3元器件选择 (6)2.3.1 单片机选择 (7)2.3.2 语音芯片的选取 (8)第3章硬件电路设计 (12)3.1AT89C52单片机最小系统 (13)3.1.1AT89C52单片机主要功能特性及引脚分布图和管脚说明 (14)3.1.2 单片机的电源电路 (16)3.1.3 AT89C52单片机的复位电路 (17)3.1.4 AT89C52单片机时钟电路 (17)3.1.5 录音/播放控制电路 (18)3.2语音芯片ISD2560电路 (18)3.2.1 ISD2560主要功能特性及引脚说明 (18)3.2.2 语音录放电路语音芯片ISD2560部分原理图及说明 (22)3.3整体电路图 (23)3.4PCB图 (25)第4章软件设计 (26)4.1程序流程 (26)4.2录音子程序流程图 (27)4.3放音子程序流程图 (28)第5章设计仿真结果与说明 (29)5.1Keil软件概述与编译结果 (29)5.1.1 Keil软件概述 (29)5.1.2 Keil编译结果 (29)5.2Proteus软件概述与仿真结果 (30)5.2.1 Proteus软件概述 (30)5.2.2 Proteus仿真过程 (31)结论 (36)致谢 (37)参考文献 (38)附录1 (39)附录2 (43)绪论随着人类社会不断的进步,随着语音芯片的普及,语音播报被广泛应用于车站报站器,语音型数字万用表,出租车语音报站器,排队机等,并且面向家庭个人使用的方向发展,更加人性化。

数字录音机 (2)

数字录音机 (2)

东南大学仪器科学与工程学院《微机实验及课程设计》专业综合设计报告姓名:学号:专业:实验室:组别:同组人员:设计时间:2011年05月20日——2011 年6月6日评定成绩:审阅教师:目录一. 专业综合设计的目的与要求 (3)二.原理设计 (3)三.方案论证 (3)四.方案实现与测试 (5)五.分析总结 (6)一.专业综合设计的目的与要求实验目的:1、数字录音技术的基本原理。

2、一步掌握A/D转换器与D/A转换器的使用方法。

设计指标:1、按图连接电路,将声传感器MIC接J2,把代表语音的电信号送给ADC0809通道2(IN2);D/A转换器的输出端通过K8跳线接喇叭。

2、编程,以8KHz的速率采集IN2输入的语音数据并存入内存,共采集64000个数据(录8秒),然后再以规定的速率和幅度将数据送DAC0832使喇叭发声(放音)。

3、用键盘控制启停,按键‘a'控制开始,按键'd'控制重放,按键's'停止。

4、幅度和放音增益由键盘输入指定,放音输出以录音为基准,可在0.3-1倍间变化。

5、在8*8双色点阵显示器上显示录音和放音的粗略波形,红色为录音,黄色为放音。

二. 原理设计1、音调调节:作了比例量化处理,把数据区取出的数据乘以vol,除以10,通过确定vol的值得出最后的音量输出值,确定vol值时调用volume子程序,比较判断键盘的输入值,键盘输入'3','4','5','6','7','8','9','1',对应的vol的值分别为3,4,5,6,7,8,9,10.这样数据区的数据就可以成倍缩小了。

2、波形显示:每列有8个LED灯,把0-255分成8段,分别对应亮1,2...8个灯,从数据区取出的数据先比较判断是属于哪段的,行选的口地址为2A0h,红选的口地址为2B0h,黄选的口地址为2A8h,行全部选中,列就是按照数据属于哪段确定选中几个灯,分别对应01h,03h,07h,0fh,1fh,3fh,7fh,0ffh。

数字录音机硬件设计

数字录音机硬件设计

天津工业大学本科毕业论文第二章基本知识介绍数字录音机硬件设计第一章系统硬件设计1.1硬件系统框图如图3-1所示:系统硬件系统由单片机控制电路、语音输出电路、USB接口电路、存储器电路以及计算机等几部分组成,各模块间的连接方式如图3-1所示,下面来分别介绍各模块功能。

图3-1 硬件系统整体框图1.2单片机控制电路单片机控制电路由SPCE061A芯片,复位电路,时钟电路等组成。

原理图如图3-2所示。

图3-2 单片机控制电路原理图1、SPCE061A芯片介绍SPCE061A是凌阳科技研发生产的性价比很高的一款十六位单片机,使用它可以非常方便灵活的实现语音的录放系统,该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,并且内置有自动增益电路。

这为实现语音录入提供了方便的硬件条件。

两路10精度的DAC,只需要外接功放(SPY0030A)即可完成语音的播放。

SPCE061A芯片特性:16位μ’nSP微处理器;工作电压:内核工作电压VDD为2.6~3.6V(CPU),IO口工作电压VDDH为VDD~5.5V(I/O);CPU时钟:0.32MHz ~ 49.152MHz;内置2K字SRAM;内置32K闪存ROM;可编程音频处理;晶体振荡器;系统处于备用状态下(时钟处于停止状态),耗电小于2μA@3.6V;2个16位可编程定时器/计数器(可自动预置初始计数值);2个10位DAC(数-模转换)输出通道;32位通用可编程输入/输出端口;14个中断源可来自定时器A / B,时基,2个外部时钟源输入,键唤醒;具备触键唤醒的功能;使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据;锁相环PLL振荡器提供系统时钟信号;32768Hz实时时钟;7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器;声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;具备串行设备接口;低电压复位(LVR)功和低电压监测(LVD)功能;内置在线仿真板(ICE,In- Circuit Emulator)接口。

数字语音录系统的设计

数字语音录系统的设计

数字语音录放系统的设计【摘要】本文设计并实现了一个数字化语音存储与回放系统,采用了单片机配以外围电路实现对语音信号到数字信号的转化与存储,数字信号到语音信号的回放。

本系统核心部件采用内部集成了A/D、D/A的SOC单片机C8051F005,语音信号由双拾音话筒转换为电信号,经过差分放大器、自动增益控制(Auto Gain Control,AGC)放大电路、带通滤波器、电平转移电路后变成符合A/D采样要求的信号(幅值范围0~2.4V),然后通过SOC单片机内的A/D转换器转换为数字信号。

语音信号的采样频率为8kHz,采样后的语音数字信号存储在大容量的SRAM中。

回放时,将存放在SRAM 中的语音数字信号经D/A转换、滤波和功放后驱动扬声器。

整个系统具有录音、放音、继续、停止等功能。

本文主要研究了硬件实现、调试和软件设计流程。

【关键词】单片机,外围电路,带通滤波器IThe Design of Digitized V oice Record-playback System 【Abstract】The thesis designed and implemented a digital voice storage and playback system that uses a single-chip microcomputer together with external circuit to realize the storage and change the voice signal into digital signal,the playback of audio signals.The core components of the system is based on an SOC MCU C8051F005 which is integrated with an internal A/D and D/A, voice signals through the two-microphone pickup converted to electrical signals, after going through the differential amplifier, automatic gain control(AGC) amplifier, band-pass filter and level shift circuit it turn into the signals with A/D sampling requirements (amplitude range of 0 to 2.4V).Then the signals within the SOC Single-chip microcomputer’s internal A/D converter is converted into digital signals. The sampling frequency of speech signal is 8kHz, and sampled voice digital signal stored in the large-capacity SRAM. When it playbacks, in order to drive the speaker, the digital signal stored in the SRAM via the voice D/A conversion, filtering and post-amplifier.The system has the following functions:recording,playing,continue,stop.The thesis mainly studies the realization and debugging of the hardware and the flow of the design of software.【Key Words】single-chip microcomputer,external circuit,band-pass filter目录1 绪论 (1)1.1 数字语音录放系统发展历史 (1)1.2 国内外研究现状 (2)1.3 本研究课题的内容与关键技术 (2)1.3.1本研究课题的内容 (2)1.3.2本研究课题的关键技术 (4)2 总体设计方案 (5)2.1 整个系统的功能概述 (5)2.2 各个子系统功能及实现方略的考虑 (5)2.2.1 前置放大器 (5)2.2.2 带通滤波器 (5)2.2.3 语音存储和回放 (6)2.2.4 后级放大器 (6)3 SOC单片机最小系统设计 (7)3.1 C8051F005单片机的特点 (7)3.1.1 高速CIP-51 内核 (7)3.1.2 C8051F005单片机有丰富的数字和模拟资源 (7)3.1.3 在系统调试 (7)3.2 C8051F005的振荡电路 (8)3.3 外部数据存储器扩展 (9)3.4.12 位A/D转换器和D/A转换器 (10)3.4.1 A/D转换器 (10)3.4.2 D/A转换器 (12)3.5 C8051F005的并行数字I/O口 (13)3.5.1 输入/输出端口功能寄存器 (13)3.5.2 输出方式寄存器 (13)3.5.3 输入/输出端口数据寄存器 (13)3.5.4 输入/输出端口初始化实例 (14)3.6 SOC单片机最小系统实验板 (14)4外围模拟电路设计 (17)4.1 话筒前置放大电路 (17)4.2 带通滤波器的设计 (18)4.3 电平位移电路 (20)4.4 后级放大电路 (21)5 系统软件设计 (22)5.1 主程序设计 (22)5.2 键盘中断服务程序设计 (22)5.3 定时器中断服务程序设计 (23)5.4 A/D中断服务程序设计 (24)5.5 按键与显示功能设计 (25)结论 (26)参考文献 (27)附录A (28)致谢 ············································································错误!未定义书签。

数字录音机设计

数字录音机设计

图1 硬件连接图
各芯片的作用及工作方式
(1)ADC0809在本次设计中的作用及工作方式
ADC0809作数据采集用,用来采集12秒的语音信号并保存到相应的存储单元。

对ADC0809的8个模拟通道,这里是用数据总线的低8位D2、D1、D0来控制ADC 的通道选择信号ADDC、ADDB、ADDA,以实现选择其中之一模拟通道输入。

在本次设计中,初始值为000(D2=0、D1=0、D0=0),即选择IN0通道进行数据采集,然后使ADC0809的ALE、START有效,START和ALE信号通过CPU向选中的通道口执行一条输出指令,启动A/D转换。

转换结束后,发出EOC信号,当EOC为高电平时,可供CPU查询,读取每次采集的A/D转换结果。

当CPU知道转换已完成,执行一条输入指令使OE信号有效,此时输出缓冲器被打开,数据送到数据总线。

系统时钟经分频后接到ADC0809芯片的时钟引脚CLK上。

(2)DAC0832在本次设计中的作用及工作方式
在本次设计中,我使用的DAC0832采用直通方式与CPU连接,从硬件图中可以看出,该片DAC0832只有一个端口地址,即88H。

DAC0832的ILE信号与+5V连在一起,、WR1和WR2均接地,总是有效的,DAC0832的输入寄存器和DAC寄存器均处于选通状态,只要CPU想88H端口执行一条输出指令,就会使XFER有效,CPU输出繁荣数字量就会顺利通过DAC0832的两个寄存器,然后进行D/A转换,。

录音机实验报告

录音机实验报告

录音机实验报告一、摘要1、课题:实现一台具有记录和回放一定时长的声音的功能的数字录音机2、完成情况:完成度100%,可以通过简单的屏幕文字提示和键盘交互来实现录音和播放的功能。

3、关键词:数字录音机、录音、播放、汇编语言、微机二、目标要求1、实现录音功能,能够录制12秒钟的声音。

2、实现播放录制的声音的功能。

三、设计和实施方案1、数字录音机原理设计:以8253作为定时器,以每秒钟5000次的速率,从IN2采集输入的语言数据并存入内存。

共采集60000个数据(录12秒钟),然后以同样的速率将数据送入DAC0832使喇叭发声(放音),达到数字录音、放音的效果。

2、数字录音机的实施方案:(1)主程序:主程序的主要任务是对8253、8255A进行初始化,实现录、放音的功能调用。

①8253初始化设置:8253在程序中设置成方式0,计数200,定时0.2ms ;8253工作方式控制字:10000000B,即10H;选择通道0,方式0,只读、写低8位,设8253输入时钟信号的频率为1MHZ,计数初值=0.2 ms/0.001ms=200 ,控制字端口地址为81H,计数器0端口地址为80H。

②8255A初始化设置:8255A控制字:10010000B,即90H;方式0,A口输入,控制字端口地址为:85H ,A口地址为:84H③调用录、放音子程序:首先DOS功能调用,显示录音提示信息,然后BIOS功能调用,读键盘缓冲区字符,等待键盘输入,若无键按下,继续等待;有键按下,则调用录音子程序,录音12秒。

清除键盘缓冲区后,再进行放音子程序的调用。

(2)A/D录放音子程序:ADC0809以每秒5000的速率采集语音数据,录音12秒,因此共需采集5000×12=60000个数据,计数器CX=60000。

选择IN0通道进行数据采集(D2=0、D1=0、D0=0),寻址A/D转换启动端口地址,CPU向IN0通道执行一条输出指令,启动一次A/D转换。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字录音机设计方案:一个使用统一建模语言(UML)设计嵌入式系统的实例,着,译摘要本文内容是采用统一建模语言(UML)对一个嵌入式系统进行面向对象分析和设计的实例。

被分析的系统是一个数字录音机或称口授留声机。

设计实现采用一个嵌入式微处理器和C++编码。

关键字:面向对象的设计,UML,嵌入式系统1 简介统一建模语言(Unified Modeling Language-UML)[BJR1,BJR2]提供了一套标准的符号来表示面向对象的软件分析和设计方法[CY90,MO92,SS95]。

使用UML 图表能够对很复杂的系统建模,包括实时嵌入式系统。

然而,UML并不是软件开发过程,也没有严格区分软件工程中各开发阶段。

UML定义了一套由不同图表组成的标记符号,但是并没有描述怎样创建和应用这些图表。

[Dou98] 介绍了使用UML和面向对象的分析设计技术建造实时嵌入式系统。

本文由Douglass撰写,描述了使用UML对一个数字录音机(或口授留声机)系统进行面向对象设计和实现的过程。

目前市场上已经有一些数字录音机商业化产品。

本文我们描述的模型参照了一家著名厂商的类似产品的设计。

相关需求说明参见本文第二节。

第三节讨论系统的对象模型给出主类图。

第四节继续进行面向对象的分析,但是主要讨论每个对象内部的行为。

第五节进行系统结构设计。

包括数字录音机的硬件结构,以及并行处理模型,在该模型内,为每个对象将分配一个可执行的线程。

第六节将定义不同对象之间的合作关系。

并通过设计模式[GHJV95] 将分析阶段定义的类整合。

详细设计在第七节进行讨论。

最后,第八节讨论系统实现。

我们使用C++进行软件的开发,硬件平台采用一个32位RISC(精简指令集计算机)嵌入处理器。

2 需求分析数字录音机是一个电子消费产品,用来录制和回放语音。

通过内置的麦克录制语音信息,然后将信息保存在数字内存中。

使用者可以很方便的在任何时候回放任意录制好的信息,声音将通过设备前端的扬声器播放。

该产品将具有体积小、重量轻、使用方便等特点。

图 2.1 是我们设计的数字录音机的外观示意图。

它是一个手持系统,具有一块平面显示屏以及一些按钮。

图 2.1 外观示意图在设计中将要考虑到的系统特性如下:●最多存储10条信息,每条信息的长度将受系统剩余内存的限制。

●简单易用的屏幕菜单。

●直接存取任意语音信息。

●具有时钟功能(不存在2000年问题),用户可以每天设置闹钟,闹钟铃声60秒钟后自动停止,用户也可以按任意键停止铃声。

●全功能液晶显示屏. 屏幕上总是显示当前日期和时间。

同时显示提示信息如操作指南,当前操作信息等。

●电池电量显示,如果电量不足,系统会发出哔哔声警告。

●为了节省电池. 在不使用的情况下,系统将关闭外部设备的电源,用户可以通过按任意键使系统回复正常。

●提供好的声音回放质量。

使用6Khz的8位采样频率。

2.1 外部事件嵌入式系统经常要跟外部环境交互。

在目前的分析阶段,我们把系统视为一个可以响应外部环境的请求和消息的黑盒子。

外部环境由一些参与者(Actor)组成。

每个参与者与我们的系统进行不同目的的交互并交换一组不同的信息。

系统范围图/Context-Level Diagram图 2.2 显示了所有与我们的系统进行交互的参与者。

图中我们定义了3个参与者:用户(User),电池(Battery)和时钟(time)。

图中还显示了接口和用于实现系统和参与者交换信息的传感装置和执行装置。

这里指的信息可以是参与者向系统提出的请求,也可以是系统作出的响应或提供给参与者的服务内容。

传感装置(Sensors)包括麦克和按钮。

执行装置(Actuators)包括扬声器、电池电量显示表。

每当一个时间计时结束时,参与者‘时钟‘向系统发送一个内容类似于‘下一秒’或者‘下一个小时’的消息。

在实际实现中,我们将用一个硬件定时器来控制具体时间。

图 2.2 系统范围图事件/Events事件是环境与系统之间传递的的重要消息。

一个实时响应系统必须在某个限定的时间内对外部事件作出响应。

下表中内容显示了针对我们的系统所有可能发生的外部事件。

事件的方向:’In’表示该事件由环境传递给系统,‘Out’表相反。

事件发生模式(A):周期事件(Periodic):表示该事件的发生是遵循某个固定的时间周期的。

在表格中用P表示。

随机事件:(Episodic):表示该事件随机发生。

在表格中用E表示。

响应时间:表示系统对该事件作出响应所需时间的上限,如果在给出的时间内系统没有完成响应,将会引起系统错误。

2.2 用例/Use Cases用例是从使用者的角度描述系统的功能。

使用者可能是一个人或者某个设备。

每个用例表示一种使用系统的方法,每个用例完成后产生不同的结果。

在我们的系统中共有6个用例。

如图2.3所示。

用例描述如下记录一条信息(Record a message)使用者选中信息存储目录中的某个信息存储位置,并按下‘录音’(Recording)键。

如果在该位置已经存储了一条信息,该记录将被删除。

. 系统开始通过麦克录音,直到用户按‘停止’(Stop)键或者内存耗尽。

图 2.3 用例图回放一条信息(Playback a message)用户选择某个信息存储位置,然后按‘播放’(Play)按钮。

如果该位置保存有信息,则系统通过扬声器回放该声音信息,直到回放完毕或用户按了‘停止’. 按钮。

删除一条信息(Delete a message)用户选中一个存储位置按‘删除’(Delete)按钮,该位置存储的信息将被永久删除,所占用的内存将被释放。

闹钟定时(Set the alarm time)用户可以设定是否开启(关闭)闹钟,以及闹铃时间。

这些操作将在闹钟菜单中进行。

设定系统时钟/Set the clock time用户可以通过此功能调整校准系统时间,或者将系统时间改为当前时区的时间。

显示系统时间/Watch the time用户可查看显示屏上连续显示的当前时间、日期。

2.3 场景/Scenarios场景用来描述系统与外部参与者(user,battery和time)之间的交互行为。

一般来说,即使在每一个参与者的角色都很明确的情况下,仍然很难将所有可能的交互行为都考虑到,事实上也没有必要这样做。

我们只要研究必须的场景以满足系统需要就行了,比如,我们必须研究在系统回放声音的时候电池电量不足以及当系统播放声音时闹钟响起来这两种情况。

图2.4 表示了播放声音信息的用例。

图 2.4 播放声音信息的场景图 2.5 显示当播放声音时闹铃响起来的情况,我们决定给闹钟响铃一个较高的优先级。

图 2.5 回放声音时闹钟响铃的场景描述系统可以关闭显示屏背景灯、麦克和扬声器。

这些部件都是要耗费大量电池电量的。

通过关闭它们来接生能源以及延长电池的使用寿命。

电池在电量不足的时候能够向系统发出警告,系统会关闭所有外设并切换到等待模式。

用户为电池充电后,系统离开等待模式。

当系统处于等待模式时,所有信息会被保存在内存中。

图2.6 显示系统进入等待模式,被闹钟唤醒,然后收到电量不足的警告,重新进入等待模式的场景。

图 2.6 进入和退出休眠模式的场景描述3 分析:对象结构/Analysis: Object structure在需求分析之后[SS95],我们将开始系统的领域分析。

在这个阶段,我们会根据已有的需求,给出问题整体解决方案的类图。

图中将包含系统主要的类及其相互关系,但是不包含它们之间接口的描述。

建立主类图的第一步实标识出系统的相关对象。

3.1 对象标识/Identifying objects屏幕控制器在液晶屏幕上产生图象现实内容日期时间语音,声音麦克,扬声器电池键盘,显示器关键概念语音,采样,声音采样声音信息永久对象已经记录的信息的集合数字磁带中的内容当前时间,日期闹钟定时闹铃响起来的时间事务处理消息可视组件菜单,菜单设置选项,菜单选择时钟,闹铃开启和关闭指示日历状态条,帮助行,任务进度指示条播放,录音,停止,是,否,上,下,左,右等9个按钮使用者将通过上述按钮操纵系统。

图 3.1 用户接口/User Interface图3.1 显示了用户接口的所有可视组件。

系统操作采用菜单驱动,屏幕上将显示当前菜单。

顶部显示当前时间,日期及闹钟定时。

底部显示提示信息。

3.2 建造类图/Building the class diagrams数字录音机系统类图/The Sound Recorder Class Diagram使用者通过Display类(显示器)和keyboard(键盘)与系统交互。

这些都是被动对象,因此我们决定提供UserInterface(用户接口)类来管理上述交互行为。

UserInterface类依赖AudioContoller(音频控制器)类来完成任务。

AudioContoller类是整个系统的核心类,它将执行用户接口类要求执行的任务。

AudioContoller类通过Audioinput(音频输入)类和AudioOutput (音频输出)类来完成对声音的处理。

这两个类分别与硬件封装类Microphone(麦克)和Speaker (扬声器)相关联。

[AKZ96]信息存储将由MessageMemory类完成,该类维护一个信息存储目录,负责为新信息提供分配控件以及删除旧信息。

图 3.2 数字录音机系统类AlarmClock类更新内部时钟并检查是否到了应该响铃的时间,如果是就发出铃声。

在这种情况下,它会将闹铃事件通报给UserInterface类,UserInterface类收到消息后会在屏幕上显示闹铃指示并通过AudioControl类发出闹铃声。

图 3.2 以图形的方式描述了数字录音机系统主要的类。

类图通过对每个类细节抽象,为我们提供了系统的概要描述。

我们决定将类图中的类归总为5个子系统。

分别为alarm clock子系统, battery子系统, user interface子系统, memory子系统和audio子系统. 图3.3描述了这个划分. 后续章节将对每个子系统深入研究并逐步扩展。

图 3.3 数字录音机的子系统音频子系统类图每条信息由一组音频块(audio blocks)组成,而每个音频块又包含了一组音频样本。

音频子系统总是记录/回放一个完整的音频块。

音频输入和输出类是实时工作的,Timer类是硬件定时器的封装类,它为AudioInput和AudioOutput类提供精确定时。

Microphone是麦克的封装类。

一个Microphone类记录一个声音样本。

Speaker类能够通过扬声器回放声音样本。

.图 3.4 音频子系统类图为什么需要3个不同的类来播放信息呢?因为回放和记录一条信息是一个复杂的过程,需要精确的定时以及同硬件交互。

相关文档
最新文档