毕业设计(论文)-基于单片机的报站器设计.doc

上传人:哈尼dd 文档编号:3283847 上传时间:2019-08-08 格式:DOC 页数:33 大小:1.78MB
返回 下载 相关 举报
毕业设计(论文)-基于单片机的报站器设计.doc_第1页
第1页 / 共33页
毕业设计(论文)-基于单片机的报站器设计.doc_第2页
第2页 / 共33页
毕业设计(论文)-基于单片机的报站器设计.doc_第3页
第3页 / 共33页
毕业设计(论文)-基于单片机的报站器设计.doc_第4页
第4页 / 共33页
毕业设计(论文)-基于单片机的报站器设计.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《毕业设计(论文)-基于单片机的报站器设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于单片机的报站器设计.doc(33页珍藏版)》请在三一文库上搜索。

1、基于单片机的报站器设计摘 要本文介绍了一种的公交车自动报站系统的设计原理,提供了一种以AT89C52单片机为核心,控制大屏幕LED点阵显示的硬件设计方案。系统主要通过AT89C52单片机做为系统CPU,处理包括键盘输入和LED显示屏显示站名的所有信号处理。系统扫描到有键按下后给CPU一个脉冲信号,然后CPU处理信号,确定所到站的站名, 再通过扫描驱动从LED显示屏上显示出所到站的站名。达到自动报站的作用。整个系统硬件设计包括键盘电路、复位电路、显示驱动电路、显示电路、内存扩展电路模块,语音控制模块。设本系统很大程度上提高公交车报站的准确性,可靠性。提高了公交系统的服务质量。促进城市经济发展和交

2、通变化的和谐发展。关键词 :AT89C52单片机,LED点阵,自动报站,AT24C64 STOP BASED ON SINGLE-CHIP DESIGNABSTRACTTheDesignofAutomaticBusStation-InformerThis article introduces a new methde to design the bus-stop reporting system。It provides a new scheme ,which is based AT89C52 microcomputer,to control the display of the LED lat

3、tice。 The system mainly through AT89C52 as the core system, controls keyboards input and LEDs display . The entire system through manual operation after receiving the keys to a system scan button press, Key subcontractors that determined a signal to the microcontroller, then the micro-processing of

4、signals from the accrued value added to determine the reliability of station names. Driving through the scanning from the LED display by the arrival station names. Reached semi-automatic stations role. The entire system includes some modules ;for example, the key subcontractors, the signal input mic

5、rocontroller, signal processing, LED Drivers and LED display program. LED display is the focus of the system.The system can greatly enhance bus stations accuracy, and improve the quality of service of the transportation system. It will promote the citys economic development and the harmonious develo

6、pment of traffic.Keywords:AT89C52chip microcomputer,LED lattice,reporting system,AT24C64目录前言1第1章 单片机的概述和设计方案21.1 单片机技术简介21.1.1单片机技术的发展21.1.2单片机技术的应用21.2课题任务及设计要求41.3 课题方案的论述与确定4第2章 系统硬件设计72.1单片机的选择和外围电路的设计72.1.1外部晶振的选用72.1.2复位电路72.2按键电路的设计82.2.1判键及其接口电路设计92.2.2键盘的工作方式102.3显示和驱动电路的设计102.3.1显示电路设计102.

7、3.2显示驱动设计102.4数据存储器的设计142.4.1 内存扩展电路142.5串行通信电路的设计16第3章 软件设计193.1串口通信软件的设计193.2下位机串行通信193.3 存储读写程序的设计20第4章 语音控制234.1语音控制模块设计234.2硬件电路连接234.3软件电路连接244.4 放音部分程序24结论28谢 辞29参考文献30附 录3133前 言随着国民经济的快速发展,城市建设规模不断扩大,大城市人口高度集中并大幅度增长,同时汽车保有量急剧上升,交通需求迅速扩大,而道路交通基础设施建设的发展则相对滞后。城市交通需求与供给之间的矛盾越来越突出,城市“乘车难”、“行车难”的局

