语音播报无人公交车硬件设计-毕业论文.doc
毕业设计(论文)题目: 语音播报公交车硬件设计 系 别 信息工程系专业名称 电子信息工程班级学号 098205213学生姓名 胡 玉 沛指导教师 徐 琦二O一三 年 五 月 学士学位论文原创性声明本人声明,所呈交的论文是本人在导师的指导下独立完成的研究成果。除了文中特别加以标注引用的内容外,本论文不包含法律意义上已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申请的论文或成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 3013年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权南昌航空大学科技学院可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 作者签名: 日期: 2013年 月 日导师签名: 日期: 2013 年 月 日 毕业设计(论文)任务书I、毕业设计(论文)题目:语音播报公交车硬件设计II、毕 业设计(论文)使用的原始资料(数据)及设计技术要求:该系统能够控制公交车站点的播报、服务用语的友情提示,并在显示屏上进行相应的显示。使用单片机与专用的语音处理芯片相结合实现语音存储与回放,即实现语。音的分段录取与组合回放。语音播报和LCD控制通过单片机来实现,用普通彩电遥 器实现不同信息的播报和显示。其中按键功能分别为:K1、 K2 分别为起始站、 终、一站报站键,进行相应站台的提示信息;K5 为重复键,按下此键重复前一按键的播播报内容。键盘技术的控制,语音播报的调试。III、毕 业设计(论文)工作内容及完成时间: 工作安排如下: 1、查阅文献,翻译英文资料,书写开题报告 第1-4周 2、相关资料的获取和必要知识的学习 第5-9周 3、设计系统的硬件和软件模块并调试 第10-14周 4、撰写论文 第15-17周 5、总结,准备答辩 第18周 、主 要参考资料:1张先庭.单片机原理,接口与C51应用程序设计M. 北京:国防工业出版社2 尹建华.微型计算机原理与接口技术M. 高等教育出版社14-163 周波,冯顽童,胡建龙,等.公交车自动报站系统的设计J.四川理工学院学报4 韦丽华,李文举,刘丽娟.ISD2500系列语音芯片及其在微机系统中的应用J.5唐颖姚锋赵茂娟.基于ISD2560的公交车报站系统的模拟设计J.电脑知识与技术6 李吉志,邓发明,张本文.基于Proteus的公交车液晶显示报站系统的设计7 肖海荣,王凤瑛,杨金清等. 基于AT89C2051和ISD2560的录放音系统设计J8 杨延宁,刘立军,张志等.基于Proteus的单片机汉字点阵显示电路设计J.9 Isao Takahashi,Toshihiko Noguchi.A new responese and high-efficiency control strategy of an motorJ.IEEE Trans on Ind Appl,1986,22(5):820-827.10Depenbrock M.Direct self-control(DSC) of inverterfed machineJ.IEEE Trans on P E, 1998,3(4):420-429. 电子信息工程 系 电子信息工程 专业类 088205213 班学生(签名): 填写日期: 2013 年 03 月 6指导教师(签名): 助理指导教师(并指出所负责的部分):信息工程 系主任(签名):附注:任务书应该附在已完成的毕业设计说明书首页。 语音播报公交车硬件设计学生姓名:胡玉沛 班级:098205213 指导老师:徐琦摘要: 近年来,语音合成、语音识别、语音存储和回放等语音信号处理技术研究的突飞猛进,越来越广泛的应用,为数字语音录放系统提供了新的发展空间。目前基于单片微机的语音系统有如雨后春笋,应用越来越广泛。如电脑语音钟、语音型数字万用表、手机话费查询系统、排队机、监控系统语音报警以及公共汽车报站器等等。对语音的采集、处理从以前简单的波形编码转变为进行参数编码、压缩,从而大大减少了存储数据。利用集成的语音录放芯片可以得到质量令人满意的结果。ISD1420是ISD系列单片语音录放集成电路的一种,录音时间为20s,采样频率为8KHz。本设计采用AT89S52单片机与ISD1420语音芯片组成的公交语音报站系统,可以实现语音的分段录取、组合回放,通过软件的修改还可以实现整段录取,循环播放,结合数码管显示模块,按键模块,可实现简单的语音拨报功能。系统硬件电路简单,调试方便,性价比高,实用性强。关键词:公交报站 语音录放 单片机控制 指导老师签字: Voice broadcast bus hardware design Student Name: Hu yu pei Class: 098205213 Supervisor: Xu qiAbstract:In recent years, speech synthesis, speech recognition, speech storage and playback of voice signal processing technology research by leaps and bounds, more and more widely used, for the digital voice recording system, provides a new space for development. Now the voice system based on single chip microcomputer is like spring, more and more widely applied. Such as computer voice clock, mobile phone, voice type digital multimeter query system, PaiDuiJi, voice alarm monitoring system, and the bus stops, etc. Of phonetic acquisition, processing from the previous simple waveform coding into parameter coding, compression, thus greatly reduces the storage data. Using integrated voice playback chip quality can be obtained satisfactory results. ISD1420 is monolithic ISD series voice playback a kind of integrated circuit, the recording time is 20 s, for 8 KHZ sampling frequency.This design adopts the AT89S52 single-chip computer and voice bus stops system composed of ISD1420 voice chip, can realize speech segmentation is admitted, playback, through software modifications still can realize the whole period of admission, looping, combined with the digital tube display module, keys module, which can realize the simple voice dial to function. The system hardware circuit is simple, easy to debug, cost-effective, strong practicability.Keywords: bus stops voice recording Single-Chip Microcomputer control Signature of Supervisor: 目 录目 录1 引 言12 公交报站系统具体设计方案3方案1:使用8051单片机和语音合成电路3方案2:使用AT89S52和ISD142033 公交报站系统硬件电路设计53.1 报站系统整体框图53.2 单片机最小系统设计53.2.1 单片机电路63.2.2 复位电路63.2.3 时钟电路73.3 公交报站系统语音处理电路83.3.1 ISD1420介绍83.3.2 语音报站硬件连接113.4 LED显示电路设计123.5 按键输入模块电路154 公交报站系统软件设计184.1 程序流程图184.2 程序清单185 公交报站系统调试195.1 硬件调试195.2 软件调试195.3 制版软件PROTEL99介绍206 结 论24致 谢25参考文献26附录1:原理图纸27附录2:程序清单28语音播报公交车 1 引言目前,随着城市区域的扩大,旅游资源的发展,城市人口的增加,人民生活水平的提高,公交车已经成为城市人民生活用品不可替代的交通工具,它的运行状况直接影响到人们的生活,同时也成了衡量当地城市形象的一个标准。因此,发展良好的公交服务事业将给人们的生活带来很大的方便,进而提高当地城市形象。近年来,单片机技术迅猛发展,广泛应用于诸多领域,在公交事业上已经运用单片机来实现公交报站这项功能。但由于现在的公交车大部分还是采用人工手动控制的报站器,这不但影响了公交司机的正常驾驶,分散了驾驶员的注意力,同时也加重了他的工作的负担。不过这相对于以前的人工报站已经有了很大的提高,但同时由于人工控制存在着差错,给人们的出行仍来不方便。为了使大家的生活更加便捷,让公交车驾驶员的工作量能有效减轻,减少报站出错等的问题,故运用单片机技术,语音芯片技术、无线收发技术以及液晶显示技术溶于一体设计出既能手动又能自动报站的公交车语音自动报站系统,使每辆公交车都能准确无误地实现报站,让每位乘客准确知道自己的位置。本次设计是课题是“基于单片机的公交车自动报站系统”,设计中通过单片机对按键模块、液晶模块及语音模块的综合控制实现全自动语音报站的功能。单片机体积小,重量轻,具有很强的灵活性而且价格便宜,得到越来越广泛的应用,例如工业控制领域、家电产品、智能化仪器仪表、计算机外部设备,特别是机电一体化产品中都有重要的用途。20世纪80年代中期,Intel公司将8051内核使用权以专利互换或出售的形式转给世界许多著名IC制造厂商,这样8051就变成有众多制造厂商支持的、发展出上百个品种的大家族。到目前为止,其他任何一个单片机系列均未发展到如此的规模。正因为51单片机的运用是如此广泛,因此学习单片机的运用是非常重要的。学好单片机也是学习其他嵌入式控制器如ARM、DSP的基础,任何嵌入式控制器都离不开单片机所涵盖的中央处理器、定时器、中断器控制、IO口控制器、串行通讯控制器、12C总路线控制器、片内外存储控制器、汇编语言、C语言及操作系统的概念。因此,学好单片机,再去学习其他式控制器如ARM、DSP是比较简单的。可以说学好单片机是其他入微机处理器的一个台阶。2 公交报站系统具体设计方案实现公共汽车自动报站是公车智能化的一份子,是促进智能交通的一个不可缺少的步骤,也是使城市交通与社会经济和谐发展的重要组成部分。因此,车站自动报站系统的设计方案应该从实际情况考虑,对于目前公车报站系统存在的问题进行改善,实现车站报站的自动化,达到准确、及时、不需要人工介入的目的。本章介绍了两种不同的方案,并将其进行对比。方案一:使用8051单片机和语音合成电路利用8051单片机作为CPU来进行总体控制,当汽车到达某站时,汽车司机通过键盘来控制本系统进行工作,并且,系统将使用状态指示电路,向司机指示出当前的行驶方向及站号(如与实际方向不符,司机可通过键盘来调整)。原理图框图如图2.1所示。语音合成电路8051小系统LED点阵显示电路语音输入输出电路键盘状态指示电路 图2.1 方案一原理框图本系统使用8051作为CPU,由CPU来控制语音合成芯片TC8830AF,使其工作在CPU控制模式下。当系统进行语音再生时,由CPU控制语音合成电路中的语音芯片来读取其外接的存储器内部的语音信息,并合成语音信号,再通过语音输出电路,进行语音报站和提示。CPU同时通过程序读取汉字信息,送入LED点阵显示电路来进行汉字提示。当系统进行语音录制时,语音信号通过语音输入电路输入给语音合成电路中的语音合成芯片,由语音合成芯片进行数据处理,并将生成的数字语音信息存储到语音存储芯片中,从而建立语音库。方案二:使用AT89S52和ISD1420采用ISD1420集成语音芯片外加一些限流电阻,耦合电容等元器件与单片机最小系统板以及LM386集成小功率放大器组合成智能语音播报系统电路,通过单片机控制芯片的录放音控制引脚实现ISD1420的录放音。同时通过单片机的键盘扫描与数码管的动态扫描,实现语音系统的播报功能。 此方案是ISD1420集成语音芯片和AT89S52单片机组成的语音播报系统。ISD1420片内EEPROM容量为128K,仅有8个地址输入端。但其与单片机控制电路较ISD2532容易连接,录放音控制过程较简单,且ISD1420起始地址较容易计算。由于ISD1420芯片在播放过程中,输入地址保持不变,因此可以很好的将录制的原声语音芯片控制信号CPU控制定时作为到站脉冲到站检测还原播放出来。次方案语音质量优胜,并且有断电语音保护。原理框图如图2.2所示。图2.2 方案2原理框图(1)CPU控制:程序中将计数值于预置值进行比较,判断是否到站,当到站时就输出信号控制语言芯片进行报站。(2)控制按键:用于手动控制到站后的清零。(3) 语言芯片:由专用语音芯片ISD1420组成,可擦写,便于在不同公交线上使用。(4)预置存储:采用预先设置好在程序里的方式对站点信息存储。 (5)LED:显示到站站台名称。将方案一与方案二进行比较,方案二是采用8051单片机控制,通过键盘来控制报站时刻,从方便使用的角度考虑,本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。且从使用及经济的角度考虑放弃了第一个方案。ISD1420的条件已能符合本设计要求以及其成本相对较低,而且 无耗电信息存储,省掉备用电池;无需专用编程或开发系统,重现优质原声,没有常见的背景噪音。且方案二录放后立即进入维持状态仅需0.5A电流,只需单一5伏电源供电,保证了操作的安全,选用的语音芯片是美国ISD公司的ISD1420,该芯片与其它语音芯片相比较,其语音音质好,录放时间长,因此我们选择了方案2。3 公交报站系统硬件电路设计3.1 报站系统整体框图 报站系统包括最小系统部分,语音模块部分,按键部分,语音输出扬声器部分和数码管显示5部分,其整体结构如下图:单片机最小系统板控制模块ISD1420语音录放模块键盘扫描扬声器数码管显示模块图3.1 整体结构框图3.2 单片机最小系统设计单片机的最小系统(电路图见图3.2)是由组成单片机系统必需的一些元件构成的,除了单片机之外,还需要包括电源供电电路、时钟电路、复位电路。本实验单片机方面着重介绍时钟电路、复位电路。本次我们采用了Atmel 公司的AT89S52,该单片机主要特点如下:(1) AT89S52系列单片机以8051为内核,兼容MCS-51系列单片机。(2) AT89S52系列单片机内、内部含有Flash存储器,在系统开发可以反复擦写。(3) AT89S52采用静态时钟方式,可以节省电能。(4) AT89S52支持ISP(在线编程),不需要把单片机从电路板取下来就可以擦写程序。 3.2.1 单片机电路AT89S52单片机的最小系统如图3.2所示。AT89S52单片机主要由几个部分组成:1个8位中央处理单元(CPU)、片内Flash存储器、片内RAM、4个8位的双向可寻址I/O口、1个全双工UART(通用异步接收发送器)的串行接口、2个16位的定时器/计数器、多个优先级的嵌套中断结构,以及一个片内振荡器和时钟电路。在AT89S52单片机结构中,最显著的特点是内部含有Flash存储器,而在其他方面的结构,则和Inter公司的8051的结构没有太大的区别。本设计采用AT89S52主要由于其操作简单,芯片外围电路少,成本低。 图3.2 单片机最小系统电路3.2.2 复位电路 单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第一个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即RST为高电平期间),P0口为高组态,P1P3口输出高电平;外部程序存储器读选通信号PSEN无效。地址锁存信号ALE也为高电平。根据实际情况选择如图3-2所示的复位电路。该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C1上的电压很小,复位下拉电阻上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,由于电容C1足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。增加手动复位按键是为了避免死机时无法可靠复位。当复位按键按下后电容C1通过R1放电。当电容C1放电结束后,RST端的电位由R1与R分压比决定。由于R1<<R 因此RST为高电平,CPU处于复位状态,松手后,电容C1充电,RST端电位下降,CPU脱离复位状态。R1的作用在于限制按键按下瞬间电容C1的放电电流,避免产生火花,以保护按键触电。图3.3 复位电路3.2.3 时钟电路 当使用单片机的内部时钟电路时,单片机的XATL1和XATL2用来接石英晶体和微调电容,如图所示,晶体一般可以选择3M24M,电容选择30pF左右。我们采用晶振为12MHz,震荡周期为1s,机器周期为1s。所以这个晶振可以满足这个系统的要求。 图3.4 时钟电路 通过电路我们可以清晰的分析出外部晶振电路是非常容易实现的,其主要应用AT89S52作为主控芯片,由于本实验AT89S52使用12MHZ的晶体振荡器作为振荡源,而且单片机内部带有震荡电路,所以外部只需连接一个晶振和两个电容即可。3.3 公交报站系统语音处理电路3.3.1 ISD1420介绍 ISD1420是美国ISD公司出品的新型单片优质语音录放电路,较之以往所有的语音电路,具有专利技术的模拟处理存储方式,使录放音质极佳,没有常见的的背景噪音,且电路断电后语音内容仍不丢失。电路内部由振荡器、语音存储单元、前置放大器、自动增益控制电路、抗干扰滤波器、输出放大器组成。一个最小的录放系统仅由一个麦克风、一个喇叭、两个按钮、一个电源、少数电阻电容组成。 录音内容存入永久存储单元,提供零功率信息存储,这个独一无二的方法是借助于美国ISD公司的专利直接模拟存储技术(DAST TM)实现的。利用它,语音和音频信号被直接存储,以其原本的模拟形式进入EEPROM存储器。直接模拟存储允许使用一种单片固体电路方法完成其原本语音的再现。不仅语音质量优胜,而且断电语音保护。目前,ISD1420录放时间为20秒,(APR9301录放时间为20秒-30秒,RPR9600录放时间为50秒-60秒) ,1.ISD1420特点重现优质原声基本上不耗电信息存储信息可保存100年,可反复录放10万次选址处理多达160段信息具有自动节电模式维持状态,仅需0.5A电流2.ISD1420电特性工作电压:5V静态电流:0.52A工作电流:1530mA图3.5 语音芯片结构图3.各引脚功能说明图3.6 引脚图表3.1 各引脚功能说明,4.ISD1420地址模式 A0-A7地址输入有双重功能,根据地址中的A6,A7的电平状态决定功能。如果A6,A7有一个是低电平,A0A7输入全解释为地址位,作为起始地址用。根据 PLAYL、PLAYE或REC的下降沿信号,地址输入被锁定。 A0-A7 由低位向高位排列, 每位地址代表125 毫秒的寻址, 160 个地址覆盖20 秒的语音范围(160*0.125s=20s), 录音及放音功能均从设定的起始地址开始,录音结束由停止键操作决定,芯片内部自动在该段的结束位置插入结束标志(EOM);而放音时芯片遇到EOM标志即自动停止放音。5.ISD1420操作模式 如果A6,A7同为高电平时,它们即为模式位。地址位仅作为输入端,在操作过程中不能输出内部地址信息。使用操作模式有两点要注意:1、所有初始操作都是从0地址开始,0地址是ISD1420存储空间的起始端,以后的操作可根据模式的不同,而从不同的地址开始工作。当电路中录放音转换或进入省电状态时,地址计数器复位为0。2、当PLAYL、PLAYE或REC变为低电平,同时A6,A7为高电平时,执行对应操作模式。这种操作模式一直执行到下一个低电平控制输入信号出现为止,这一刻现行的地址/模式信号被取样并执行。操作模式可以与微控制器一起使用,也可用硬件连线得到所需系统操作。A0-信息检索(PLAYE或PLAYL only)不知道每个信息的实际地址,A0可使操作者快速检索每条信息,A0每输入一个低脉冲,可使得内部地址计数器跳到下一个信息。这种模式仅用于放音,通常与A4操作同时应用。A1- 删除EOM标志(REC only)可使录入的分段信息成为连续的信息,用A1可删除掉每段中间信息后的EOM标志,仅在所有信息后留一个EOM标志。当这个操作模式完成时,录入的所有信息就作为一个连续的信息放出。A2- 未用。A3- 循环重放信息(PLAYE或PLAYLonly)可使存于存储空间始端的信息自动地连续重放。一条信息可以完全占满存储空间,那么循环就可以从头至尾进行工作,并由始至终反复重放。A4- 连续寻址:在正常操作中, 当一个信息放出, 遇到一个EOM标志时,地址计数器会复位,A4可防止地址计数器复位,使得信息连续不断地放出。A5- 未用。6.ISD1420地址功能表 表3.2 ISD1420地址功能表3.3.2 语音报站硬件连接由于系统采取自动报站方式,需要预录取站名及提醒语句,电路中必须加入语音电路。本系统采用ISD1420P语音录放集成芯片。芯片采用多电平直接模拟量存储技术,每个采样值直接存储在片内的闪烁存储器中,因此能够非常真实、自然地在现语音,避免了一般固体录音电路固置化和压缩造成的量化噪声和多属声。单片机和ISD1420之间的连接较少,其中ISD1420的AO-A7口分别接单片机对应的P1口的,PLAYE接单片机的中断引脚INT1,REC接单片机的中断引脚INT0口。此外由于ISD1420的工作电压为5伏,而单片机所需供电电压为5伏,和单片机通用5伏电源。数据接收模块将接收到的信号送入单片机,单片机将此信号进行解码,信号经过校验确认正确后,然后通过显示模块显示出来;另一方面根据信号读取相应的地址,送给语音芯片,启动语音芯片送出声音信号,完成语音报站。其硬件连接图如下:图3.7 ISD1420P原理图3.4 LED显示电路设计现在驱动LED数码管流行采用单片机设计电路,但发现一些显示(LED数码管)电路设计复杂,没有充分利用单片机的电器特点、没有采用“硬件软化”的方法。直接用单片机的8位数据口作为数码管的8段显示驱动口。这种显示方式虽然简便,电路也最简单,但显示的位数很少(最多四位)。但已经满足了此次设计要求,所以选用此种方式。(1) LED的结构原理发光二极管是一种将电能转变成光能的半导体器件。简称LED(Light Emitting Diode)。LED数码管结构简单,价格便宜。八段LED显示管有八只发光二极管组成,编号是a、b、c、d,e,f和SP,分别和同名管脚相连。七段LED显示管比八段LED少一只发光二极管SP,其它和八段LED相同。在给每个二极管通电后,二极管发光后表示要显示的数字的一部分,当组成这个数字的所有二极管都发亮时,才能正确的显示这个数字。LED显示器是单片机应用系统中常用的廉价输出设备。它是由若干个发光二极管组成的,当发光二极管导通时,相应的一个点或一段笔画发亮。控制不同组合的二级管导通,就能显示出各种字符。使用LED显示器的时候,为了显示数字或是字符,要为LED显示器提供代码,因为这些代码是通过各个段的亮与灭来显示不同字符的,因此称之为段码。7段LED的段码如下表3所示:表3.3 段LED的段码显示字符共阴极段码共阳极段码显示字符共阴极段码共阳极段码 03FHC0Hc39HC6H 106HF9Hd5EHA1H 25BHA4HE79H86H 3 4FHB0HF71H8EH 466H99HP73H8CH 5 6DH92HU3EHC1H 67DH82HT31HCCEH 707HF8Hy6EH91H 8 7FH80HH76H89H 9 6FH90HL38HC7H A77FH88H“灭”00HFFH B7CH83H(2) LED 显示器工作原理由N个LED显示块可以接成N位LED显示器。N个LED显示块有N根位选线和8*N根段选线。根据显示方式的不同,位选线和段选线的连接方法也各不同。段选线控制显示字符的字型,而位选线为各个LED显示块的公共端,它控制该LED显示位的亮,暗。ALED静态显示方式LED显示器工作于静态显示方式时,各位的共阴极或是共阳极连接在一起并接地(或是+5V);每段的段选线(adp)分别与一个8位的锁存器输出连接。所以称为静态显示。LED的显示字符一经确定,相应锁存器的输出将维持不变,直到显示另一个字符为止。也正是因为如此,静态显示的亮度都较高。BLED动态显示方式在多位LED显示时,为了简化硬件电路,通常将所有位的段选线相应的并联在一起,由一个8位I/O口控制,形成段选线的多路复用。而各位的共阴极或是共阳极分别由相应的I/O线选址,实现各位的分时选通。如以一个四位段显示为例来说明,其中段选线占用一个8位I/O口,而位选线占用一个4位I/O口。由于各位的段选线并联,段码的输出对于各位来说都是相同的。因此次,同一时刻,如果各位选线都处于选通状态的话,4位LED将显示相同的字符。若要各位LED能够显示出与本位相应的显示字符,就必须采用扫描显示方式,即在某一时刻,只要让某一位的位选线处于选通状态,而其他各位的为选线处于关闭状态,同时,段选线上输出相应位要显示字符的段码。这样同一时刻,只让下一位的位选线处于选通状态,而其他各位的位选通处于关闭状态,同时,在段选线上输出相应位将要显示字符的段码,则同一时刻,只有选通位显示出相应的字符,而其他各位都是熄灭的。如此循环下去,就可以使各位显示出将要显示的字符。虽然这些字符上在不同时刻出现的,而且同一时刻,只有一个位显示,其他各位熄灭,但是LED显示器的余辉和人眼的视觉暂留作用,只要每位显示间隔足够短,则可以造成多位同时亮的假象,达到同时显示的目的。数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,本次实验为静态驱动。 静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×840根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。图3.8 静态显示数码管原理图3.5 按键输入模块电路单片机控制系统中,往往只需要几个功能键,此时,可采用独立式按键结构。1. 独立式按键结构 独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。 独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,不宜采用。2.矩阵式键盘 I/O端线分为行线和列线,按键跨接在行线和列线上,按键按下时,行线与列线发生短路。 特点: 占用I/O端线较少; 软件结构教复杂。 适用于按键较多的场合。3.键盘扫描控制方式 程序控制扫描方式 键处理程序固定在主程序的某个程序段。 特点:对CPU工作影响小,但应考虑键盘处理程序的运行间隔周期不能太长,否则会影响对键输入响应的及时性。 定时控制扫描方式利用定时/计数器每隔一段时间产生定时中断,CPU响应中断后对键盘进行扫描。 特点:与程序控制扫描方式的区别是,在扫描间隔时间内,前者用CPU工作程序填充,后者用定时/计数器定时控制。定时控制扫描方式也应考虑定时时间不能太长,否则会影响对键输入响应的及时性。 中断控制方式中断控制方式是利用外部中断源,响应键输入信号。特点:克服了前两种控制方式可能产生的空扫描和不能及时响应键输入的缺点,既能及时处理键输入,又能提高CPU运行效率,但要占用一个宝贵的中断资源。图3.9 按键电路原理图 对于此次设计来说我们要准确的显示我们所对应的信息,每按下一次按键要显示所显示的信息,这按键主要用来报站而设计的。这样操作方便而且实惠。按键电路采用中断模式。当有按键按下时,系统产生中断,CPU响应中断后,开始计数,即查询键号,通过软件来实现该键号所对应键的功能。本设计采用独立按键方式,K2为终点站报站键;K3、 K4 为上一站、 下一站报站键;K5为重复键,按下此键重复前一按键的播报内容。4 公交报站系统软件设计4.1 程序流程图本系统中的软件设计主要分为系统初始化、电话号码存储与修改、显示、控制摘挂机、拨号、信号音处理等部分,每个功能模块对于整体设计都是非常重要的。单片机AT89S52通过软件程序才能完成各部分的功能。系统程序分为两个中断模块来完成所要求的功能。系统程序流程图如图4.1所示:4.2 程序清单 程序清单详见附件2.5 公交报站系统调试5.1 硬件调试基本电路板检查:根据前面的研究完成各个电路模块的原理设计并生成PCB图,制作电路板,进行实验调试。(1)检查印制板的印制线是否有断路,是否有毛刺,是否与其它线或是焊盘粘连,焊盘是否有脱落,过孔是否有未金属化现象等等。(2) 先用万用表复核目测中认为可疑的连接或是接点,检查它们的通短状态是否与设计规定相符。再检查各种电源线与地线之间是否有短路现象,如有再仔细检查出并排除。短路现象一定要在器件安装及加电前检查出。(3)路接通电源后,用手摸一下芯片是否发热,如果发热,立即关掉电源,稍后再进行再次检测;如果没有发热,再测试芯片的VCC端电压是否达到设计要求,接地端是否都接地。主控模块调试:在本次设计中,主控模块是非常重要的部分,它不仅是本次设计的核心,同时在后面的显示也是起关键的作用。在本次硬件调试中也遇到了问题,接上电源的时候,数码管不亮,没有任何显示,于是我做了如下的工作:(1)检查电源是否通电,发现指示灯亮着