当前位置:文档之家› 基于单片机的语音存储和播放系统设计

基于单片机的语音存储和播放系统设计

基于单片机的语音存储和播放系统设计摘要在常见的电子产品或自动控制设备中,如果加入语音功能即能极大地提高人机界面的友好性,方便用户操作。

在许多场合需要语音存储与语音播放技术和单片机结合在一起。

常规的模拟化语音处理系统能实现语音的存储与回放功能,但效果不佳。

本设计选用功能强大的单片机STC89C52作为主动器件,采用数码语音芯片ISD4004作为系统的语音存储和播放芯片,选用LCD1602作为系统的显示模块,并同时采用扫描按键的方式实现系统的各类参数的调整。

从而实现了一个完整的基于单片机的语音存储和播放系统的设计。

本文首先对系统中用到的单片机和语音芯片以及现实模块进行了方案分析论证,从而提出了系统的整体功能框架,然后分别对系统的各个功能模块进行了硬件电路设计和软件设计,最后对本设计进行了总结与展望。

关键词:STC89C52 ISD4004 语音存储语音播放Design of Voice Storage and Playback System Basedon MicrocontrollerAbstractIn common electronic products or automatic control equipment , if adding voice capabilities that can greatly improve the friendly man-machine interface, user-friendly operation. On many occasions the need to store voice combined with voice playback technology and Microcontroller. Conventional analog of voice processing systems to achieve storage and playback of voice , but to little avail.The design features a powerful microcontroller STC89C52 chosen as the active devices, the use of digital voice chip ISD4004 chip as voice storage and playback system, as the system of choice LCD1602 display module, and also be achieved by scanning the keys to adjust the various parameters of the system. In order to achieve a complete Microcontroller design based voice storage and playback system. Firstly, the system used in the Microcontroller and voice chip and realistic analysis module of the demonstration program, which made the overall framework of the system function, and then separately for each module system's hardware design and software design, the final design of the a summary and outlook.KEYWORDS:STC89C52 ISD4004 V oice Storage V oice playback目录第1章绪论 (4)第2章系统总体方案论证 (5)2.1 系统设计方案选择 (5)2.1.1 主控模块的方案选择 (5)2.1.2 显示模块的方案选择 (5)2.1.3 语音模块的方案选择 (6)2.2 系统总体方案设计 (6)第3章系统硬件电路设计 (8)3.1 主控模块电路设计 (8)3.1.1 STC89C52单片机简介 (8)3.1.2 STC89C52最小系统电路设计 (9)3.2 显示模块电路设计 (10)3.3 语音模块电路设计 (12)3.4 系统参数设置电路设计 (15)3.5 系统电源电路设计 (15)第4章系统软件设计 (17)4.1 主程序流程图设计 (17)4.2 子程序流程图设计 (18)4.2.1 录音子程序 (18)4.2.2 播放子程序 (18)致谢 (20)参考文献 (21)附录 (22)第1章绪论在常见的电子产品或自动控制设备中,如果加入语音功能即能极大地提高人机界面的友好性,方便用户操作。

目前语音服务行业越来越广泛,如电脑语音钟、语音型数字万用表、手机话费查询系统、排队机、监控系统语音报警以及公共汽车报站器等。

在许多应用场合,设计者需要将语音系统和单片机结合在一起[1]。

单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点。

现代人类生活中所有的几乎每件电子和机械产品中都会集成有单片机,单片机可以说是世界上数量最多的计算机[2]。

手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有单片机。

而个人电脑中也会有为数不少的单片机在工作。

可以说,单片机能够在语音功能的实现应用中发挥重大的作用。

近年来,语音信号处理技术研究的突飞猛进,为数字语音存储和播放系统提供了新的发展空间。

对语音的采集、处理从以前简单的波形编码转变为参数编码、压缩,从而大大减少了存储的数据[3]。

目前比较典型的语音器件有美国的ISD公司生产的ISD系列语音芯片。

ISD系列语音芯片采用模拟数据在半导体存储器直接存储的专利技术,即将模拟语音数据直接写入到单个存储单元,不需经过A/D 或D/A装换,因此能够较好的真实再现语音的自然效果,避免了一般固体语音电路因为量化和压缩所造成的量化噪声和失真现象[4]。

本设计选用功能强大的单片机STC89C52作为主动器件,采用数码语音芯片ISD4004作为系统的语音存储和播放芯片,选用LCD1602作为系统的显示模块,并同时采用扫描按键的方式实现系统的各类参数的调整。

从而实现了一个完整的基于单片机的语音存储和播放系统的设计。