8、面在加剧,交通阻塞呈现出点到线、由线到面的扩展趋势,交通拥挤、交通延误、交通阻塞以及由此引起的噪音、废气污染严重影响着居民的正常的生活以及社会经济的持续、健康发展。近年来,我国城市交通的现状已引起了政府、公众、社会各界的广泛关注,有关专家学者和交通工程师们在吸取各国城市交通发展经验的基础上,找到了一条解决我国城市交通发展问题的有效途径,即优先发展城市公共交通,以公共交通为杠杆降低城市交通需求总量,实现道路交通基础设施发展与交通需求增长的均衡。实施“公交优先”是解决我国城市交通发展问题的有效途径,也是我国目前城市交通发展的基本政策。公交智能化是智能交通的一个重要的子领域,同时也是落实“公交优先”

9、,使城市交通与社会经济和谐发展的重要组成部分。实施公交智能化,必须提高公交服务质量,而到站后的准确、及时报站就是一个方面,本设计基于AT89C52单片机、LED点阵、AT24C64、制作的公交车自动报站系统就能解决这方面的问题。从而,达到公共形象的提升。当前国内主要大城市的公交车大都采用人工报站,即每到一站由司机或者乘务员来进行报站。但有时由于受到各种因素如雨雪天路滑、车上拥挤、乘务员心情的变化等的影响,会出现报错站,漏报站的情况,给乘客特别是不熟悉本市地形的乘客带来了不必要的麻烦,从而影响到了一个城市的窗口形象工程建设。于是开发研制自动报站系统成为必然。第1章 单片机的概述和设计方案1.1

10、单片机技术简介1.1.1 单片机技术的发展所谓单片机是指在一个集成芯片中,集成微处理器、存储器、基本的I/0接口以及定时/计数、通信部件,即在一个芯片上实现一台微型计算机的基本功能。1970年微型计算机研制成功之后,随着就出现了单片机(即单片微型计算机)。美国Intel公司1971年生产的4位单片机4004和1972年生产的雏形8位单片机8008,特别是1976年MCS-48单片机问世以来,在短短的二十几年间,经历了四次更新换代,其发展速度大约每二、丁三年要更新一代、集成度增加一倍、功能翻一番。其发展速度之快、应用范围之广,己达到了惊人的地步。尽管日前单片机的品种很多,但其中最具典型性的当数I

11、ntel公司的MCS-51系列单片机。MCS-51是在MCS-48的基础上于80年代初发展起来的,虽然它仍然是8位的单片机,但其功能有很大的增强。由于PHILIPS, ATMEL, WELBORD, LG等近百家IC制造商都主产51系列兼容产品,具有品种全、兼容性强、软硬件资料丰富等特点。因此,MCS- 51应用非常广泛,成为继MCS-48之后最重要的单片机品种。直到现在MCS-51仍不失为单片机中的牡流机型。国内尤以Intel的MCS-51系列单片机应用最广。由于8位单片机的高性能价格比估计近十年内,8位单片机仍将是单片机中的主流机型。1.1.2 单片机技术的应用随着计算机技术的发展和在控制

12、系统中的广泛应用,以及设备向小型化、智能化发展,作为高新技术之一的单片机以其体积小、功能强、价格低廉、使用灵活等优势,显示出很强的生命力。它和一般的集成电路相比有较好的抗干扰能力,对环境的温度和湿度都有较好的适应性,可以在工业条件下稳定工作。且单片机广泛地应用于各种仪器仪表,使仪器仪表智能化,提高它们的测量速度和测量精度,加强控制功能。如MCS-51系列单片机控制的“船舶航行状态自动记录仪”、“烟叶水分测试仪”、“智能超声波测厚仪”等。单片机也广泛地应用于实时控制系统中,例如对下SID卜各种窑炉的温度、酸度、化学成分的测量和控制。将测量技术、自动控制技术和单片机技术相结合,充分发挥其数据处理功

13、能和实时控制功能,使系统工作处于最佳状态,提高系统的生产效率和产品质量。从航空航天、地质石油、冶金采矿、机械电子、轻工纺织等行业的分布系统与智能控制以及机电一体化设备和产品,到邮电通信、日用设备和器械,单片机都发挥了巨大作用。其应用大致可分为以下儿方面:1 机电一体化设备的控制核心机电一体化是机械设备发展的方向。单片机的出现促进了机电一体化技术的发展,它作为机电产品的控制器,充分发挥其自身优点,大大强化了机器的功能,提高了机器的自动化、智能化程度。最典型的机电产品机器人,每个关节或动作部位都是个单片机控制系统。2 数据采集系统的现场采集单元大型数据采集系统,要求数据采集的同步性和实时性要好。使

