公车语音报站器设计.docx

上传人:b****6 文档编号:4772100 上传时间:2022-12-08 格式:DOCX 页数:23 大小:620.64KB
下载 相关 举报
公车语音报站器设计.docx_第1页
第1页 / 共23页
公车语音报站器设计.docx_第2页
第2页 / 共23页
公车语音报站器设计.docx_第3页
第3页 / 共23页
公车语音报站器设计.docx_第4页
第4页 / 共23页
公车语音报站器设计.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

公车语音报站器设计.docx

《公车语音报站器设计.docx》由会员分享,可在线阅读,更多相关《公车语音报站器设计.docx(23页珍藏版)》请在冰豆网上搜索。

公车语音报站器设计.docx

公车语音报站器设计

钦州 学 院

单片机课程设计报告

公车语音报站器设计

 

院系机械与船舶海洋工程学院

专业过程控制自动化

学生班级2013级133班

姓名刘良新

学号**********

指导教师单位钦州学院

指导教师姓名张晓培

指导教师职称

 

2016年11月

 

公交语音报站设计

自动化专业2013级刘良新

指导教师张晓培

摘要:

本课程设计就是采用一种用单片机控制语音芯片进行公交车语音自动报站的方法。

整个系统硬件设计包括键盘电路、复位电路、显示驱动电路、显示电路、内存扩展电路模块。

利用AT89C52作为控制器,通过ISD4004语音芯片建立语音信息库,形成变化多样的语音信息,利用其功放播放语音信息以及提示语音,同时运用LCD12864进行站数显示。

当公交车到达某站点,用键盘控制本系统工作,通过语音电路输出语音信息和提示,同时站数信息在12864上显示。

本系统很大程度上提高公交车报站的准确性,可靠性。

提高了公交系统的服务质量。

促进城市经济发展和交通变化的和谐发展

关键词:

公交语音报站,AT89C52单片机,ISD4004语音芯片,LCD12864

设计目的:

本课程设计的目的是通过指导学生循序渐进地独立完成单片机的设计任务,加深学生对理论知识的理解,有效地提高了学生的动手能力,独立分析问题、解决问题能力,协调能力和创造性思维能力。

着重提高学生在单片机应用方面的实践技能,树立严谨的科学作风,培养学生综合运用理论知识解决实际问题的能力。

学生通过单片机的设计、安装、调试、整理资料等环节,初步掌握工程设计方法和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。

绪论……………………………………………………………………1

1.设计的主要目标任务………………………………………………1

2.方案设计……………………………………………………………2

2.1基本原理…………………………………………………….…2

2.2系统框图…………………………………………………….…2

3.主要电路介绍………………………………………………………3

3.1主控电路简介……………………………………………….…3

3.1.1关于AT89C52单片机………………………………………3

3.1.1.1AT89C52主要性能参数……………………………….…3

3.1.1.2引脚功能说明……………………………………………3

3.1.2振荡器电路设计……………………………………………6

3.1.3复位电路的设计……………………………………………7

3.2语音模块电路简介……………………………………………7

3.2.1ISD4004芯片内部逻辑结构…………………………….…8

3.2.2ISD4004芯片引脚描述………………………………….…8

3.2.3ISD4004芯片的使用说明……………………………….…9

3.2.4ISD4004与外围设备的连接…………………………...…12

3.3显示模块电路简介…….…………………………...………..13

3.4按键电路简介……………………………………………..…14

4.程序控制……………………………………………………..……14

4.1主程序流程图……………………………………………..…14

5.总结………………………………………………………..………15

参考文献…………………………………………………………..…15

附录………………………………………………………........….....16

 

绪论

随着科学技术的日益发展和进步,无人售票公交车在街头多起来了,语音报站器也被广泛使用,这在相当大的程度上免除了乘务人员沿途报站的麻烦,给许多不熟悉公交线路的乘客带来了方便。

公共汽车行驶在现代文明程度高的市区,它是一道流动的风景线,因而对整车外形乃至色彩都有更高的要求。

