基于51单片机语音存储与回放系统设计_第1页
基于51单片机语音存储与回放系统设计_第2页
基于51单片机语音存储与回放系统设计_第3页
基于51单片机语音存储与回放系统设计_第4页
基于51单片机语音存储与回放系统设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、 目录 摘要.i abstract.ii 绪论.1 1 语音录放系统总体设计及主要芯片说明.4 1.1 总体方案论证.4 1.2 器件选择.5 1.2.1 单片机的选择.5 1.2.2 语音芯片选择.6 1.3 at89c51 芯片说明.7 1.3.1 at89c51 的主要参数.7 1.3.2 at89c51 的引脚功能说明.8 1.4 isd2560 语音芯片 .9 1.4.1 isd2560 的引脚功能.9 1.4.2 isd2560 的操作模式.10 1.4.3 isd2560 的分段录放音.11 1.4.5 isd2560 的应用电路.12 1.5 lm386 集成功率放大器芯片说明

2、.13 1.5.1 lm386 电子特性.13 1.5.2 lm386 的引脚说明.14 2 语音录放系统硬件电路设计.16 2.1 系统硬件电路总体设计.16 2.2 at89c51 的外围电路设计.16 2.2.1 晶振电路设计.16 2.2.2 复位电路设计.17 2.3 语音电路设计.18 2.4 功放电路设计.19 2.5 键盘输入电路和状态显示电路设计.19 3 语音录放系统软件设计.21 3.1 主要变量说明.21 3.2 主程序工作原理及流程图.21 3.3 子程序流程图及代码.23 3.3.1 录音子程序.23 3.3.2 放音子程序.24 结束语.26 致谢.27 参考文献

3、参考文献.28 附录 1.29 附录附录 2.31 i 摘要摘要 在智能仪器仪表或自动控制设备中,增加语音功能能极大地提高人机界面的友好性, 方便用户操作。在许多场合需要将语音合成、语音识别、语音存储和回放技术和单片机 结合在一起。 常规的模拟化语音处理系统能实现语音的存储与回放功能,但效果不是很好。本文 采用了 flash 单片机 at89c51 及数码语音芯片 isd2560 组成的数字化的语音存储与回放 系统。单片机是系统的控制中心,它主要实现以下的功能:一方面控制按键识别和功能 选择;另一方面控制 isd2560 语音芯片的录音和放音过程,实现语音的存储和回放。 本设计首先给出了系统的

4、硬件电路,接着结合硬件电路编写了录、放音控制程序, 最后,对本设计进行总结与展望。 关键词关键词:at89c51 单片机 isd2560 语音芯片 语音存储 语音回放 ii abstract in the area of intelligent instruments and automatic control equipments, the system with the phonetic function can greatly increase the friendliness of the man-machine interface, and is also convenient fo

5、r users to operate. in many situations, designers need to integrate the phonetic synthesis, the phonetic recognition and the phonetic storage and playback technology with the scm. the common analog-signal digitalize processing system can realize the function of phonetic storage and playback. but the

6、 effects are not very good. this dissertation designs the digital phonetic system composed of flash micro-controller at89c51 and digital audio chip isd2560. scm is the control center of the system, it is mainly to achieve the following functions: the keystroke identification and the function selecti

7、on; phonetic storage and playback by using the digital audio chip isd2560. firstly, this dissertation designs the hardware circuit of the system. and then compiles the control program of record and playback. at last, the summary and prospects of the design was presented. key words: at89c51 isd2560 p

8、honetic storage phonetic playback 1 绪论绪论 (1)课题研究背景及科学意义 在智能仪器仪表或自动控制设备中,增加语音功能能极大地提高人机界面的友好性, 方便用户操作。目前语音服务行业越来越广泛,如电脑语音钟、语音型数字万用表、手 机话费查询系统、排队机、监控系统语音报警以及公共汽车报站器等。在许多场合,设 计者需要将语音系统和单片机结合在一起。 单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点。 现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机,单片机可以说是 世界上数量最多的计算机。手机、电话、计算器、家用电器、电子玩具、

9、掌上电脑以及 鼠标等电脑配件中都配有 1-2 部单片机。而个人电脑中也会有为数不少的单片机在工作。 可以说,单片机能够在语音功能的实现应用中发挥重大的作用。 数字语音录放是指利用数字技术对语音信号进行采集、处理、并且在一定存储设备 中进行存储,并可在需要时进行输出的过程。相对于模拟设备来说,数字设备易于集成、 小型化、成本更低,同时更为稳定,且操作更为直接、方便,使得数字语音录放系统目 前在各种领域中都得到了广泛的应用。例如监控环境中使用的语音采集系统;再如家庭 或学校中使用的语音复读机等,都可看作是数字语音录放系统的典型应用。 在对语音信号的处理方面,常规方法是采用滤波器处理接收到的模拟语音

10、信号,通 过模数转换成为数字信号,再由单片机控制存储到存储器中。在需要输出语音信号时, 亦可由单片机控制从存储器中输出,再经数模转换成模拟信号,通过 iv 变换成电压信号, 滤波后通过功放将语音信号输出。但是这种方法的缺点是,输出不稳定,语音信号有杂 音或者变音,这是模拟电路所不能避免的。 为了解决这个问题,我们可以采用专用的语音芯片。语音芯片就是在人工或者是控 制器的控制下可以录音和放音的芯片。语音芯片可以很方便的在单片机系统中使用,并 且和单片机的接口非常容易,其体积和重量也能符合单片机系统的要求。因此,本次课 题的设计采用的是单片机和语音芯片的结合,实现语音信号的数字化控制。 (2)国内

