公交车语音报站系统毕业论文 - 图文

更新时间:2024-03-25 14:52:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于单片机的公交车语音报站系统

的设计

院 系:信息科学与工程学院 专 业 班:电子科学与技术 姓 名: 学 号: 指导教师:

2015年5月

基于单片机的公交车语音报站系统的

设计

The Design of Bus Station Vioce Reporting System Based on MCU

摘 要

设计一个带有语音播放的公交车报站系统以满足各类乘客需求。设置4个按键,系统实现第一站、下一站、停止报站、重新设置报站等功能。系统主要组成部分是STC89C52单片机、语音模块ISD4004、按键和LCD1602显示器。按键控制语音的播放,播放的信息在液晶显示器上显示,ISD4004语音模块存放要报站的信息。

系统硬件利用STC89C52作为CPU进行控制,利用ISD4004语音芯片的功能,烧录相应的程序显示相应的信息提示。利用LM386的功能进行站台语音的播出,同时利用LCD液晶显示器显示站台信息。

系统C语言编程完毕后烧录对应的芯片当中,然后用proteus进行仿真测试。 系统实现LCD的显示,ISD4004语音播报,红外控制中断服务程序都是通过软件keilC51进行C语言编程。为了系统的完善,把程序通过串口烧录到STC89C52中去,进行调试。

关键词:STC89C52单片机 ISD4004语音芯片 LCD1602显示器 Proteus 按键

I

Abstract

In order to improve the quality of public transport services, to meet the needs of all kinds of passenger and bus station sound player for system design. The system can report the originating station, one stop before the function and station. The system is composed of AT89C51, ISD4004, voice module and a display button LCD1602. Station information stored in ISD4004 voice module. Voice playback, playback button control information is displayed on LCD. The design consists of six groups of test results show that the system is stable and reliable. To meet the design requirements.

The system hardware using STC89C52 as the CPU for overall control, the

establishment by ISD4004 voice chip voice information database, and a free combination of voice information to form a diverse voice message, voice message broadcast using LM386 amplifier and voice prompts.

The system software uses the C programming language software keilC51, the system to achieve the LCD display, ISD4004 voice broadcast, infrared control program such as interrupt service routine, the procedure to go through the serial port writes STC89C52, repeated testing,to make the system perfect.

Keywords:Single chip microcomputer LCD ISD4004 Proteus Keys

II

目 录

摘要 ……………………………………………………………………………………ⅠAbstract …………………………………………………………………………………Ⅱ 绪论 ………………………………………………………………………………………1 1 系统体系结构 ………………………………………………………………………2 1.1 系统构成……………………………………………………………………………2 1.2 软硬件功能分配……………………………………………………………2 1.2.1 硬件功能分配…………………………………………………………………2 1.2.2 软件功能分配…………………………………………………………………3 1.3 功能描述……………………………………………………………………………5 1.4 技术指标???……??………???????????????????6 2 系统硬件……………………………………………………………………………7 2.1 设计思想…………………………………………………………………………7 2.2 MCU微控制器电路………………………………………………………………7 2.3 LCD液晶显示电路…………………………………………………………………8 2.4 语音芯片电路………………………………………………………………10 2.4.1 ISD4004引脚的说明……………………………………………………………10 2.4.2 ISD4004的操作模式说明………………………………………………………11 2.5 功放电路………………………………………………………………………12 2.6 晶振电路…………………………………………………………………………13 3 系统软件…………………………………………………………………………14 3.1 设计思想……………………………………………………………………………14 3.2 模块程序设计……………………………………………………………………14 3.2.1 软件主流程图……………………………………………………………………………14 3.2.2 ISD4004语音模块放音…………………………………………………………15 3.2.3 LCD1602………………………………………………………………………18 3.2.4 按键部分…………………………………………………………………………18

III