本文首先对系统中用到的单片机和语音芯片以及现实模块进行了方案分析论证,从而提出了系统的整体功能框架,然后分别对系统的各个功能模块进行了硬件电路设计和软件设计,最后对本设计进行了总结与展望。

第2章系统总体方案论证2.1 系统设计方案选择根据设计要求可知,本系统的功能模块大致可分为主控模块、显示模块、语音模块、系统电源模块以及系统参数设置模块。

显示模块实时的显示语音播报信息,语音模块实现语音的存储和播放功能,系统参数设置模块主要辅助上述模块实现各自功能,系统电源模块为系统提供工作电源,主控模块主要负责协调所有功能模块一起协同工作。

各个模块的具体方案选择如下。

2.1.1 主控模块的方案选择方案(一):选用AT89C52作为系统的主控芯片,AT89C52芯片内部集成了8K的Flash,外加8K的ROM存储空间,具有存储空间较大,且存取速度快的优点,同时兼容所有MCS-51系列单片机。

但是AT89C52不能实现ISP在线编程的功能,这样就使得整个开发调试过程显得繁琐,且开发效率低,同时在调试过程中需要对芯片多次的插拔,很容易对芯片造成损坏[5]。

方案(二):选用STC89C52作为系统的主控芯片,STC89C52片内集成了64K的Flash 存储空间,存储空间极大,且存储速度快。

STC89C52具备AT89C52具备的所有功能。

最为重要的是STC89C52提供ISP在线编程的功能,这样就使得整个开发过程变得高校便捷,在调试过程中不用多次的插拔芯片,对芯片也能起到很好的保护作用[6]。

综上所述,再考虑到本系统设计的多功能万年历需要实现众多的功能,初步估计系统程序可达40K左右,且需要反复调试实现设计要求的所以功能。

故选用方案二,选用STC89C52作为系统的主控芯片。

2.1.2 显示模块的方案选择方案(一):采用LED动态扫描的方式实现系统的显示功能,LED数码管价格低廉,特别适用于显示数字,LED数码管与单片机连接电路简单,但是随着LED数码管位数的增加,占用单片机IO端口资源也越来越多。

方案(二):采用点阵式数码管的方式实现系统的显示功能,点阵式数码管采用8*8的发光二极管组成显示区域,特别适用于显示各类文字信息,且价格相对高昂,如果仅仅用来主要显示数字信息显得浪费。

方案(三):选用LCD1602液晶模块实现系统的显示功能,LCD1602显示区域大,且能方便的显示各类数字,文字,图形信号,功能强大,且与单片机接口电路简单。

综上所述,考虑到本设计中显示部分主要用于显示数字信息,而且显示内容较多,故选用第三种方案作为系统的显示方案。

2.1.3 语音模块的方案选择方案(一):采用单片机编写闹钟程序配合蜂鸣器的方式实现系统的语音报时功能。

这种方式能减少系统芯片的使用,降低系统的整体功耗,但是因为系统内部的时间延迟问题,采用这种方式会对系统的整体效果产生严重的影响。

方案(二):采用专用的语音芯片实现系统的语音报时功能。

选用美国ISD公司出品的ISD4004,该芯片具有连接电路简单、功耗极低、抗干扰能力强等众多优点[7]。

综上所述,本系统的语音模块选用第二种方案,采用专用的语音芯片ISD4004实现系统的语音报时功能。

2.2 系统总体方案设计综上所述,本设计选用STC89C52单片机为核心控制器件。

显示模块选用LCD1602,可一次性显示16*2个字符,完全能满足系统的需求。

语音芯片选用美国ISD公司出品的ISD4002,该芯片具有连接电路简单、功耗极低、抗干扰能力强等众多优点。

同时本设计采用按键实现系统参数调整的功能。

系统总体功能框图如图2.1所示。

图2.1 系统总体功能框图第3章系统硬件电路设计3.1 主控模块电路设计3.1.1 STC89C52单片机简介本设计选用的主控芯片STC89C52是STC公司生产的一个基于51内核的8位单片机。

STC89C52是一个低电压,高性能CMOS 8位单片机,片内置通用8位中央处理器,同时在片内集成了Flash闪存存储器单元,正因为实现了上述的诸多功能部分,STC89C52单片机以其强大的功能优势,能较好的适用于各类复杂的控制应用场合。

STC89C52系列单片机都采用40脚的封装形式,在其40个引脚中包含了32个通用的输入输出端口,能灵活配置在各种控制场合;还包含了2个外部中断端口,能实现各控制系统的中断处理过程;同时还包括了3个16位的定时器(计数器),能实现各种精确的定时计数功能;2个全双工通信端口,能实现全双工通信;以及包含了2个读写端口[8]。

相关主题