11、外研究现状 随着 it 行业的不断进步,现在我们的生活中各种语音录播设备层出不穷。在一般的 数字语音录放系统中,对语音只是进行简单的采集、存储和播放;虽然可以较大程度上 保证语音的保真度,但过多的语音数据会造成对大量存储设备的需求。对于大型系统, 可通过采用大容量的硬盘、甚至大规模的磁盘阵列来解决;但是对于小型的设备,例如 便携式的语音复读机,由于容量有限,则不能采用同样的方法。 近年来,语音信号处理技术研究的突飞猛进,为数字语音录放系统提供了新的发展 2 空间。对语音的采集、处理从以前简单的波形编码转变为参数编码、压缩,从而大大减 少了存储数据。举例来说,原始语音一般都是采用 8khz 抽样

12、,16bits 的线性 pcm 编码 进行采集,在一般的系统中就直接将采集后的数据进行存储;而如果采用参数编码对采 集后的数据进行压缩,存储量则可以大大减少,当需要恢复语音时,可利用编码后的参 数进行合成,可以得到质量令人满意的结果。 目前比较典型的语音器件有美国 isd 公司生产的 isd 系列语音芯片。isd 系列语音 芯片采用模拟数据在半导体存储器直接存储的专利技术,即将模拟语音数据直接写入单 个存储单元,不需经 a/d 或 d/a 转换,因此能够较好的真实再现语音的自然效果,避免 了一般固体语音电路因为量化和压缩所造成的量化噪声和失真现象。另外芯片功能强大: 即录即放、语音可掉电保存、

13、10 万次的擦写寿命、手动操作和 cpu 控制兼容、可多片级 联、无需开发系统等等,确实给欲实现语音功能的单片机应用设计人员提供了解决方案。 现在市场上已有公司将以 at89c2051 单片机与 isd 语音芯片组成的语音组合板,用串口 通信,芯片里固化有一些常用语音词汇,用户不需了解语音功能的工作原理,只需通过 串口按一定协议发送代码即可送出语音。 (3)研究方法 系统要求实现语音的数字化存储与回放,整个系统分为录音、停止和回放三种状态。 语音信号作为一种模拟信号,本身不能完成数字化的处理,需要借助专门的语音芯片或 者是通过 a/d 和 d/a 转换完成模拟语音信号的处理工作。单片机在这个过

14、程中起到了举 足轻重的作用。单片机需要控制语音录音的开始与结束,设定信号存储的地址,并在播 放时寻址播放空间并控制播放。 对于通过 a/d 和 d/a 转换完成语音信号处理的方法介绍如下:将模拟语音信号通过 模数转换器转换成数字信号,再通过单片机控制存储在存储器中,回放时,由单片机控 制将数据从存储器中读出,然后通过数模转换器转换成模拟信号,经放大在扬声器或耳 机上输出语音。这种方法系统电路简单,程序简洁。采用闪存保存语音,即使断电仍然 能保持信息不丢失,所以保存信息安全可靠。但是该系统仍需要使用到模拟电路进行信 号的放大与滤波,这会使得到的语音信号相对失真,同时也需要采用软件滤波技术加以 完

15、善,因此本次设计不采用该方法。 若采用语音芯片处理,则不需要在外部进行语音信号的放大和滤波,语音芯片的抗 干扰能力极强,可以有效地防止信号失真。语音芯片内部集成了模拟存储阵列,不用外 连存储器,这使得电路更加简单易懂,因此本次设计采用该方法来实现。 (4)本文的主要工作 本设计的主要任务是查阅国内外相关文献资料,在了解和熟悉目前语音存储与回放 系统结构、功能以及发展现状的基础上,完成基于 51 单片机语音存储与回放系统设计。 论文组织结构如下: 3 绪论 主要讲述了本课题的来源,研究背景和科学意义,对国内外的研究现状和成果 的优越点进行了概述,初步描述了单片机语音存储与回放系统的设计方法。 第

16、 1 章 单片机控制语音录放系统的设计。详述了设计方案的选择过程和单片机、语 音芯片的选型方法,并介绍了所需芯片的各项功能。 第 2 章 语音录放系统硬件电路设计。描述了基于 51 单片机语音存储与回放系统的 组成、功能和控制方案,设计出完整的硬件电路。 第 3 章 语音录放系统软件设计。绘出了程序的组成框图,完成了语音存储与回放系 统的软件设计,实现了最初设定的功能。 结束语 总结出本文设计的优缺点,并对系统的改进方向提出了展望。 4 1 语音录放系统总体设计语音录放系统总体设计及主要芯片说明及主要芯片说明 1.1 总体方案论证总体方案论证 方案一:利用单片机及其外围硬件电路(如 a/d、d

17、/a、存储器等) ,就能完成语音 信号的数字化处理,实现语音的存储与回放。系统主要由单片机 at89c51、ad574、dac0832 及闪速存储器 at29c040 组成。其原理图如图 1-1 所示。 声音通过 mic 转换成微弱的电信号,经专用的音频前置放大器放大后,由带通滤波器滤 波,输出的信号经 a/d 转换送入单片机。单片机控制将数字信号存储在存储器中,在需 要放音时,单片机控制数字信号从存储器中读出,经 d/a 转换后输出。这种方法过程简 单,但是语音信号容易受到外界干扰而失真,并且信号的压缩存储比较复杂,硬件电路 不宜调试。 单片机 at89c51 a/d转换d/a转换 采样保持