4 仿真过程与分析………………………………………………………………20 5 测试结果与分析………………………………………………………………21 6 总结……………………………………………………………………………22 7 致谢……………………………………………………………………………23 参考文献 ………………………………………………………………………………24 附录1总体实物图…………………………………………………………………25

IV

绪 论

城市化的快速推进和经济的发展导致交通需求迅速增加,而道路交通基础设施建设相对滞后,交通拥堵现象日趋严重。如今,相比下出租车和私家车,公交车的人均占地面积少,成本低,承载能力高,同时,它的通行路线覆盖面广一定程度上缓解交通拥堵。

然而,现有的城市公交车运输方面存在一些不良问题:

首先,公交车语音报站系统一般都是为了提醒车内的乘客下车的,都没有考虑到车外的乘客,一到天气不好的时候等车的乘客很难找寻自己要乘坐的车辆。

其次,传统的报站方式效果太差。一般都是售票人员口头呐喊提醒乘客,有时声音小乘客难以听清或者外地来的乘客无法辨识售票人员的方言,从而引起很多乘车麻烦。

现在传统的人工语音报站方式在偏远地区还在使用,偏远地区经济落后条件不足,但是城市地区基本上都使用上公交车自动报站系统,语音报站系统完全弥补了口头呐喊的落后方式,为市民提供更完善的服务。比如可以通过公交车语音报站,照顾盲人乘客;可以用液晶显示器显示站名,照顾聋哑人等,让人们在生活中感受到科技给我们带来的便捷。

目前我们城市语音报站器技术主要有以下三种:

手动语音报站器。乘务人员按动进站按钮开始报站,出站时,乘务人员按下出站按钮,开始预报下站的站名;

门控语音报站器。开门时产生信号,关门时也会产生一个信号,这样不同信号之间的转换会产生另一个单独的信号,这个信号跟语音报站器相连接,开门和关门时就会自动报站;

无线信号的标记的语音报站器。在每个公交车站点设立坐标点,公交车接近站点是会接收到这个坐标点发出的信号,这时就会自动报站,出站后接收不到这个信号时,就会开始预报下一站了,此报站器报站相对准确,但需要为每个站点组建无线发射信标,建设较为复杂,费用也比较高,一旦出现信号接收不良,维修起来成本很高。

分析各方面的不足与缺陷,在本次公交车报站器系统设计中,我采用了手动语音报站的方法。

1

1 系统体系结构

1.1 系统构成

这个公交车语音报站系统的功能必须要做到,公交车每到一站,司机按下按键时能让报站器播报站名,提醒乘客下车。为了避免有些乘客坐过站,LCD显示系统可以告知乘客当前的站点。我设计的公交车语音报站系统外围电路构成如下:单片机主控电路、液晶显示电路、语音录放电路、复位电路、按键电路。使用STC89C52单片机作为主控芯片,利用LCD液晶显示电路进行站台信息的显示,利用ISD4004数码语音芯片进行站台名称的播报,用按键开关来进行操作,方便控制。图1-1是整个系统构成框图.

+5V电源

图1-1 系统结构框图

指示灯 STC89C52 单 片 机 液晶显示电路 语音录放电路 +3V电源 按键电路 1.2 软硬件功能分配

1.2.1 硬件功能分配

为了能产生正确的现象必须把STC89C52最小系统,LCD1602液晶显示模块,ISD4004语音芯片模块以及按键模块按照合理的分布进行正确的连接。ISD4004的工作电压为+3.3V,我的模块可以进行+3.3V到+5.0V之间的电压的转换,ISD4004引脚直接接+5V电源。模块有两路输入和两路输出。输入:MIC输入以及耳机插口输入;输出:喇叭输出与耳机插口输出。定义MISO接口为串行输出,定义MOSI接口为串行输入。

2

表1-1 接口名称

NC VCC MISO NC NC MOSI /SS NC SCLK GND MIC 音频输出 音频输入

图1-3 语音模块的接口定义

图1-4 液晶1602与STC89C52实物连接图

