公交车自动报站系统的硬件设计原理.docx
- 文档编号:28785082
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:37
- 大小:289.81KB
公交车自动报站系统的硬件设计原理.docx
《公交车自动报站系统的硬件设计原理.docx》由会员分享,可在线阅读,更多相关《公交车自动报站系统的硬件设计原理.docx(37页珍藏版)》请在冰豆网上搜索。
公交车自动报站系统的硬件设计原理
公交车自动报站系统的硬件设计原理
摘要
本文介绍了一种的公交车自动报站系统的硬件设计原理,提供了一种以AT89C52单片机为核心,控制大屏幕LED点阵显示的硬件设计方案。
系统主要通过AT89C52单片机做为系统CPU,处理包括键盘输入和LED显示屏显示站名的所有信号处理。
系统扫描到有键按下,判键确定后给CPU一个脉冲信号,然后CPU处理信号,确定所到站的站名,再通过扫描驱动从LED显示屏上显示出所到站的站名。
达到半自动报站的作用。
整个系统硬件设计包括键盘电路、复位电路、显示驱动电路、显示电路、内存扩展电路模块.其中显示模块是本系统的重点。
本系统很大程度上提高公交车报站的准确性,可靠性.提高了公交系统的服务质量.促进城市经济发展和交通变化的和谐发展。
关键词:
AT89C52单片机;LED点阵;AT24C64;自动报站;
The Design of Automatic Bus Station-Informer
Thisarticleintroducesanewmethdetodesignthebus—stopreportingsystem.Itprovidesanewscheme,whichisbasedAT89C52microcomputer,tocontrolthedisplayoftheLEDlattice.ThesystemmainlythroughAT89C52asthecoresystem,controlskeyboard'sinputandLED’sdisplay。
Theentiresystemthroughmanualoperationafterreceivingthekeystoasystemscanbuttonpress,Keysubcontractorsthatdeterminedasignaltothemicrocontroller,thenthemicro—processingofsignalsfromtheaccruedvalueaddedtodeterminethereliabilityofstationnames。
DrivingthroughthescanningfromtheLEDdisplaybythearrivalstationnames。
Reachedsemi-automaticstationsrole.Theentiresystemincludessomemodules;forexample,thekeysubcontractors,thesignalinputmicrocontroller,signalprocessing,LEDDriversandLEDdisplayprogram.LEDdisplayisthefocusofthesystem.文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络
Thesystemcangreatlyenhancebusstationsaccuracy,andimprovethequalityofserviceofthetransportationsystem.Itwillpromotethecity’seconomicdevelopmentandtheharmoniousdevelopmentoftraffic。
Keywords:
AT89C52chipmicrocomputer;LEDlattice;reportingsystem;
AT24C64;
第一章
随着科技的不断进步,人们对事物的认知程度已经得到了广泛的提升,在实际生活中,大家都希望能使用简便、智能、人性化的产品。
在公交车自动报站方面,由于我国现状,人口众多,口音复杂,对于乘客而言,原来的人工报站存在着很多的问题.为了跟随科技发展,提高公交系统的服务质量,提升城市形象。
开发一种能够节省人力和物力,而又能让乘客方便快捷的知道站台报站器就成为一种必然。
因此本次毕业设计中提出一个以AT89C52单片机为核心,用LED显示屏显示站名的即经济、高效、直观的公交车到站自动报站系统.
1。
1绪论
随着国民经济的快速发展,城市建设规模不断扩大,大城市人口高度集中并大幅度增长,同时汽车保有量急剧上升,交通需求迅速扩大,而道路交通基础设施建设的发展则相对滞后。
城市交通需求与供给之间的矛盾越来越突出,城市“乘车难”、“行车难"的局面在加剧,交通阻塞呈现出点到线、由线到面的扩展趋势,交通拥挤、交通延误、交通阻塞以及由此引起的噪音、废气污染严重影响着居民的正常的生活以及社会经济的持续、健康发展。
近年来,我国城市交通的现状已引起了政府、公众、社会各界的广泛关注,
有关专家学者和交通工程师们在吸取各国城市交通发展经验的基础上,找到了一条解决我国城市交通发展问题的有效途径,即优先发展城市公共交通,以公共交通为杠杆降低城市交通需求总量,实现道路交通基础设施发展与交通需求增长的均衡.
实施“公交优先”是解决我国城市交通发展问题的有效途径,也是我国目前城市交通发展的基本政策。
公交智能化是智能交通的一个重要的子领域,同时也是落实“公交优先”,使城市交通与社会经济和谐发展的重要组成部分。
实施公交智能化,必须提高公交服务质量,而到站后的准确、及时报站就是一个方面,本设计基于AT89C52单片机、LED点阵、AT24C64、制作的公交车自动报站系统就能解决这方面的问题.
从而,达到公共形象的提升。
当前国内主要大城市的公交车大都采用人工报站,即每到一站由司机或者乘务员来进行报站。
但有时由于受到各种因素如雨雪天路滑、车上拥挤、乘务员心情的变化等的影响,会出现报错站,漏报站的情况,给乘客特别是不熟悉本市地形的乘客带来了不必要的麻烦,从而影响到了一个城市的窗口形象工程建设。
于是开发研制自动报站系统成为必然.
1。
2研究前景及国内外的现有水平
随着公交优先战略的确定,公交在缓解城市交通拥堵方面的作用将越来越重
要,与这种要求相比,我国大城市公共交通还有很大差距,主要表现为:
为社会提供服务信息的水平低,只能是以经验为主的被动、滞后的实施服务,仍以人工作业为主。
上述问题显然不利于公交对乘客的吸引,也是导致公交运营组织模式落后、调度方式原始陈旧、企业管理效率不高的重要原因.因此,如何提高公交系统的服务质量,是现代公交行业亟待解决的问题。
我国发展智能运输的基础较差,因此理论研究虽在进行,但相应技术却得不到推广。
在实际生活中得不到应用,达不到广泛服务社会的目的。
所以发展一种自动报站系统,提高公交服务质量就成为民用科技研究的一个项目。
目前在国际上已经实现了DPS定位车载智能系统,在国内的几个大城市也都有使用,实现了公交系统的全面监控、调度.公交车自动报站系统的研究也达到了无线联络,全自动报站的水平.但其一般其经济投入较高。
结合我国现有的公交系统现状,半自动化报站系统还有很大的应用空间。
适应用于一些中小城市。
1.3方案论述与方案确定
本课题是一个软硬件紧密结合的注重实际应用的系统.在课题研究的期间,我主要研究系统硬件设计,因此,在详细讲述之前,先介绍“公共汽车自动报站”的设计思想及整体硬件方案的设计.
实现公共汽车自动报站是是公交智能化的一份子,是促进智能交通的一个不可缺少的步骤,同时也是落实“公交优先"使城市交通与社会经济和谐发展的重要组成部分.
1.3.1课题任务及设计要求
1)课题任务
以单片机为核心,制作一个公交车自动报站系统。
其必要的功能为:
1:
具有2个16*16的点阵汉字显示功能。
2:
提示信息具有方便的可修改性.
2)课题设计要求
1硬件设计:
A:
汉字的显示(点阵),汉字显示模块采用(16*32)。
B:
串口通信:
设计PC机与单片机之间的通信电路,用于把站名信息发送到单片机内部.
C:
存储器的扩展:
采用大容量长寿命非易失存储器存储数据信息,可永久可靠的保存各项重要数据。
本设计才用ATMEL公司的AT24C64串行EEPROM存储器用中断来控制报站。
D:
用按键来控制报站的上下行和站名顺序。
2软件设计:
A:
时钟的显示
B:
汉字的显示程序
C:
串口的通信
D:
存储器的扩展
E:
各种程序的初始化
1。
3。
2方案的论述与确定
报站器以单片机AT89C52为CPU来控制LED点阵显示屏显示所到站的站名,提高报站的准确性,高效性和直观性.
由于线路不同,报站系统中存储的站名需要通过更改来适用于各种线路,以此提高系统的通用性.所以我们需要设计通信模块来实现PC机和单片机之间的通信。
并能通过单片机与PC机之间的通信来实现报站名的更改,使其成为多功能开发型报站器。
而由于考虑到我的自身设计水平有限,本次设计的系统没有设计语音模块模仿人声报站而是设计了按键模块控制LED显示屏显示站名,达到报站的目的。
在内存方面,由于AT89C52的数据存储为256字节,由于站名的信息量比较大,片内数据存储空间有限,所以需要扩展一个片外数据存储,来满足要求,这就要求系统应设置内存扩展模块。
LED显示屏考虑系统只是一个演示作用,所以本设计采用了8块8*8的LED显示模块组成的16*32的LED显示屏,可以显示两个汉字,可以达到演示要求.
综上系统的框图如图1—1系统框图;
图1—1系统框图
A方案的论述
1。
方案A的设计框图如1-2:
图1—2A方案设计框图
本系统硬件可分为PC机,AT89C52单片机,数据存储器,显示模块,串行通讯模块和键盘组成。
硬件电路框图如图1-1方案一设计框图。
2。
方案A的设计方法:
基于AT89C52而设计的公交车自动报站系统,为了能够方便的报N*M键盘来控制报站,按1—N键来进行报站,只要按其中的一个按键,就会去处理对应的站台信息。
并且设计一些功能键,例如:
方向键,结束键等。
虽然单片机本身的I/O口能实现简单的数据I/O操作。
但其功能毕竟有限,除了结构和功能的原因之外,还有数量上的原因,单片机本身的I/O口不够用,所以要扩展I/O口.我们使用可编程接口芯片实现I/O口的扩展,常用的接口芯片是8255.AT89C52的数据存储器为256字节,程序存储器为8K,因为本设计需要显示的汉字信息量大,所以得扩展数据存储器,用6264来扩展存储器.以地址锁存器74LS373锁存的P0口低八位地址和P2口低五位作为访问8K片外数据存储器6264的地址线,对6264进行数据的读写。
而对于公交车要随时修改站台的信息,我们可以通过一个电平和逻辑关系转换的器件来使得单片机和PC机进行通信,EIA—RS-232C是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同.因此,,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS—232C与TTL电路之间进行电平和逻辑关系的变换。
实现这种变换的方法可用分立元件,也可用集成电路芯片.目前较为广泛地使用集成电路转换器件,这里用MAX232。
为了显示汉字信息。
可以用LED点阵显示屏来显示汉字信息。
用74LS244来驱动LED点阵的列,用单片机的I/O口来驱动LED点阵的行。
因为74LS244的驱动能力比较强,所以不用加别的驱动电路.文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络
3。
方案A的优缺点:
方案一采用了常规的方法利用89C52的P0口,P2口提供数据线,用P3口的部分管脚提供控制线。
虽然能达到扩充系统功能的目的,但也需要增加74LS373等接口芯片,接口连线较多,不利于小型化,同时由于系统扩展的需要,P0口,P2口及P3口的部分信号线不能再作为基本I/O口使用,及在扩充外围功能的同时,浪费了单片机的I/O口资源.像访问6264和键盘就使用了太多的I/O口.但方案一比较常用,程序设计简单。
B方案二的论述
1。
方案B的设计框图
本系统硬件可分为PC机,AT89C52单片机,EEPROM为AT24C64的存储模块,显示模块,串行通讯模块,CPU复位电路,外部振荡电路,按键组成。
硬件电路图如图1—3方案B设计框图所示:
图1—3方案B设计框图
2。
方案B的设计方法
基于AT89C52而设计的公交车自动报站系统,为了能够方便的报站和硬件设计的简单用两个外部中断来控制站台的”+”和“—“,通过记数来判断所到的站台,并且通过RESET来复位。
由于汉字信息的存储量大,而单片机内部RAM比较少,不够用,为了提高可靠性可用串行E2PROM,它是可在线电擦除和电写入的存储器,该存储器具有体积小,接口简单,数据保存可靠,可在线改写和功耗低等特点,在单片机系统中应用十分普遍。
在此,我们选用AT24C64,它是8K的串行EEPROM,是支持IIC总线数据传送协议的串行通信的片外存储CMOS,EEPROM。
而对于公交车要随时修改站台的信息,我们可以通过一个电平和逻辑关系转换的器件来使得单片机和PC机进行通信,EIA—RS—232C是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。
因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS—232C与TTL电路之间进行电平和逻辑关系的变换。
实现这种变换的方法可用分立元件,也可用集成电路芯片.目前较为广泛地使用集成电路转换器件,这里用MAX232。
为了显示汉字信息,可用LED点显示屏(16*32)来显示汉字,用晶体管来驱动。
个人收集整理,勿做商业用途个人收集整理,勿做商业用途
3。
方案B优缺点:
方案二采用了只占用两根普通口线串行输入输出片外数据存储器EEPROM—AT24C64,采用了IIC总线,地址和数据都是通过由普通口线模拟IIC总线串行口送出,大大节省了MCU宝贵的口线,不需要地址锁存器和8255有利于对系统升级和扩展,此外方案2器件较少,硬件设计简洁;此外,由于使用普通的口线来模拟IIC总线给程序设计带来一定的困难。
用晶体管驱动点阵也能达到比较好的效果.对于站台的报站,通过外部中断来实现更加方便,这样可以减少硬件和软件的设计。
通过以上的比较,我们选择方案2。
第二章系统硬件设计
硬件的设计主要围绕系统的功能完全实现,并且要保证整个系统在运行过程中的稳定性、安全性及生产的经济性。
2.1单片机的选择和外围电路的设计
因为公交车车自动报站系统设计需要较大的存储量,所以要选择一个数据和程序容量较大的单片机,这样就不用扩展数据和程序存储器。
在这里我们选用了ATMEL公司的AT89C52单片机作为本设计硬件电路的主控芯片,它是一个低电压,高性能CMOS8位单片机,片内8KBYTES的可反复擦写的只读程序存储器和256BYTES的随机存取数据存储器,器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准MCS-51指令系统,片内置有8位中央处理器和FLASH存储器单元,功能强大的AT89C52单片机可提供许多复杂系统控制应用场合.
1:
AT89C52有40个引脚,32个外部双向输入/输出端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。
其将通用的微处理器和FLASH存储器结合在一起,特别是可反复擦写的FLASH存储器可有效地降低开发成本。
2:
ALE/PROG端除输出地址锁存允许脉冲外,在编程期间还作为编程脉冲输入端,参与控制对FLASH存储器的读,写,加密,擦除等操作。
而EA/VPP端在寻址片内8KBFLASH程序存储器时,必须连到VCC,如果将此端连到GND端,将迫使单片机寻址外部0000H—1FFFH范围的程序存储器.如果加密位被编程了,AT89C52的CPU将对EA的状态进行采样并锁存,EA的状态不得与实际使用的内部或外部程序存储器的状态发生矛盾。
2。
1。
1外部晶振的选用
AT89C52的内部有一个用于构成振荡器的高增益反相放大器。
通过XTAL1,ATAL2外部接上一片作为反馈元件的晶体,与C1和C2构成了并联谐振电路,使其构成自激振荡器.电容的值具有微调的作用,我们取30PF。
具体的接法如图2—1外部晶振电路:
图2—1外部晶振电路
AT89C52的工作频率范围在0—24MHZ.我们选用的是12MHZ的晶振,振荡周期为1us机器周期为1us,所以这个晶振可以满足这个系统的要求.并且晶振不能离单片机太远,不然使用外部晶振进行软件调试时就会发现找不到信号.
2。
1。
2复位电路
复位有硬件和软件两种,复位的作用是使程序自动从0000H开始执行,因此我们只要在AT89C52单片机的RESET端加上一个高电平信号,并持续10ms以上即可,RESET端接有一个上电复位电路,它是由一个小的电解电容和一个接地的电阻组成的。
人工复位电路另外采用一个按钮来给RESET端加上高电平信号。
图2-2人工复位电路
我们采用放电型人工复位电路,如图2—2人工复位电路,上电时C通过R充电,维持宽度大于10ms的正脉冲,完成上复位功能。
C充电结束后,RESET端出现低电平CPU正常工作。
在此我们取了典型值R=10K,R1=1K,C=10uf.
上电复位实现的时间:
T=R*C
=10K*10UF
=100ms>=10ms
需要人工复位时,按下按钮K,C通过K和R1放电,RESET端电位上升到高电平,实现人工复位,K松开后C重新充电,充电结束后,CPU重新工作,R1是限流电阻,阻值不可以过大,否则不能起到复位作用。
2.2按键电路的设计
键盘实质上是一组按键开关的集合,控制CPU通过按键来识别特定的用户命令,从而转入相应的程序来执行用户命令。
键盘的软硬件的设计涉及下面几个方面的问题:
对于此设计来说我们要准确的显示我们所要对应的信息,每按下一次按键要显示所要显示的信息.这按键是主要用来报站的而设计的。
这样比键盘操作方便,也比较实惠。
按键电路采用中断模式。
当有按键按下时,系统产生中断,CPU响应中断后,开始计数,即查询键号,通过软件来实现该键号所对应键的功能键盘的大体设置为:
第一个键为报站控制键S1用来控制站台“+"例如:
第一站为东华站,按下S1时显示第二站:
火车站,其余的站台工作原理也一样.S2用来控制站台的“-”,第二站为火车站,在按下S2时这样就显示火车站。
电路如图2—3按键电路:
图2—3按键电路
2.2。
1判键及其接口电路设计
键的闭合与否反应在电压上就是呈现出高电平或低电平,如果高电平表示断开,那么低电平则表示闭合,通过电平的高低状态的检测可确认键按下与否。
为了确保CPU对一次按键动作只确认一次,并且防止干扰信号的影响,必
需加入消除电平抖动的措施,下图3。
3为按键抖动示意。
消除抖动通常有硬、软硬两种方法,硬件消除抖动可采取双稳态电路或滤波消抖电路;软件消抖是在第一次检测到有键按下时,执行一段延时程序再确认该键是否仍闭合,如果还是闭合状态则确认该键按下,从而消除抖动和干扰影响。
当按键较多时,我们多采用硬件件消抖法。
按键接口设计有两种方法,独立式按键和矩阵式键盘.独立式按键各键相独立,每个按键各接入一根输入线,只要检测输入线的电平就可以识别按键状态。
这种方法电路配置灵活,软件结构简单,但每个按键需占用一根输入口。
由于该设计方案IO资源浪费大。
故此方法只适用于按键少或其他控制功能很简单的场合。
矩阵键盘适用于按键数量较多的场合,它把键盘输入线分为行线和列线,按键位于列的交叉点上。
按键的识别需要软件分别扫描行线和列线,根据扫描的结果判具体按下的按键。
由于本设计中的按键只有三个,考虑系统可靠性和键盘设计的简单所以采用独立式按键。
图2—4按键闭合及断开时的电压。
图2—4按键闭合及断开前后的电压
2.2.2键盘的工作方式
键盘扫描只是CPU的工作内容之一,CPU在忙于各项工作时,如何处理键盘输入取决于键盘的工作方式,键盘工作方式有三种,编程扫描、定时扫描和中扫描.
在编程扫描中,CPU反复地扫描键盘,等待用户的输入命令,而执行键入命令或处理输入数据时,CPU不再相应输入要求,直到CPU返回重新扫描键盘为止。
时扫描工作方式利用单片机内部定时器产生定时中断,CPU相应定时器中断后对键盘进行扫描,在有键按下时识别出该键并执行相应功能程序.使用中断方式时要求在没有键按下时,不占用CPU处理时间,只有当有键按下时产生键盘中断,由于中断识别键并执行功能程序,这种方法使用最多。
2.3显示和驱动电路的设计
我们知道的用来显示的器件很多。
比如数码管、LCD、点阵式LED。
数码管只能显示数字,LCD可以显示汉字、符号、数字和图形。
虽然LCD的显示效果要比LED好,显示电路也比较简单(很大一部分已经集成化)。
但是它的价格比较高,也不容易采购.所以综合考虑生产成本,本系统采用点阵式LED显示。
它具有以下优点:
1价格比较便宜2容易扩展显示比较多的汉字3显示汉字效果好,广泛用于广告显示屏,交通屏幕.通常情况下,点阵式LED显示屏是由标准的LED显示模块组成的。
2。
3.1显示电路设计
HS1088BS点阵式LED显示模块是8行8列64个LED组成。
单块点阵式LED显示模块能够显示各种字母,数字和常用的符号.点阵式LED显示模块在8行8列的每一个交点上装有一个LED。
模块有共阳极和共阴极之分。
LED的正极接行引线,负极接列引线的称为共阳极LED显示模块,反之为共阴极LED显示模块。
由4个8*8的LED显示屏组成的16*16的LED汉字显示屏如图2—4,4个8*8的LED显示屏组成的16*16的LED显示屏,行引脚逐个连接而成。
图2—54个8*8的LED显示屏组成的16*16的LED显示屏
2.3.2显示驱动设计
单个LED器件的驱动:
从LED器件的发光原理可知,当向LED器件施加正向电压时,流过器件的正向电流使其发光,因此LED的驱动就是如何使它的PN结处于正偏置,而且为了控制它的发光程度,还要解决正向电流的调节问题,具体的驱动方法可以分为直流驱动和恒流驱动,脉冲驱动和扫描驱动,这里采用恒流驱动。
由于LED器件的正向特性比较陡,加上器件的分散性,使得在同样电源电压和同样的限流电阻的情况下,各器件的正向电流并不相同,引起发光强度的差异.如果能够对LED正向电流直接进行恒流驱动,只有恒流值相同,发光强度比较接近,我们知道晶体管的输出特性具有恒流性质,所以用晶体管驱动LED,单个LED驱动如图2—6单个LED驱动电路.
P2,P1输出的电流约为400UA左右,LED点阵的工作电流大约为20MA,工作电压大约为2V为了不使LED烧坏R最大约为6.75千欧。
在此选R=4。
7千欧.
图2—6单个LED驱动电路
本次设计中采用的是(16*32)的LED显示屏显示汉字,一次可以显示两
个汉字,由于站名的长度比显示屏长,所以必须实现移位的功能。
LED显示的三种方式:
1)占空比控制驱动:
减少驱动电路。
在需要进行灰度级控制显示的情况下要求随时调整占空比使LED达到响应的发光强度。
2)组合驱动:
按照行列进行驱动。
3)扫描驱动:
所谓脉冲驱动方式,就是利用人眼的视觉暂留效应,以脉冲的方式对LED器件进行供电,使之间歇性地点亮。
采用这种驱动方式需要对以下两个方面进行考虑:
脉冲电流的幅值和其重复颇率。
首先,脉冲电流幅值的选择,当脉冲驱动的平均值与直流驱动的电流值相等时,我们人眼的感觉是相同的,也就是说两者的发光强度相当。
扫描驱动
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 公交车 自动 报站 系统 硬件 设计 原理
![提示](https://static.bdocx.com/images/bang_tan.gif)