带温湿度及时钟显示的公交车自动报站器.docx
《带温湿度及时钟显示的公交车自动报站器.docx》由会员分享,可在线阅读,更多相关《带温湿度及时钟显示的公交车自动报站器.docx(31页珍藏版)》请在冰豆网上搜索。
带温湿度及时钟显示的公交车自动报站器
TianjinUniversityofTechnologyandEducation
毕业设计
专业:
应用电子技术教育
班级学号:
0202-31
学生姓名:
徐立祥
指导教师:
高凤友高级实验师
二〇〇七年六月
天津工程师范学院本科生毕业设计(论文)
带温湿度及时钟显示的公交车自动报站器
Thebusautomaticreporterwiththetemperaturehumidityandclockshowed
专业班级:
应电0202
学生姓名:
徐立祥
指导教师:
高凤友高级实验师
系别:
电子工程系
2007年6月
摘要
本文介绍了一种新型的公交车自动报站系统的设计原理,同时提供了一种以AT89S52单片机为核心,控制ISD2560语音芯片及液晶显示模块做屏幕的新方案。
利用AT89S52单片机作为CPU来进行总体控制,通过语音控制电路进行各种提示语音的播放,同时使用LCD电路进行汉字显示,实现了公共汽车的语音自动报站以及汉字提示的功能,实现了图文、语音一体化协调工作,减轻了司售人员的劳动强度,提高了车辆的服务质量。
在自动报站的基础上扩展了手动报站功能,确保了报站的准确性,为了体现更为人性化的设计,在系统中添加了温度、湿度的测量及显示,以及时间和日期的显示。
LCD液晶显示已经是人机界面的关键技术。
同传统的LED显示屏不同的是,它可以存储大量的文字信息,通过内置微处理器控制文字、字体的显示方式,定时显示功能等。
摆脱传统电子屏"线"的束缚。
ISD2560语音系列芯片是美国ISD公司推出的产品,具有多次重复录放,存储时间长,使用时不需扩充存储器,所需外围电路简单等特点。
该系统是以C语言来进行软件设计,指令的执行速度快,节省存储空间。
为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。
关键词:
AT89S52单片机;LCD显示;ISD2560;传感器
ABSTRACT
Thisarticleintroducesanewmethodtodesignthebus-stop-reportingsystem.Itprovidesanewscheme,whichisbasedonMCUAT89S52,tocontroltheISD2560ChipandthedisplayoftheLCD.Itbringstheaudioandvideointolinetoworkcoordinately,itscharacteristhatitcandisplaythestopwhichitreachesatthesametimewiththereporter,soitcanrelievethedriverandtheticketseller,improvetheservice.
Onthebasisofautomaticbus-stop-reportingfunction,thesystemexpandsmanualfunction.itcanbeensuretheaccuracyofreporting.intheinterestofreflectamorehumanizeddesign,thesystemaddedtothemeasurementsoftemperatureandhumidity,andclockdisplay.
TheLCDmanifestationhasbeenthekeytechniqueoftheman-machineinterface.ComparedwiththetraditionalLEDlattice,itcanmemoryagreatdealofwordmessage.withtheinsideMCU,itcontrolsthewords、thedisplayofthewordsandthefunctionofregulardisplay.LCDhasbrokenthroughtheshacklesoftraditionalLEDscreen.
ISD4004isaphoneticchipproducedbyISDcompanyofAmerica.Ithasmanyadvantagesincludingrecordingandplayingformanytimes,usingwithoutexpansionofthestorage.Theassistantcircuitthatthechipneedsissimpleandthetimethatthechipcanstoreislong.
ThissystemisdesignedthroughtheClanguage,itsintroductioncanbecarriedoutquickly,soitcansaveitsmemory.Inordertoexpandandchange,thedesignofthesoftwareexploresthemodularizingstructure,makingthelogicrelationofprogramdesignmoreconciseandthehardwarecoordinatelyworkunderthecontrolofthesoftware.
KeyWords:
MCUAT89S52;LCDDisplay;ISD2560;Sensor
目录
1引言1
1.1课题研究背景及意义1
1.2方案论证与比较1
1.3主要技术指标2
2系统硬件设计3
2.1系统硬件组成3
2.2单片机最小系统3
2.3温/湿度测量模块6
2.3.1传感器的选择6
2.3.2测量参数6
2.3.3接口原理分析6
2.3.4硬件连接电路图8
2.3.5硬件功能实现8
2.4汽车行驶里程测量模块9
2.4.1A44E传感器内部结构及其工作特性9
2.4.2里程计算单元的设计9
2.4.3硬件连接电路图10
2.5语音报站模块10
2.5.1ISD2560语音芯片简介10
2.5.2工作原理分析11
2.5.3操作模式12
2.5.4引脚功能13
2.5.5硬件电路图14
2.5.6硬件功能实现15
2.6时钟显示模块15
2.6.1管脚描述15
2.6.2PCF8563T时钟芯片工作原理分析15
2.6.3硬件连接电路图16
2.7按键模块16
2.8液晶显示模块17
2.8.1原理分析17
2.8.2硬件连接电路图18
2.8.3控制指令19
结论21
3参考文献22
附录1:
系统硬件电路图23
附录2:
PCB印制板图24
附录3:
软件流程图25
附录4:
程序28
致谢31
1引言
随着科学技术的日益发展和进步,无人售票公交车在街头多起来了,语音报站器也被广泛使用,这在相当大的程度上免除了乘务人员沿途报站的麻烦,给许多不熟悉公交线路的乘客带来了方便。
公共汽车行驶在现代文明程度高的市区,它是一道流动的风景线,因而对整车外形乃至色彩都有更高的要求。
作为公共汽车还要求有醒目和减少乘务人员劳动强度的电子报站器、电子显示路牌、无人售票装置、前后电视监视系统等新技术的采用也将越来越普及。
公交车报站器在公交事业中占有举足轻重的地位,它直接影响到公交车的服务质量。
1.1课题研究背景及意义
公共汽车为外出的人们提供了方便快捷的服务,即使在私家车越来越多的今天,公交车仍然是人们出行的首选,因为公交车具有方便、快捷、车票便宜等优点,而公共汽车的报站直接影响服务的质量。
目前我国大部分城市采用手动电子报站和人工报站的方式,而它们都离不开司务人员,加大司乘人员的工作强度。
手动电子报站一般由司机或者乘务员控制,经常出现错报,误报的情况,另外,有些公交车司机到站后并不报站,给不熟悉行车路线的乘客带来了诸多不便。
因此手动电子报站和人工报站的方式在很多大城市已经被淘汰。
近年来,随着科学技术的日益发展和进步,微型计算机技术已经在许多领域得到了广泛的应用。
在声学领域,微机技术与各种语音芯片相结合,即可完成语音的合成技术,使得汽车自动报站器的实现成为可能,从而为市民提供了更加人性化的服务。
鉴于传统公交车报站系统的不足之处,结合公交车辆的使用特点及实际营运环境,设计了一种由单片机控制的公交车自动报站系统。
公交车自动报站器的设计主要是为了弥补改变传统语音报站器必须有司机操控才能工作的落后方式,进站、出站自动播报站名及服务用语,为市民提供更人性化,更完善的服务。
1.2方案论证与比较
常用的公交车自动报站器主要有两种:
一种是利用GPS全球卫星定位系统的公交车报站系统,另一种是在站牌上安装信号发射装置,然后在公交车上安装信号接收装置,供车辆到站时别。
前一种报站器比较先进,目前在美国部分城市投入使用,国内也有此类产品的研制开发,其功能强大,系统稳定,但其投资昂贵,对中小城市的公交公司来说,只会增加其负担,更为重要的是,它需要对原有的站牌进行改造,程序烦琐。
后一种方式利用车辆上的信号接收装置接收来自站牌发出的信号,从而判断什么时候开始报站的,但此系统在实际应用中,可以说是效果很差,站牌上电力的供应、发射装置的稳定性、车辆上接收器灵敏度的不一致性等干扰等情况都严重影响了车辆准确的报站。
通过上述说明,我们可以看出上述两种方案都存在有一定的缺陷。
目前我国部分城市采用手动电子报站和人工报站的方式,而它们都离不开司务人员,加大司乘人员的工作强度。
手动电子报站一般由司机或者乘务员控制,经常出现错报,误报的情况。
基于上述情况的不足,结合公交车辆的使用特点及实际营运环境,准备以单片机和语音芯片为核心,来制作公交自动报站器。
此课题的关键技术是对车轮转轴的转角的脉冲进行计数,将计数值与预置值对比,即可确定报站时刻,达到准确自动的目的。
以AT89S52为CPU在中断处理程序中对外来脉冲计数,利用ISD2560输出语音。
另外在系统中扩展键盘,以防止公交车行驶路线发生变化以及出现一些异常情况时,可以通过键盘手动控制报站。
为了使设计更加的人性化,添加了时钟模块、温/湿度测量模块,对温/湿度和时钟进行显示。
1.3主要技术指标
1)自动报站功能:
当车辆到达某一停车站点时,系统自动报站,无需手动按键。
2)手动报站功能:
当公交车行驶路线发生变化以及出现一些异常情况时,可以通过键盘手动控制报站。
3)时钟显示功能:
时间、日期显示,并且可以对时间及其日期进行调整。
4)车厢内温度、湿度显示。
温度测量范围:
-40~+50℃
温度测量精度:
±0.5℃
湿度测量范围:
0~95%RH
湿度测量精度:
±5%RH
响应时间:
<6s
功耗:
<3µW
2系统硬件设计
2.1系统硬件组成
系统硬件可分为七部分:
单片机最小系统、液晶显示模块、键盘模块、温/湿度测量模块、时钟模块、语音模块、霍尔测距模块。
其方框图如图2-1所示:
图2-1系统硬件组成方框图
2.2单片机最小系统
单片机最小系统,或者称为最小应用系统,是使用最少的元件组成的单片机可以工作的系统。
对51系列单片机来说,最小系统包括:
单片机、晶振电路、复位电路。
其连接电路如图2-2所示。
图2-2单片机最小系统
AT89S52是单片机系统的主控芯片,它是整个控制系统的处理单元,AT89S52是一种带8K字节可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S52是一种高效微控制器,为很多控制系统提供了一种灵活性高且价廉的方案。
AT89S52单片机的管脚说明如下:
VCC:
电源
GND:
地
P0口:
P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节,在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输
入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
引脚第二功能详见表2-1。
表2-1 P1引脚的第二功能
引脚号
第二功能
P1.0
T2(定时器/计数器T2的外部计数输入),时钟输出
P1.1
T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
P1.5
MOSI(在系统编程用)
P1.6
MISO(在系统编程用)
P1.7
SCK(在系统编程用)
P2口:
P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。
对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。
在这种应用中,P2口使用很强的内部上拉发送1。
在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也可接收高8位地址字节和一些控制信号。
P3口:
P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。
对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
P3口亦作为AT89S52特殊功能(第二功能)使用,如表2-2所示。
在flash编程和校验时,P3口也接收一些控制信号。
表2-2 P3引脚的第二功能
引脚号
第二功能
P3.0
RXD(串行输入)
P3.1
TXD(串行输出)
P3.2
INT0(外部中断0)
P3.3
INT0(外部中断0)
P3.4
T0(定时器0外部输入)
P3.5
T1(定时器1外部输入)
P3.6
WR(外部数据存储器写选通)
P3.7
RD(外部数据存储器写选通)
RST:
复位输入。
晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。
看门狗计时完成后,RST脚输出96个晶振周期的高电平。
特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。
DISRTO默认状态下,复位高电平有效。
ALE/PROG:
地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。
在flash编程时,此引脚(PROG)也用作编程输入脉冲。
在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。
然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。
如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。
这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。
否则,ALE将被微弱拉高。
这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
PSEN:
外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。
当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。
EA/VPP:
访问外部程序存储器控制信号。
为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。
为了执行内部程序指令,EA应该接VCC。
在flash编程期间,EA也接收12伏VPP电压。
XTAL1:
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:
振荡器反相放大器的输出端。
2.3温/湿度测量模块
2.3.1传感器的选择
在设计方案确定之前,对市场上现有的一些温度传感器、湿度传感器进行了比较,通常用的传感器只能进行单一的测量,比如,只能对温度进行测量或者只能对湿度进行测量,而且其外围连接电路相对复杂,抗干扰能力较差,因此都不适合本方案,经过多次的筛选,最终确定使用瑞士盛世瑞恩传感器公司生产的SHT10传感器。
它是一款高度集成的温湿度传感器芯片,提供全量程标定的数字输出。
采用专利的CMOS技术,具有极高的可靠性与卓越的长期稳定性。
传感器包括一个电容性聚合体湿度敏感元件和一个用能隙材料制成的温度敏感元件,这两个敏感元件与一个14位的A/D转换器以及一个串行接口电路设计在同一个芯片上面。
该传感器品质卓越、响应超快、抗干扰能力强、具有极高的性价比。
每个传感器芯片都在极为精确的恒温室中进行标定,以镜面冷凝式露点仪为参照。
通过标定得到的校准系数以程序形式储存在芯片本身的OTP内存中。
通过两线制的串行接口与内部的电压调整,使外围系统集成变得快速而简单。
微小体积、极低功耗等优点使其成为各类应用中的首选。
2.3.2测量参数
1)湿度测量范围:
0%RH~100%RH2)湿度测量范围:
-40℃~+123.8℃
3)温度测量精度:
±0.5℃4)湿度测量精度:
±4.5%RH
5)响应时间:
<4s6)低功耗:
(typ.30µW)
2.3.3接口原理分析
1)电源引脚(VDD,GND)
SHT10的供电电压为2.4~5.5V。
传感器上电后,要等待11m来完成“休眠”状态。
在此期间无需发送任何指令。
电源引脚(VDD,GND)之间可增加一个100nF的滤波电容。
2)串行数据(DATA)
DATA三态门用于数据的读取。
DATA在SCK时钟下降沿之后改变状态,并仅在SCK时钟上升沿有效。
数据传输期间,在SCK时钟高电平时,DATA必须保持稳定。
为避免信号冲突,微处理器应驱动DATA在低电平。
需要一个外部的上拉电阻(例如:
10kΩ)将信号提拉至高电平。
3)串行时钟输入(SCK)
SCK用于微处理器与SHT10之间的通讯同步。
由于接口包含了完全静态逻辑,因而不存在最小SCK频率。
4)发送命令
在程序开始,用一组“启动传输”时序表示数据传输的初始化。
它包括:
当SCK时钟高电平时DATA翻转为低电平,紧接着SCK变为低电平,随后是在SCK时钟高电平时DATA翻转为高电平。
后续命令包含三个地址位(目前只支持“000”),和五个命令位。
在第8个SCK时钟的下降沿之后,将DATA下拉为低电平(ACK位)。
在第9个SCK时钟的下降沿之后,释放DATA(恢复高电平)。
如图2-3所示。
图2-3启动传输时序
5)SHT10命令集
表2-3 SHT10命令集
命令
代码
预留
0000X
温度测量
00011
湿度测量
00101
读状态寄存器
00111
写状态寄存器
00110
预留
0101X—1110X
软复位,复位接口、清空状态寄存器,即
空为默认值,下一次命令前等待至少11ms
11110
6)测量时序(RH和T)
发布一组测量命令(‘00000101’表示相对湿度RH,‘00000011’表示温度T)后,控制器要等待测量结束。
这个过程需要大约11/55/210ms,分别对应8/12/14bit测量。
确切的时间随内部晶振速度最多有±15%变化。
通过下拉DATA至低电平,表示测量的结束。
控制器在触发SCK时钟前,必须等待这个“数据备妥”信号。
接着传输2个字节的测量数据和1个字节的CRC奇偶校验。
uC需要通过下拉DATA为低电平,以确认每个字节。
所有的数据从MSB开始,右值有效(例如:
对于12bit数据,从第5个SCK时钟起算作MSB;而对于8bit数据,首字节则无意义)。
用CRC数据的确认位,表明通讯结束。
如果不使用CRC-8校验,控制器可以在测量值LSB后,通过保持确认位ACK高电平,来中止通讯。
在测量和通讯结束后,自动转入休眠模式。
7)通讯复位时序
如果与SHT10通讯中断,可以利用下列信号时序复位串口:
当DATA保持高电平时,触发SCK时钟9次或更多。
在下一次指令前,发送一个“传输启动”时序。
这些时序只复位串口,状态寄存器内容仍然保留。
如图2-4所示。
图2-4通讯复位时序
8)CRC-8校验
数字信号的整个传输过程由8bit校验来确保。
任何错误数据将被检测到并清除。
2.3.4硬件连接电路图
温湿度测量模块电路连接示意图如图2-5所示
图2-5SHT10传感器连接电路图
2.3.5硬件功能实现
电源接通后,传感器要有11ms的休眠等待时间,之后进行启动传输,SCK和DATA是串行接口,SCK端接收到单片机发送的时钟信号,同时启动采集数据的传输,当SCK为高电平时DATA反转为低电平,然后单片机通过指令代码(‘00000101’表示相对湿度RH,‘00000011’表示温度T)对温度和湿度数据进行提取,接着对相关的采集数据进行处理,生成测量值,并通过液晶进行显示。
这个过程需要大约11ms。
此时一组测量结束。
2.4汽车行驶里程测量模块
2.4.1A44E传感器内部结构及其工作特性
霍尔传感器是一种磁传感器。
用它们可以检测磁场及其变化,可在各种与磁场有关的场合中使用,霍尔器件是以霍尔效应为工作基础的,本设计中采用的A44E传感器属于开关型的霍尔器件,其工作电压范围比较宽(4.5~18V),其输出的信号符合TTL电平标准,可以直接接到单片机的IO端口上,而且其最高检测频率可达到1MHZ。
A44E集成霍耳开关由稳压器A、霍耳电势发生器(即硅霍耳片)B、差分放大器C、施密特触发器D和OC门输出E五个基本部分组成。
其内部结构及其工作特性如图2-6、2-7所示。
图2-6A44E传感器内部结构图2-7A44E传感器工作特性
2.4.2里程计算单元的设计
公交车各站示意图如图2-8所示
图2-8各站示意
公交车较一般车辆有个明显的特点,就是它行驶的路线固定,从起点到终点中途经过的站、路口是固定的。
因此,从起点到任一站的距离是相对不变的,任意两站之间的距离也是不变的。
里程计算是通过安装在车轮上的霍尔传感器A44E来采集脉冲的信号的,当A44E输入端输入电压VCC,经稳压器稳压后加在霍耳电势发生器的两端,根据霍耳效应原理,当霍耳片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍耳电势差HV输出,该HV信号经放大器放大后送至施密特