1.2.2 软件功能分配

软件设计当然是负责程序的编写,编好的程序烧录到ISD4004语音模块进行多段语音记录和烧录到LCD1602中进行液晶显示。以下主要介绍ISD4004语音模块,并在LCD1602液晶显示模块中进行编程。采用多电平直接模拟存储技术ISD4004的效果,每

3

个采样值直接存储在片上闪存。因此,它可以是非常真实的再现声音,音乐,等等。ISD4004工作于SPI串行接口。SPI串行端口的命令字和状态字如图2-4所示。命令字中的操作码都是高5位,而操作地址一般都是低11位。在结束信息时,状态字的最高2位溢出标志是使用在段落标记EOM中的,在就是行地址计数器中的值。ISD4004有10条指令可以运用在单片机作为主控制芯片的工作中,完成一些初始化工作,在一天结束的时候记录下,如ISD,断电。

Start键可以通过循环扫描键盘检测是否已经按下了,在根据录放开关状态跳转到对应的子程序中。

图1.5 SPI端口的命令字和状态字

表1-1是1602液晶模块内部的控制器共有11条控制指令。

表1-1 1602液晶模块内部的控制器公用11条控制指令

序号 1 2 3 4 5 6 7 8 9 10 11

指令 清显示 光标返回 置输入模式 显示开/关模式 光标或字符移位 置功能 置字符发生存贮器地址 置数据存贮器地址 读忙标志或地址 写数到CGRAM或DDRAM 从CGRAM或DDRAM读数 RS R/W D7 D6 D5 D4 D3 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 BF 0 0 0 0 0 0 1 D2 D1 D0 1 * S B * * 0 0 0 0 0 0 0 0 0 1 0 0 0 1 I/D 0 0 1 D C 0 1 S/C R/L * 1 DL N F * 字符发生存贮器地址 显示数据存贮器地址 计数器地址 要写的数据内容 读出的数据内容 4

指令1:可以清除正在显示的内容,01H是其指令码,光标复位到地址00H的位置中去。

指令2:光标复位,光标返回到地址00H。

指令3:光标和显示模式设置I/D:光标开始改变其方向,高电平会右移,低电平会左移。S:判别屏幕上所有的文字是不是向左移或者右移。当处在高电平时表示有效,处在低电平则表示无效。

指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示。C:控制光标的开与关,高电平表示有光标,低电平表示无光标。B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。

指令5:光标或显示移位。S/C:高电平时移动显示的文字,低电平时移动光标。 指令6:功能设置命令。DL:高电平时为4位总线,低电平时为8位总线。N:低电平时为单行显示,高电平时双行显示。F:低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。

指令7:字符发生器RAM地址的设置。 指令8:DDRAM地址的设置。

指令9:读忙信号和光标地址。BF:表示忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 指令10:写数据。 指令11:读数据。

图1-6是LCD1602的内部显示地址。

图1-6 LCD1602内部显示地址

1.3 功能描述

功能是完成公交车语音报站和液晶屏上文字信息显示。采用STC89C52单片机作为主控芯片,控制ISD4004数码语音芯片完成语音报站,控制LCD1602显示站台名陈。键

5

盘采用通用按键开关,简单易行且控制方便。在本次软件设计中,主要设计了3站,通过三个按键进行控制。具体如下:

Start键——起始键,现象:ISD4004播报“欢迎乘坐”,同时LCD1602上显示“Huan Ying Cheng Zuo”。

Stop键——停止报站,Next键——下一站,现象:num=1,ISD4004播报“欢迎乘坐9”,同时LCD1602上显示“Huan Ying Cheng Zuo ”。num=2,ISD4004播报“首义学院到了,请从后门下车,下车请当心;车辆起步,请拉好扶手,前方到站李纸路东方桥”,同时LCD1602上显示“Shou Yi Xue Yuan Dao Le”。num=3,ISD4004播报“东方桥到了,请从后门下车,下车请当心;车辆起步,请拉好扶手,前方停靠李纸路雅安街”,同时LCD1602上显示“Ya An Jie Dao Le”。num=4,ISD4004播报“谢谢乘坐本次公交车”,同时LCD1602上显示“Xie Xie Cheng Zuo”。

