钦州学院单片机课程设计报告公车语音报站器设计院系机械与船舶海洋工程学院专业过程控制自动化学生班级 2013级133班姓名刘良新学号 1指导教师单位钦州学院指导教师姓名张晓培指导教师职称2016年11月公交语音报站设计自动化专业 2013级刘良新指导教师张晓培摘要:本课程设计就是采用一种用单片机控制语音芯片进行公交车语音自动报站的方法。
整个系统硬件设计包括键盘电路、复位电路、显示驱动电路、显示电路、内存扩展电路模块。
利用AT89C52作为控制器,通过ISD4004语音芯片建立语音信息库,形成变化多样的语音信息,利用其功放播放语音信息以及提示语音,同时运用LCD12864进行站数显示。
当公交车到达某站点,用键盘控制本系统工作,通过语音电路输出语音信息和提示,同时站数信息在12864上显示。
本系统很大程度上提高公交车报站的准确性,可靠性。
提高了公交系统的服务质量。
促进城市经济发展和交通变化的和谐发展关键词:公交语音报站,AT89C52单片机,ISD4004语音芯片,LCD12864设计目的:本课程设计的目的是通过指导学生循序渐进地独立完成单片机的设计任务,加深学生对理论知识的理解,有效地提高了学生的动手能力,独立分析问题、解决问题能力,协调能力和创造性思维能力。
着重提高学生在单片机应用方面的实践技能,树立严谨的科学作风,培养学生综合运用理论知识解决实际问题的能力。
学生通过单片机的设计、安装、调试、整理资料等环节,初步掌握工程设计方法和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。
目录绪论 (1)1.设计的主要目标任务 (1)2.方案设计 (2)基本原理 (2)系统框图 (2)3.主要电路介绍 (3)主控电路简介 (3)关于AT89C52单片机 (3) (3) (3)振荡器电路设计 (6)复位电路的设计 (7)语音模块电路简介 (7)ISD4004芯片内部逻辑结构 (8)ISD4004芯片引脚描述 (8)ISD4004芯片的使用说明 (9)ISD4004与外围设备的连接 (12)显示模块电路简介 (13)按键电路简介 (14)4.程序控制 (14)主程序流程图 (14)5.总结 (15)参考文献 (15)附录 (16)绪论随着科学技术的日益发展和进步, 无人售票公交车在街头多起来了,语音报站器也被广泛使用,这在相当大的程度上免除了乘务人员沿途报站的麻烦,给许多不熟悉公交线路的乘客带来了方便。
公共汽车行驶在现代文明程度高的市区,它是一道流动的风景线,因而对整车外形乃至色彩都有更高的要求。
作为公交汽车还要有醒目和减少乘务人员强度的电子报站器,电子显示路牌,无人售票装置,前后电视监视系统等新技术的采用也将越来越普及。
目前,公交车自动报站主要有以下几种方式:一种是通过全球定位系统(GPS)的用户终端接收工作卫星的导航信息,从而解算出车辆的经纬度信息,进而计算出实时坐标,将其与站点坐标相比较,当车辆驶入站点一定距离范围内时,不用人工干预,系统自动报站;另一种是利用无线射频识别(Radio Frequency Identification)技术,在每一个公交站台设置一个具有唯一ID的射频发射器,采用间歇工作方式发射信号,当公交车即将到达车站时,车载系统接收到站信号并解码出站台的ID号,由单片机控制自动播放对应站台编号的报站语音;还有一种是对车轮轴的转角脉冲进行计数,将计数值和预置值对比,即可确定报站时刻,达到准确报站的目的。
然而,这三种方式都不太适合乡镇的发展现状。
第一种设备造价过高,定位精度也难以达到要求;第二种站台建设投入较大,站点一旦变更,射频发射装置即须移动,较为麻烦;第三种需要公交线路严格固定,稍有改变,报站就难以准确。
为此,本文试图设计一种既方便易行又经济实惠的公交车自动报站系统。
本设计采用人工按键的操作方式公交车手动报站器,弥补传统人工报站必须有司机或乘务员口头报站的落后方式,实现公交车对站名的语音提示和文字显示功能,为市民提供更人性化,更完善的服务。
当公交车到达某一站时,司机或乘务人员只需按动按键,就可以使单片机控制语音模块对站名进行语音提示,并控制显示模组在液晶屏上显示。
系统由一片八位单片机,一个语音模块,一个液晶模组,一块稳压芯片,若干电阻电容和与非门等组成。
经过本课题的研究,我们得到了一种公交车报站的低成本解决方案。
1.设计的主要目标任务设计的主要目标本课题要求设计一公交车语音报站系统,具备8个或以上的站点,按下相应按键就播放相应的语音,并通过液晶屏幕显示所在站点的信息。
以实现公交车的语音报站,即在到站时候司机按下按键自动播报语音提示信息及,同时利用LCD显示电路进行汉字显示。
同时系统需具有可操作性和兼容系,即在使用过程中,对不同的公交线路能够很方便的进行设定。
本设计要求利用AT89C52作为主控芯片完成主控电路的设计,辅助电路要求包括语音电路、显示电路、按键模块电路等2.方案设计基本原理本系统使用八位单片机作为控制器件。
当系统进行语音再生时,单片机控制语音合成电路中的语音芯片来读取其外接的存储器内部的语音信息,并合成语音信号,再通过语音输出电路,进行语音报站和提示。
同时,单片机通过程序读取文字信息,送入液晶显示模组来进行站名的显示。
当汽车到达某站时,司机或乘务人员通过键盘来控制系统进行工作。
而且,系统具有根据公交车的行驶方向确定报站顺序的功能(司机或乘务人员可以通过按键来控制)。
当系统进行语音录制时,语音信号通过语音录入电路送给语音合成电路中的语音芯片,由语音芯片进行数据处理,并将生成的数字语音信息存储到语音存储芯片中,从而建立语音库。
系统框图AT89C52系统组成结构3.主要电路介绍主控电路简介微控制器选择目前市场上常用的Intel生产的AT89C52单片机作为主控芯片,同时, AT89C52系统还需要外接晶振和复位电路。
AT89C52提供以下标准功能:8k字节FLASH闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路。
同时,AT89C52可降至OHZ的静态逻辑操作,并支持两种软件可选的节点工作模式。
空闲方式停止CPU工作,但允许RAM,定时/计数器,串行口及中断系统继续工作。
掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有部件工作直到下一个部件复位。
AT89C52单片机与MCS-51产品指令和引脚兼容,内部含有8K字节可擦写FALSH闪存,1000次擦写周期。
同时具有全静态操作:OHZ-24MHZ,三级加密程序存储器,256×8字节内部RAM,32个可编程I/O口线,3个15位定时/计数器,8个中断源,可编程串行UART通道的功能部件。
引脚图如下图图所示:功能说明如下:1 VCC:电源电压2 GND:地3 P0 口:P0 口是一组8 位漏极开路型双向I/O 口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
4 P1 口:P1 是一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流)4个TTL 逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
与AT89C51 不同之处是,和还可分别作为定时/计数器 2 的外部计数输入(T2)和输入(T2EX),参见表。
Flash 编程和程序校验期间,P1 接收低8 位地址。
表3-1 和的第二功能5 P2 口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。
对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX @DPTR 指令)时,P2 口送出高8 位地址数据。
在访问8 位地址的外部数据存储器(如执行MOVX @RI 指令)时,P2 口输出P2 锁存器的内容。
Flash 编程或校验时,P2亦接收高位地址和一些控制信号。
6 P3口:P3口是一组带有内部上拉电阻的8位双向I/O 口。
P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。
P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能,如表所示,此外,P3 口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号。
表3-2 P3口第二功能7 RST:复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
8 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。
一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。
对Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。
该位置位后,只有一条MOVX 和MOVC指令才能将ALE 激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。
9 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
·EA/VPP:外部访问允许。
欲使CPU 仅访问外部程序存储器(地址为0000H —FFFFH),EA 端必须保持低电平(接地)。
需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU 则执行内部程序存储器中的指令。
Flash 存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V 编程电压Vpp。