公交车报站系统设计

公交车报站系统设计[20200410135704]
摘 要
随着国民经济的腾飞,中国的城市人口飞速增长。对运输需求的增加导致了在城市地区的交通拥堵。因此,公共交通系统是一种解决交通拥堵问题的有效途径,但是需要实施低碳环保的绿色交通。要发展公共交通需要一个可以自动播报公交站台的语音系统。先进的系统有利于解决许多问题,提高运输服务质量。
本文介绍了基于STC89C52单片机的公交车自动报站系统,在本文中明确地描述了软件和硬件在系统中的应用。本报站系统的主要特点是采用STC89C52单片机为核心控制部件,以ISD4004语音芯片录音,以LCD12232为屏幕显示,独立按键K1和K2为输入设备,输出设备为扬声器。以此来设计为一个公交站台的显示系统。首先把语音信息记录在语音芯片内。在“播放”键被按下时,车站公告的声音响起同时屏幕上出到达现站台的信息。该系统具有稳定,简单性和可靠性的优势。这个功能齐全的系统模型很容易投入稳定的使用。
 *查看完整论文请 +Q: 3 5 1 9 1 6 0 7 2 
关键字:单片机语音播报液晶屏公交报站
Key Words: Microcontroller; Voice prompt; LCD ; Bus-stop 目录
1、绪论 1
1.1 课题背景 1
1.2课题研究目的及意义 1
1.3课题研究的主要内容 1
2、主要硬件的选择与介绍 3
2.1 STC89C52芯片的介绍 3
2.2 ISD4004芯片的介绍 6
2.2.1 ISD4004内部结构 6
2.2.2 ISD4004引脚描述 6
2.2.3 操作规则 8
2.3 显示模块的选择与介绍 11
2.4 功能要求 3
3、硬件电路的设计 15
3.1 系统整体硬件框图 15
3.2 电源电路 16
3.3 单片机最小系统 17
3.3.1 复位电路 17
3.3.2 晶振电路 18
3.4 下载电路 18
3.5 LCD1332显示电路 19
3.6 按键扫描电路 20
3.7 语音录放电路 21
4、系统软件设计 23
4.1程序流程图 23
4.2录音模块设计 24
4.3放音模块设计 24
4.4显示模块设计 25
4.5键盘扫描模块设计 26
5、调试中遇到的问题 29
6、总结与展望 29
参考文献 30
附录 31
整体原理图 31
程序清单 32
致 谢 42
1、绪论
1.1 课题背景
由于国民经济高度的可持续发展和各级政府对县域经济的关注,全国各地城镇的城市化是如火如荼,基础设施建设得到了突飞猛进的发展。在这一过程中,乘坐公共汽车出行逐渐取代以往落后的旅行方式,公交出行正成为城市和农村人口大多数的短途旅行的首选。近年来,城市公共交通事业的快速发展,使得以前播报站台的方式不能满足实际的需要,许多城市都在实施无人值守的站台播报方式。在城镇,公交车如何实现自动播报站台也缺乏关注。公共汽车出行给我们提供了便捷、经济、环保的出行方式。为了提高公交的服务质量,我们需要一个良好的公交报站系统。
1.2课题研究目的及意义
原先的手工公交报站的方式工作不仅对于播报员来说工作强度大而且对公交公司而言也需要付出极大的人力资源,不怎么经济。如果我们使用单片机,语音芯片和显示屏幕相结合的播报系统,可以更方便的为乘客提供更好的报站的体验,而且还可以节省公交公司的人力资源。
通过本课题的研究,我们得到了一个低成本的公共汽车站台的报站解决方案,同时提供乘客更好的服务质量,也方便了运输和客运业务。
1.3课题研究的主要内容
基于STC89C52芯片和ISD4004语音模块,LCD12232液晶屏开发与设计,设计的目标是设计一个单片机和语音控制芯片的系统互连,通过按键,系统可以播放相应的站台信息或公共服务提醒,还可以实现记录和重放的功能。这种设计的主要任务如下:
1、整体方案的设计
计划选择应以满足报站系统的功能要求,以确保公交车司机操作的简单性,同时也要反映报站系统的特点,本课题研究的公交车报站系统的设计是基于STC89C52单片机与ISD4004语音芯片,实现了公交车站台信息的播放录制及回放功能,同时利用LCD12232液晶屏显示公交站台的站名。
2、程序流程图及软件设计
要实现程序的功能,不可以盲目的直接下手,必须得有一个全面的了解后,以便画出流程图,然后一个个模块来实现其功能,最后合理的把模块构建在一起,构成一个完整的程序。本课题软件设计主要包括系统设计的初始化,延时子程序设计,录音和回放子程序的设计,LCD液晶显示的程序设计,中断程序的设计和主程序的设计。整个系统采用模块化结构设计优化程序是比较容易修改和调试的,系统软件的开发设计用C语言实现。
3、系统原理图及硬件调试
本课题设计进行硬件原理分析后,需要连接硬件实际操作,以测试是否正常工作。在protel99SE环境中画出硬件原理图并进行电气测试,检测没问题后再进行硬件系统调试,以确保系统的可靠性,硬件分模块分别进行调试和模拟。
2、主要硬件的选择与介绍
2.1 STC89C52芯片的介绍
由于在学校期间学过C语言程序设计、单片机原理和数字电路,综合考虑单片机的各部分资源和作为学生能够获得的资源,本课题选用了STC系列芯片完成。因为学校也提供了相应的操作平台,因此实际操作起来也比较方便,本课题选择STC系列芯片是比较合理的选择。
功能特性:STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O口线,看门狗定时器,2 个数据指针,3个16位定时器/计数器,1个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
主要性能:与MCS-51单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz~33Hz?、三级加密程序存储器?、32个可编程I/O口线?、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符[1]。
如图2-1所示:
图2-1 ST89C52芯片
管脚说明:
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号 。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/4245.html

好棒文