1.4 技术指标

ISD4004语音模块和LCD1602液晶显示模块技术指标如下:

ISD4004:3V单电源工作;工作电流25—30mA;维持电流1uA;多段信息处理;10万次的录音长周期;不耗电信息保存100年之久。

LCD1602:

显示容量:16×2个字符;;芯片工作电压:4.5—5.5V;工作电流:2.0mA(5.0V);模块最佳工作电压:5.0V;字符尺寸:2.95×4.35(W×H)mm。

6

2 系统硬件

2.1 设计思想

外围各模块各器件都是以STC89C52单片机为核心,然后就是LCD1602进行字符显示,ISD4004完成语音提示这块,键盘就用按键完成。当公交车到达某站时,司机按下按键即可进行站台信息的播报了,程序在CPU中读取字符的信息并送入LCD液晶显示电路中进行站台信息的显示。

2.2 MCU微控制器电路

STC89C52的塑封图如图3-1所示。STC89C52的管脚如图2-1所示。

图2-1 STC89C52塑封图 图2-2 STC89C52引脚图

STC89C52具体介绍如下:主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源;GND(Pin20):接地线。外接晶振引脚(2根)XTAL1(Pin19):振荡电路的输入端引脚;XTAL2(Pin20):振荡电路的输出端引脚。控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上生成2个机器周期的高电平把单片机进行复位;ALE/PROG(Pin30):地址锁存允许信号;PSEN(Pin29):外部存储器读选通信号引脚;EA/VPP(Pin31):程序存储器的内部和外部的选通,外部程序存储器连接到低电平时可以读取指令,内部程序存储器连接到高电平读取指令。

STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7;P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7;P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7;P3口(Pin10~Pin17):

7

8位准双向I/O口线,名称为P3.0~P3.7。

STC89C52主要功能如表2-1所示。

表2-1 STC89C52主要功能

主要功能特性

兼容MCS51指令系统 32个双向I/O口 3个16位可编程定时/计数器中断 2个串行中断 2个外部中断源 2个读写中断口线 低功耗空闲和掉电模式 8K可反复擦写Flash ROM 256x8bit内部RAM 时钟频率0-24MHz 可编程UART串行通道 共6个中断源 3级加密位 软件设置睡眠和唤醒功能 2.3 LCD液晶显示电路

晶液显示器在单片机系统中的应用有以下几个优点:

显示质量高:液晶显示器恒定发光,液晶显示器画质高,不会闪烁。

数字式接口:液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。

体积小、重量轻:液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比传统显示器要轻得多。

功耗低:液晶显示器的功耗主要消耗在内部的电极和驱动IC上,耗电量比其它显示器要少得多。

其引脚结构图如图2-5所示。

图2-3 LCD1602正面图 图2-4 LCD1602反面图

8

图2-5 LCD1602引脚图

引脚功能如表2-2所示。

表2-2 引脚接口说明

编号 1 2 3 4 5 6 7 8 符号 VSS VDD VL RS R/W E D0 D1 引脚说明 电源地 电源正极 液晶显示偏压 数据/命令选择 读/写选择 使能信号 数据 数据 编号 9 10 11 12 13 14 15 16 符号 D2 D3 D4 D5 D6 D7 BLA BLK 引脚说明 数据 数据 数据 数据 数据 数据 背光源正极 背光源负极 第1脚:VSS为地电源。 第2脚:VDD接5V正电源。

第3脚:VL是液晶显示器对比度调整端,当VL接到电源正极时对比度是最弱的,接到地时时对比度最高,当对比度过高时会产生“鬼影”,使用一个10K的电位器可以调整对比度。

