公交车语音报站系统--毕业设计完整版_第1页
公交车语音报站系统--毕业设计完整版_第2页
公交车语音报站系统--毕业设计完整版_第3页
公交车语音报站系统--毕业设计完整版_第4页
公交车语音报站系统--毕业设计完整版_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、公交车语音报站系统摘 要公共汽车成为城市人们出行的必备选择,然而,并不是每个人都熟悉所乘公交车的路线、站点。所以乘客所面临的问题就是如何能够在正确的车站下车。最好的解决的办法就是利用公交车语音报站系统提示乘客。本文设计一个在按键报站系统上改进的语音报站系统,为乘客提供人性化的报站服务。该设计是基于GPS模块和AT89S51单片机设计的自动语音报站系统。AT89S51单片机通过串口与GPS模块通信,确认公交车进站、停站、出站等状态,根据程序播报站点信息,从而达到自动报站、预报站等目的。此外通过分析GPS数据包,可解析出当前时间信息,可把时间显示在液晶屏幕上。本文在设计的过程中给出了硬件电路的设计

2、方案、硬件控制方法、主要软件设计流程。本设计解决了以往公交车报站系统人工操作不便、误报站多等问题。关键字:AT89S51单片机;GPS;自动语音报站Bus-stop Announcement SystemAbstractBuses are essential for people to travel in the city. However, not everyone is familiar with all the routes and bus stations. Therefore, the problem faced by passengers is how to get off at

3、the right station. The best solution is to use the bus stop announcement system to remind passengers. This paper designs a bus stop announcement system improved from the stop announcement which operated with the keyboard, so that the system can provide passengers with customized service. The design

4、designs an automatic stop announcement system based on the GPS module and the AT89S51 microcontroller. The AT89S51 microcontroller communicates with the GPS module by the Serial Interface, to confirm the status, such as closing to the station, stopping or leaving the station. Then the system broadca

5、sts the station information according to the program. So as to achieve the purpose that automatic broadcast stations and forecast stations. In addition, the current time can be displayed on the LCD through analyzing the data from the GPS module. In this paper, we will give the hardware design scheme

6、, the control method and the main software design process. The embarrassment that manual broadcast stations and the mistake in the broadcast station can be solve in this design.Keywords: AT89S51 microcontroller; GPS; Stop announcement system目 录1 绪论11.1 选题背景11.2 GPS在国内外的发展状况11.3 GPS在国内的发展11.4 本课题的设计思

7、路22 硬件电路的设计42.1 微控制器42.1.1 主要性能特点42.1.2 复位电路42.1.3 晶振电路42.2 语音芯片接口设计62.2.1 语音芯片接口设计电路图62.2.2 语音芯片的简介62.2.3 ISD2560的引脚配置72.2.4 ISD2560的操作模式72.2.5 M6模式下的录放步骤82.2.6 用单片机控制ISD2560的方法92.3 LCD显示接口设计92.3.1 12864LCD主要技术参数和显示特性102.3.2 模块引脚说明102.3.3 控制器接口信号说明102.4 GPS接收模块122.4.1 GPS简介122.4.2 GPS输入输出语句说明122.4.

8、3 GPS接收模块的选择122.4.4 GPS接口电路模块132.4.5 GPS接口电路用于公交自动报站的实现方式132.5 键盘接口设计132.5.1 键盘接口与单片机连接的电路132.5.2 MAX6959简介132.5.3 各个按键功能的定义142.5.4 MAX6959的引脚配置142.5.5 MAX6959内部寄存器142.5.6 键盘接口电路在报站系统中的实现方式152.6 电压转换稳压电路152.6.1 芯片介绍152.6.2 引脚描述162.6.3 变压稳压电路图162.7 RS232通信162.7.1 与单片机串口的连接方式173 软件设计183.1 系统程序结构183.1.