18、 带通滤波器 带通滤波器 放大器放大器mic speaker 闪速存储器 at29c040 图 1-1 方案一系统原理图 方案二:直接采用单片机与专用的语音处理芯片 isd2560 设计实现语音存储与回放, 实现语音的整段录放。系统框图如图 1-2 所示。 5 isd2560 单片机控制 语音输入语音输出 键盘控制 图 1-2 方案二系统原理图 该系统采用语音芯片处理语音信号,抗干扰能力强,存储方便,调试简单,还可以 作为语音服务的子系统,所以选择此方案。下面,就针对此方案做具体的介绍。 1.2 器件选择器件选择 1.2.1 单片机的选择单片机的选择 单片机是一种集成电路芯片,是采用超大规模集

19、成电路技术把具有数据处理能力的 中央处理器 cpu、随机存储器 ram、只读存储器 rom、多种 i/o 口和中断系统、定时 器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、a/d 转 换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机也有很多种 类,比如 pic 单片机、mcs-51 单片机和 avr atmega128 单片机等等。 51 单片机是对目前所有兼容 intel 8031 指令系统的单片机的统称。该系列单片机 的始祖是 intel 的 8031 单片机,后来随着 flash rom 技术的发展, 8031 单片机取得 了长足的进展,成为目

20、前应用最广泛的8 位单片机之一,其代表型号是 atmel 公 司的 at89 系列,它广泛应用于工业测控系统之中。目前很多公司都有51 系列的兼 容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。 由于将多功能 8 位 cpu 和闪烁存储器组合在单个芯片中,atmel 的 at89c51 和 at89c2051 都是高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方 案。at89c51 和 at89c2051 主要性能对比表如表 1-1 所示。 6 表1-1 at89c51和at89c2051主要性能对比表 项目 at89c51at89c2051 存储器 4kb 可编程 f

21、lash 存储器2kb 可编程 flash 存储器 存储器保密 三级程序存储器保密两级程序存储器保密 内部 ram 128 字节128 字节 静态工作频率 0hz24mhz0hz24mhz 定时/计数器 2 个 16 位定时/计数器2 个 16 位定时/计数器 串行通讯口 1 个串行通讯口1 个串行通讯口 中断源 6 个中断源6 个中断源 i/o 引线 32 条 i/o 引线15 条 i/o 引线 以上可以看出它们是大体相同的,由于 at89c2051 的 i/o 线很少,导致它无法外加 ram 和程序 rom,片内 flash 存储器也少,但它的体积比 at89c51 小很多。在这里考 虑到

22、以后的扩展,本次设计选择了扩展接口较多的 at89c51,以便在需要的时候能够升 级而扩展其他的功能。 1.2.2 语音芯片选择语音芯片选择 语音芯片又称语音 ic,又被叫做声音芯片。芯片的录音功能包括 adc 和 dac 两个 过程,都是由芯片本身完成的,包括语音数据的采集、分析、压缩、存储、等步骤。它 能够将语音信号通过采样转化为数字,存储在 ic 的 rom 中,再通过电路将 rom 中的 数字还原成语音信号;而语音芯片放音功能实质上是一个 dac 过程。 语音芯片根据集成电路类型来分,凡是与声音有关系的集成电路被统称为语音芯片, 但是在语音芯片的大类型中,又被分为语音 ic(这里应该叫

23、成 speech ic) 、音乐 ic(这 里应该叫成 music ic)两种。目前,在市场上使用较为普遍的语音芯片如表 1-2 所示。 7 表 1-2 常用语音芯片对比表 项目 te6310 te6332 isd1420 isd2560 语音长度 10s32s20s 60 采样频率(khz) 6.446.46.4 8 放音触发放音触发 无边缘/电平 电平 工作电压(v) 4.55.52.73.34.55.5 4.55.5 工作电流(ma) 304530 30 静态电流(a) 2无10 10 mic 前置是否否否 由上表可以看出,isd2560 语音芯片的语音长度较长,工作电流和电压也符合要求

24、。 因此,本次设计将采用 isd2560 作为系统的语音处理芯片参与工作。 1.3 at89c51 芯片说明芯片说明 at89c51是美国atmel公司生产的低电压、高性能cmos 8位单片机,片内含4k bytes的可反复擦写的flash只读程序存储器和128 bytes的随机存取数据存储器。器件采用 atmel公司的高密度、非易失性存储技术生产,与mcs-51指令系统及8051产品引脚兼容, 片内置通用8位中央处理器和flash存储单元,功能强大。at89c51单片机适合于许多较为 复杂控制应用场合。 1.3.1 at89c51 的主要参数的主要参数 at89c51 芯片有以下特点: (1

25、) 与 mcs51 产品指令和引脚完全兼容 (2) 4k 字节可重擦写 flash 闪速存储器 (3) 1000 次擦写周期 (4) 全静态操作:0hz24mhz (5) 三级加密程序存储器 (6) 1288 字节内部 ram (7) 32 个可编程 i/o 口线 (8) 3 个 16 位定时/计数器 (9) 8 个中断源 (10) 可编程串行 uart 通道 (11) 低功耗空闲和掉电模式 功能特性概述: 8 at89c51 提供以下标准功能:4k 字节 flash 闪速存储器,128 字节内部 ram,32 个 i/o 口线,3 个 16 位定时/计数器,一个 6 向量两级中断结构,一个全