第4脚:RS为寄存器选择,选择数据寄存器时为高电平、选择指令寄存器为低电平。

第5脚:R/W为读写信号线,读操作时处在高电平,写操作时处在低电平。 第6脚:E端为使能端,当低电平变成高电平在E端发生时,这时液晶模块就开始执行命令了。

第7~14脚:D0~D7为8位双向数据线。 第15脚:背光源正极。 第16脚:背光源负极。

9

2.4 语音芯片电路

2.4.1 ISD4004引脚的说明

ISD4004的塑封图如图2-6所示,引脚图如图2-7所示。

对其引脚说明如下:

图2-6 ISD4004塑封图 图2-7 ISD4004的引脚图

电源(VCCA,VCCD):当此芯片的模拟电路和数字电路使用不同的电源总线时可以使噪声达到最小化,并且分别引到外封装的不同管脚上,模拟电源端和数字电源端分别走线,靠近供电端处相连接可以达到最好效果,去耦电容靠近器件时可能会更好。 地线(VSSA,VSSD):模拟电路和数字电路在芯片内部使用不同的地线。

同相模拟输入(ANA,IN+):这是记录信号的输入阶段,输入放大器可以是单端或差分驱动器。单输入时输入的信号耦合电容输入,最大振幅峰值32mv,耦合电容器和3k电阻输入阻抗的芯片决定了低端芯片的截止频率频段。差动驱动,最大振幅的信号峰值116mv,ISD33000系列相同。

反相模拟输入(ANA,IN-):差动驱动,这是记录的反相输入信号。信号输入耦合电容器和最大振幅峰值16mv。

音频输出(AUD,OUT):提供音频输出,可驱动5KΩ的负载。片选(SS)此端为低,即向该ISD4004芯片发送指令,两条指令之间为高电平。

串行输入(MOSI):此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供ISD输入。

串行输出(MISO):ISD的串行输出端。ISD未选中时,本端呈高阻态。

串行时钟(SCLK):ISD的时钟输入端,由主控制器产生,用于同步MOSI和MISO的数据传输。数据在SCLK上升沿锁存到ISD,在下降沿移出ISD。

10

中断(/INT):本端为漏极开路输出。ISD在任何操作(包括快进)发现由于加工或OVF,低端和维护。清除中断状态下SPI周期之初。中断状态也可以由无线电侦察指令读取。OVF标志指示ISD的记录,和内存的操作。只有在检测到回放内部由于加工符号,被设置为1。

行地址时钟(RAC):漏极开路输出。如图2-8所示,每个RAC周期代表ISD内存的操作(ISD4004系列中的存贮器共2400行)。该信号175ms保持高电平,低电平为25ms。快进模式下,RAC的218.75μs是高电平,31.25μs为低电平。该端可用于存储管理技术。

图2-8 时钟RAC周期

2.4.2 ISD4004的操作模式说明

ISD4004工作于SPI串行接口。SPI协议是一个同步串行数据传输协议,协议假定微控制器的SPI移位寄存器在SCLK的下降沿动作,因此对ISD4004而言,在时钟止升沿锁存MOSI引脚的数据,在下降沿将数据送至MISO引脚。

SPI控制寄存器控制器件的每个功能,如录放、录音、信息检索(快进)、上电/掉电、开始和停止操作、忽略地址指针等。详见下表2-3。

11

表2-3 SPI控制寄存器功能表

位 RUN 值 1 0 功能 位 值 1 0 功能 电源控制 上电 掉电 允许/禁止操作 PU 开始 停止 P/-R 1 0 录/放模式 放音 录音 快进模式 允许快进 禁止 IAB 1 0 操作是否使用操作地址 忽略输入地址寄存的内容 使用输入地址寄存的内容 MC 1 0 P15-P0 A15-A0 行指针寄存器输出 输入地址寄存器 IAB置0时,录、放操作从A9-A0地址开始。为了能连贯地录、放到后续的存储空间,在操作到达该行末之前,应发出第二个SPI指令将IAB 置1,否则器件在同一地址上反复循环。这个特点对语音提示功能很有用。RAC脚和IAB位可用于信息管理。