9、1 主程序183.1.2 按键中断处理程序193.1.3 GPS信息处理程序203.1.4 语音处理程序203.1.5 显示处理程序22总 结25致 谢26参考文献271 绪论1.1 选题背景随着全国经济的飞速发展,公交系统也是日新月异。按键报站系统的使用减少了的人力的投入。但是这样难免让公交司机一心二用,出现报站不及时,误报站的情况,不能时时刻刻满足乘客的需求;另一方面,公交司机开车时分散一部分精力去按键,也对安全行驶埋下了隐患。因此,对自动报站系统的智能化升级的需求也日渐强烈。应用智能化的语音报站系统对节省员工开支,增强公司效益具有重要作用。与此同时,利用标准普通话录音的报站系统,能使外来

10、人口更易听懂,增强了不同城市间的交流与沟通。近年来,GPS(Global Positioning System)全球定位系统广泛应用与各种行业,在车辆监控与定位系统中的应用更是蓬勃发展。随着社会经济与科学技术的持续发展,节能减排的口号越来越深入人心,公交运输系统扮演着越来越重要的角色。目前我国各大城市公交车乘务员越来越少,而实行无人报站与售票。为了使公交系统的管理智能化、现代化,需要对原有系统实行全面升级,GPS公交自动语音报站系统符合这一要求。1.2 GPS在国内外的发展状况在国外,GPS应用产业,已经成为公认的八大无线产业之一。科学技术的进步、生产需求的增加,GPS以精度高、效率高、自动化

11、、全天候等特点,加上代表性的定位导航、时间校准、精确测量等多种功能用途,在各种应用领域出类拔萃,使GPS成为紧跟互联网的全球第三个新IT经济增长点。在20年的发展中,消费电子产品处处出现了GPS的身影,小到手机、平板电脑,大到车载GPS导航,GPS始终扮演着重要角色。然而,现阶段来看,由于 GPS接收机的单芯片化技术、价格以及市场应用服务等仍未成熟,因此,乐观的看待市场的同时,芯片的集成难度难免不能被忽视,不如说利用什么技术才能使GPS芯片工作在更小的,或者条件更加恶劣的环境中。类似的技术问题难免会增加投入成本,所以,如何权衡设计才能发挥性能与成本优势,是GPS公交报站系统值得考虑的问题。1.

12、3 GPS在国内的发展GPS在国内市场中的两个发展趋势 (1)移动目标定位、监管,服务系统。车辆应用在GPS应用领域中所占比例比较大。GPS车辆应用的车辆跟踪和导航系统是独立的。但摩托罗拉公司将二者融合,推出一体式的定位导航系统。从此这种系统成为了发展趋势。自导航应用和中心监控是GPS车辆定位的两种方式。GPS技术、无线通信和地里信息技术融合在一起,就构建了车辆管理系统。监控中心、主站、子站构成整个监控系统。在系统工作过程中,安装在移动车辆上的GPS子站接收卫星的定位信息,微型处理器将得到的信号进行分析,筛选有用的信息,如经纬度、速度和时间,然后把该信息加上本车辆的指定代号,以数据流的形式通过

13、无线通信发给控制中心,控制中心收到子站发来的信息流后,提取经纬度信息、车辆代号等。再由微处理器处理后显示在地图的相应位置。这样,控制中心可以时刻监视车辆的状况,为调度和监督车辆提供了直观的参考。(2)GPS终端产品在个人消费上的体现科学技术的飞速发展,使得成型的芯片越来越小,生产成本也越来越低,这样,GPS是终端产品就不再是商业中的特权产品,人们开始把他们安装在自己的车上,甚至集成到每个人的手机中。GPS产品丰富多样,有的将网络信号定位和GPS定位结合,在智能手机中用网络定位弥补小型终端接收GPS信号有限的缺点,实现了GPS定位与手机终端的结合。GPS手表、外接式的GPS定位产品的生产也逐渐成

14、型。1.4 本课题的设计思路本课题设计利用GPS接收系统与AT89S51单片机,ISD2560语音芯片,12864LCD显示器,实现到站时LCD 液晶显示器显示本站和下站,并能够实现自动报站与手动报站之间的切换。能够通过按键或设置进行某些特殊信息的提醒。GPS卫星定位语音报站系统具有定位精度高、语音自动播报、报站实时准确等特点。此设计要求车辆的定位精度高于50m,如遇外界环境影响GPS信号还可由按键恢复成手动操作进行报站。由LM2576为核心的电源模块把公交车上的24V电源进行转换,为整个电路系统提供稳定的5V直流电。AT89S51单片机为核心控制芯片,由键盘输入,实现语音芯片的录放以及自动手

