ImageVerifierCode 换一换
格式:DOCX , 页数:52 ,大小:678.97KB ,
资源ID:17911411      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17911411.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(公交车语音报站系统Word文件下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

公交车语音报站系统Word文件下载.docx

1、1、整体方案的设计方案的选择要符合芯片功能的要求,既要保证操作简单适合公交司机操作,又要体现出本产品的特点,本文研究设计的带录音功能的公交车语音报站系统是采用STC89C52单片机和ISD4004语音芯片,用来实现公交车站信息的播放以及录音和放音功能,用LCD12864带中文字库的液晶显示屏实现公交站名的显示。 2、程序流程图及软件设计一个程序要想实现其功能,不能没有次序而盲目下手,必须对其有一个全面的了解后画出流程框图,然后逐个模块的实现其功能,最终把模块之间合理的连接起来,构成完整程序。本设计的软件设计主要包括系统的初始化设计、延时子程序的设计、录音子程序的设计、放音子程序的设计、液晶屏的

2、显示设计、中断程序设计、以及主程序设计等。整个系统程序采用模块化结构设计程序相对比较优化易修改和调试,系统软件的开发是用C语言设计的。3、系统原理图及硬件调试本设计在进行硬件原理分析后,需要连接实物进行实际操作,检验自己的设计是否可以行得通。需要在protel99SE环境下画出硬件原理图并进行电气测试,检测无异议后进行硬件系统的调试,为了保证系统的可靠性分析查找,硬件的调试分模块分别进行了模拟。第2章系统总体设计方案2.1功能要求1、通过STC89C52芯片实现对按键的读取并将所对应的信息送至扬声器同时将到站信息通过液晶屏显示;2、语音芯片ISD4004完成语音模块,实现公交站信息的录入及到站

3、时的放音功能;3、采用两个独立按键,作为录音和放音的控制键;4、采用LCD12864液晶屏,显示相对应的站的信息;2.2设计思路电路总体上分为主芯片控制部分、语音芯片和液晶显示部分。以STC89C52单片机最小系统作为核心控制电路,控制独立按键对录音放音的选择,具体显示内容及方式由软件来完成。语音部分由ISD4004芯片来实现,它是一个多功能的语音芯片,可以多次重复录放,本设计正是运用此特点,完成录音和放音功能的。具体步骤是:先录入两站的信息,存储到芯片内部,建立语音库,并且具体锁定到对应的地址中,通过按键的次序播放不同的信息。2.3方案选择2.3.1显示模块选择方案方案一:用LCD1602液

4、晶显示,但是由于1602主要显示英文和字符,不适合用于带汉字的公交车报站。方案二:采用LCD12864不带字库芯片,但需要用取模软件取模,PROTEUS可以仿真HT1621(1602)KS0108(12864) T6963C(24064),等系列的模块,需先学会仿真软件方案三:采用带字库的LCD12864芯片,可直接调用字库,使用比较方便。鉴于上述对比与分析,本设计采用方案三。2.3.2按键选择方案采用STC89C52的独立键盘,其独立键盘有4个按键,按键数量符合录音和放音两个按键的需要。采用STC89C52的矩阵键盘,其矩阵键盘具有16个按键,数量太多,不如独立按键方便。故采用K1和K2两个

5、独立按键,K1为放音键,按第一下时,对应播放第一站信息,同时调用显示子程序,在液晶屏上显示对应信息。按第二下时,对应播放第二站信息,并在液晶屏上显示信息。K2为录音键,按下时,录制第一段语音信息并存放在对应的地址中,按下第二下时,录制第二段语音信息并存放于第二段语音对应的地址中,以方便调用。2.3.3芯片选择方案AT89C51是美国ATMEL公司生产的低电压,高性能CMOS型8位单片机,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。其片内的4K程序存储器是FLASH工艺的,这种单片机对开发设

6、备的要求很低,开发时间也大大缩短。写入单片机内的程序还可以进行加密,这又很好地保护我们的劳动成果。再者,AT89C51目前的售价比8031低,市场供应也很充足。AT89C51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。只要程序长度小于4K,四个I/O口全部提供给用户。可用5V电压编程,而且擦写时间仅需l0ms。AT89C51芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。PO口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作1。STC89C52单片机的指令系统和AT89C51系列的完全兼

7、容1、AT89C51不带ISP下载,要用下载器才行,STC89C52可以用你的USB转串口下载,下载软件可以到STC厂家网上去下。2、STC单片机执行指令的速度很快,大约是AT的3-30倍,所以在AT上好使的程序在STC上不一定好用,最典型的例子就是那些对时序有严格要求的模块,比如IIC,DS18B20、DS1302等的时序。再者,由于执行速度的加快,非定时器控制的精确延时也会受到一定影响,用STC时注意得加长延时,大约是AT的1030倍。3、片机对工作环境的要求比较低,电压低于5伏时仍然正常工作,甚至3伏到4伏之间都还可以工作,然而这样的环境下AT肯定不行了,所以当一个系统用STC单片机好用

8、,但用AT的单片机不工作时,直接查最小系统,看单片机的供电是否正常。比较这两种方案,由于在学校期间学过数字电路、单片机原理、C语言程序设计,综合考虑单片机的各部分资源和作为学生能够获得的资源,经过对比此次设计要求,我选择用STC系列芯片完成。而且学校也提供了相应的硬件操作平台,实际操作起来比较方便,故STC为更合理的选择。2.4 总体设计框图按照系统功能的具体要求,在保证实现其功能的然础上,尽可能降低系统成本。总体设计方案围绕上述思想,初步确定系统的方案如图2-1所示:图2-1系统初步方案 从图中可以看出,系统有微处理器模块、液晶屏显示模块、独立按键模块和语音模块组成。在方案设计中,遵循简洁至

9、上的原则,因此所有的外围模块采用串行方式与微处理器模块接口。该设计以STC89C52系列单片机为控制核心,实现公交车语音报站基本功能。在设计系统时,为了更好地采用模块化设计法,分步的设计各个单元功能模块,系统的硬件部分可以分为键盘设定、单片机控制、LCD显示和语音控制四大部分。第3章系统硬件设计3.1概述此次的毕业设计主要由4个大的模块构成,分别是主控模块、语音芯片模块、LCD液晶显示模块、键盘控制模块,其中主控模块是此次毕业设计的核心模块,主要是指STC89C52芯片,它控制整个系统的运行,利用其各个口分别控制其他模块,使其他模块能够成为一个整体,实现功能的需要;语音模块主要指ISD4004

10、芯片和LM386芯片,用ISD4004来实现录音功能,LM386实现功率放大;而LCD液晶显示模块是整个系统的辅助模块,用来显示到站信息;按键控制模块则是用按键来控制实现的是哪个功能,对应录音、放音。3.2主控模块3.2.1STC89C52芯片的简介功能特性:STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案,如图3-1所

11、示。STC89C52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O口线,看门狗定时器,2 个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。主要性能:与MCS-51单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz33Hz、三级加密

12、程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符1。如图3-1:图3-1STC89C52芯片管脚说明:P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TT

13、L门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的

14、内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为STC89C52的一些特殊功能口,如表3-1所示:表3-1P3口的第二功能接口第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6WR(外部数据存储器写选通)P3

15、.7RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略

16、微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次PSEN有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。EA/VPP:当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反相振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反相振荡器的输出。XTAL1和XTAL2分别为反相放

17、大器的输入和输出。该反相放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。3.2.2主控模块电路原理图单片机主控模块由STC89C52芯片和晶振复位组成。复位和晶振电路通过接口与单片机个引脚相连,复位电路接到RST口,晶振接到XTAL1口和XTAL2口上。如图3-2,3-3所示:图3-2STC89C52芯片图3-3晶振复位3.3语音芯片模块3.3.1ISD4004芯片简介ISD4004语音系列芯片是美国ISD公司推出的产品,与普

18、通的录音/重放芯片相比,ISD4004具有如下特点:首先是记录声音没有段长度限制,并且声音记录不需要A/D转换和压缩。其次,快速闪存作为存储介质,无需电源可保存数据长达100年,重复记录10000次以上。此外,ISD4004具有记录时间长(可达16分钟,本文采用的为8分钟的ISD4004语音芯片)的优点。最后,ISD4004开发应用具有所需外围电路简单的优点,这一点从本文介绍的其在实际应用中可以体会到10。ISD4004芯片如图3-4所示:图3-4ISD4004芯片1、引脚介绍:电源(VCCA, VCCD):为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并A分别引到外封装的不同管脚上模

19、拟和数字电源端最好分别走线尽可能在靠近供电端处相连,而去藕电容应尽量靠近器件。地线(VSSA, VSSD):芯片内部的模拟和数字电路也使用不同的地线。同相模拟输入(ANA IN+):这是录音信号的同相输入端。输入放大器可用单端或差分驱动。单端输入时,信号由藕合电容输入,最大幅度为峰峰值32mV,藕合电容和本端的3K电阻输入阻抗决定了芯片频带的低端截止频率。差分驱动时,信号最大幅度为峰峰值16mV,为ISD33000系列相同。反相模拟输入(ANA IN-):差分驱动时,这是录音信号的反相输入端。信号通过藕合电容输入,最大幅度为峰峰值16mV音频输出(AUD OUT):提供音频输出,可驱动5K的负

20、载。片选(SS):此端为低,即向该ISD4004芯片发送指令,两条指令之问为高电平。串行输入(MOSI):此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供ISD输入。串行输出(MISO):ISD的串行输出端。ISD未选中时,本端呈高阻态。串行时钟(SCLK):ISD的时钟输入端,由主控制器产生,用于同步MOSI和MISO的数据传输。数据在SCLK上升沿锁存到ISD在下降沿移出ISD。中断(INT):本端为漏极开路输出。ISD在任何操作(包括快进)中检测到EOM或OVF时,本端变低并保持。中断状态在下一个SPI周期开始时清除。中断状态也可用RINT指令读取。OVF标志一

21、指示ISD的录、放操作已到达存储器的未尾。EOM标志一只在放音中检测到内部的EOM标志时此状态位才置1。行地址时钟(RAC): 漏极开路输出。每个RAC周期表示ISD存储器的操作进行了一行(ISD4004系列中的存贮器共2400行)。该信号175ms保持高电平,低电平为25ms。快进模式下,RAC的218.75 s是高电平,31.25s为低电平。该端可用于存储管理技术。外部时钟(XCLK):本端内部有下拉元件。芯片内部的采样时钟在出厂前已调校,误差在+1%内。商业级芯片在整个温度和电压范围内,频率变化在+2.25%内。工业级芯片在整个温度和电压范围内,频率变化在-6/+4%内,此时建议使用稳压

22、电源。若要求更高精度,可从本端输入外部时钟(如前表所列)。由于内部的防混淆及平滑滤波器已设定,故上述推荐的时钟频率不应改变。输入时钟的占空比无关紧要,因内部首先进行了分频。在不外接地时钟时此端必须接地。自动静噪(AMCAP):当录音信号电平下降到内部设定的某一阑值以下时,自动静噪功能使信号衰弱,这样有助于养活无信号(静音)时的噪声。通常本端对地接1mF的电容,构成内部信号电平峰值检测电路的一部分。检出的峰值电平与内部设定的阑值作比较,决定自动静噪功能的翻转点。大信号时,自动静噪电路不衰减,静音时衰减6dB。1mF的电容也影响自动静噪电路对信号幅度的响应速度。本端接VCCA则禁止自动静噪2、操作

23、规则(1)串行外设接口 ISD4000系列语音芯片工作于SPI串行接口。SPI协议是一个同步串行数据传输协议,设定微控制器的SPI移位寄存器在SCLK的下降沿将数据送至MISO引脚。以ISD4004为例,协议的具体内容如下5:所有串行数据传输开始于SS下降沿。SS在传输期间必须保持低电平,在两条指令之间则保持高电平。数据在时钟上升沿移入,在下降沿移出。SS变低,输入指令和地址后,ISD4004才能开始录/放操作。指令格式是(八位控制码)加(十六位地址码)。ISD4004的任何操作如果遇到EOM或OVF,则产生一个中断,该中断状态在下一个SPI周期开始时被清除。使用“读”指令使中断状态位移出IS

24、D4004的MISO引脚时,控制及地址数据也应同步从MOSI端移入。因此,要注意移入的数据是否与器件当前进行的操作兼容。当然,也允许在一个SPI周期里,同时执行读状态和开始新的操作(即新移入的数据与器件当前的操作可以不兼容)。所有操作在运行位(RUN)置1时开始,置0时结束。所有指令都在SS端上升沿开始执行。(2)信息快进 用户不必知道信息的确切地址就能快进跳过一条信息。信息快进只用于放音模式,放音速度是正常的1600倍,遇到EOM后停止,然后内部地址计数器1,指向下一条信息的开始处。(3)上电顺序 器件延时TPUD(8KHz采样时,约为25ms)后才能开始操作。因此,用户发完上电指令后,必须等待TPUD,才能发出下一条操作指令。例如,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1