2.5 功放电路

LM386是美国国家半导体公司生产的音频功率放大器,主要用于低压消费产品。为

了使外围组件至少,内置的电压增益是20。但外部电阻器和电容器之间增加1脚和8脚和电压增益可调任意值,直到200。同时,输出自动偏置电源电压的一半。6v的静态功耗只有24mW。LM386的封装形式有塑封8引线双列直插式和贴片式。如图2-9所示。

图2-9 LM386封装图

本设计中使用+5V(VCC)电源电压供电,电路连接图如图2-10所示,图中采用的是增益为200dB的接法。

12

图2-10 功放电路连接图

2.6 晶振电路

STC89C52片内有一个高增益的反相放大电路,它有两个端口,输入端引脚是XTAL1,输出端引脚是XTAL2,因为单片机需要有用的时钟信号,所以该反相放大电路利用外接的石英晶振和电容,构成了稳定的自激震荡电路,它产生的脉冲信号经过内部的二分频后直接被送入了单片机内部。如图2-11所示。

图2-11 晶振电路

13

3 系统软件

3.1 设计思想

STC89C52单片机作为主控芯片控制LCD1602与ISD4004数码语音芯片,实现语音报站和站名显示。使用最简单易操作的按键方式。在本次软件设计中,我主要设计了4站,通过三个按键进行控制。具体如下:

Start键——起始键

现象:ISD4004播报“欢迎乘坐”,同时LCD1602上显示“Huan Ying Cheng Zuo”。 Stop键——停止报站,Next键——下一站,

现象:num=1,ISD4004播报“欢迎乘坐”,同时LCD1602上显示“Huan Ying Cheng Zuo”。

num=2,ISD4004播报“首义学院到了,请从后门下车,下车请当心;车辆起步,请坐稳扶好,前方李纸路东方桥”,同时LCD1602上显示“Shou Yi Xue Yuan Dao Le”。

num=3,ISD4004播报“东方桥到了,请从后门下车,下车请当心;车辆起步,请坐稳扶好,前方停靠雅安街”,同时LCD1602上显示“Dong Fang Qiao Dao Le”。 num=4,ISD4004播报“雅安街到了,请从后门下车,下车请当心;车辆起步,请坐稳扶好,前方停靠瑞安街”,同时LCD1602上显示“Ya An Jie Dao Le”。

num=5,ISD4004播报“谢谢乘坐本次公交车”,同时LCD1602上显示“Xie Xie Cheng Zuo”。

3.2 模块程序设计

在本次设计中我针对武汉916公交车,从中取了“首义学院,东方桥,雅安街,瑞安街”这4站进行了单边线路的设计。 3.2.1 软件主流程图

接入电源后,开始初始化ISD4004和LCD液晶模块,当按下一个按钮进行检测时,对关键值进行判断,根据关键值,系统就会有相应的显示程序和语音播放程序的执行,以实现站台信息的播报功能。如图3-1所示是软件主流程图。

14

开始

结束 图3-1 软件主流程图 Y 液晶模块,语音模块初始化 延时去抖 是否有键按下? N 判断键值及mun值 根据键值及mun值执行程序 3.2.2 ISD4004语音模块录放音

在本次软件程序设计中,我总共设置了4个按键,放音键(Start=P2.6),停止键(Stop=P2.7),录放音地址移位键(Next=P2.0),复位键(Reset=P2.1)。当按下start键时,语音模块就从0X05开始录音,录好一段音后,按下Stop键,停止录音。

按下Next键后,录音地址往往后移100,此时再按下Start键,开始第二段录音。如此,便可实现多段录音。图3-2为录音流程图。图3-3为放音流程图。