15、动模式切换等功能,音频通过音频放大电路后播放。在自动报站模式下,GPS收到卫星信号,把信息流通过串口传送给单片机,单片机对信息流进行筛选,识别出UTC时间和位置信息,把对应的站点信息进行播报。同时单片机根据播报的内容,把时间和相应的文字显示到LCD屏幕上。通过跳帧切换串口选择性连通的方式,切换GPS和RS232与单片机的连接,RS232串口提供调试信息输出并用于与PC机交互。本设计第二章介绍各部分硬件电路的原理与实现方式,第三章对软件设计流程进行阐述。该设计系统的方框图如图1.1所示。AT89S51GPS模块RS232ISD2560语音模块音频放大LCD键盘模块电源模块图1.1 系统的方框图2

16、 硬件电路的设计2.1 微控制器AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS 8位单片机,片内含4k的可变成的Flash只读存储器1。该器件体现了ATMEL公司高密度、非易失性的存储技术,兼容标准的MCS-51指令系统,及80C51引脚结构。内部集成通用8位中央处理器和ISP Flash存储单元,AT89S51广泛应用在嵌入式系统中。2.1.1 主要性能特点1、4k Bytes Flash片内ROM;2、128 bytes的RAM空间;3、2个中断优先级(INT0、INT1)、2层中断嵌套中断;4、32个输入输出(I/O)口;5、2个16位可编程定时器/计数器;6、6个中断源

17、;7、2个全双工串行通信口;8、内部时钟电路和振荡器;9、看门狗(WDT)电路;10、兼容MCS-51兼容;11、全静态工作:0Hz-33MHz。2.1.2 复位电路复位引脚(RST)可以使单片机处于复位工作状态。一般情况,单片机有自动上电复位和人工按钮复位两种复位方式。单片机应用系统中,既需要单片机本身复位,又需要外部I/O接口电路的复位。所以,我们需要上电复位和按钮复位同时存在的复位电路。电路图如图2.1。2.1.3 晶振电路AT89S51单片机的时钟电路的构成方式有三种,即内部时钟方式、有源晶振方式和外部时钟信号方式。本GPS自动报站系统为内部时钟方式,采用外接晶振和电容组成的并联谐振电

18、路, AT89S51可以工作在12MHz频率下。电路如图2.2。图2.1 复位电路图2.2 晶振电路2.2 语音芯片接口设计2.2.1 语音芯片接口设计电路图本设计采用ISD2560语音芯片与LM386放大模块,它们与AT89S51单片机的连接电路如图2.3所示。图2.3 语音芯片的连接2.2.2 语音芯片的简介ISD2560具有抗断电、音质好,使用方便,无须专用开发系统等优点,录音时间为60s,能重复录放达10万次2。多电平存储技术,使得音频信号不需要经过数模转换,就能直接存入存储阵列,保证了较好的音质效果。LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元

19、件少和总谐波失真小等特点3。电压增益内置为20,使得外围元件尽可能少。但1脚和8脚之间,可以用增加外接电容和电阻的方式,使电压增益在200一下的任意值。本设计配置的是50增益的放大电路。2.2.3 ISD2560的引脚配置封装图及各引线端功能如表2.4。ISD2560的A1A9为地址线,它共有1024种组合状态4。表 2.4 ISD2560引脚引脚号引脚名称功能1-79-101112,1314,1516,2817,181920,21222324252627A0/M0A6/M6A7A8AUXINVSSD、VSSASP+、SP-VCCA 、VCCDMIC、MICREFAGCANAIN、OUTOVF

20、CEPDEOMXCLKP / R地址地址辅助输入数字和模拟地音频输出模拟、数字信号电源正极麦克风输入和输入参考端自动增益控制模拟信号输入、输出溢出片选(低电平允许芯片工作)芯片低功耗状态控制录放音结束信号输出外部时钟录/放控制选择,低电平为录音2.2.4 ISD2560的操作模式当ISD2560地址/模式输入端的最高两位A8,A9均为高电平时,A0A6引脚便作为工作模式位使用,不同的电平决定芯片不同的工作模式,ISD2560共有7种工作模式,分别对应引脚M0M65。本系统只用到M0和M6模式。当A6、A8、A9为低电平,并且A0为低电平的时候,既为M0模式,此模式的作用是快进以检索需要的信息段