14、用单片机作为系统的前端采集单元,由主控计算机发出采集命令,再将采集到的数据逐一送到主计算机中进行处理。如有些气象部门、油田采油部门以及电厂等均可采用这样的系统。3 分布控制系统的前端控制器在直接控制级的计算机分布控制系统(DCS)中,单片机作为过程控制中每一分部操作或控制的控制器,进行数据采集、反馈计算、控制输出,并在上位机命令的指挥下进行相应协调工作。4 智能化仪表的机芯自动化仪表的智能化程度越来越高。采用单片机的智能化仪表可具有自整定、自校正、自动补偿和自适应功能,还可进行数字PID调节,软件消除电流热噪声等等,解决传统仪表所不能解决的难题。单片机的应用使这种性能如虎添翼,如自动计费电度表

15、、燃气表中己有这方面的应用。许多工业仪表中的智能流量计,气体分析仪、成分分析仅等也采用了这项技术。甚至有的保健治疗仪中也采用了单片机控制。5 消费类电子产品控制该应用主要反映在家电领域,如洗衣机、空调器、保安系统、VCD视盘机、电子秤、IC卡、手机、BP机等。这些设备中使用了单片机机芯后,大大提高了其控制功能和性能,并实现了智能化、最优化控制。6 终端及外围设备控制计算机网络终端设备,如银行终端、商业POS(自动收款机)以及计算机外围设备如打印机、通信终端和智能化UPS等。在这些设备中使用单片机,使其具有计算、存储、显示、输入等功能,具有和计算机连接的接口,使计算机的能力及应用范围大大提高。本

16、课题以单片机作为控制器之一,进一步研究单片机在自动化检测领域中的应用。1.2 课题任务及设计要求1.课题任务以单片机为核心,制作一个公交车自动报站系统。其必要的功能为:(1): 具有2个16*16的点阵汉字显示功能。(2): 提示信息具有方便的可修改性。2.课题设计要求(1) 硬件设计:A:汉字的显示(点阵),汉字显示模块采用(16*32)。B:串口通信:设计PC机与单片机之间的通信电路,用于把站名信息发送到单片机内部。C:存储器的扩展:采用大容量长寿命非易失存储器存储数据信息,可永久可靠的保存各项重要数据。本设计才用ATMEL公司的AT24C64串行EEPROM存储器用中断来控制报站。D:用

17、按键来控制报站的上下行和站名顺序。3. 软件设计:A:时钟的显示B:汉字的显示程序C:串口的通信D:存储器的扩展E:各种程序的初始化1.3 课题方案的论述与确定报站器以单片机AT89C52为CPU来控制LED点阵显示屏显示所到站的站名,提高报站的准确性,高效性和直观性。由于线路不同,报站系统中存储的站名需要通过更改来适用于各种线路,以阿此提高系统的通用性。所以我们需要设计通信模块来实现PC机和单片机之间的通信。并能通过单片机与PC机之间的通信来实现报站名的更改,使其成为多功能开发型报站器。在内存方面,由于AT89C52的数据存储为256字节,由于站名的信息量比较大,片内数据存储空间有限,所以需

18、要扩展一个片外数据存储,来满足要求,这就要求系统应设置内存扩展模块。LED显示屏考虑系统只是一个演示作用,所以本设计采用了8块8*8的LED显示模块组成的16*32的LED显示屏,可以显示两个汉字,可以达到演示要求。综上系统的框图如图11系统框图;图11系统框图1.方案的设计框图本系统硬件可分为PC机,AT89C52单片机,EEPROM为AT24C64的存储模块,显示模块,串行通讯模块,CPU复位电路,外部振荡电路,按键组成。硬件电路图如图12方案设计框图所示:图12方案设计框图2.方案的设计方法基于AT89C52而设计的公交车自动报站系统,为了能够方便的报站和硬件设计的简单用两个外部中断来控

