单片机的公交自动报站设计

目录
一、引言 1
二、总体设计 1
三、硬件设计 1
(一)AT89C51单片机概述 1
(二)语音模块设计 6
(三)LCD模块设计 9
(三)LCD模块设计 10
(四)无线收发模块 11
四、软件设计 12
(一)总体设计思想 12
(二)各部分的软件框图 13
1.主程序设计 13
2.语音子程序设计 14
3.LCD子程序设计 14
总结 15
附录 16
附录一 电路原理图 16
附录二PCB图 17
附录三 源程序 19
参考文献 26
致谢 27
一、引言
单片机技术在近年来发展迅速,应用于各个领域,运用单片机也可以实现公交报站功能。但由于现在绝大多数的公交车都是手动报站,这不只影响了正常驾驶,分散了驾驶员的注意力,同时也加重了他的工作的负担,安全也存在隐患。不过这相对于以前的人工报站已经有了大的提高,但是人工报站出错在所难免,给人们的出行带来不便。
为了使大家的生活更加便捷,为了减轻公交车驾驶员的工作量,减少报站出错等的问题,故运用单片机技术、语音芯片技术、无线收发技术以及液晶显示技术设计出既能手动报站也能自动报站的系统,使每辆公交车都能准确无误的实现报站,让每位乘客准确知道自己的位置。
二、总体设计
公交车的自动报站设计,对车轮脉冲进行计数,然后将计数值与系统里存的值进行对比,这样就能准确的判断什么时候进行报站。以AT89C51为核心芯片,对脉冲数进行计数,通过语音芯片ISD1700输出语音。 *好棒文|www.hbsrm.com +Q: %3^5`1^9`1^6^0`7^2# 
原理框图如下图所示:

图2-1 原理框图
1. CPU控制:分析数据,将脉冲和预置值进行对比,控制语音芯片播放语音。
2. 控制信号:手动控制信号。
3. 语言芯片:用ISD1700作为语音芯片,可擦写。
4. 输出显示:LCD1602液晶屏显示。
5. 预置存储:存储方式有两种,一种是将输入写入里面,另一种让车子在行驶的过程中将脉冲数存进去。
三、硬件设计
(一)AT89C51单片机概述
1. AT89C51单片机组成
AT89C51的标准功能:闪存4K字节Flash,128字节的内部RAM,I/O口线达到32,两个16位定时器/计数器,一个5向量两级中断结构,一个全双工串行端口,片内振荡器和时钟电路。
图3-1 单片机内部结构图
2.AT89C51单片机引脚结构

图3-2 单片机引脚结构图
VCC:供电电压。
GND:接地。
P0口:P0口每脚可吸收8TTL门电流,是一个8位漏级高低电平双向口。当输入1时被用作高阻抗输入端。
P1口:P1口能接收和输出4TTL的电流,是一个8位双向1/0口,并且内部提供上拉电阻。作为输入时,需要将内部上拉为高,管脚需要写入1,当内部上拉时,外部下拉为低电平,则会输出电流。
P2口: P2口能够吸收或输出电流 4个TTL门电流,是一个8位双向1/0口,带有内部上拉电阻。对端口写“1”,把内部上拉电阻拉高,可作为输入口。当内部电阻上拉时,外部信号拉低,某引脚会输出一个电流,此时候可作输出用。
P3口:P3口管脚是8个双向I/O口,内部带有上拉电阻。可接收输出4个TTL门电流。需要用作输入时,对P3口写“1”内部上拉为高电平。当作为输入时,需要输出输出电流,则需要内部上拉,外部下拉。
AT89C51的一些特殊功能口也在P3口内,如表3-1所示。

RST:复位输入。需要2个机器周期以上的高电平能使单片机复位。
/PSEN:外部程序存储器的选通信号。读取外部存储器时候,有效的信号不会出现。 
/EA:只读取外部存储器时,/EA需要为低电平。/EA将内部锁定为RESET时,加密方式为1;想访问内部存储器时,则需要/EA为高电平。
XTAL1:内部时钟电路的输入,反向振荡放大器的输入。  
XTAL2:放大器的输出。
3.AT89C51单片机的最小系统

(1)时钟电路
内部震荡电路如下图,由一个高增益的反相器组成。输入接XTAL1,输出接XTAL2。产生时钟可以利用内部的振荡器,想要组成并联谐振电路,则需要在XTAL1和XTAL2上接一个晶体及电容,这样就是一个振荡信号发生器,此方法称为内部方式。

图3-3 内部震荡电路
另一种使用方法如下图,脉冲信号输入接到XTAL1端,而XTAL2端浮空。单片机系统大多数都采用下面这种方法。

图3-4 外部震荡电路
本设计采用的是内部方式。
(2)复位电路
在RST复位输入端上加入高电平就是手动复位。一般都是在RST与VCC电源之间接一个按钮。为了满足复位所需的时间,因为人按的话最快也要几十毫秒,不能达到要求。手动复位的电路如图3-5所示。

图3-5 手动复位电路
AT89C51的上电复位电路如图3-6所示,只要在RST上接一个电容,下接一个GND就达到上电复位的效果。由于RST端内部有下拉电阻,所以可以外接电容1uF,从而就不需要外部电阻。
上电复位要足够长的时间使RST端为高电平信号,本设计采用的是上电复位。

图3-6 上电复位电路
(二)语音模块设计
1. ISD1700器件介绍
ISD1700系列语音电路是由华邦ISD公司推出的,该芯片提供多项新功能,录音放音,音量的加减,麦克风扬声器振荡器以及内存等等。 引脚图与实物图如图3-7所示。

图3-7 ISD1700引脚
引脚如表3-2所示。
表3-2 ISD1700引脚说明

实物图如图3-8所示。

图3-8 ISD1700实物图
2.电路设计

图3-9 ISD1700原理图
单片机输出信号到控制单元,CPU处理器进行处理,如果处理失败,则进行声光报警,有键盘调整音量的大小,若是没有问题,则进行播报语音。
图3-10 ISD1700电路图
ISD1700直接与单片机相连,ISD1700的4、5、6、7引脚分别与单片机的P2.0~P2.3相连,下端MIC+与MIC-外接一个电容,然后接上话桶作为输入端,SP+与SP-接到喇叭或者音箱作为输出端。
图3-13 LCD1602电路图
(三)LCD模块设计
(四)无线收发模块

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/txgc/1666.html

好棒文