1、 本科 毕业 设计 (论文 ) (二零 届) 基于单片机的公交报站系统设计 所在学院 专业班级 电子信息工程 学生姓名 学号 指导教师 职称 完成日期 年 月 I 摘 要 随着科技的进步,技术的发展,人们越来越提倡智能化,简单化,用科技来改变原有的生活方式。作为一个城市的公交企业,它既 要代表政府体现当地城市的形象,又要尽一切力量减少政府投资,创造良好的社会效益和经济效益。而传统的公交运营系统的装备和管理模式较难达到这两者的完美结合。 为了改变这种状况, 本文利用单片机来设计一种适合在公交车上用的智能报站系统。采用 AT89C51 作为 CPU进行总体控制 ,根据键盘信息,对语音和液晶显示进行
2、控制 。由 语音芯片 ISD4003构成的语音电路 实现录音和回放, LCD进行汉字显示,从而实现公交车语音报站和液晶显示双重功能 。 由于该系统在工作中可降低司机的工作强度,可以提高车辆的运行安全,所以具 有广泛的适用性和推广性。 关键词: 公交报站 ,语音芯片 ISD4003,液晶显示 II Design of a bus-stop Reporting System Based on MCU Abstract With the development of science technology, people increasingly advocate the intelligence a
3、nd simplification. As a city bus companies, not it only represent city imagine , but also make every effort to reduce government investment and create a good social and economic benefits. Traditional bus system can not satisfy the need of the modernized system development. In order to change the sit
4、uation, This paper researched a kind of Deisgn method of intelligent bus_stop system. This design is mainly to use 89S51 microcontroller as CPU to carry out over all controls .Through the program reads characters into the LCD liquid circuit character prompt. As the system can reduce the driverswork
5、intensity and improve the safty of vehicles ,so it can be applied and spred. Keywords: bus-stop Reporting, AT89C51, voice chip ISD4003, LCD display III 目录 摘 要 . I Abstract . II 目录 . III 1 绪论 . 1 1.1课题来源及意义 . 1 1.2发展现状及趋势 . 1 1.3课题研究的主要内容 . 2 2方案 分析与总体设计 . 3 2.1方案对比 . 3 2.2方案总结 . 3 2.3方案总体设计 . 4 3公交报
6、站系统硬件设计 . 5 3.1主体控制( AT89C51) . 5 3.2语音模块 . 7 3.2.1语音芯片 ISD4003. 8 3.2.2音频小功率放大电路 LM386. 9 3.3 液晶显示模块 . 10 3.3.1 液晶 显示 -12864系列与 MCU的接口 . 11 3.3.2 12864系列内置硬件说明 . 11 3.4 时间显示模块 . 12 3.5 键控模块 . 14 4公交报站系统软件设计 . 15 4.1主程序流程图及程序 . 15 4.2键盘子程序模块流程图及程序 . 17 4.3语音子程序模块流程图及程序 . 18 4.4显示子程序模块流程图及程序 . 20 总结
7、. 24 参考文献 . 25 致 谢 . 错误 !未定义书签。 附录 . 26 附录图 1 电路原理图 . 26 附录图 2 PCB版图 . 27 附录图 3 实物图 . 27 基于单片机的公交报站系统设计 1 1 绪论 1.1 课题来源及意义 随着社会信息化的加快,人们的工作,生活和通讯,信息的关系日益紧密。信息化社会在改变人们生活方式与工作习惯的同时,也对传统的公交提出了挑战:人们对公交 的要求早已不只是简单的交通运输工具,更为关注的是一个安全,方便,舒适的智能交通车 1。作为一个城市的公交企业,它不仅代表社会体现当地城市的形象,又要尽一切力量减少投资,创造良好的经济效益及社会效益;而传统
8、公交由于人工售票,人工报站等一些人为因素影响,难以满足现代城市公交发展需求 2。 现在是一个高科技的电子时代,提倡的是智能电子系统。 现代电子系统的基本核心是嵌入式计算机系统 (简称嵌入式系统 ),而单片机是最典型、最广泛、最普及的嵌入式系统 ,发展到现在技术已相当成熟,应用十分广泛。单片机体积小,重量轻,价格 便宜且具有很强的灵活性,这为智能公交的发展提供了十分有利的条件,并且具有很强的市场适用性。公共交通智能化系统是公交信息化系统的重要组成部分,是提高公共交通服务水平、吸引出行量的必要手段,体现了一个城市的现代化交通管理水平,是中国解决交通问题的重要措施之一。 1.2 发展现状及趋势 单片
9、机 生于 20 世纪 70 年代末,经历了 SCM、 MCU、 SoC 三大阶段 , FLASH的使用使 MCU 技术进入第四代,发展到现在技术已相当成熟。目前,国内外单片机最新的技术 包括 : 数字单片机 技术 ,以单片机为核心的嵌入式系统 技术以及 单片机的可靠性 技术 。 智能公交最新发展现状可由智能汽车作为代表,它 是一个集环境感知、规划决策、多等级辅助驾驶等功能于一体的综合系统,它集中运用了计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,是典型的高新技术综合体 3。在 目前的汽车驾驶中 ,驾驶员的人为因素占了很大的比重 , 一旦出现驾驶员长时间驾车、疲劳驾车、判断失误的情
10、况,很容易造成交通事故。通过对车辆智能化技术的研究和开发,可以提高车辆的控制与驾驶水平,保障车辆行驶的安全畅通、高效。智能车辆的主要特点是以技术弥补人为因素的缺陷,使得即便在很复杂的道路情况下 ,也能自动地操纵和驾驶车辆绕开障碍物,沿着预定的道路轨迹行驶。 随着最新技术的发展,车载信息系统成为未来发展趋势。 从计算机领域看,汽车车载信息系统是一个移动的计算平台 。 车载信息系统除了能够帮助安全驾基于单片机的公交报站系统设计 2 驶外,另一方面还能帮助消费者将车上的设备都接入互联网,和其他车辆连接,和云计算连接,和交通流量、天气等各种实时数据连接 4。 1.3 课题研究的主要内容 本论文设计一种
11、自动播报公交站名的智能系统,采用单片机 AT89S51 作为主控制中心, ISD4003 语音芯片控制报站, LCD显示电路控制站名显示。 本次设计以 Keil C51 开发环境为编程平台进行代码的编译和运行,在Protel 99进行仿真。 该报站系统具有如下的基本功能: 1)按键输入控制: 1.复位键:初始化状态; 2.时间设置键:对时间进行设置; 3.提示键:语音提示; 4.报站键:车站提醒。 2)语音播报:对车站名语音播报,并有温馨提醒。 3)液晶显示:站名汉字显示和时间显示。 4)芯片控制:以 AT89C51 芯片 作 为 主控制核心 。 本论文总体设计的主要内容有: 1)总体布置设计
12、; 2)绘制总体设计电路图; 3)确定总体主要参数; 4)编写设计程序及技术说明书等。 基于单片机的公交报站系统设计 3 2 方案分析与总体设计 2.1 方案对比 一、基于单片机 AT89S51 设计 优点: 51是 8位单片机,内部的硬件到软件有一套完整的按位操作系统,易于编程;它体积小,功耗低,性价比低,网上学习资源丰富,十分适合初学者;采用 C语言编程,程序易懂。 缺点:运行速度慢(采用 CISC(集中指令 ));所有 I/O 口都是准双向口,I/O口驱动能力弱。 二、基于 TMS320C5X 系列的 DSP设计 优点: DSP 芯片采用哈佛结构,运行速度快,精度高;有自己完整的指令系统
13、和一些特殊的 DSP 指令,有强大的数据处理能力。 缺点 :适用范围窄, DSP 系统是不同于模拟电路和数字逻辑电路系统,所需处理的是数字信号;一般适用于信号处理和图形、图像处理。 三、基于 UC/OS_操作系统的 ARM设计 优点: ARM 是 32 位 RISC 微处理器,具有极高的性价比、代码密度,以及出色的实时中断响应和极低的功耗; UC/OS_具有可移植,可固化,可裁剪,多任务管理的特点,代码执行效率高、占用空间少、实时性能优良,适合高端应用领域。 缺点: ARM相对于 51而言,成本较高,且 ARM在接口设计和编程方面较复杂,适合专业设计人员; 四、基于 FPGA的 VHDL 语言
14、 设计 优点: FPGA是一种现场可编程门阵列,集成度高,具有更复杂的布线结构和逻辑实现; FPGA器件修改方便,设计周期短,使系统研制开发成本降低;用VHDL编程,灵活性强,可进行编程、除错、再编程重复操作,可进行充分地设计开发和验证。 缺点: VHDL语言编程难以符合该课题,仿真环境难以体现功能优越性;专业性太强,研发工作普通用户难以完成。 2.2 方案总结 本课题设计的系统属于小型项目,信息处理量不大,对速度、功耗要求不高,故选用 8 位的 AT89S51 就能满足系统的设计需求;通用廉价的 AT89S51,作为控制芯片 ,不仅控制方便,成本低,而且设计简单。基于上述,选用 1 号基于单
15、片机 AT89S51 设计方案。 基于单片机的公交报站系统设计 4 2.3 方案总体设计 基本原理: 本系统采用 89C51 作为 CPU,由 CPU控制语音电路,液晶显示电路和键盘电路。键盘电路采用中断模式,当有键按下,系统产生中断, CPU响应中断; CPU处理后,决定播放语音芯片中已录制好的的录音,再经过一个功率放大电路来缓冲,播放录音;同时 CPU通过程序读取汉字信息,送入 LCD显示电路。 其系统框图如图 2-1所示: 图 2-1总体设计系统框图 设计主要内容 ( 1)语音模块 选用 ISD4003 芯片实现报站。特点:播放时间长,单片 4 至 8 分钟语音录放,多段信息处理,不耗电
16、信息保存 100年, 10万次录音周期,外围电路简单。 实现功能: 1.播放录音; 2.复位 ( 2)液晶显示模块 选用 12864 显示屏,控制简单,显示数据多,显示资料提供 64 2 位元组的空间,最多控制 4 行 16字( 64字)中文字型显示 。 实现功能: 1.汉字显示,显示站名; 2.时间显示 ( 3)时间显示模块 选用 DS1302,它是充电时间芯片,通过简单串行接口与单片机进行通信;时间可自行调整,设置初值后,芯片自动计数时间。时间在液晶显示屏上显示,通过按键可调整。 ( 4)键控模块 键盘是人机交流的重要组成部分,通过键盘控制,向单片机提供指令,从而达到控制的目的。根据键盘的
17、数目和占用资源的相对多少选择键盘形式。由于本文中键盘数目较少,控制简单,故选用独立式键盘。 单 片 机 控 制 系 统 键 控 模 块 语音 模块 液晶 显示 模块 指示灯 复位 时间显示模块 基于单片机的公交报站系统设计 5 3 公交报站系统硬件设计 3.1 主体控制( AT89C51) 为保持系统的稳定 ,系统采用 AT89S51。它是美国 ATMEL 公司生产的低电压,高性能 CMOS8位单片机,片内含 4k bytes 的可反复擦写的只读程序存储器( PEROM)和 128 bytes 的随机存取数据存储器( RAM) 。片内置通用 8位中央处理器( CPU)和 Flash 存储单元。
18、单片机最小系统电路图 3-1如下: 图 3-1单片机最小系统 该单片机最小系统包括一个复位电路、时钟电路和由晶振、负载电容组成的时钟振荡电路。复位电路由一个 10uF的电容和一个 10K的电阻组成,当这个管脚有连续两个以上机器周期的高电平时,这个单片机就会 复位,复位电路高电平有效;时钟振荡电路由一个 12M的晶振和 2个 30pF的负载电容组成,输出时钟脉冲,在 51 单片机中,晶振输出的脉冲周期为脉冲周期, 12 个脉冲周期为机器周期,单片机工作时间的最小单片机是机器周期;使用的单片机需要在+5V的直流电压下工作,且这个电源必须很稳定,否则会导致单片机的复位。 AT89C51 有 2 种可
19、用软件编程的省电模式,它们是空闲模式和掉电模式。在空闲模式状态下, CPU 保持睡眠状态而所有片内的外设仍保持激活状态;在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令。 主要引脚描述: RST/VPD(9引脚 ):复位信号输入端,高电平有效。完成复位操作时,需要在该引脚加上 2个机器周期( 24个时钟振荡周期)的高电平;正常工作时,引脚基于单片机的公交报站系统设计 6 电压 0.5V。 ALE/PROG(30 引脚 ): ALE 引脚输出为地址锁存允许信号; PROG 引脚作为编程脉冲输入端。它的第二功能是对片内 EPROM 型单片机编程写入时,此引脚作为编程脉冲输入端
20、。 PSEN( 29引脚):程序存储器允许输出控制端。在单片机访问外部存储器时,此引脚输出脉冲负跳沿作为读外部程序存储器的选通信号。 EA/VPP( 31引脚 ):内外程序存储器选择控制端。当 EA为高电平时,访问片内程序存储器, EA 为低电平时,只访问外部程序存储器。 其性能参数和管脚图如 3-2下: 图 3-2管脚配置图 单片机需要在 +5V 的直流电压下工作,且这个电源必须很稳定,否则会导致单片机的复位。用 7805三端稳压块进行稳压,输入和输出加两个滤波电容。 其电源电路如下 3-3 所示: 图 3-3电源电路图 主要性能参数: 与 MCS-51产品指令系统完全兼容 4k字节可重擦写 Flash闪速存储器 1000次擦写周期 全静态操作: 0Hz 24MHz 三级加密程序存储器 128 8字节内部 RAM 32个可编程 I O口线 2个 16位定时计数器 6个中断源 可编程串行 UART通道 低功耗空闲和掉电模式