基于单片机的列车多功能显示系统的设计.docx
- 文档编号:10688860
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:72
- 大小:1.57MB
基于单片机的列车多功能显示系统的设计.docx
《基于单片机的列车多功能显示系统的设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的列车多功能显示系统的设计.docx(72页珍藏版)》请在冰点文库上搜索。
基于单片机的列车多功能显示系统的设计
摘要
随之现代技术的提高,列车显示系统的功能要求也越来愈高,过去的以人工传播列车信息的方式完全不能满足现时代旅客们对列车显示信息的需求度,现如今,列车显示系统必须保证其显示列车信息的实时性、准确性,还要保证一定的视觉美术效果。
本次设计的列车多功能显示系统可实现在LCD显示屏上显示出火车的车次、发车时间及下一站等信息,方便人们的旅游出行,乘客们可以一目了然地了解到车次的动态信息,以便可以及时乘车,它实现了游客旅行送往的准确性,避免造成很多不必要的麻烦。
本次设计是以AT89S52单片机为核心部件,通过温度传感器DS18B20测量温度,以DS1302时钟芯片提供准确时间,由12864液晶屏显示温度值、日期时间、火车车次、下一站的站名、发车时间,并具有晚点手动提示、进站发车前一分钟响铃提示,由按键来控制,凭借实物来验证列车显示系统效果。
关键词列车显示系统;单片机;液晶屏;温度传感器;定时模块
ABSTRACT
Withtheimprovementofmoderntechnology,trainthefunctionalrequirementofthedisplaysystemandthehigherthe,thepasttoartificiallytrainthemannerofinformationtransmissioncannotmeettheeraofthetrainpassengersshowinformationneedsdegrees,nowadays,traindisplaysystemmustensurethatthedisplayinformationofreal-time,trainaccuracy,italsoensuresthatcertainvisualarteffect.
ThedesignofMFDtrainsystemcanrealizeintheLCDscreenshowedonthetrainrunnumber,starttimeandthenextstationwaitforinformation,theconvenientforpeopletotourismtravel,thepassengerscanclearlyunderstandthetrainstodynamicinformation,sothatcanintimebybus,itrealizedthevisitorstotheaccuracyoftravel,avoidtocausealotofunnecessarytrouble.
ThedesignisbasedonthecorecomponentsforAT89S52SCM,throughthetemperaturesensorDS18B20measuringtemperaturetoDS1302clockchiptoprovideaccuratetime,by12864thedisplayontheLCDpaneltemperature,date,time,thetrainrunnumber,thenextstationofstops,starttime,andhasalatemanualtips,intooneminutebeforestartrangthebellhint,thebuttontocontrol,withrealtoverifythetraindisplaysystemeffect.
KeywordsTrainDisplaySystem;MCU;LCDScreen;TemperatureSensor;TimingModule
1绪论
1.1本设计的研究背景··························································1
1.2本设计的主要研究工作·····················································2
2方案选择及整体设计思路·························································3
2.1系统设计的基本步骤························································3
2.2列车多功能显示系统各模块的硬件选择··································4
2.2.1显示模块的硬件选择··············································4
2.2.2时钟模块的硬件选择··············································5
2.2.3温度采集模块的硬件选择········································5
2.2.4控制模块的硬件选择··············································5
2.2.5报警模块的硬件选择··············································5
3基于单片机列车显示系统硬件设计··············································7
3.1基于单片机列车显示系统电路主框图·····································7
3.2硬件模块设计······························································7
3.2.1显示模块设计························································7
3.2.2时钟模块设计·····················································11
3.2.3温度采集模块设计················································14
3.2.4控制模块设计·····················································16
3.2.5按键模块设计·····················································19
3.2.6报警模块设计·····················································20
4基于单片机列车显示系统软件设计·············································21
4.1主程序流程框图··························································21
4.2时钟模块软件设计························································22
4.3温度模块软件设计·························································23
4.4液晶显示模块软件设计··················································24
4.5按键模块软件设计························································25
5实物测试·········································································26
5.1实物总体显示·····························································26
5.2实物开机画面····························································26
5.3列车多功能信息显示画面················································27
5.4使用说明··································································27
6测试结果分析及总结····························································28
6.1设计课题的误差分析及调试·············································28
6.2设计总结··································································28
参考文献··············································································30
致谢··················································································31
附录···················································································32
附录一源程序·······························································32
附录二电路原理图·························································56
附录三PCB布线图·························································57
1绪论
1.1本设计的研究背景
现今社会,信息提示牌已经随处可见,各种信息都可以通过信息提示牌显示出来。
利用液晶来发布信息已成为一种非常广泛的传播方式了,特别是在发达的城市,液晶在晚上不仅起到照明的作用,而且对城市的美化也做出很大贡献。
一直以来,追求完美的视觉享受是我们桌面显示设备的目标,回顾近几年的科技发展历程,我们不难发现它都围绕着同一个主题“醒目、自然、舒适”,公共信息显示是衡量一个城市或者一个地区化应用水平是否高的重要标志,在未来公共信息将成为城市信息化发展中的一个重要组成部分,数字显示器就承担着公共信息显示的重任,因此在未来几年中,应用数字信息显示技术发展将是显示领域的一个看点。
走近机场、车站等公共场所,你一定会看到无数的显示器,它们将完全取代原来固定的广告牌,成为数字时代的新宠。
液晶显示屏已经深入人们生活,这种技术在各地火车汽车站的宣传牌上的应用显得尤为突出,众所周知,铁路运输具有经济、安全、准时、舒适、快捷等特点,社会对于铁路运输的需求量在逐年增大。
近几年来,随着国家交通基础建设投资的加大及铁路部门市场意识的加强,铁路新修线路增加、列车提速、车次增多,导致铁路客货运输信息的相应变化。
为了加强铁路运输信息建设,以及铁路部门更好地为旅客服务,让广大旅客能够及时有效地得到客、货运输信息,开发出全国铁路列车信息综合应用系统。
随着科技的日益发展,液晶显示屏得到了更为广泛应用,使用液晶屏显示火车信息也越来越被重视,液晶显示在国内外有着良好的发展前景。
各种商业信息都可以通过液晶显示屏来显示出,在各大商场的显示屏上都可以见到播放着图片和字样的宣传信息,可方便人们看到并了解到商家所宣传的活动信息。
同样道理,
在一般列车显示系统系统可提供多种查询方式以满足不同用户的需求,支持总计里程,总计时间,票价显示基于本系统数据库的可扩充性及在线更新功能,用户还可根据实际需要增加其他数据信息,并实时更新从而为用户提供更全面的火车时刻服务,以此给人们的旅游出行带来方便,使乘客们可以一目了然的了解到车次的动态信息,以便可以及时乘车,避免造成很多不必要的麻烦。
本次设计就是本着这个宗旨进行编写程序和实物仿真的。
1.2本设计的主要研究工作
设计一个基于单片机的列车多功能显示系统,该系统采用LCD能固定显示日期和时间,当前温度,滚动显示当前进站或将要进站列车的车次,起始和终点站名称,进站时间和开车时间,停靠站台。
要求各次列车开车时间前1分钟,特殊提示,并响铃;各次列车进站前1分钟,特殊提示,并响铃。
其具体内容如下:
⑴硬件电路设计:
蜂鸣报警电路、DS1302时钟电路、DS18B20温度采集电路、单片机及其外围电路等电路设计;
⑵列车显示系统的程序编写及调试;
⑶列车显示系统的实物仿真及检测。
2方案选择及整体设计思路
2.1系统设计的基本步骤
基于单片机的列车多功能显示系统设计与调试的主要步骤,整体设计思路流程图如图1所示。
图2.1整体设计思路流程
图1整体设计思路流程图
2.2列车多功能显示系统各模块的硬件选择
在进行初步整体思路设计之后,大致确定本次设计所包含的模块,主要为显示模块、时钟模块、温度采集模块、处理模块等,下面紧接着进行各模块的硬件选择。
2.2.1显示模块的硬件选择
显示器件主要有LED数码管和LCD。
LED数码管通过发光二极管芯片的适当连接(包括串联和并联)和适当的光学结构,构成发光显示器的发光段或发光点,基本的半导体数码管是由七个条状发光二极管芯片排列而成的,可实现0~9的显示。
但数码管显示内容单一,液晶则比较丰富;数码管一般就是一个7段的8字,当然多的有16段的中间米字型的,液晶可以显示各种内容;数码管是自发光的,液晶是靠背光的;数码管是LED发光的效果,液晶是分子偏转引起的暗影效果;数码管比液晶耗电;最为主要的,本次设计要求显示内容比较多,数码管远远不能满足要求。
然而,目前市面上有几种LCD,常见的有LCD1602、LCD12864、NOKIA3310等。
其中LCD1602是市面上比较廉价的一种LCD,采用的是HD44780控制器,属字符型的,可以显示常见的192个英文字母、数字、标点符号和日文片假名,用户也可以自定义显示符号,不过显示汉字有点牵强,效果不是很好,其连接方式:
可以采用8位数据线或4位数据线的方法,4位数据线占用更少的IO口,是一中比较理想的方法,如果不考虑背光控制,还需3根控制线。
而LCD12864采用ST7920控制器,内部自带的CGROM可用来存储英文字母、数字、常见标点符号以及8192个常用汉字,能显示汉字是其比较突出的优点,其连接方式:
可以采用8位数据线或4位数据线的并行接口模式,如果不考虑背光控制另外还需要3根控制线。
另外一种串行接口方式则占用更少的微控制器IO引脚,只需要1根数据线和2根控制线,连线方式相当简单。
综上所述,决定选用LCD12864,LCD初步显示样板如图2所示。
图2LCD初步显示样板
2.2.2时钟模块的硬件选择
本次设计要求正确显示日期时间,如果采用单片机内部时钟振荡器,通过软件编程实现时间显示,那么由于时钟模块内部时钟一般都是阻容振荡器,稳定度比较差,内部的晶振工作起来误差比较大,本次列车显示系统对于时间显示要求是要有比较精确的时钟频率,所以采取外接时钟芯片。
目前市面上常见实时时钟芯片有许多,比如DS1302实时时钟芯片,三线接口,带涓流充电;DS1307实时时钟芯片,I2C接口;DS1337实时时钟芯片,I2C接口,带两个日历闹钟;PCF8563实时时钟芯片,I2C接口,带中断输出,是市面上最流行、性价比最高的串行RTC;PCF8583实时时钟芯片,I2C接口,带中断输出,内置的32.768KHz振荡器,256个字节RAM,但性价比较差;SD2068A是一种具有标准IIC接口的实时时钟芯片,CPU可使用该接口通过5位地址寻址来读写片内32字节寄存器的数据(包括时间寄存器、报警寄存器、控制寄存器、通用SRAM寄存器),SD2068A内置时钟精度数字调整功能,可以在很宽的范围内校正时钟的偏差,并通过外置的温度传感器可设定适应温度变化的调整值,实现在宽温范围内高精度的计时功能。
相比之下,选择了DS1302时钟芯片。
2.2.3温度采集模块的硬件选择
同样,本次设计要求正确显示日期时间,只能外接温度传感器,目前与单片机搭配的主流温度传感器是AD590和DS18B20,两者各有优劣,AD590的特点是:
需要模拟转数字电路,成本高,精确度低,测温点数量少,电路繁多,对线阻有要求,相比之下DS18B20只需要一个元件,成本低,精确度高,单总线,可同时连接很多温点,电路简单,信号线距离远,但DS18B20的温度范围只能在-55℃到+125℃之间。
综上所述,决定采用DS18B20。
2.2.4控制模块的硬件选择
在控制模块上,主要就是在AT89C51和AT89S52两者之间选择,对比之后,发现AT89S52是AT89C51的增强型,S52比C51,定时器多一个T2,RAM多128B,ROM多4K,中断多2个,多一个看门狗,在掉电、数据指针等方面还有一些改进。
S52的最高外接晶振可以达到33MHz,C51大概只有24MHz而且现在市面上,C51都差不多淘汰了,价格两者又接近,鉴于这次毕业设计要求显示内容较多,权衡比价之后,决定采用AT89S52。
2.2.5报警模块的硬件选择
报警模块最完美的无非就是采用人声语音芯片报警,但是本次设计报警作用只是为了简单地提示旅客们列车快进站或快发车了,没有其他复杂的报警提示要求,而且语音芯片价格较贵,所以本设计就采用蜂鸣器报警。
目前市面上主流蜂鸣器有压电式蜂鸣器和电磁式蜂鸣器,其中压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成,有的压电式蜂鸣器外壳上还装有发光二极管。
它的多谐振荡器由晶体管或集成电路构成。
当接通电源后(1.5至15V直流工作电压),多谐振荡器起振,输出1.5至2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声,而电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成,接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。
振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。
本次设计采用的是压电式蜂鸣器。
3基于单片机的列车显示系统电路硬件设计
3.1基于单片机列车显示系统电路主框图
列车显示系统主要由供电电源电路、蜂鸣报警电路、DS1302时钟电路、DS18B20温度采集电路、单片机及其外围电路、(键盘电路、12864液晶显示电路)等电路模块组成。
列车多功能显示系统主框图如图3所示。
图3列车多功能显示系统主框图
3.2硬件模块设计
本次设计硬件模块主要为显示模块、时钟模块、温度采集模块、数据处理模块、控制模块,还有下载口模块、报警电路模块等。
总原理图见附录二,下面是各主要模块的详细介绍。
3.2.1显示模块介绍
显示模块主要通过LCD来表达,在LCD液晶显示屏上,横向128个点,竖向64个点,根据汉字在LCD液晶屏中的坐标位置,使各行所显示的位置一致,并加入延时可实现其依次显示。
其汉字字符显示坐标如表1所示。
此模块可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能。
提供三种控制接口,分别是8位微处理器接口,4位微处理器接口及串行接口(OCMJ4X16A/B无串行接口),内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块,利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。
低电压低功耗是其又一显著特点,由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
所有的功能,包含显示RAM,字型产生器,都包含在一个芯片里面,只要一个最小的微处理系统,就可以方便操作模块。
内置2M-位中文字型ROM(CGROM)总共提供8192个中文字型(16x16点阵),16K位半宽字型ROM(HCGROM)总共提供128个符号字型(16x8点阵),64x16位字型产生RAM(CGRAM),另外绘图显示画面提供一个64x256点的绘图区域(GDRAM),可以和文字画面混和显示。
提供多功能指令:
画面清除(Displayclear)、光标归位(Returnhome)、显示打开/关闭(Displayon/off)、光标显示/隐藏(Cursoron/off)、显示字符闪烁(Displaycharacterblink)、光标移位(Cursorshift)、显示移位(Displayshift)、垂直画面卷动(Verticallinescroll)、反白显示(By_linereversedisplay)、待命模式(Standbymode),无需片选信号,简化软件设计,其工作温度在0℃--+55℃,存储温度在-20℃--+60℃.其相应外形尺寸及引脚说明如图4所示。
表1汉字字符显示坐标表
Line1Line2Line3Line4
81H91H89H99H
82H92H8AH9AH
83H93H8BH9BH
84H94H8CH9CH
85H95H8DH9DH
86H96H8EH9EH
87H97H8FH9FH
图4液晶屏外形尺寸图
12864液晶显示屏引脚说明如表2所示。
表212864液晶显示屏引脚说明
引脚号引脚名称方向功能说明
1VSS—模块的电源地
2VDD—模块的电源正端
3V0—LCD驱动电压输入端
4RSH/L并行的指令/数据选择信号;串行片选信号
5R/WH/L并行的读写选择信号;串行的数据口
6EH/L并行的使能信号;串行的数据口
7DB0H/L数据0
8DB1H/L数据1
9DB2H/L数据2
10DB3H/L数据3
11DB4H/L数据4
12DB5H/L数据5
13DB6H/L数据6
14DB7H/L数据7
15PSBH/L并/串行接口选择;H-并行;L-串行
16NC—空脚
17/RETH/L复位低电平有效
18NC—空脚
19LED_A—背光源正极
20LED_B—背光源负极
其忙标志,即BF标志提供内部工作情况.BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据.BF=0时,模块为准备状态,随时可接受外部指令和数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 列车 多功能 显示 系统 设计