作为公交汽车还要有醒目和减少乘务人员强度的电子报站器,电子显示路牌,无人售票装置,前后电视监视系统等新技术的采用也将越来越普及。

目前,公交车自动报站主要有以下几种方式:

一种是通过全球定位系统(GPS)的用户终端接收工作卫星的导航信息,从而解算出车辆的经纬度信息,进而计算出实时坐标,将其与站点坐标相比较,当车辆驶入站点一定距离范围内时,不用人工干预,系统自动报站;另一种是利用无线射频识别(RadioFrequencyIdentification)技术,在每一个公交站台设置一个具有唯一ID的射频发射器,采用间歇工作方式发射信号,当公交车即将到达车站时,车载系统接收到站信号并解码出站台的ID号,由单片机控制自动播放对应站台编号的报站语音;还有一种是对车轮轴的转角脉冲进行计数,将计数值和预置值对比,即可确定报站时刻,达到准确报站的目的。

然而,这三种方式都不太适合乡镇的发展现状。

第一种设备造价过高,定位精度也难以达到要求;第二种站台建设投入较大,站点一旦变更,射频发射装置即须移动,较为麻烦;第三种需要公交线路严格固定,稍有改变,报站就难以准确。

为此,本文试图设计一种既方便易行又经济实惠的公交车自动报站系统。

本设计采用人工按键的操作方式公交车手动报站器,弥补传统人工报站必须有司机或乘务员口头报站的落后方式,实现公交车对站名的语音提示和文字显示功能,为市民提供更人性化,更完善的服务。

当公交车到达某一站时,司机或乘务人员只需按动按键,就可以使单片机控制语音模块对站名进行语音提示,并控制显示模组在液晶屏上显示。

系统由一片八位单片机,一个语音模块,一个液晶模组,一块稳压芯片,若干电阻电容和与非门等组成。

经过本课题的研究,我们得到了一种公交车报站的低成本解决方案。

 

1.设计的主要目标任务

设计的主要目标本课题要求设计一公交车语音报站系统,具备8个或以上的站点,按下相应按键就播放相应的语音,并通过液晶屏幕显示所在站点的信息。

以实现公交车的语音报站,即在到站时候司机按下按键自动播报语音提示信息及,同时利用LCD显示电路进行汉字显示。

同时系统需具有可操作性和兼容系,即在使用过程中,对不同的公交线路能够很方便的进行设定。

本设计要求利用AT89C52作为主控芯片完成主控电路的设计,辅助电路要求包括语音电路、显示电路、按键模块电路等

2.方案设计

2.1基本原理

本系统使用八位单片机作为控制器件。

当系统进行语音再生时,单片机控制语音合成电路中的语音芯片来读取其外接的存储器内部的语音信息,并合成语音信号,再通过语音输出电路,进行语音报站和提示。

同时,单片机通过程序读取文字信息,送入液晶显示模组来进行站名的显示。

当汽车到达某站时,司机或乘务人员通过键盘来控制系统进行工作。

而且,系统具有根据公交车的行驶方向确定报站顺序的功能(司机或乘务人员可以通过按键来控制)。

当系统进行语音录制时,语音信号通过语音录入电路送给语音合成电路中的语音芯片,由语音芯片进行数据处理,并将生成的数字语音信息存储到语音存储芯片中,从而建立语音库。

2.2系统框图

AT89C52

系统组成结构

 

3.主要电路介绍

3.1主控电路简介

微控制器选择目前市场上常用的Intel生产的AT89C52单片机作为主控芯片,同时,AT89C52系统还需要外接晶振和复位电路。

3.1.1关于AT89C52单片机

AT89C52提供以下标准功能:

8k字节FLASH闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路。

同时,AT89C52可降至OHZ的静态逻辑操作,并支持两种软件可选的节点工作模式。

空闲方式停止CPU工作,但允许RAM,定时/计数器,串行口及中断系统继续工作。

掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有部件工作直到下一个部件复位。

3.1.1.1AT89C52主要性能参数

AT89C52单片机与MCS-51产品指令和引脚兼容,内部含有8K字节可擦写FALSH闪存,1000次擦写周期。

同时具有全静态操作:

OHZ-24MHZ,三级加密程序存储器,256×8字节内部RAM,32个可编程I/O口线,3个15位定时/计数器,8个中断源,可编程串行UART通道的功能部件。

3.1.1.2引脚功能说明

引脚图如下图图所示:

功能说明如下:

1VCC:

电源电压

2GND:

3P0口:

P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。

作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。

在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。

在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

4P1口:

P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。

作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表2.1。

Flash编程和程序校验期间,P1接收低8位地址。

表3-1P1.0和P1.1的第二功能

引脚号

功能特性

P1.0

T2(定时/计数器2外部计数脉冲输入),时钟输出

P1.1

T2EX(定时/计数2捕获、重装载触发和方向控制)

5P2口:

P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。

在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。

Flash编程或校验时,P2亦接收高位地址和一些控制信号。

6P3口:

P3口是一组带有内部上拉电阻的8位双向I/O口。

P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。

此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。

P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表2.2所示,此外,P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。

表3-2P3口第二功能

7RST:

复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。

8ALE/PROG:

当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。

要注意的是:

每当访问外部数据存储器时将跳过一个ALE脉冲。

对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。

此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

9PSEN:

程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。

在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

·EA/VPP:

外部访问允许。

欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。

Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

·XTAL1:

振荡器反相放大器的及内部时钟发生器的输入端。

·XTAL2:

振荡器反相放大器的输出端。

3.1.2振荡器电路的设计

89系列单片机的内部振荡器电路如图所示,由一个单级反相器组成。

XTAL1为反相器的输入,XTAL2为反相器的输出。

可以利用它内部的振荡器产生时钟,只要在XTAL1和XTAL2引脚上外接一个晶体及电容组成的并联谐振电路,便构成一个完整的振荡信号发生器。

单片机内部振荡器电路

3.1.3复位电路的设计

89系列单片机与其他微处理器一样,在启动的时候都需要复位,使CPU及系统各部件处于确定的初始状态,并从初始状态开始工作。

89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。

当系统处于正常工作状态时,且振荡器稳定后,如RST引脚上有一个高电平并维持2个机器周期(24个振荡周期),则CPU就可以响应并将系统复位。

复位时序如图3-7所示,因外部的复位信号是与内部时钟异步的,所以在每个机器周期的S5P2都对RST引脚上的状态采样。

当在RST端采样到“1”信号且该信号维持19个振荡周期以后,将ALE和/PSEN接成高电平,使器件复位。

在RST端电压变低后,经过1-2个机器周期后退出复位状态,重新启动时钟,并恢复ALE和/PSEN的状态。

如果在系统复位期间将ALE和/PSEN引脚拉成低电平,则会引起芯片进入不定状态。

3.2语音模块电路简介

ISD4004系列语音芯片工作电压为+3V,单片录放时间8到16分钟,音质好,适用于移动电话及其他便携式电子产品中。

芯片采用CMOS技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存储陈列。

芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI或Microwire)送入。

芯片采用多电平直接模拟量存储技术,每个采样值直接存储在片内闪烁存储器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和金属声。

采样频率可以是4.0,5.3,6.4或8.0kHz,频率越低,录放时间越长,而音质则有所下降,片内信息存于闪烁存储器中,可在断电情况下保存一百年(典型值),可反复录音十万次。

 

3.2.1ISD4004芯片内部逻辑结构

3.2.2ISD4004芯片引脚描述

1)电源(VCCD,VCCA)芯片内部数字电路电源正极引脚和模拟电路电源正极引脚。

为使噪声最小,芯片的数字电路和模拟电路使用不同的电源供电,并且分别引到外封装的不同管脚上,数字和模拟电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。

2)地线(VSSD,VSSA)芯片内部数字电路电源地线和模拟电路电源地线引脚。