19、制站台的”+”和“-“,通过记数来判断所到的站台,并且通过RESET来复位.由于汉字信息的存储量大,而单片机内部RAM比较少,不够用,为了提高可靠性可用串行E2PROM,它是可在线电擦除和电写入的存储器,该存储器具有体积小,接口简单,数据保存可靠,可在线改写和功耗低等特点。在此,我们选用AT24C64,它是8K的串行EEPROM,是支持IIC总线数据传送协议的串行通信的片外存储CMOS,EEPROM。而公交车要随时修改站台的信息,我们可以通过一个电平和逻辑关系转换的器件来使得单片机和PC机进行通信,EIA-RS-232C是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。因此

20、,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使用集成电路转换器件,这里用MAX232。为了显示汉字信息,可用LED点显示屏(16*32)来显示汉字,用晶体管来驱动。3.方案优缺点:方案采用两根普通口线串行输入输出片外数据存储器EPROMAT24C64,采用了IIC总线,地址和数据都是通过由普通口线模拟IIC总线串行口送出,大大节省了MCU宝贵的口线,不需要地址锁存器和8255有利于对系统升级和扩展,此外器件较少,硬件设计简洁;此外,由于使用普通的口线来模拟I

21、IC总线给程序设计带来一定的困难。用晶体管驱动点阵也能达到比较好的效果。对于站台的报站,通过外部中断来实现更加方便,这样可以减少硬件和软件的设计。第2章 系统硬件设计2.1 单片机的选择和外围电路的设计因为公交车车自动报站系统设计需要较大的存储量,所以要选择一个数据和程序容量较大的单片机,这样就不用扩展数据和程序存储器。在这里我们选用了ATMEL公司的AT89C52单片机作为本设计硬件电路的主控芯片,它是一个低电压,高性能CMOS 8位单片机,片内8K BYTES的可反复擦写的只读程序存储器和56BYTES的随机存取数据存储器,器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准MC

22、S-51指令系统,片内置有8位中央处理器和FLASH存储器单元,功能强大的AT89C52单片机可提供许多复杂系统控制应用场合。2.1.1 外部晶振的选用AT89C52的内部有一个用于构成振荡器的高增益反相放大器。通过XTAL1,ATAL2外部接上一片作为反馈元件的晶体,与C1和C2构成了并联谐振电路,使其构成自激振荡器。电容的值具有微调的作用,我们取30PF。具体的接法如图21外部晶振电路:图21外部晶振电路AT89C52的工作频率范围在 0-24MHZ。我们选用的是12MHZ的晶振,振荡周期为1us机器周期为1us,所以这个晶振可以满足这个系统的要求。并且晶振不能离单片机太远,不然使用外部晶

23、振进行软件调试时就会发现找不到信号。2.1.2 复位电路复位有硬件和软件两种,复位的作用是使程序自动从0000H开始执行,因此我们只要在AT89C52单片机的RESET端加上一个高电平信号,并持续10ms以上即可,RESET端接有一个上电复位电路,它是由一个小的电解电容和一个接地的电阻组成的。人工复位电路另外采用一个按钮来给RESET端加上高电平信号。图2-2人工复位电路我们采用放电型人工复位电路,如图2-2人工复位电路,上电时C通过R充电,维持宽度大于10ms的正脉冲,完成上复位功能。C充电结束后,RESET端出现低电平CPU正常工作。在此我们取了典型值R=10K,R1=1K,C=10uf。

24、上电复位实现的时间 :T=R*C需要人工复位时,按下按钮K,C通过K和R1放电,RESET端电位上升到高电平,实现人工复位,K松开后C重新充电,充电结束后,CPU重新工作,R1是限流电阻,阻值不可以过大,否则不能起到复位作用。2.2按键电路的设计键盘实质上是一组按键开关的集合,控制CPU通过按键来识别特定的用户命令,从而转入相应的程序来执行用户命令。键盘的软硬件的设计涉及下面几个方面的问题:对于此设计来说我们要准确的显示我们所要对应的信息,每按下一次按键要显示所要显示的信息。这按键是主要用来报站的而设计的。这样比键盘操作方便,也比较实惠。按键电路采用中断模式。当有按键按下时,系统产生中断,CP