26、双工串行通信口, 片内振荡器及时钟电路。同时,at89c51 可降至 0hz 的静态逻辑操作,并支持两种软件 可选的节电工作模式。空闲方式停止 cpu 的工作,但允许 ram,定时/计数器,串行通 信口及中断系统继续工作。掉电方式保存 ram 中的内容,但振荡器停止工作并禁止其 它所有部件工作直到下一个硬件复位。 1.3.2 at89c51 的引脚功能说明的引脚功能说明 at89c51 芯片引脚排列图见附录 1,下面介绍一下与本设计相关的引脚功能。 p0口(p0.0p0.7)是一个8位漏极开路双向输入输出端口,当访问外部数据时,它是 地址总线(低8位)和数据总线复用。外部不扩展而单片应用时,则

27、作一般双向i/o口用。 p0口每一个引脚可以推动8个lsttl负载。 p1口(p1.0p1.7)是具有内部提升电路的双向i/0端口(准双向并行i/o口),其输出 可以推动4个lsttl负载。仅供用户作为输入输出用的端口。 p2口(p2.0p2.7)是具有内部提升电路的双向i/o端口(准双向并行i/o口),当访问 外部程序存储器时,它是高8位地址。外部不扩展而单片应用时,则作一般双向i/o。每一 个引脚可以推动4个lsttl负载。 p3口是一组带有内部上拉电阻的8位双向i/o口。p3口除了作为一般的i/o口线外,更 重要的用途是它的复用功能,如表1-3所示。 表1-3 p3口复用功能表 端口引脚

28、复用功能 p3.0rxd(串行通信输入) p3.1txd(串行通信输出) p3.2int0(外部中断 0 输入,低电平有效) p3.3int1(外部中断 1 输入,低电平有效) p3.4t0(计数器 0,外部事件计数输入端) p3.5t1(计数器 1,外部事件计数输入端) p3.6wr(外部随机存储器的写选通,低电平有效) p3.7 rd(外部随机存储器的读选通,低电平有效) rst:复位输入。 vcc:at89c51电源正极输入,接+5v电压。 gnd:电源接地端。 xtal1:接外部晶振的一个引脚。在单片机内部,它是一反相放大器输入端,这个 9 放大器构成了片内振荡器。它采用外部振荡器时,

29、一些引脚应接地。 xtal2:接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时 钟发生器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。 ea/vpp:该引脚为低电平时,则读取外部的程序代码(存于外部eprom中)来执行 程序。因此在8031中,ea引脚必须接低电位,因为其内部无程序存储器空间。如果是使 用at89c51或其它内部有程序空间的单片机时,此引脚接成高电平使程序运行时访问内 部程序存储器,当程序指针pc值超过片内程序存储器地址(如8051/8751/89c51的pc超过 0fffh)时,将自动转向外部程序存储器继续运行。此外,在将程序代码烧录至8751内部

30、 eprom、89c51内部falsh时,可以利用此引脚来输入提供编程电压(8751为 2lv、at89c51为12v、8051由生产厂方一次性加工好)。 1.4 isd2560 语音芯片语音芯片 采用 isd 系列语音芯片进行录音是一种可行的方法,它有音质自然、单片存储、反 复录放、低功耗等优点。一块 isd 芯片上集成有麦克风前置放大器(amp)、自动增益 控制电路(agc)、抗混淆和平滑滤波器、模拟存储阵列、扬声器驱动器、控制接口和 内部精确的参考时钟,外部元件包括:液晶、麦克风、扬声器、开关和少数电阻、电容, 再加上电源和电池。 isd2560 语音芯片是美国 isd 公司产品,是 i

31、sd 系列单片语音录放集成电路的一种。 这是一种永久记忆型语音录放电路,录音时间为 60s,可重复录放 10 万次。芯片采用多 电平直接模拟量存储专利技术,省去了 a/d、d/a 转换器。每个采样值直接存储在片内单 个 eeprom 单元中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免 了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。isd2560 集成度较高,内 部包括前置放大器、内部时钟、定时器、采样时钟、滤波器、自动增益控制、逻辑控制、 模拟收发器、解码器和 480k 字节的 eeprom 等。 1.4.1 isd2560 的引脚功能的引脚功能 isd2560 的

32、引脚排列见附录 1,各引脚的主要功能描述如下: a0/m0a6/m6、a7a9:地址线,isd 器件可以实现 1600 段录放语音功能,每段 录放音都有一个起始端,该起始地址的选择由 a0a9 确定。当 a8、a9 同时为高电平时 可以选择工作模式。 aux in:当和为高,放音不进行,或处于放音溢出状态时,本端的输入信cerp/ 号通过内部功放驱动喇叭输出端。 vssd、 vssa:数字地和模拟地,这两脚最好在引脚焊盘上相连。 sp+、sp-:扬声器输出。 10 vcca、vccd:模拟电源、数字电源,尽可能在靠近供电端处相连。 mic:本端连至片内前置放大器,外接话筒应通过串联电容耦合到本

