本科生毕业论文(设计)系(院)物理与电子工程学院专业电子信息工程论文题目公交车自动报站系统设计学生姓名董帅指导教师吴波(讲师)(姓名及职称)班级08级电信3班学号完成日期:年月公交车自动报站系统董帅物理与电子工程学院电子信息工程08303407[摘要]本设计主要解决如何方便、准确地指示乘客到站的问题,具有自动检测公交站台,模拟人声进行报站和预报站,对所报站数和站名进行文字显示等功能。
系统包括微控制器模块,语音录放电路,液晶显示模块,键盘接口电路,复位电路及电源等。
系统使用51单片机来控制语音合成芯片和液晶显示模组。
站台检测使用干簧管检测。
语音合成芯片ISD4004,采用模拟数据半导体存储器直接存储的专利技术,即将模拟语音数据直接写入单个存储单元,不需经过A/D、D/A转换,因此能够较好地真实再现语音的自然效果,避免了一般固体语音电路因为量化和压缩造成的量化噪声和失真现象。
配合液晶屏lcd1602显示,就使得该报站系统更加实用。
[关键字]单片机语音提示液晶显示公交报站1绪论随着现在社会的发展,由于公交车的快速发展,越来越多的人选择乘坐公交车,公交车吸引人的优点除了价格低廉外,还有一个就是它的便利,尤其是报站系统,尤其对于对路线不熟悉的乘客尤为重要。
一般的公交车报站系统分为两种,一种是司机通过按键来操作,熟悉路线的司机在车辆驶入站点一定距离范围内时,按下所对应的按钮,系统报站。
另一种是通过全球定位系统(GPS)的用户终端接收工作卫星的导航信息,从而解算出车辆的经纬度信息,进而计算出实时坐标,将其与站点坐标相比较,当车辆驶入站点一定距离范围内时,不用人工干预,系统自动报站。
两种报站方法来说,第一种不智能,容易出现失误,第二种花费昂贵巨大。
所以本设计就利用干簧管作为检测站牌的传感器,检测既准确又价格又低廉。
本设计的基本思路就是干簧管传感器检测到站牌后,单片机判断第几个站牌并发出指令进行相应的语音报站,并进行液晶显示。
本次设计以 Keil C51 开发环境为编程平台进行代码的编译和运行,并在Proteus 上进行仿真。
2 方案设计2.1 原理本系统使用八位单片机作为控制器件。
当系统进行语音再生时,单片机控制语音合成电路中的语音芯片来读取其外接的存储器内部的语音信息,并合成语音信号,再通过语音输出电路,进行语音报站和提示。
同时,单片机读取传感器返回的站台信息,将信息显示在液晶上。
当系统进行语音录制时,语音信号通过语音录入电路送给语音合成电路中的语音芯片,由语音芯片进行数据处理,并将生成的数字语音信息存储到语音存储芯片中,从而建立语音库。
2.2图 2-1 系统框图2.3 简介主控制器使用单片机AT89C51,是美国ATMEL公司生产的低电压,高性能CMOS 8 位单片机。
片内含 4k byte的可反复擦写的只读程序存储器(PEROM)和 128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MSC-51 指令系统,片内置通用 8 位中央处理器和FLASH 存储单元,适合在开发阶段的使用。
AT89C51 提供以下标准功能:4k字节FLASH 闪存存储器,128 字节内部RAM,32 个I/O口线,两个 16 位定时/计数器,一个5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51 可降至 0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位[1]。
传感器使用的是干簧管,价格便宜,反应灵敏。
液晶显示模块使用的是LCD1602,工业字符型液晶,能够同时显示16x02即32个字符。
语音芯片语音提示模块选用ISD4004系列语音芯片,外接话筒和音箱组成语音录制和播放电路。
其中,音箱由音频功率放大器LM386驱动。
公交车使用买的无驱动的玩具车。
3 硬件设计3.1 控制器89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL 的89C51是一种高效微控制器。
89C51单片机管脚图图 3-1 89C51单片机管脚图单片机最小系统及外围电路接口图图 3-2 单片机最小系统及外围电路接口图3.2显示模块(1)LCD1602液晶显示屏主要技术参数如表3.2.1表3.2.1(2) LCD1602液晶显示屏引脚说明如表3.2.2表3.2.21602采用标准的14脚接口,其中:第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS 和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:D0~D7为8位双向数据线。
另外引脚"A"和"K"为背光引脚,"A"接正,"K"接负便会点亮背光灯。
这两个管脚可以不接置空。
(3)LCD1602液晶显示屏指令说明如表3.2.3表3.2.3它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址00H位置指令2:光标复位,光标返回到地址00H指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效指令4:显示开关控制。
D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标B:控制光标是否闪烁,高电平闪烁,低电平不闪烁指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符指令7:字符发生器RAM地址设置指令8:DDRAM地址设置指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。
指令10:写数据指令11:读数据LCD1602液晶显示屏显示电路图 3-2 LCD1602液晶显示屏显示电路图3.3 站牌检测模块在每个站牌下面都埋着一个永磁铁,在车的右端安有一个干簧管,当车子靠近站台时,干簧管闭合,触发单片机的外部中断,被单片机检测到从而做出相应判断。
干簧管通常由两个或三个软磁性材料做成的簧片触点,被封装在充有惰性气体(如氮、氦等)或真空的玻璃管里,玻璃管内平行封装的簧片端部重叠,并留有一定间隙或相互接触以构成开关的常开或常闭触点。
干簧管的工作电路图:图3-3 干簧管的工作电路图3.4 语音模块ISD4004系列语音芯片工作电压为+3V,单片录放时间8到16分钟,音质好,适用于移动电话及其他便携式电子产品中。
芯片采用CMOS 技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存储陈列。
芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI或Microwire)送入。
芯片采用多电平直接模拟量存储技术, 每个采样值直接存储在片内闪烁存储器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和金属声。
采样频率可以是4.0,5.3,6.4或8.0kHz,频率越低,录放时间越长,而音质则有所下降,片内信息存于闪烁存储器中,可在断电情况下保存一百年(典型值),可反复录音十万次。
3.4.1 内部结构图3-4 ISD4004的内部结构图3.4.2引脚描述(1)电源(VCCD ,VCCA) 芯片内部数字电路电源正极引脚和模拟电路电源正极引脚。
为使噪声最小,芯片的数字电路和模拟电路使用不同的电源供电,并且分别引到外封装的不同管脚上,数字和模拟电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。
(2)地线(VSSD ,VSSA) 芯片内部数字电路电源地线和模拟电路电源地线引脚。
芯片的数字电路和模拟电路也要使用不同的地线。
图3-5 ISD4004芯片引脚图(3)同相模拟输入(ANA IN+) 录音信号的同相输入端。
输入放大器可用单端或差分驱动。
单端输入时,信号由耦合电容输入,最大幅度为峰-峰值32mV,耦合电容和本端的3KΩ电阻输入阻抗决定了芯片频带的低端截止频率。
差分驱动时,信号最大幅度为峰-峰值16mV。
(4)反相模拟输入(ANA IN-) 差分驱动时,这是录音信号的反相输入端。
信号通过耦合电容输入,最大幅度为峰-峰值16mV。
(5)音频输出(AUD OUT) 提供音频输出,可驱动5KΩ的负载。
(6)片选(SS) 此端为低,即向ISD4004芯片发送指令,两条指令之间为高电平。
(7)串行输入(MOSI) 此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,以供输入。
(8)串行输出(MISO) 此端为串行输出端,芯片未被选中时,本端呈高阻态。
(13)自动静噪(AM CAP)当录音信号电平下降到内部设定的某一阈值以下时,自动静噪功能使信号衰弱,这样有助于滤除无信号(静音)时的噪声。
通常本端对地接1µF的电容,构成内部信号电平峰值检测电路的一部分。
检出的峰值电平与内部设定的阈值作比较,决定自动静噪功能的翻转点。
大信号时,自动静噪电路不衰减,静音时衰减6dB。
1µF 的电容也影响自动静噪电则禁止自动静噪。
路对信号幅度的响应速度。
本端接VCCA3.4.3 操作规则(1)串行外设接口 ISD4000系列语音芯片工作于SPI串行接口。