21、。 ISD2560的M6模式又叫做按键模式,在这种模式下,可以用按键来控制芯片的所有操作,功能最多,既能录音又能放音,这种模式也是应用最灵活广泛的。M6模式对简化外围器件,降低系统成本具有很大作用。所以本系统选用芯片的M6模式与M0模式的结合,以实现站点跳转和最灵活的控制。将A6、A8、A9全置高电平,即启动M6模式。芯片在不进行录音、放音操作时,会自动进入节电模式。在M6模式下,芯片的引脚CE有开始/暂停的作用,PD有停止、复位的作用,EOM有操作指示的作用。在硬件设计时,可以在EOM端接一个电发光二极管,当芯片进行录/放音操作时,可以作为操作指示。2.2.5 M6模式下的录放步骤 1 M6

22、模式下的录音操作应按照以下步骤进行:置PD端为低电平;置PR端为低电平;在CE端的下一个低电平跳变,开始录音,同时EOM端输出高电平提操作正在进行;CE端的下一个低电平跳变暂停录音,芯片在本段信息尾部添加一个EOM标志。同时EOM端输出变为低电平,地址指针不会恢复到初始位置。若此时PR端为高电平,则CE端的下一个低电平跳变将使芯片从初始地址开始录音。CE端的下一个低电平跳变将继续录音,芯片将从暂停地址处继续开始录音,EOM端输出高电平。若置PD端为高电平,则录音结束,芯片在信息尾部加一个EOM标志,同时EOM端输出为低电平。2 M6模式下的放音操作应按照以下步骤进行:置PD端为低电平;置PR端

23、为高电平;在CE端的一个低电平跳变,放音开始,此时EOM端输出高电平,可以驱动发光二极管点亮提示操作正在进行。当在CE端低电平跳变或者检测到尾部的EOM标志,放音将暂停,EOM端输出低电平,指针不恢复到初始位置。此时改变PR端电平,可以进行录音操作,该操作也地址指针也不复位,录音将从暂停处继续处开始。CE端的下一个低电平跳变将使芯片从地址暂停处开始继续放音,EOM端输出高电平。重复步骤4,5持续进行放音,直到PD端置高电平或地址溢出为止。若芯片发生地址溢出,CE 端的低电平跳变将使地址指针复位,并从0地址开始放音。PD端的一个正脉冲也将使地址复位6。2.2.6 用单片机控制ISD2560的方法

24、ISD2560 A1A5,A7接地,A0接单片机P1.0脚,A6和A8、A9接单片机的P1.1脚,P1.1控制A6、A8、A9为低电平的时候,P1.0输出低电平,实现M0模式;P1.1控制A6、A8、A9为高电平的时候,实现M6模式。PD连接P1.3脚,P/R连接P1.2脚,CE连接P1.4脚,EOM连接中断INT0脚。录音:当P1.1为高电平,实现M6模式,此时P1.3脚和1.2脚输出为低电平,P1.4脚的低电平跳变,使录音开始,EOM输出高电平,LED指示灯点亮。当P1.4再次低电平跳变,暂停录音,P1.2为低电平时,P1.4的下一个低电平跳变是录音继续,P1.2为高电平时,P1.4的低电

25、平跳变使录音从起始位置开始。当P1.3脚为高电平,录音结束,EOM变为低电平,LED指示灯熄灭。放音:当P1.1为高电平,实现M6模式。P1.3脚输出低电平,P1.2脚输出高电平,P1.4脚低电平跳变时开始放音,EOM输出高电平,LED指示灯点亮。P1.4下一个低电平跳变或者检测到EOM标志的的时候,放音暂停,EOM输出低电平,LED指示灯熄灭。此时可以改变P1.2脚电平实现从此地址的录音。PA2下一个低电平跳变,放音继续。EOM为高电平,LED指示灯点亮。当P1.1为低电平,并且P1.0也为低电平,P1.4的每一个低电平跳变都使指针前进一段语音,再跳转成M6模式,实现语音的选段播放。2.3

