基于单片机的语音播报器设计【毕业作品】
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
BI YE SHE JI
( 届)
基于单片机的语音播报器设计
Design of the voice broadcast based on MCU
所在学院电子信息学院
专业班级电子信息工程
学生姓名学号
指导教师职称
完成日期年月日
摘要
人们在现代社会工作繁多时间紧凑,生活节奏快速增加,合理的安排和遵守时间成为每个人的愿望,本文介绍的智能记事器,采用语音播报,随着语音芯片的普及,语音报播被广泛应用于车站报站器,语音型数字万用表,公交车语音报站器等。
可快速直观的给人们提醒工作日程,将成为人们生活中的好帮手。
本文提出了基于AT89C51 单片机的语音播报器的设计方案。
方案以单片机作为系统的控制核心,详细介绍了ISD 公司生产的ISD4004 语音芯片的优点及其使用方法。
并且给出了用AT89C51 与ISD4004 构成的语音系统的硬件原图和软件设计方法。
采用ISD 单片语音录音/放音集成电路系列中的ISD4004 实现了语音的存储和播放,使语音音质自然真实。
ISD4004 不需要A/D 和D/A 转换,并且集成度高,能实现复杂的信息处理功能,真实的再现语音。
实现了当按下开始键,启动录音,松开开始键,结束录音。
结束录音后,循环播放所录音的基本功能。
并且录放系统具有电路简明、应用方便、单片录放、不怕掉电、音色纯正、性价比高等特性。
关键词:电子信息;单片机;语音芯片;ISD4004
Abstract
People in modern society are compact work schedule, with the accelerated pace of life, reasonable arrangements for time and comply with the time is the desire of everybody, this paper introduces the intelligent recorder, using voice broadcast, with the speech chip popularization, voice broadcast is widely used in stations stations, digital multimeter voice, bus voice station reporting device. Fast intuitive reminds work schedule, people's lives will become the powerful assistant.
This article proposed based on AT89C51 single chip voice broadcast device design. Solution to SCM as the core of the control system, introduces in detail the production company ISD ISD4004 voice chips advantages and its using method. And this paper gives the AT89C51 and ISD4004 voice system hardware and software design methods. Using ISD single chip voice recording / Playback IC Series in ISD4004 realize the voice storage and playback of speech quality, make natural truth. ISD4004 does not require A / D and D / A conversion, and the integration degree is high, can realize the complex information processing function, the true representation of speech. Realized when press the start button, start recording, release the start button, the recording is ended. End recording, playback of the recording of the basic functions of circulation. And recording system having a circuit concise, convenient application, monolithic recording, not afraid of power, pure sound, cost-effective higher characteristic.
Key words: electric information; single chip; voice chip; ISD4004
目录
1引言 (1)
2系统设计方案 (2)
2.1总体设计方案 (2)
3硬件电路设计 (3)
3.1微处理器AT89C51 (3)
3.1.1 AT89C51单片机的引脚 (3)
3.1.2 AT89C51单片机部分系统 (4)
3.1.3 AT89C51单片机电源电路 (5)
3.1.4 AT89C51单片机复位电路 (5)
3.1.5 AT89C51单片机时钟电路 (6)
3.2ISD4004语音模块 (6)
3.2.1扬声器和话筒 (8)
3.3A LTIUM D ESIGNER设计硬件电路 (8)
4软件设计 (10)
4.1总体程序流程图 (10)
4.2语音录制存储模块 (11)
4.2.1录音部分子程序简介 (12)
4.2.2结束录音部分子程序简介 (12)
4.3语音播放模块 (13)
4.4AT89C51工作模式 (14)
4.4.1工作模式寄存器TOMD (14)
4.4.2控制寄存器TCON (15)
4.5ISD4004工作模式 (15)
4.6 KEIL C51软件的使用 (17)
5结论 (19)
6致谢 (20)
参考文献 (21)
附录1 系统实物图 (22)
附录2 系统实验原理图 (23)
附录3 语音模块PCB布线图 (24)
附录4 毕业设计作品说明书 (25)
附录5 程序 (26)
主程序: (26)
放音录音部分子程序 (28)
1引言
随着人类社会的不断进步,随着语音芯片的普及,语音报播被广泛应用于车站报站器,语音型数字万用表,出租车语音报站器,排队机等,并且面向家庭个人使用的方向发展,更加人性化。
随着电子技术的广泛应用,其自动化程度越来越高,使用范围越来越广,前景十分喜人。
自动语音提示技术是计算机语音处理技术的一种应用,属于语音再生合成技术范畴。
录放系统具有电路简明、应用方便、单片录放、不怕掉电、音色纯正、性价比高等特性,与此相关的语音系统已广泛地用于通信、工控、医疗、报警等领域。
同时,随着大规模语音处理集成电路的发展,在传统的控制领域,语音提示的应用也越来越广泛[1]。
语音是人类最自然、方便、快捷的交流方式,让人和机器能够通过自然语音进行交流是人们长期以来的梦想。
随着单片机的技术的日益发展,人们已经不再满足于键盘输入,屏显输出这样传统的输入/输出方式,希望拥有更友好的人机界面,更便捷的操作方式。
具有语音功能的单片机系统于是应运而生,而且得到了广泛的应用。
近年来计算机在各行业的日益普及应用,给各行业带来了崭新的面貌。
与此同时用户逐步对各种计算机应用系统提出了更高的要求,他们希望自己的系统有更高的自动化程度和更方便的人机界面。
语音技术的进展给这种应用需要提供了一种有力的技术支持,逐渐被广大用户所接受,并广泛用于各种需要语音响应的场合。
智能仪器、仪表、监控设备、工业控制系统等都有这种需求。
所以研究语音播报器对生产,生活都有极其重要的意义[2]。
2系统设计方案
2.1总体设计方案
本课题主要研究设计一款类似留言机的语音播报器,该播报器设计核心处理器是单片机AT89C51,语音芯片为ISD4004。
为了实现语音录放的功能,即按一下开始键,启动录音,按一下结束键,结束录音。
结束录音后,按播放键播放所录的声音。
为了使语音播报器的音质好, 功能强, 实验运行效果好,使用起来简单,所以本设计采用的设计框图如图2-1所示:
图 2-1 总体设计框图
由上面的总体设计框图可知:本设计主要包括,按键,单片机模块控制整个系统,语音芯片模块主要存储所录制的语音,话筒和扬声器为接收语音和播放语音装置。
其中单片机为本设计的控制核心,它控制语音芯片,实现对声音的存储和播放。
综合本设计的设计方案可知:主要的硬件电路有单片机最小系统和语音模块的电路及其外围电路,及其接口电路。
所以根据上面的内容,可以将本例的功能硬件模块划分为:
1、单片机最小系统:系统的控制电路。
2、语音录放电路:包括语音芯片的外围电路和单片机的接口电路。
3、软件部分用C语言编写程序,单片机程序控制语音芯片的正常工作。
3硬件电路设计
本次设计的语音播报系统硬件主要有两大模块:微处理器AT89C51系统和ISD4004语音模块。
硬件设计软件为Altium Designer,使用Altium Designer 软件对电路板进行精心的设计,使设计达到一定的美观程度。
3.1微处理器AT89C51
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容[4]。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案[5]。
51单片机虽然和DSP,ARM相比处理速度和运算速度上都比较慢,但它的体积小、质量轻、价格便宜,它的速度可以满足本次实验的要求,所以我们采用AT89C51这款单片机。
3.1.1 AT89C51单片机的引脚
AT89C51引脚结构如图3-1所示:
图3-1 AT89C51单片机引脚结构图
本次设计将AT89C51单片机最小系统为一个模块,将硬件电路采用模块化设计,方便硬件电路的修改,避免互相干扰。
单片机AT89C51模块的引脚P1.1、P1.2、P1.3和P1.4分别与语音芯片ISD4004模块的引脚/SS、MOSI、MISO和SCLK 连接起来,实现单片机对语音芯片的控制。
3.1.2 AT89C51单片机部分系统
语音录放电路的单片机部分原理图如图3-2所示:
图3-2 语音录放电路的单片机部分电路图
在图3-2中为单片机芯片AT89C51部分电路原理图,工作于12MHz的时钟。
单片机的P1.1、P1.2、P1.3和P1.4引脚提供语音芯片ISD4004的地址/模式输入,通过这些引脚,单片机可以配置ISD4004操作模式。
单片机控制语音芯片ISD4004的录音/放音模式的选择,按一下K1录音键给单片机P3.2口输入一个低电平,单片机对语音芯片发出录音指令,语音芯片实现录音操作;按一下K2结束录音键给单片机P3.3口输入一个低电平,单片机对语音芯片发出结束录音指令,语音芯片停止录音;按一下K1录音键给单片机P3.3口输入一个低电平,单片机对语音芯片发出播放指令,语音芯片地所录制存储的语音信号进行播放。
3.1.3 AT89C51单片机电源电路
AT89C51单片机电源电路如图3-3所示:
图 3-3 AT89C51单片机电源电路
在电源引脚并联一个0.1uf的小电容目的是1.滤波,引入滤波电容的原因是要获得平滑稳定的电压,因为电容两端的电压不能突变,所以它能抑制电压的波动,使电压变得平稳光滑主要作用有两个:1.去除器件之间的交流射频耦合。
它能将器件的电源端上瞬间的尖峰、毛刺对地短路掉。
2.去耦。
3.1.4 AT89C51单片机复位电路
AT89C51单片机复位电路如图3-4所示:
图3-4 AT89C51单片机复位电路
AT89C51单片机在启动时都需要复位,使CPU及系统各部件处于确定的初始
状态,并从初态开始工作。
当系统处于正常工作状态时,且振荡器稳定后,如RST引脚上有一个高电平并维持2个机器周期(24个振荡周期),则CPU就可以响应并将系统复位。
上图为手动复位电路,进行单片机的初始化操作,通过接通按钮开关,使单片机进入复位状态把PC初始化为0000H,将原来的存储的内容清除掉,使单片机从0000H单元开始执行程序。
除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。
3.1.5 AT89C51单片机时钟电路
AT89C51单片机时钟电路如图3-5所示:
图3-5 AT89C51单片机时钟电路
AT89C51芯片内部有一个高增益反相放大器,用于构成振荡器,引脚XTAL1和XTAL2分别是这个放大器的输入端和输出端。
两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。
两个电容通常取22pf左右,可稳定频率并对振荡频率有微调作用。
该复位电路中采用12MHz的晶振,振荡脉冲频率范围为1.2~24MHz。
3.2 ISD4004语音模块
语音模块采用ISD4004语音芯片为核心,该芯片采用CMOS技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮。
该芯片的多电平直接模拟存储专利技术,声音不需要进行A/D转换和压缩,模拟
信号直接存储在片内的闪烁存储器中,没有A/D转换误差,因此能够真实、自然地再现语音、音乐及效果声。
避免了传统录音电路量化和压缩造成的量化噪声和金属声。
ISD4004系列语音芯片的所有操作由微控制器控制,操作命令通过串行通信接口(SPI)送入。
录音采样频率可为4.0Hz、5.3Hz、6.4Hz、8.0Hz,录放时间可为16min、12min、10min、8min。
采样频率越低,录放时间越长,但音质则有所下降。
片内信息存于闪烁存储器中,可在断电情况下保存100年,能够反复录音10万次(典型值)。
器件工作电压为3V,工作电流为15~25mA,维持电流为1μA。
语音播放模块电路的原理图如图3-6所示:
图3-6 语音芯片ISD4004部分原理图
由于ISD4004是数模的混合芯片,因此对数字信号和模拟信号的处理是PCB 设计需要着重考虑的问题。
在芯片内部使用不同的模拟地和数字地,模拟电源和数字电源,他们分别通过VSSA,VSSD,VCCA和VCCD引出,VSSA,VSSD两引脚最好通过低电阻抗通路连接地;VCCA和VCCD最好也分别走线,并应尽可能在靠近供电端处相连,电源脚附近的去耦电容应尽量靠近芯片,能够滤除直流电流上的纹波,去除杂音,使音质更好。
3.2.1扬声器和话筒
扬声器输出(SP+、SP-):可驱动16Ω以上的喇叭(内存放音时功率为12.2mW,AUX 1N放音时功率为50mW)。
单端输出时必须在输出端和喇叭间接耦合电容而双端输出则不用电容就能将功率提高至4倍。
使用放大器将语音信号进行放大,再通过扬声器播放,语音信号放大电路如下图3-7所示:
图3-7语音信号放大电路原理图
话筒输入(MIC):该端连至片内前置放大器。
片内自动增益控制电路(AGC)可将增益控制在-15-24dB。
外接话筒应通过串联电容耦合到该端。
耦合电容值和该端的10KΩ输入阻抗决定了芯片频带的低频截止点。
3.3 Altium Designer设计硬件电路
Altium Designer是业界第一款也是唯一一种完整的板级设计方案。
Altium Designer拓宽了板级设计的传统界限,集成了FPGA设计功能,从而允许工程师能将系统设计中的FPGA与PCB设计集成在一起。
Altium Designer还着重在对布线,FPGA器件差分对管脚的动态分配,PCB和FPGA之间的全面集成操作,在PCB文件中支持多国语言(中文、英文、德文、法文、日文),任意字体和大小的汉字字符输入,光标跟随在线信息显示功能,光标点可选器件列表,复杂BGA 器件的多层自动扇出,提供了对高密度封装(如BGA)的交互布线功能,总路布线功能,器件精确移动,快速铺铜等功能。
Altium Designer以强大的设计功能为特点,在FPGA和板级设计中,同时支持原理图输入和HDL硬件描述输入模式;同时支持基于VHDLR 设计仿真,混合信号电路仿真、布局前后信号完整性分析。
Altium Designer软件设计界面如图3-8所示:
图3-8 Altium Designer软件界面图
利用Altium Designer进行电路设计需要三个步骤如图3-9所示:
1.绘制原理图
2.产生网络表
3.完成PCB(印
刷电路板)绘制
图 3-9 Altium Designerl设计电路步骤图
本设计利用Altium Designer软件画的硬件电路图主要有单片机AT89C51的最小系统和语音芯片ISD4004电路及它们的接口电路。
最后将整个电路板制作出来,焊接电路板元器件。
4软件设计
本次设计的语音播报系统是以AT89C51为核心建立的系统,主要包括语音录制存储和语音播放模块两大部分。
在软件编辑方面,需要对语音录音和语音播放两部分分别构成的子函数进行编辑,在编辑中需要用keil C51软件。
语音录制存储模块是单片机控制ISD4004语音芯片接收语音信号,将语音信号存入芯片中。
语音播放模块是通过单片机控制ISD4004发送语音信号的指令,通过扬声器发出声音。
4.1总体程序流程图
本设计主要通过单片机对ISD4004的控制实现指定地址入口的录音和循环播放。
程序实现过程:“开始”键按一下,即系统上电后,系统初始化,然后判断开始键是被按了一下,如果被按则单片机控制PD,P/R引脚低电平,并指向录音地址,启动录音过程。
在预先设定的时间内,(小于60s)结束录音,按一下“结束”键单片机控制P/R引脚回到高电平,即完成一段语音的录制。
按一下“播放”键之后打开外部中断0,指定放音地址,启动放音程序。
总体程序流程如图4-1所示:
图4-1 总体程序流程图
4.2语音录制存储模块
本模块主要通过单片机对ISD4004的控制实现指定地址入口的录音。
录音部分程序主要实现下面的过程:
录音键被按下,即系统上电后,系统初始化,然后判断开始键是被按下,如果被按下则单片机控制PD,P/R引脚低电平,并指向录音地址,调用录音函数,启动录音过程,可以进行多次录音存储。
在最长录音时间范围内按下结束键,单片机控制P/R引脚回到高电平,即完成一段语音的录制。
语音录制程序流程如图4-2所示:
图4-2录音程序流程图。