25、U响应中断后,开始计数,即查询键号,通过软件来实现该键号所对应键的功能键盘的大体设置为:第一个键为报站控制键S1用来控制站台“+”例如:第一站为东华站,按下S1时显示第二站:汽车站,其余的站台工作原理也一样。S2用来控制站台的“-”,第二站为汽车站,在按下S2时这样就显示汽车站。电路如图23按键电路:图23按键电路2.2.1 判键及其接口电路设计键的闭合与否反应在电压上就是呈现出高电平或低电平,如果高电平表示断开,那么低电平则表示闭合,通过电平的高低状态的检测可确认键按下与否。为了确保CPU对一次按键动作只确认一次,并且防止干扰信号的影响,必需加入消除电平抖动的措施,下图3.3为按键抖动示意。

26、消除抖动通常有硬、软硬两种方法,硬件消除抖动可采取双稳态电路或滤波消抖电路;软件消抖是在第一次检测到有键按下时,执行一段延时程序再确认该键是否仍闭合,如果还是闭合状态则确认该键按下,从而消除抖动和干扰影响。当按键较多时,我们多采用硬件件消抖法。按键接口设计有两种方法,独立式按键和矩阵式键盘。独立式按键各键相独立,每个按键各接入一根输入线,只要检测输入线的电平就可以识别按键状态。这种方法电路配置灵活,软件结构简单,但每个按键需占用一根输入口。由于该设计方案IO资源浪费大。故此方法只适用于按键少或其他控制功能很简单的场合。矩阵键盘适用于按键数量较多的场合,它把键盘输入线分为行线和列线,按键位于列的

27、交叉点上。按键的识别需要软件分别扫描行线和列线,根据扫描的结果判具体按下的按键。由于本设计中的按键只有三个,考虑系统可靠性和键盘设计的简单所以采用独立式按键。图24 按键闭合及断开时的电压。图24按键闭合及断开前后的电压2.2.2 键盘的工作方式键盘扫描只是CPU的工作内容之一,CPU在忙于各项工作时,如何处理键盘输入取决于键盘的工作方式,键盘工作方式有三种,编程扫描、定时扫描和中扫描。在编程扫描中,CPU反复地扫描键盘,等待用户的输入命令,而执行键入命令或处理输入数据时,CPU不再相应输入要求,直到CPU返回重新扫描键盘为止。时扫描工作方式利用单片机内部定时器产生定时中断,CPU相应定时器中

28、断后对键盘进行扫描,在有键按下时识别出该键并执行相应功能程序。使用中断方式时要求在没有键按下时,不占用CPU处理时间,只有当有键按下时产生键盘中断,由于中断识别键并执行功能程序,这种方法使用最多。2.3 显示和驱动电路的设计2.3.1 显示电路设计HS 1088BS点阵式LED显示模块是8行8列64个LED组成。单块点阵式LED显示模块能够显示各种字母,数字和常用的符号。点阵式LED显示模块在8行8列的每一个交点上装有一个LED。模块有共阳极和共阴极之分。LED的正极接行引线,负极接列引线的称为共阳极LED显示模块,反之为共阴极LED显示模块。由4个8*8的LED显示屏组成的16*16的LED

29、汉字显示屏如图24, 4个8*8的LED显示屏组成的16*16的LED显示屏,行引脚逐个连接而成。图25 4个8*8的LED显示屏组成的16*16的LED显示屏2.3.2 显示驱动设计单个LED器件的驱动:从LED器件的发光原理可知,当向LED器件施加正向电压时,流过器件的正向电流使其发光,因此LED的驱动就是如何使它的PN结处于正偏置,而且为了控制它的发光程度,还要解决正向电流的调节问题,具体的驱动方法可以分为直流驱动和恒流驱动,脉冲驱动和扫描驱动,这里采用恒流驱动。由于LED器件的正向特性比较陡,加上器件的分散性,使得在同样电源电压和同样的限流电阻的情况下,各器件的正向电流并不相同,引起发

30、光强度的差异。如果能够对LED正向电流直接进行恒流驱动,只有恒流值相同,发光强度比较接近,我们知道晶体管的输出特性具有恒流性质,所以用晶体管驱动LED,单个LED驱动如图25单个LED驱动电路。P2,P1输出的电流约为400UA左右,LED点阵的工作电流大约为20MA,工作电压大约为2V为了不使LED烧坏R最大约为6.75千欧。在此选R=4.7千欧。 图25单个LED驱动电路本次设计中采用的是(16*32)的LED显示屏显示汉字,一次可以显示两 个汉字,由于站名的长度比显示屏长,所以必须实现移位的功能。LED显示的三种方式:(1) 占空比控制驱动:减少驱动电路。在需要进行灰度级控制显示的情况下