33、端,耦合电容值 和本端的 10k 输入电阻。 mic ref:本端是前置放大器的反向输入。当以差分形式连接话筒时,可减小噪声, 提高共模抑制比。 agc:agc 动态调整前置增益以补偿话筒输入电平的宽幅变化,使得录制变化很大 的音量时失真都能保持最小。响应时间取决于本端的 5k 输入阻抗外接的对地电容的时 间常数。释放时间取决于本端外接的并联对地电容和电阻的时间常数。470k 和 4.7uf 的标称值在绝大多数场合下可获得满意的效果。 ana in:本端为芯片录音信号输出。对话筒输入来说 ana out 端应通过外接电容 连至本端。 ana out:前置放大器的输出,前置电压增益取决于 agc

34、 端电平。 :芯片处于存储空间末尾时本端输出低电平脉冲表示溢出,之后本端状态跟随ovf 端的状态,直到 pd 端变高。本端可用于级联。ce :本端变低后(而且 pd 为低),允许进行录放操作。芯片在本端的下降沿锁存ce 地址线和端的状态。rp/ pd:本端拉高使芯片停止工作,进入不耗电的节电状态,芯片发生溢出,即端ovf 输出低电平后,要将本端短暂变高复位芯片,才能使之再次工作。 :eom 标志在录音时由芯片自动插入到该信息的结尾。放音遇到 eom 时,本eom 端输出低电平脉冲。芯片内部会检测电源电压以维护信息的完整性,当电压低于 3.5v 时, 本端变低,芯片只能放音。 xclk:外部时钟

35、。本端内部有下拉元件,不用时应接地。 :本端状态在的下降沿锁存。高电平选择放音,低电平选择录音。录音时,rp/ce 由地址端提供起始地址,录音持续到或 pd 变高,或内存溢出;如果是前一种情况,ce 芯片自动在录音结束处写入 eom 标志。放音时由地址端提供起始地址,放音持续到 eom 标志。如果一直为低,或芯片工作在某些操作模式,放音会忽略 eom,继续进ce 行下去。 1.4.2 isd2560 的操作模式的操作模式 由于 isd2560 内置了若干种操作模式,因而可用最少的外围器件实现最多的功能。 操作模式也由地址端控制,当最高两位(a8、a9)都为 1 时,其它地址端置高可选择某 个(

36、或某几个)特定模式。因此操作模式和直接寻址相互排斥。具体操作模式如表 1-4 所 示。操作模式可由微控制器也可由硬件实现。 表1-4 模式控制说明表 11 模式控制功能典型应用 a0/m0信息检索快速检索信息 a1/m1删除eom标志在全部语音录放结束时,给出eom标志 a2/m2未用当工作模式 操作时,此端应接低电平 a3/m3循环放音从0地址开始连续重复放音 a4/m4连续寻址可录放连续的多段信息 a5/m5ce电平触发允许信号中止 a6/m6按钮控制简化器件接口 使用操作模式时需要注意两点: (1) 所有操作模式下的操作都是从 0 地址开始,以后的操作根据模式的不同,而从相 应的地址开始

37、工作。当电路中录音转放音或进入省电状态时,地址计数器复位为 0。当 ce 变低且最高两地址位同为高时,执行操作模式。这种操作模式将一直有效,直到 ce 再次由高变低,芯片重新锁存当前的地址模式端电平并执行相应的操作为止。 (2) 操作模式位不加锁定,可以在 msb(a8、a9)地址位为高电平时,ce 电平变 低的任何时间执行操作模式操作。如果下一片选周期 msb(a8、a9)地址位中有一个 (或两个)变为低电平,则执行信息地址,即从该地址录音或放音,原来设定的操作模式状 态丢失。 1.4.3 isd2560 的分段录放音的分段录放音 2500 系列最多可分为 600 段,只要在分段录/放音操作

38、前(不少于 300 纳秒),给地址 a0a9 赋值,录音及放音功能均从设定的起始地址开始,录音结束由停止键操作决定, 芯片内部自动在该段的结束位置插入结束标志(eom);而放音时芯片遇到 eom 标志即 自动停止放音。 2500 系列地址空间是这样分配的:地址 0599 作为分段用(见表 1-5),地址 600767 未使用,地址 7681023 为工作模式选择。 12 表 1-5 2500 系列地址空间表 十进制二进制信息时间(秒) a9a8a7a6a5a4a3a2a1a0256025752590 00000000000000 5000001100105.06.257.50 10000011

39、0010010.012.5015.00 250001111101025.031.2537.50 300010010110030.037.5045.00 400011001000040.050.0060.00 500011111010050.062.5075.00 599100101011159.974.8789.85 1.4.5 isd2560 的应用电路的应用电路 isd2560 集成度较高,内部包括前置放大器、内部时钟、定时器、采样时钟、滤波器、 自动增益控制、逻辑控制、模拟收发器、解码器和 480kb 的 eeprom 等。内部 eeprom 存储单元,均匀分为 600 行,具有 600

