公交车自动报站系统毕业设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生毕业论文(设计)系(院)物理与电子工程学院专业电子信息工程论文题目公交车自动报站系统设计
学生姓名董帅
指导教师吴波(讲师)
(姓名及职称)
班级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.2
1602采用标准的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地址设置