31、要求随时调整占空比使LED达到响应的发光强度。(2) 组合驱动:按照行列进行驱动。(3) 扫描驱动: 所谓脉冲驱动方式,就是利用人眼的视觉暂留效应,以脉冲的方式对LED器件进行供电,使之间歇性地点亮。采用这种驱动方式需要对以下两个方面进行考虑:脉冲电流的幅值和其重复颇率。首先,脉冲电流幅值的选择,当脉冲驱动的平均值与直流驱动的电流值相等时,我们人眼的感觉是相同的,也就是说两者的发光强度相当。扫描驱动是通过数字逻辑电路,使若干LED器件轮流导通,用以节省控制驱动电路。LED显示屏是将发光灯按行按列布置的,驱动时也就按行按列驱动。在扫描驱动方式下可以按行扫描.A: 按列控制也叫可按列扫描,按行控制

32、。所谓“扫描”的含义,就是指一行一行地循环接通整行的LED器件,而不问这一行的哪一列的LED器件是否应该点亮,某一列的LED器件是否应该点亮,由所谓的列控制电路来负责。B: 按行扫描按列控制的方式。一个m行n列结构的LED显示屏,当采用行扫描列控制的驱动方式时,从H1到Hm轮流将高电位接通各行线,使连接到各行的LED器件接通正电源,但具体哪一个LED导通,还要看它的负电源是否接通,这就是列控制所要完成的工作。例如在LED显示屏上需要LED 11熄灭,LED21点亮,那么当扫描到H1行时,L1列的电位就应该为高:当扫描到H2行时,L1列的电位就应该为低。根据驱动方式的不同,LED大屏幕显示方式可

33、分为静态显示和动态扫描显示两种。在实际的LED大屏幕显示中,很少有采用静态驱动的。LED发光器件的数量巨大,不宜使用静态显示驱动电路。扫描驱动电路一般采用多行的同名列驱动器。行驱动器一行的行线连到电源的一端,列驱动器一列的列线连接到电源的另一端。当行驱动选中第I行,列驱动选中第J列时,对应的LED器件根据列驱动的数据要求进行显示,控制电路负责有序的选通各行。在选通每一行之前还要把该行各列的数据准备好。一旦该行选通,这一行上的LED发光器件就可以根据列数据进行显示。在本设计中LED点阵显示模块采用动态扫描方式显示,下图是列扫描的LED点阵显示的驱动接口,要显示一个清楚的汉字要求要4块1088BS

34、组成。显示两个汉字就需要8块,对于组成一个16*16的点阵就要求把每两个行列组合。其中行方向接在P1和P2口,考虑负载能力,接16个2n5551的PNP三极管驱动。列方向则由两片4-16译码器74L154完成扫描,它由89C52的P0.4-P0.7控制。同样的驱动部分是由32个2N5041的三极管完成的,如图2-6汉字的显示电路。图2-6汉字的显示电路按列扫描时。动态显示方式的列驱动电流大,而行驱动电流小,最大电流计算有以下公式: 行驱动电流=列数*平均工作电流 列驱动电流=行数*行驱动电流由上式可以知道,列驱动电流大于保护能够驱动电流的倍数等于显示点阵的列数,所以列的三极管要有大电流输出的晶

35、体管。LED显示屏作为单独显示硬件,具有能够将外来数据转换成汉字(或者图形)显示出来。这个过程由硬件驱动程序完成控制和实现。显示过程是这样的:首先控制显示屏的单片机接受LED屏主控微机传来的数据,下来,主孔程序将数据转换成屏幕显示的图形,储存起来。在按照扫描的顺序与屏幕对应的关系,将存储的内容转换成扫描内容,在将数据输出到控制单个的LED模块的数据存储器,最后扫描锁存器中的数据。刷新屏幕,我们把行列总线接在单片机的I0口,然后把上面分析到扫描代码送入总线,就可以得到显示汉字。但是在设计中每次显示两个汉字,由于一共用到16行,32列,如果全部接到89C52单片机,一共需用48条IO口,这样就造成