芯片的数字电路和模拟电路也要使用不同的地线。

3)同相模拟输入(ANAIN+)录音信号的同相输入端。

输入放大器可用单端或差分驱动。

单端输入时,信号由耦合电容输入,最大幅度为峰-峰值32mV,耦合电容和本端的3KΩ电阻输入阻抗决定了芯片频带的低端截止频率。

差分驱动时,信号最大幅度为峰-峰值16mV。

4)反相模拟输入(ANAIN-)差分驱动时,这是录音信号的反相输入端。

信号通过耦合电容输入,最大幅度为峰-峰值16mV。

5)音频输出(AUDOUT)提供音频输出,可驱动5KΩ的负载。

6)片选(SS)此端为低,即向ISD4004芯片发送指令,两条指令之间为高电平。

7)串行输入(MOSI)此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,以供输入。

8)串行输出(MISO)此端为串行输出端,芯片未被选中时,本端呈高阻态。

9)串行时钟(SCLK)时钟输入端,由主控制器产生,用于同步MOSI和MISO的数据传输。

数据在SCLK上升沿锁存到芯片,在下降沿移出芯片。

10)中断()本端为漏极开路输出。

芯片在任何操作(包括快进)中检测到EOM或OVF时,本端变低并保持。

中断状态在下一个SPI周期开始时清除。

中断状态也可用RINT指令读取(OVF标志指示芯片的录/放操作已到达存储器的末尾;EOM标志只在放音中检测到内部的EOM标志时,此状态位才置1)。

11)行地址时钟(RAC)漏极开路输出。

每个RAC周期表示芯片存储器的操作进行了一行(ISD4004系列中的存储器共2400行)。

该信号保持高电平175ms,低电平25ms。

快进模式下,RAC218.75μs是高电平,31.25μs为低电平。

该端可用于存储管理技术。

12)外部时钟(XCLK)本端内部有下拉元件。

芯片内部的采样时钟在出厂前已调校,误差在1%以内。

商业级芯片在整个温度和电压范围内,频率变化在2.25%以内。

工业级芯片在整个温度和电压范围内,频率变化在4%以内,此时建议使用稳压电源。

若要求更高精度,可从本端输入外部时钟。

由于内部的防混淆及平滑滤波器已设定,故上述推荐的时钟频率不应改变。

输入时钟的占空比无关紧要,因内部首先进行了分频。

在不外接时钟时,此端必须接地。

13)自动静噪(AMCAP)当录音信号电平下降到内部设定的某一阈值以下时,自动静噪功能使信号衰弱,这样有助于滤除无信号(静音)时的噪声。

通常本端对地接1µF的电容,构成内部信号电平峰值检测电路的一部分。

检出的峰值电平与内部设定的阈值作比较,决定自动静噪功能的翻转点。

大信号时,自动静噪电路不衰减,静音时衰减6dB[7]。

1µF的电容也影响自动静噪电路对信号幅度的响应速度。

本端接VCCA则禁止自动静噪。

ISD4004芯片实物图

ISD4004芯片引脚图

3.2.3ISD4004芯片使用说明

1)串行外设接口ISD4000系列语音芯片工作于SPI串行接口。

SPI协议是一个同步串行数据传输协议,设定微控制器的SPI移位寄存器在SCLK的下降沿将数据送至MISO引脚。

以ISD4004为例,协议的具体内容如下:

①所有串行数据传输开始于下降沿。

②在传输期间必须保持低电平,在两条指令之间则保持高电平。

③数据在时钟上升沿移入,在下降沿移出。

④变低,输入指令和地址后,ISD4004才能开始录/放操作。

⑤指令格式是(八位控制码)加(十六位地址码)。

⑥ISD4004的任何操作如果遇到EOM或OVF,则产生一个中断,该中断状态在下一个SPI周期开始时被清除。

⑦使用“读”指令使中断状态位移出ISD4004的MISO引脚时,控制及地址数据也应同步从MOSI端移入。