15

图3-2 录音程序流程图

16

图3-3 放音程序流程图

17

3.2.3 LCD1602

在我反复的试验过后发现液晶显示模块是在系统上电后进行初始化的,还有就是液晶显示部分是按照数组序号显示字符程序的,table是显示的数组序号,每站的站名根据数组的次序依次出现。LCD1602的程序流程图如图3-4。

3.2.4 按键部分

图3-4 LCD1602程序流程图

用扫描的方法对按键部分进行操作,当被检测到按键按下时,系统就会对键值进行判断,并进行相应的显示程序与语音播放程序之间转换,从而达到语音报站和液晶屏上显示站台信息的功能。图3-5是本次设计的按键程序流程图。

18

图3-4 按键程序流程图

19

4 仿真过程与分析

我用Proteus对单片机的软件进行仿真,还有我选择了可以显示汉字的LCD1602液晶模块。下面主要介绍一下1602的工作原理。

根据液晶的物理特性我们可以用LCD1602显示站台信息,使用电压对显示这块进行控制。LCD1602内带字符发生器的控制器可以比较简单显示字符,让控制器在文本,根据列的数量开始在液晶显示排名,每一行显示对应的内存地址,设置一个指针,我们可以发送相对应的字符代码。在设计中,51单片机的P1^0,P1^1,P1^2端口分别与LCD1602液晶显示模块的rs,rw,e连接,进行程序的读写数据,字符操作。

在此次仿真过程中,我总共设计了4个按键,Stop键:停止报站,Next键:显示下一站站台信息,Start键:继续上一站台报站,Reset键:重新设置报站。当按下Start键时,LCD上显示“Huan Ying Cheng Zuo”,同时LED1亮;如果当前的站是Shou Yi Xue Yuan Dao Le”,当按下Next键时,LCD上显示Dong Fang Qiao Xiao Le”,此时LED2亮,LED3灭;当按下Next键时,LCD上显示“Ya An Jie Dao Le”,此时LED4亮,LED3灭。当按下Stop键时,LCD上显示“Xie Xie Cheng Zuo”。

20

5 测试结果

5.1 测试环境

软件测试环境有Keil,Vw,Proteus,STC这四类。Keil和Vw主要用于程序的编写以及运行。Keil C51是美国Keil Software公司开发的系统,C语言在这个系统上运行,它的结构功能,还有它的可读性都是比较不错的。我用Proteus这个软件对我所做的实物进行一些功能的仿真。STC作为核心的主控芯片,承载着大部分程序的烧录任务,也是这次设计的主要芯片。硬件测试的环境是winXP系统。

5.2 测试结果

按下Start键——起始键

现象:ISD4004播报“欢迎乘坐”,同时LCD1602上显示“Huan Ying Cheng Zuo”。 按下Stop键——停止报站,Next键——下一站,

现象:num=1,ISD4004播报“欢迎乘坐”,同时LCD1602上显示“Huan Ying Cheng Zuo”。

num=2,ISD4004播报“首义学院到了,请从后门下车,下车请当心;车辆起步,请站稳扶好,前方东方桥”,同时LCD1602上显示“Shou Yi Xue Yuan Dao Le”。

num=3,ISD4004播报“东方桥到了,请从后门下车,下车请当心;车辆起步,请站稳扶好,前方停靠雅安街”,同时LCD1602上显示“Dong Fang Qiao Dao Le”。

num=4,ISD4004播报“雅安街到了,请从后门下车,下车请当心;车辆起步,请站稳扶好,前方停靠瑞安街”,同时LCD1602上显示“Ya An Jie Dao Le”。

21

6 总结

在这次毕业设计当中我主要做了以下这些工作:

对课题的背景进行了了解,对课题研究的现实意义进行了认真的学习,还有就是这个设计的可行性是否存在我也认真地进行了分析;