36、IO资源不够使用。就得扩展系统才能实现功能。点阵显示屏每个单元由8个8*8点阵LED显示模块,行信号选择P1口、P2口,行驱动器组成。列信号选择译码器74L164、列驱动器组成。8个8*8点阵LED显示模块组成一个16*32的LED点阵,用于同时显示2个 16*16点阵汉字字符或数字。单元显示屏可以接受来自控制器或者上一级显示单元模块传输下来的数据信息和命令信息,并可将这些数据信息和命令信息不经任何变化的再传输到下一级显示模块单元中,因此显示板可扩展至更多的显示单元,用于显示更多的显示内容,显示屏控制系统由显示控制器和LED点阵显示屏组成,控制系统的逻辑结构框图见图27显示框图P1.0-P1.

37、7P2.0-P2.7AT89C52NPN行驱动NPN行驱动8*8LED1,23,48*8LED1,23,4PNP列驱动两片译码器74LS154图27显示框图2.4 数据存储器的设计2.4.1 内存扩展电路AT24C64是一个64K位的支持I2C数据总线传送协议的串行E2PROM。可用电擦除、可编程、自定义写周期(可编程、擦除100万次)的串行E2PROM。一般采用的两种写入方式。一种是字节写入方式、另一种是页写入方式,具有32字节的数据的页面写能力。其管脚排列和功能描述如图2-8 AT24C64管脚排列和功能描述:管脚名称功能A0、A1、A2器件地址选择SDA串行数据地址SCL串行时钟WP写保

38、护Vcc-6V+1.8V工作电压Vss接地图2-8 AT24C64管脚排列和功能描述管脚功能描述:(1)SCL:串行时钟这是一个输入管脚,用于产生器件所有数据发送或接收的时钟。(2) SDL:串行数据地址这是一个双向传输端,用于所有地址和数据的发送和接收。对于一般的数据传输,仅在SCL为低期间SDA才允许变化。在SCL为高期间变化,留给指示START和STOP条件。(3) A0(CE0)、A1(CE1)、A2(CE2),器件地址输入端这些输入端用于多个器件级联时设置器件地址,当这些管脚悬空时默认值为0. A0、A1、A2不需片选,可任意接,本设计A0接VCC,A1和A2接地。(4) WP:写保

39、护如果WP管脚接到VCC,所有内容被写保护(处于只读状态)。当WP管脚连接VSS或者悬空,允许器件进行正常的读写功能。通过控制WP管脚,就可以进行正常的显示数据的存储,并在系统使用中可以将WP管脚接到VCC从而达到保护内存中的数据的作用。由于AT24C64的容量为8KB,已经满足本设计的容量要求,所以本系统只需满足扩展一片AT24C64芯片。AT24C64的WP管脚是写保护,设计中接到VSS管脚(以此满足设计中此模块的工作任务)。允许进行正常的读写操作。由于只扩展一片AT24C64、A0、A1、A2不需片选,可任意接,本设计A0接VCC,A1和A2接地。6脚SCL时钟接I2C总线时钟线(P0.

40、0);5脚SDL数据线接I2C总线数据线(P0.1)。如图2-9 AT89C52与AT24C64的接口电路:图2-9 AT89C52与AT24C64的接口电路发送AT24C64的地址。从地址的高4位D7D4固定为1010,接下来的D3D1为器件的片选地址。本次设计A0接高电平,A1、A2接低电平,所以D3D1为001.器件的D0位是读写功能控制位,“1”表示对AT24C64进行读操作,“0”表示对AT24C64进行写操作。因此本设计中AT24C64的地址位是1010001X。2.5 串行通信电路的设计 外设驱动程序可以对系统提供访问外围设备的接口,把操作系统(软件)和外围设备(硬件)分离开来。

41、当外围设备改变的时候,只需更换相应的驱动程序,不必修改操作系统的内核以及运行在操作系统中的软件。智能仪器一般都设有通信接口,以便实现程序控制,方便构成自动测试系统,为了提高系统的兼容性,让不同厂家的生产的任何一起都可以用一条无源电缆连接起来,并通过一个合适的接口与PC机连接。目前国际上才有的标准接口有GPIB、RS232、CAMAC。本次设计采用RS232标准。RS232标准(协议)的全称是EIARS232C标准,其中EIA代表美国电子工业协会,RS是代表推荐标准,232是标识号,C代表RS232的最新一次修改。它规定连接电缆和机械、电器特性、信号功能及传送过程。常用的物理标准有好几种,这里只