26、LCD显示接口设计本设计采用JM12864M-2液晶汉字图形点阵LCD显示模块,此模块自带字库,采用的是ST7920控制芯片,既可以显示汉字,又可以显示图形,具有128个字符(8*16)点阵及64*256点阵显示GDRAM。本系统LCD与单片机连接的电路采用并行方式,如图2.6。图2.6 显示电路2.3.1 12864LCD主要技术参数和显示特性输入电源:VDD 3.3V5V(内含升压电路,不需要负压);可显示点阵:128列*64行显示颜色:黄绿LCD类型:STN与MCU接口:3位串行/8位或4位并行具有LED背光多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等2.3.2 模块引脚说明

27、工作电压(VDD):4.55.5V,电源地(GND):0V,工作温度(Ta):-1060(常温)/ -2070(宽温)引脚如表2.7。2.3.3 控制器接口信号说明1 忙标志:BFBF标志区分内部不同的工作状态。需要对模块进行内部操作的时候,必须在BF=1的情况,此时拒绝外部数据和指令。在BF=0时,可以接收外部数据和指令。因此,每次操作前,进行状态检测是很有必要的,确定BF=0。2 字型产生CGROM 此触发器控制模块屏幕的开关。DFF=1控制显示为开,就会在屏幕上显示DDRAM的内容,DFF=0控制显示为关。3 显示数据DDRAM显示数据RAM共有642个空间,能够显示16字的行共4行,当

28、向RAM写入显示数据时,能够分别显示CGRAM和CGROM内的字型。5 字型产生CGRAM 字型产生RAM可自定义图形, 因为有4组16*16点阵供自定义,用户可以自己定义不存在的图形点阵组,以实现显示自定义图形的目的。此定义内容会写到CGRAM中。6 地址计数器AC用来存储CGRAM或DDRAM的地址,写入或者读取CGRAM或者DDRAM的值时,地址计数器的值自动加1,当RS为0而R/W为1时,地址计数器的值会被读取到DB6DB0中。表2.7 引脚说明引脚号引脚名称方向功能说明1VSS-电源地2VDD-电源正端3V0-对比度调整4RS(CS)H/LH,DB7-DB0为显示数据L,DB7-DB

29、0为指令数据5R/W(SID)H/LR/W=H,E=H,数据被读到DB7-DB0R/W=L,.E=HL,DB7-DB0数据写到R/DR6E(CLK)H/L串行的数据口;并行的使能信号714DB0DB7H/L数据口0715PSBH/L并/串行选择:H-并行;L-串行16NC空脚17/RETH/L复位 (低电平有效)18VOUTLCD驱动电压输出19VDDH/L背光电源正极20VSSH/L背光电源负极表2.8 控制接口E信号E状态执行动作结果高-低I/O缓冲-DR配合/W进行写数据或指令高DR-I/O缓冲配合R 进行读数据或指令低/低-高无动作2.4 GPS接收模块2.4.1 GPS简介GPS是英

30、文Global Positioning System的缩写,译为全球定位系统。简单的说,这是一个由覆盖全球的24颗卫星组成的卫星系统7。可实现任意时刻地球上的点通过4颗以上的卫星精准定位。全球定位系统为高精度导航和定位而研制的全球被动式无线电卫星系统,是集成无线电导航、定位和定时于一体的多功能系统。2.4.2 GPS输入输出语句说明GPS接收机根据NMEA-0183协议,NMEA-0183常用的语句有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL等。本设计只用到$GPRMC字段,所以对本字段进行定义解释。$GPRMC、*hh 定位时UTC时间hhmmss 格