40、 个地址单元,每个地址单元指向其中一 行,每一个地址单元的地址分辨率为 100ms。isd2560 控制电平与 ttl 电平兼容。接口 简单,使用方便。图 1-3 是 isd2560 基本电路原理。 录音时按下录音键 s2、s3 接地,使节电控制键 pd 端、录放模式键端为低电平。rp/ 此时启动录音;结束时松开按键,单片机又让录放模式键端回到高电平,即完成一rp/ 段语音的录制。同样的,按下录放模式键接高电平,使节电控制键 pd 端为低电平rp/ 启动放音功能;结束时,松开按键,即完成一段语音的播放。 13 图 1-3 isd2560 基本电路原理 1.5 lm386 集成功率放大器集成功率

41、放大器芯片说明芯片说明 lm386 是美国国家半导体公司生产的音频功率放大器,主要应用于低电压消费类产 品。为使外围元件最少,电压增益内置为 20。但在 1 脚和 8 脚之间增加一只外接电阻和 电容,便可将电压增益调为任意值,直至 200。 1.5.1 lm386 电子特性电子特性 lm386 芯片的电子特性如表 1-6 所示。输入端以地位参考,同时输出端被自动偏置 到电源电压的一半,在 6v 电源电压下,它的静态功耗仅为 24mw,使得 lm386 特别适 用于电池供电的场合。输入电压范围可由 4v12v,无作动时仅消耗 4ma 电流,且失真 低。 14 表 1-6 lm386 电子特性表

42、项目测试环境规格 工作电压vs(v)45 输入电压vin(v)-0.4+0.4 输入阻抗ri(k)50 静电流iq(ma)vs=6v,vin=0v48 输出功率pout(mw)vs=6v,rl=8,thd=10%250325 pin1、8开路26 电压增益(db) pin1、8以10f连接46 pin1、8开路300 频宽(khz) pin1、8以10f连接60 1.5.2 lm386 的引脚说明的引脚说明 lm386 的引脚排列见附录 1。引脚 2 为反相输入端,3 为同相输入端,引脚 5 为输出 端,引脚 6 和 4 分别为电源和地,引脚 1 和 8 为电压增益设定端。使用时在引脚 7 和

43、地 之间接旁路电容,通常取 10f。 lm386 的电源电压为 412v;静态消耗电流为 4ma;电压增益为 20-200db;在 1、8 脚开路时,带宽为 300khz;输入阻抗为 50k;音频功率 0.5w。 尽管 lm386 的应用非常简单,但稍不注意,特别是器件上电、断电瞬间,甚至工作 稳定后,一些操作(如插拔音频插头、旋音量调节钮)都会带来的瞬态冲击,在输出喇 叭上会产生非常讨厌的噪声。 各引脚外围电路的接法介绍如下: (1) 通过接在 1 脚、8 脚间的电容(1 脚接电容“+”极)来改变增益,断开时增益为 20db。 (2) 选好调节音量的电位器。阻值不要太大,10k 最合适,太大

44、也会影响音质。 (3) 尽可能采用双音频输入/输出。好处是:“”、 “”输出端可以很好地抵消共模信 号,故能有效抑制共模噪声。 (4) 第 7 脚(bypass)的旁路电容不可少。实际应用时,bypass 端必须外接一个 电解电容到地,起滤除噪声的作用。工作稳定后,该管脚电压值约等于电源电压的一半。 增大这个电容的容值,减缓直流基准电压的上升、下降速度,有效抑制噪声。在器件上 电、掉电时的噪声就是由该偏置电压的瞬间跳变所致。 (5) 减少输出耦合电容。此电容的作用有二:隔直与耦合。隔断直流电压,直流电压 过大有可能会损坏喇叭线圈;耦合音频的交流信号。它与扬声器负载构成了一阶高通滤 15 波器。