分析了设计当中的系统硬件的设计,并画出了总体框图,介绍了各个模块的实现方式和工作原理;

对这次毕业设计中的语音报站方式,进行了分析并作出了正确的选择;

分析了系统软件的设计,首先给出总体的思路画出程序流程图,认真仔细地对程序段进行的分析;

分析了系统的调试,对最终结果的产生进行确定,汇总。

22

7 致谢

在毕业设计的过程中,我从一无所知到对自己专业知识的一定掌握,真的是感觉到无比的满足与欣慰。在这期间,我非常感谢我的指导老师还有我身边的同学跟网友。因为这次毕业设计是我人生中第一次做出专业的东西来。以前通过课程设计有做过简单的,但是都是跟同学一起做的,所以这次的压力很大。我觉得在设计过程中,最难的就是Proteus仿真,因为我的编程水平是真的差,思维也不够活跃。在仿真的时候,我是先在网上找的资料在根据要求先画好了仿真图,但是网上的东西不能满足我的要求,我又自己理解了一遍网上资料在总结出对我有用的东西。仿真这一块花了我很多时间,主要是程序,Proteus操作倒是没什么多大的问题。

在这次硬件设计过程中,我学到了很多,比如这次的LCD1602,一开始以为自己无法解决的,后来网友给了我很多液晶显示方面的视频,我花了点时间去学习,然后用自己的想法慢慢的完成了任务。LCD1602相对比较简单,我能够独立解决。至于ISD4004语音模块就有点难了,我求助了我们班的学霸。在以后的设计工作中,可以继续研究这一课题,可以让按键这块在进一步升级下。在这次的毕业设计中,我要感谢哪些帮助我的同学,因为他们的耐心,真是让我学到很多东西,顺利完成了我的毕业设计。在这里我非常感谢他们,也感谢我的导师——雷鑑铭老师,雷老师的认真负责,使得我都能够及时完成毕业设计任务。总之,谢谢身边一切给过我帮助的人。

23

参考文献

[1] 周国雄,许明情.城市公交车自动报站系统设计及应用[A].装备制造技术,2007 [2] 魏银库,公交车自动语音报站及文字信息同步显示系统设计[A].计算机应用,2009 [3] 黄艳国,许伦辉,眭相林.基于GPS公交车自动报站系统[A].交通信息与安全, 2009

[4] 张雅兰.公交车自动报站系统改进研究[A].广西工学院学报,2010 [5] 谭浩强,C语言程序设计教程第三版[M].高等教育出版社

[6] 张义和,王敏男,许宏昌,余春. 列说51单片机(C语音版)[M]人民邮电出版社 [7] 华成英,童诗白. 模拟电子技术基础[M].高等教育出版社

[8] Xing Haixia Suo Minghe Zhang Huaiqiang (Eeast China Institute of Technology Fuzhou Jiangxi 344000);Design and Application of Voice System Based On ISD4004[J];Science Information;2008

[9] 李建波.基于AT24C512的汉字库加载技术及显示仿真[A].液晶与显示,2010 [10] 李吉志,邓发明,张本文.基于Proteus的公交车液晶显示报站系统的设计与仿真[A].液晶与显示,2009

[11] College,Zhengzhou 450004,China);Application of Voice Alarming Circuit Based on ISD2590 in Coal Mine Comprehensive Monitoring and Control System[J];Industry and Mine Automation;2009-07

[12] 李华.《MCS-51 系列单片机实用接口技术》[M].北京航空航天大学出版社,1993 [13] 柳延领,王金红.基于ISD1420 语音播报器的研究与实现[J].科苑论坛,2008 [14] 颜世强,李树广.公交车自动报站系统设计[J].工业控制计算机,2004 [15] 李建波.基于AT24C512的汉字库加载技术及显示仿真[A].液晶与显示,2010

24

附录1

图1 总体实物图

25

本文来源:https://www.bwwdw.com/article/cku8.html

Top