31、式状态A=有效定位V=无效定位经度ddmm.mmm 格式经度方向N 或S纬度dddmm.mmmm纬度方向E或W地面速率 地面航向当前UTC日期ddmmyy 格式磁偏角磁偏角方向,E(东)或W(西) hh:语句末端的hh为该语句的校检符 2.4.3 GPS接收模块的选择本设计采用GPS模块GS-87,GPS模块GS87是一个高效能、低耗电的智能型卫星接收模块。GS87引脚:VCC,电源输入端;TXA,串行数据输出端A;RXA串行数据输入端A;RXB,串行数据输入口B;GND,电源地;TIMEMARK/RESET,1PPS时间标记输出/复位输入(低电平有效)。2.4.4 GPS接口电路模块由于电源

32、电压要求为+5.0V5%,因此模块引脚1、接系统的+5V电源。具体硬件接口电路如图2.9。图2.9 GPS模块2.4.5 GPS接口电路用于公交自动报站的实现方式GPS接口电路将获取到的位置信息以串行通信方式发送给单片机,单片机通过程序对接收的数据流进行解析,找到$GPRMC字段,提取UTC时间以及经纬度信息,把UTC时间换算成当地时间后,显示到LCD屏幕上,将经纬度信息与公交站点建立对应关系,当到达指定的经纬度的时候,单片机控制LCD显示站点名,并控制语音芯片报站。2.5 键盘接口设计2.5.1 键盘接口与单片机连接的电路本设计采用MAX6959完成对按键输入的处理,电路如图2.10。2.5

33、.2 MAX6959简介MAX6959是MAXIN公司生产的一款带键盘扫描的复用型的共阴极显示驱动器8。它包括两个输入口,用户可以通过软件配置输入端口作为按键扫描输入,此时芯片会自动扫描按键按下或弹起状态,并将相关的数据保存在内部寄存器中,供用户进行查询。MAX6959最多可以完成8个按键的扫描。MAX6959与单片机等控制器件的连接采用两线串行I2C总线,在很大程度上节约了I/O资源,简化了硬件的设计,使系统具有较高的集成度。图2.10 按键电路2.5.3 各个按键功能的定义S0 报站/录音暂停;S1 预报站;S2 前进一站;S3 后腿一站;S4 特殊内容播报;S5 上下行切换;S6录音;S

34、7 手动/自动报站切换各个按键的定义还可以根据生产需要,通过修改程序代码修改。2.5.4 MAX6959的引脚配置引脚配置如表2.11。2.5.5 MAX6959内部寄存器按键释放寄存器:按键释放寄存器中的数据能够说明按键扫描电路检测到的那一个按键具有释放操作。寄存器中的每一位数据代表一个按键,当该位为1时表示该为代表的按键被释放。此外,按键释放寄存器的读操作还会清除IRQ的中断输出,如果某按键保持按下状态,该键将被认出释放一次,即只有一个IRQ输出。按键释放寄存器为只读寄存器,对其的任何写操作都被忽略.按键按下寄存器:按键按下寄存器中的数据能够说明按键扫描电路检测到的哪一个按键被按下。寄存器

35、中的每一个数据位代表一个按键,当该位为1时表示该位所代表的按键被按下。对该寄存器的读操作不会清除其中的数据,也不会清除按键释放寄存器中的数据,也不会影响IRQ中断的输出,该寄存器为之都寄存器,任何写操作都将被忽略。表2.11 引脚说明引脚名称功能1SDA串行数据输入输出2SCL串行时钟输入3IRD/SEG9中断输出或段驱动,可以用来驱动发光二极管,也可以用作开漏中断输出,也可以用开漏逻辑输出。47,1115DIGX,SEGX位和段驱动。当作为LED数码管位驱动时这些引脚吸收电流,当作为LED数码管驱动时这些引脚输出电流,不用时这些引脚输出高阻。8GND电源地。9输入1通用输入端口1.可设置为通

36、用逻辑输入或按键扫描输入。不用时应接V+或悬空。10输入2通用输出端口2. 可设置为通用逻辑输入或按键扫描输入。不用时应接V+或悬空。16V+电源。2.5.6 键盘接口电路在报站系统中的实现方式单片机通过I2C总线与MAX6959进行通信,控制MAX6959扫描键盘输入,当一个按键的按下和弹起先后被识别时,确定此按键按下有效,并在指定的数据位置1,由程序识别数据位的数据,确定是哪个按键按下,并依据设定的程序执行此按键的操作。2.6 电压转换稳压电路使用LM2576可以将公交车上的+24V直流电压转化为+5V直流电压,而又解决了芯片过分发热的问题。LM2576开关稳压集成芯片是线性三端稳压器件的