45、减小该电容值,可使噪声能量冲击的幅度变小、宽度变窄;太低还会使截止频率 ()提高。分别测试,发现 10uf/4.7uf 最为合适。)2/(1coutrlfc 16 2 语音录放系统硬件电路设计语音录放系统硬件电路设计 2.1 系统硬件电路总体设计系统硬件电路总体设计 本系统主要可分为三个部分:单片机控制部分、语音录放部分、功放部分。采用 51 单片机作为主控制芯片,利用 isd2560 实现语音录放,采用 lm386 集成功放使声音放大, 简单易行且控制方便。 系统采用的微控制器是美国 atmel 公司生产的低电压,高性能 cmos 8 位单片机, 片内含 4k bytes 的可反复擦写的 f

46、lash 只读程序存储器和 128 bytes 的随机存取数据存储器 (ram)。器件采用 atmel 公司的高密度、非易失性存技术生产,与标准 mcs-51 指 令系统及 8051 产品引脚兼容,片内置通用 8 位中央处理器(cpu)和 flash 存储单元, 功能强大。at89c51 单片机适合于许多较为复杂控制应用场合。 数码语音芯片选用的是 isd2500 系列单片语音录放集成电路 isd2560,它具有抗断电、 音质好,使用方便,无须专用的开发系统等优点。 功放采用 lm386 音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围 大、外接元件少和总谐波失真小等优点。 isd2

47、560 与单片机 at89c51 的接口电路以及外围电路见附录 1。单片机的 p1 口、 p2.4 和 p2.5 分别与 isd2560 的地址线相连,用以设置语音段的起始地址和控制操作模式; p2.0p2.3 以控制录放音状态;p0.3、p0.4 连接按键,供录放音使用;p0.0p0.3 接发光二 极管,用以提示当前录放音状态。 2.2 at89c51 的外围电路设计的外围电路设计 2.2.1 晶振电路晶振电路设计设计 单片机是一种时序电路,必须给它提供时钟脉冲信号才能正常工作。系统时钟信号 是单片机内部各种操作的时间基准,为各种指令的执行提供时钟节拍。通常单片机可通 过内部振荡或外部振荡两

48、种方式得到系统时钟信号。 本系统采用的是 12mhz 的晶振,电容采用 22pf 的陶瓷电容,具体设计如图 2-1 所示。 17 图 2-1 晶振电路设计图 2.2.2 复位电路复位电路设计设计 当任何一个复位信号产生时,c51 的所有 i/o 端口都会立即复位成它们的初始值,并 不需要时钟源处于运行状态。在复位信号撤消后,硬件系统将调用一个计数延时过程, 经过一定的延时后,才能进行系统内部的真正复位启动。采用这种形式的复位启动过程, 保证了电源达到稳定后才使单片机进入正常的操作,复位启动的延时时间可以由用户通 过对熔丝位的编程来定义。 51 单片机有 3 个复位源: (1) 上电复位。当系统

49、电源的电平低于上电复位门限电压 vpot 时,mcu 产生复位。 (2) 外部复位。当一个高电平加到 reset 引脚超过 2 机器周期时,mcu 产生复位。 (3) 看门狗(wdt)复位。当看门狗复位允许且看门狗定时器溢出时,mcu 产生复位。 当进入系统的干扰作用于单片机内部时,系统失控导致程序在地址空间内“乱飞”,使程序 运行状况不可预测。如果运行时间超过程序设定的看门狗延时时间,系统便会重新复位, 使单片机重新回到正常运行轨道。因此,看门狗复位可以有效的监控系统的运行情况, 提高了系统自身的抗干扰能力,使系统能够在具有一定干扰的环境中正常工作。 本系统设计一个外部复位,采用按键电平复位

50、方式,电平复位是通过复位端电阻与 vcc 电源接通而实现的,电路如图 2-2 所示。为了提高系统可靠性,再加上一个 10uf 的 电容来消除高频干扰和杂波。 18 图 2-2 复位电路图 2.3 语音电路设计语音电路设计 本系统采用 isd2560 芯片,语音电路图如图 2-3 所示。 图 2-3 语音电路设计图 19 各引脚外围电路的接法可参考前文所述的引脚说明。扬声器输出信号与功放相连, 将声音信号放大。 2.4 功放电路功放电路设计设计 电路图如 2-4 所示,调节可变电阻器的大小可以调节声音大小。各引脚外围电路的接 法可参考前文所述的引脚说明。 图 2-4 功放电路图 2.5 键盘输入

51、电路键盘输入电路和状态显示电路和状态显示电路设计设计 键盘输入的功能主要包括设定录与放,因此该系统具有2个按键:录音按键、放音按 键。状态显示通过发光二极管来完成,3盏灯分别对应的芯片开始工作、录音开始和放音 开始3个状态。这部分的电路图如图2-5所示。 20 图2-5 键盘输入电路和状态显示电路图 21 3 语音录放系统软件设计语音录放系统软件设计 软件的设计是以硬件为基础的,软件要实现的功能都是要以正常的硬件为前提,若 硬件无法正常工作,再优秀的软件也无法实现任何功能。同样的,软件是硬件的灵魂, 没有了软件,再强大的硬件也只是一部废铁。我们在确定了一项设计所要实现的功能后, 根据要实现的功

52、能设计相应的硬件系统。硬件系统搭建起来之后,若调试无误,才进行 相应的软件模块的设计。 本系统采用51系列单片机作为硬件开发核心,单片机的软件部分采用汇编语言开发, 软件采用符合汇编语言的keil c51编译器。在这章节中,将结合具体硬件电路来介绍各 模块的软件设计。 3.1 主要变量说明主要变量说明 程序中的主要变量及相关功能如下: led1led3:描述发光二极管的关断。当这 3 个变量分别为 1 时,二极管熄灭,当 变量为 1 时,二极管点亮。 record:描述录音键按下的状态。该变量为 1 表示录音键按下,为 0 表示录音键 松开。 play:描述放音键按下的状态。该变量为 1 表示

53、放音键按下,为 0 表示放音键松开。 pd:控制芯片的工作状态。pd=0 时,芯片开始工作;pd=1 时,芯片停止工作,进 入节电状态。 pr:控制语音芯片所处的工作模式。该变量置为 0 时,芯片处于录音模式;置为 1 时,芯片处于放音模式。 ce:对芯片进行片选。当 ce=0 且 pd=0 时,允许芯片进行录放的的操作;ce=1 时, 无法进行录放操作。 eom:信息结束的标志。一段语音信号录制完毕后,eom 标志由芯片自动插入到信 息结尾,放音过程中,若 eom=0,说明信号结束,停止播放。 3.2 主程序工作原理及流程图主程序工作原理及流程图 本系统中单片机控制语音芯片录播的程序主要是单

54、片机对 isd2560 芯片的控制字的 写入,程序流程图如图 3-1 所示。 22 开始 系统初始化 pd端置0,芯片开始工作;灯1点亮 pr端置0,设为录音状态 录音键按下? 延时10ms去抖动 调用录音子程序,开始录音 放音键按下? 调用放音子程序,开始放音 结束 y n y n 芯片停止工 作,灯1熄灭 图 3-1 主程序流程图 isd2560 虽然提供了地址输入线,但它的内部信息段的地址却无法读出。需要采用 直接寻址模式进行寻址。其实现方式有两种:一是由于 isd2560 的地址分辨率为 100 ms,所以可用单片机内部定时器定时 100 ms,然后再利用一计数器对单片机定时次数进 2

55、3 行计数,则计数器的计数值为语音段所占用的地址单元。该方式能充分利用 isd2560 内 部的 eeprom,在字段较多时可利用该方法。二是语音字段如果较少,则可根据每一字 段的内容多少,直接分配地址单元。一般按每秒说 3 个字计算,60s 可说 180 个字,再根 据 isd2560 的地址分辨率为 100ms,即可计算出语音段所需的地址单元数。本系统完成 的是语音单段录放的功能,可不必采用直接寻址模式,而是设置 a8、a9 和 a6 的电平为 高,利用按钮控制操作模式完成对单段语音信号的录放即可。在这种模式下,语音存储 的起始地址默认从 0 开始。 程序首先是系统的初始化,设置 p1 的

56、状态使得语音芯片处于按键控制的操作模式下。 将 pd 端置为 0,芯片启动。置 pr 端为 0,设置芯片在录音状态。此后循环扫描 record 和 play 键按下的状态。record 键按下后,进入录音模式,调用录音子程序 开始录音。play 键按下后,进入放音状态,调用放音子程序开始放音。放音结束后, pd 端置 1,芯片停止工作。程序代码见附录 2。 3.3 子程序流程图及代码子程序流程图及代码 3.3.1 录音子程序录音子程序 录音子程序流程图如图 3-2 所示。 ce置0开始录音 点亮灯2熄灭灯1 是否松开录音键? 录音结束 熄灭灯2点亮灯1 y n 返回 图 3-2 录音程序流程图

57、 录音键按下后,置端为低电平,芯ce 24 片开始录音。然后一直扫描 record 所表示的录音按键是否松开,若按键松开,则置 端为高电平,录音结束。程序段如下:ce clr ce;开始录音 clr led2 setb led1;点亮灯 2,灭掉灯 1 jnb record,$ setb ce;录音键松开后,录音结束 setb led2 clr led1;灯 2 灭,灯 1 亮 3.3.2 放音子程序放音子程序 放音程序的流程图如图 3-3 所示。 置放音状态 ce置0启动放音 灯3点亮灯1熄灭 语音结束信号eom为0? 灯3熄灭灯1点亮 y n 返回 图 3-3 放音程序流程图 放音键按下后

58、,置 pr 端为 1,进入放音状态。将端置为低电平,启动播放。播ce 放过程中等待语音段结束信号 eom,当 eom=0 时,提示语音信号结束。返回主程序并 进行下一步操作。放音程序段如下: setb pr;置放音状态 clr ce;启动播放 25 clr led3; steb led1;点亮灯 3,熄灭灯 1 nop nop turn: jb eom,turn;等待语音段结束信号 setb led3; clr led1;灯 3 灭,灯 1 亮 26 结束语结束语 本文设计的语音系统硬件电路简单,调试方便。即可作为电脑语音系统的语音板, 又可作为语音服务系统的子系统。针对 isd 语音芯片的特

59、点,设计出的一种由单片机控 制,能够实现录放功能的语音电路,可作为录音机、复读机、音频记录仪使用,既节省 存储空间,又降低成本,具有较高的实用价值。 isd 语音芯片精度高,集成度高,能够使得微机的语音输出结构大大的简化,能使生 产的造价大大的降低;由于 isd 芯片的抗干扰性强,所以在恶劣的环境的系统中也能正 常使用,例如:机动车辆,语音室里都能正常的输出语音,信息保存时间长,工作可靠; 输出可以高保真的再现原声,可将 isd 芯片用于语音及声音信号的检测或模拟系统,能 实现语音的非定长录制。 上面这个语音芯片设计电路可以应用于家电、防盗、通信、汽车侦测器、工业产品、 医疗、美容器材及警报,

60、绒毛玩具、精美礼品、精美广告赠品、益智玩具、圣诞及节日 礼品玩具、圣诞树、圣诞鱼、有声语音闹钟。且外围电路元件少、体积小、易于再次开 发或改进电路,具有很高的实用价值。 对于该系统的改进,主要有 2 个方面。硬件部分的改进,利用 at89c51 芯片余下的 管脚可以外接一显示模块,对当前录放音的状态进行显示。而对于软件部分,可以利用 isd2560 直接寻址模式对语音信号分段录放。isd2560 最大录音时间为 60s,对声音信号 分段录音,设置各录音段的起始地址,存储在芯片的存储器中,放音时,直接寻找到起 始地址就能实现对各段语音信号的播放了。 27 参考文献参考文献 1余永权.atmel8

温馨提示

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

评论

0/150

提交评论