42、介绍EIA�;EIARS232C。例如,目前在IBM PC机上的COM1、COM2、接口就是RS232C接口。1.串行接口标准设计的选用 目前RS-232是PC机与通信工业中应用最广泛的一种串行接口。RS-232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。RS-232采取不平衡传输方式,即所谓单端通讯。典型的RS-232信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平在+5+15V,负电平在-5-15V电平。当无数据传输时,线上为TTL,从开始传送数据到结束,线上电平从TTL电平到RS-232电平再返回TTL电平。接收器典型的工作电平在+3+12V与-3-12V。由于

43、发送电平与接收电平的差仅为2V至3V左右,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大为约15米,最高速率为20kb/s。RS-232是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为37k。所以RS-232适合本地设备之间的通信。2.电气特性 EIARS232C对电气特性、逻辑电平和各种信号线功能都做了规定。在TxD和RxD上:逻辑1(MARK)= 3V15V,逻辑0(SPACE)=+3V+15V。在RTS 、CTS、 DSR、 DTR和 DCD控制线上信号有效时为+3V+15V。信号无效时为3V15V。由此可以知道RS232C标准对逻辑电平的定义。对于数据(信

44、息码):逻辑1的电平低于3V,逻辑0的电平高于+3V。对于控制信号:接通状态即信号有效的电平高于+3V,断开状态即信号的电平低于3V,也就是当传输电平的绝对值大于3V,电路可以有效的检查出来。介于3V+3V之间的信号无意义,低于15V或高于15V的信号也是无效信号。EIARS232C与TTL转换:EIARS232C是用正负电平来表示逻辑状态的,与TTL以高低电平表示逻辑状态的变化。因此为了能够和计算机接口或终端的TTL器件连接,必须在EIARS232C与TTL电路之间进行电平和逻辑关系的变换。实现这种变化的方法可以采用分立元件,也可采用集成电路芯片。目前较为广泛采用的是集成电路转换芯片,如MC

45、1488、SN75105芯片可完成TTL电平到EIA电平的转换,而MC1488、SN75105即可实现。MAX232芯片可完成TTLEIA的转换。上位机的串口采用的是标准的RS232C接口。由于AT98C52单片机的串行口电平是TTL电平,但TTL电平的特性与RS232的电气特性不匹配。一次必须通过电平转化芯片进行电平之间的转换才能达到正常通信。本设计采用MAX232来实现RS232C与TTL电路之间的电平转换。MAX232是一种双组驱动器接收器。片内有一个电容性电压发生器,必须在单5V TTLCOMS电平这些接收器具有1.3V典型的门限值及0.5V的典型迟滞,而且可以接受30V和30V的输入

46、。每个驱动器将TTLCOMS输入电平转换为RS232电平。如图210串行通信接口电路所示:图2-10串行通信接口电路第3章 软件设计3.1 串口通信软件的设计为了提高通信的可靠性,必须制定一个约定,即通信协议,串行通信的数据格式如下图,没有校验位,所以共十位,即一位起始位、八位数据位、一位停止位。3.2 下位机串行通信由于在监控程序中使用定时器计数器1来定时监控键盘以及其他外围硬件,所以在此将使用定时计数器1来完成串行通信。MOV SCON,#50H ;URAT工作在MODE1,SM1=1,REN=1MOV TMOD,#20H ;TIMER1工作在MODE2MOV TH1,#0F3H ;波特率2400MOV TL1,#0F3HMOV R1,#8EHMOV R2,#98H ;SETB TR1 ;启动TIMER1 下位机数据接收流程图如图31。图3-1下位机数据接收流程图3.3 存储读写程序的设计AT24C64器件地址为当R为1时进行读存储器操作,W为0时为写存储器操作。在硬件电路设计时AT24C64地址选择输入端A0接ACC、A1、A2被接收。单片机向AT24C64发出一个START命令,产生开始条

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1