37、替代品,具有工作效率高的特点,工作性能也相对稳定,驱动电流也充足,为单片机及个芯片的正常工作土工保证。2.6.1 芯片介绍LM2576是降压类开关型稳压集成芯片,内部的振荡器频率固定为52kHz,基准稳压1.23V,自动保护电路也比较健全,具有热关断电路和电流限制电路等,外部器件需求很少。它提供有3.3V(-3.3)、5V(-5.0)、12V(-12)、15V(-15)及可调(-ADJ)等多个电压档次产品。此外,该芯片还提供了工作状态的外部控制引脚。2.6.2 引脚描述引脚功能描述如下:(1)VIN 输入电压端,用连接旁路电容的让是减小瞬态电压;(2)OUTPUT 稳压输出端,输出高电压为(V

38、IN-VSAT),输出低电压为-0.5V;(3)GND 电路地;(4)FEEDBACK 反馈端;(5)ON/OFF 控制端,高电平有效2.6.3 变压稳压电路图图2.12 变压稳压电路2.7 RS232通信图2.13 MAX232在系统中的连接MAX232与单片机的接口电路如图2.13所示。它的T1IN接单片机的TXD脚,R1OUT接单片机的RXD脚。TIOUT1和R1IN接RS232总线。在这里MAX232主要起到电平转换作用,即将单片机经过TXD和RXD输出的TTL电平转换为RS232电平。2.7.1 与单片机串口的连接方式由于MAX232模块与GPS模块都需要串行口与单片机进行通信,在应

39、用报站系统的时候不需要MAX232工作,所以用跳冒的方式实现MAX232和GPS与单片机的连接的切换。3 软件设计3.1 系统程序结构公交车语音报站系统的软件采用模块化设计方法,整个软件系统可以分为主程序、按键处理程序、GPS信息处理程序、显示处理程序和语音处理程序几个部分。 3.1.1 主程序系统主程序要完成系统各部件的初始化操作,此外,在系统开始运行之后给出相应车辆和站点信息。程序设计流程图如图3.1。开始系统初始化是否选择手动模式?NY等待GPS信号等待按键输入收到GPS?收到键盘?NN语音播报站点信息液晶屏显示站点信息停止行车?结束YNGPS信息转换对应站点信息按键信息转换站点信息YY

40、图3.1 主程序流程图说明:由按键选择自动报站还是手动报站,自动报站时收到GPS信息处理程序处理后的经纬度信息后,匹配对应的站点名称;手动报站的时,单片机收到键盘模块的按键信息,匹配对应的站点名称;站点名称匹配后,由单片机控制语音模块寻找语音段的起始地址,然后通过音频放大电路播放站点录音。当系统识别到达终点站后,程序停止,等待上下行切换,或者接收到GPS的反向的路线信息。3.1.2 按键中断处理程序在系统中,按键的处理程序设置为单片机外部中断INT1的中断服务程序,每当有按键按下时便执行该程序,完成按键的识别和处理。程序设计流程图如图3.2。说明:当MAX6959的按键按下和按键释放寄存器依次

41、识别同一个按键的时候,确定该按键按下,并将对应的数据位上置1,单片机对该数据段进行解析,按位转换成对应键值,定义每个键值所实现的功能。由硬件电路连接方式可知,K0、K1、K2、K3、K4、K5、K6、K7一次对应的键值是1、2、4、8、16、32、64、128。所以,必要时,这些按键的功能,可以根据具体的需要在编程时重新定义。扫描键盘按键按下?此按键抬起?读取键值NYNY开始结束图3.2 按键程序流程图3.1.3 GPS信息处理程序接收GPS信息流筛选$GPRMC字段是否是有效字段时间位置处理程序将时间经纬度信息转换成十进制YN开始结束图3.3 GPS信息处理流程图说明:由于本系统只需要时间和