因此,要注意移入的数据是否与器件当前进行的操作兼容。

当然,也允许在一个SPI周期里,同时执行读状态和开始新的操作(即新移入的数据与器件当前的操作可以不兼容)。

⑧所有操作在运行位(RUN)置1时开始,置0时结束。

⑨所有指令都在SS端上升沿开始执行。

2)信息快进用户不必知道信息的确切地址就能快进跳过一条信息。

信息快进只用于放音模式,放音速度是正常的1600倍,遇到EOM后停止,然后内部地址计数器1,指向下一条信息的开始处。

3)上电顺序器件延时TPUD(8KHz采样时,约为25ms)后才能开始操作。

因此,用户发完上电指令后,必须等待TPUD,才能发出下一条操作指令。

例如,从00处放音,应遵循如下时序:

①发POWERUP命令;

②等待TPUD(上电延时);

③发地址值为00的SETPLAY命令;

④发PLAY命令。

器件会从00地址开始放音,当出现EOM时,立即中断,停止放音。

如果从00处录音,则按以下时序:

①发POWERUP指令;

②等待TPUD(上电延时);

③发POWERUP命令;

④等待2倍TPUD;

⑤发地址值为00的SETREC命令;

⑥发REC命令。

器件便从00地址开始录音,一直到出现OVF(存储器末尾)时,录音停止。

4)指令码

5)SPI端口的控制位

6)SPI控制寄存器

SPI控制寄存器控制器件的每个功能,如录音、放音、信息检索(快进)、上电/掉电、开始/停止操作、忽略地址指针等。

注:

IAB置0时,录/放操作从A9~A0地址开始

为了能连贯地录/放到后续的存储空间,在操作到达该行末之前,应发出第二个SPI指令将IAB置1,否则器件会在同一地址上反复循环。

这个特点对语音提示功能很有用。

RAC引脚和IAB位可用于信息管理。

SPI端口简单框图如图所示:

ISD4004的SPI端口

3.2.4ISD4004与外围设备的连接

语音芯片ISD4004主要与三部分外围设备连接,即单片机控制电路、语音录入电路和语音播放电路。

单片机的P1.0、P1.1和P1.2引脚接独立按键,控制语音芯片的放音过程;P1.3引脚经电阻与控制外部语音录入和语音播放电路接通与否的三极管的基极相连;P1.4引脚接片选端SS,控制ISD4004选通与否;P1.5引脚接串行输入MOSI,经此读入放音地址;P1.7引脚接串行时钟SCLK;两芯片中断口相连,以收发中断信号。

同相模拟输入(ANAIN+)和反相模拟输入(ANAIN-)与录音电路相连,通过话筒录制各站信息存储于芯片内部以供播放时应用。

音频功率放大器LM386驱动音箱组成放音电路,与音频输出端(AUDOUT)相连。

另外,发光二极管接于电源通路,可以显示语音芯片工作情况。

ISD4004与外围设备的连接电路图

3.3显示模块电路简介

带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体

中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。

可以显示8×4行16×16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。

3.3.1引脚功能说明

管脚号

管脚名称

电平

管脚功能描述

1

VSS

0V

电源地

2

VCC

3.0+5V

电源正

3

V0

-

对比度(亮度)调整

4

RS(CS)

H/L

RS=“H”,表示DB7——DB0为显示数据

RS=“L”,表示DB7——DB0为显示指令数据

5

R/W(SID)

H/L

R/W=“H”,E=“H”,数据被读到DB7——DB0

R/W=“L”,E=“H→L”,DB7——DB0的数据被写到IR或DR

6

E(SCLK)

H/L

使能信号

7

DB0

H/L

三态数据线

8

DB1

H/L

三态数据线

9

DB2

H/L

三态数据线

10

DB3

H/L

三态数据线

11

DB4

H/L

三态数据线

12

DB5

H/L

三态数据线

13

DB6

H/L

三态数据线

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高考

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

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