42、经纬度信息,所以只筛选$GPRMC数据段就可以达到目的。本字段的第二个数据表示定位状态,A有效,V无效。无效时舍去本字段,重新读取下段数据。确定有效后,将时间经纬度信息转换成十进制数,交给主程序处理时间和位置信息。时间的处理:这个时间是格林尼治时间,是世界时间(UTC),我们需要把它转换成北京时间(BTC),BTC和UTC差了8个小时,要在这个时间的基础上加8个小时。经纬度的处理:经纬度计算方法一样,既把数据除以100后取整,得到度数;数据再减去度数乘以100再取整得到分数;余下的小数乘以60得到秒数。3.1.4 语音处理程序在系统中语音的处理程序设置为单片机外部中断处理程序,每当播放完一段语

43、音信息检测到EOM信号时便执行该程序,使语音芯片地址指针复位,并设置EOM标志位为0,开始下一段语音信息的搜索和播放。程序设计流程图如图3.4。开始是否收到信号收到信号是否需要跳转地址M6模式报站或录音M0模式跳转地址结束YN图3.4 语音处理程序说明:单片机接收到GPS信息,经过分析处理后,与某个站点对应时,单片机就会控制语音模块,如果将报站就是地址指针的下一段,则执行M6模式报站;否则,控制语音芯片启动M0模式,通过P1.4的低电平跳变使地址指针连续跳转,直到下一个语音段是将报站为止,然后转为M6模式报站。实现录音的时候,M0和M6模式的控制方式和上述相同,只是通过P1.4脚控制PR高电平

44、启动录音模式。M0和M6实现播放程序如下:/*延时程序*/void delay(int t)while(t-) ;/*引脚驱动程序*/sbit CE=P14;/定义CE使能线为P1.4sbit PD=P13;/定义PD线为P1.3sbit PR=P12;/定义PR线为P1.2sbit A689=P11;/定义A6、A8、A9线为P1.1sbit A0=P10;/定义A0 为P1.0/*M0和M6模式程序*/void Seek (uchar n)/M0跳转程序PD=1;/芯片复位delay(18000); PD=0;PR=1;/放音模式A0=1;/M0模式while(n-)/快进s段CE=0;C

45、E=1;do NOP();while(EOM);/检测EOM标志位,为0时有效EOM =1;A689=1;/M6模式void Play(void)/语音播放程序CE=0;/CE线低电平触发芯片的放音操作CE=1;do NOP();while(EOM);/检测EOM标志位,为0时有效EOM =1;/重新赋EOM标志位为13.1.5 显示处理程序显示处理程序主要完成时间和站点名称显示。每当进行一次报站或预报站,显示屏都需要显示相关的站点信息,该站点信息保存在系统的存储空间中,由单片机读取并显示,如图3.5。开始开机界面设置输入模式为并行初始化LCD子函数接收信号更新时间和站点信息是否需要更新站点信

46、息延时程序(60s)初始化LCD子函数更新时间信息NY结束图3.5 显示处理程序流程图说明:设置显示模式为并行,GPS处理后,获取了时间和经纬度信息,如果经纬度信息没有和站点名相对应,则LCD不需要更新站点信息,LCD在延时60s后,更新显示内容,这样时间没1分钟就更新一次。当GPS经纬度信息已经和站点信息对应时,LCD更新显示的时候就同时更新时间信息和站点信息。所以综上,时间的显示更新小于等于60s,而站点信息只有在预报站和报站的时候更新。部分显示程序:sbit RS=P20;sbit RW=P21;sbit EN=P22;void delay(uint i)/掩饰函数while(-i);v

47、oid read_busy() RS=0;RW=1;EN=1;while(P0 & 0x80);EN=0;void write_LCD_command(uchar value) /写命令函数read_busy();/每次都要检测忙标志RS=0;RW=0;delay(200);EN=1;/EN从10锁存P0=value;delay(200);EN=0;void init_LCD()/并口方式LCD初始化函数delay(3000);/等待时间30mswrite_command(0x30);/设定8位数据,基本指令操作delay(100);/等待时间100uswrite_command(0x30);/设定8位数据,基本指令操作delay(37);/等待时间37uswrite_conmmand(0x0c);/设定:整体显示、不反白、关游标dela

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论