本科毕业设计--基于单片机的led大屏幕显示系统.doc
-
资源ID:91263403
资源大小:4.27MB
全文页数:52页
- 资源格式: DOC
下载积分:12金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
本科毕业设计--基于单片机的led大屏幕显示系统.doc
2010届电子信息工程专业毕业设计(论文)基于单片机的LED大屏幕显示系统目 录中文摘要I英文摘要II第1章 绪 论11.1 LED显示屏概述11.1.1 LED显示屏的发展11.1.2 LED显示屏的分类21.1.3 LED显示屏的作用31.1.4 LED显示屏的特点31.2 设计的主要内容31.2.1 设计的意义和目的41.2.2 国内外的研究现状41.2.3 课题背景简介5第2章 显示原理及控制方式62.1 LED点阵显示屏模块62.2 LED点阵显示方式62.3 LED常见的控制方式分析8第3章 总体方案设计与分析103.1 显示单元103.2 滚屏的实现103.3 主控芯片的考虑103.4 关于现实内容的更新103.5 总体电路结构及工作原理103.5.1 硬件电路框图113.5.2 工作原理11第4章 硬件电路设计124.1 LED点阵模块的选择124.2 行驱动电路134.3 列扫描电路154.4 串口通讯174.4.1 RS232总线标准174.4.2 RS232C接口电路174.5主控芯片19第5章 单片机软件设计245.1 开发工具及语言245.2 编程思想245.3 字模处理255.4 左移效果265.5拉幕效果275.6 串口通信285.6.1 通讯基础知识285.6.2 Mscomm通讯控件简介29455.6.3 Mscomm控件的主要属性和方法295.6.4 CommEvent属性295.7 Mscomm控制使用示例315.7.1 数据的发送315.7.2 数据的接受32第6章 Proteus软件仿真336.1 Proteus软件介绍336.2 软件特点336.3 软件仿真33第7章 PCB结构设计357.1 PCB设计平台357.2 元件布局及PCB整体结构工艺357.3布线工艺及准则35第8章 结论与展望37致 谢38参考文献39附 录40摘 要本设计使用的是ATMEL公司生产的AT89C52单片机作为控制核心,通过控制32*16的LED点阵电子显示屏使其拥有多种显示方式。单片机控制程序采用单片机C51语言进行编辑,通过编程控制各个显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。所显示字符的点阵数据可以自行编写,也可从标准字库中提取。显示屏采用32*16的LED点阵,可同时显示两个汉字或单色图像。显示方式采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。本设计实现了单片机与PC机间的数据传输及存储,并能利用软件方便的进行显示内容的多样变化,另一方面点阵显示屏广泛的应用于医院、机场、银行等公共场所,所以本设计具有很强的现实应用性。文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。 关键词:单片机, LED点阵显示屏, C语言, 串口通信 ABSTRACTThe design uses the AT89C52 of the ATMEL microcontroller as the main controller, the system controlling the 32*16 LED dot matrix display and make it have a variety of electronic display. Microprocessor control program for editing though the language of C51, programmatically control all display points corresponding to the anode and cathode of the LED and can effectively control the display light off or on. The dot matrix character display data can be written by themselves or can also be extracted from the standard font. The screen with 32*16 of the LED dot matrix can simultaneously display two characters or monochrome image .The display is dynamic display and can make the static graphics or text can be achieved and many moved out of the display. The Design and Implementation of a microcontroller and PC data transfer between PC and can easily use the software to display a lot of content. And dot matrix display screen widely used in hospitals, airports, banks and other public places. Therefore, the design has a strong practical application. This article details the LED dot matrix display screen hardware design ideas in various parts of the hardware circuit function and the principle of corresponding software, programming and the use of descriptions.Keywords: MCU, Light Emitting Diode Panel, C, Serial Data Transfer 第1章 绪 论1.1 LED显示屏概述LED显示屏(Light Emitting Diode Panel):又叫电子显示屏或者飘字屏幕。是由LED点阵组成,通过灯珠的亮灭来显示文字、图片、动画、视频,内容可以随时更换,各部分组件都是模块化结构的显示器件。通常由显示模块、控制系统及电源系统组成。显示模块由LED灯组成的点阵构成,负责发光显示;控制系统通过控制相应区域的亮灭,可以让屏幕显示文字、图片、视频等内容,恒舞动卡主要是播放动画的;电源系统负责将输入电压电流转为显示屏需要的电压电流。LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。LED之所以受到广泛重视而得到迅速发展,是与它本身所具有的优点分不开的。这些优点概括起来是:亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。1.1.1 LED显示屏的发展1970年代最早的GaP、GaAsP同质结红、黄、绿色低发光效率的LED已开始应用于指示灯、数字和文字显示。从此LED开始进入多种应用领域,包括宇航、飞机、汽车、工业应用、通信、消费类产品等,遍及国民经济各部门和千家万户。到1996年LED在全世界的销售额已达到几十亿美元。尽管多年以来LED一直受到颜色和发光效率的限制,但由于GaP和GaAsP LED具有长寿命、高可靠性,工作电流小、可与TTL、CMOS数字电路兼容等许多优点因而却一直受到使用者的青眯。 最近十年,高亮度化、全色化一直是LED材料和器件工艺技术研究的前沿课题。超高亮度(UHB)是指发光强度达到或超过100mcd的LED,又称坎德拉(cd)级LED。高亮度A1GaInP和InGaN LED的研制进展十分迅速,现已达到常规材料GaA1As、GaAsP、GaP不可能达到的性能水平。1991年日本东芝公司和美国HP公司研制成InGaA1P 620nm橙色超高亮度LED,1992年InGaA1p590nm黄色超高亮度LED实用化。同年,东芝公司研制InGaA1P 573nm黄绿色超高亮度LED,法向光强达2cd。1994年日本日亚公司研制成InGaN 450nm蓝(绿)色超高亮度LED。至此,彩色显示所需的三基色红、绿、蓝以及橙、黄多种颜色的LED都达到了坎德拉级的发光强度,实现了超高亮度化、全色化,使发光管的户外全色显示成为现实。 我国发展LED起步于七十年代,产业出现于八十年代。全国约有100多家企业,95%的厂家都从事后道封装生产,所需管芯几乎全部从国外进口。通过几个“五年计划”的技术改造、技术攻关、引进国外先进设备和部分关键技术, 使我国LED的生产技术已向前跨进了一步。1.1.2 LED显示屏的分类1.按颜色基色分类单基色显示屏:单一颜色(红色或绿色)。双基色显示屏:红和绿双基色,256级灰度、可以显示65536种颜色。 全彩色显示屏:红、绿、蓝三基色,256级灰度的全彩色显示屏可以显 示一千六百多万种色。 2.按显示器件分类LED数码显示屏:显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。 LED点阵图文显示屏:显示器件是由许多均匀排列的发光二极管组成的点阵显示模块,适于播放文字、图像信息。 LED视频显示屏:显示器件是由许多发光二极管组成,可以显示视频、动画等各种视频文件。 3.按使用场合分类 室内显示屏:发光点较小,一般3mm-8mm,显示面积一般几至十几平方米。 室外显示屏:面积一般几十平方米至几百平方米,亮度高,可在阳光下工作,具有防风、防雨、防水功能。 4.按发光点直径及间距分类 室内屏(按直径分):3mm、3.75mm、5mm、 室外屏(按间距分):PH10、PH12、PH14、PH16、PH20、PH25、PH31.25、PH37.5. 5.显示方式有静态、横向滚动、垂直滚动和翻页显示等。单块模块控制驱动12块(最多可控制24块)8X8点阵,共16X48点阵(或32X48点阵),是单块MAX7219(或PS7219、HD7279、ZLG7289及8279等类似LED显示驱动模块)的12倍(或24倍)!可采用“级联”的方式组成任意点阵大显示屏。显示效果好,功耗小,且比采用MAX7219电路的成本更低。1.1.3 LED显示屏的作用1.起到商品宣传,吸引顾客的作用。2.起到店面装饰,提高企业档次的作用。3.起到照明,标新立异的作用。4.起到普及知识的作用。(可用于播放企业产品的小信息,相关行业的知识)5.起到公告板的作用。(促销,招聘信息发布)6.起到烘托气氛的作用。通过显示屏幕可播放上级领导及各种贵宾莅临参观、指导的欢迎词,各种重大节日的庆祝词等。1.1.4 LED显示屏的特点1.亮度高:户外LED显示屏的亮度大于8000mcd/m,是目前唯一能够在户外全天候使用的大型显示终端;户内LED显示屏的亮度大于2000md/m2。2.寿命长:LED寿命长达100,000小时(十年)以上,该参数一般都指设计寿命,亮度暗了也算;3.视角大:室内视角可大于160度,户外视角可大于120度。视角的大小取决于LED发光二极管的形状。4.屏幕面积可大可小,小至不到一平米,大则可达几百、上千平米;5.易与计算机接口,支持软件丰富。6.常见大型显示终端对比1.2 设计的主要内容本系统设计采用的控制芯片是AT89C52,显示设备为LED显示屏,该显示屏如果只实时显示一些图形、文字对主控芯片要求不高,89C52系列的单片机完全可以胜任,而且信息的内容和屏与屏切换相对稳定,不需要固定计算机实时服务。本设计中采用上位机软件编辑实现图文编辑传输。采用了习惯的Windows窗体,开启文本编辑区,完成图形和文字的编辑工作。在控制系统中实现字模的提取与保存,无需在单片机中加入字库。通过采用PC与单片机的串口通讯方式,将数据通过COM口发送给单片机,从而完成信息的传输。然后通过单片机内部的程序调用数据,完成显示。1.2.1 设计的意义和目的设计的意义:1.有利于本专业所学知识理解,通过在学校学习,学生掌握了一些信息时代生存与发展必需的信息技术基础知识和基本技能,具备了在日常生活与学习中应用信息技术解决问题的基本态度与基本能力。2.有利于逻辑思维的锻炼,做任何事情都有一定的步骤,整个过程学生都需要有条理地构思,这中间有猜测设想、判断推理的抽象思维训练,也有分析问题、解决问题、预测目标等能力的培养。设计的目的:通过理论课的学习和生产实习,学生已经掌握了不少理论知识和生产实际知识,运用所学知识去分析和解决实际问题才是最终目的。1.2.2 国内外的研究现状LED 点阵电子显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。它以其色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点而成为众多显示媒体以及户外作业显示的理想选择。近些年,LED 显示屏投资环境良好,尤其是高亮屏产品是近期的投资热点。LED 显示屏的应用领域广泛,当前的产品开发受到各领域的关注和支持,其投资环境日益良好。在技术方面:LED 显示屏(LED panel):LED 就是light emitting diode,发光二极管的英文缩写,简称LED。它是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。LED 显示屏分为图文显示屏和视频显示屏,均由LED 矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,图文、图像并茂,以实时、同步、清晰的信息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD 节目以及现场实况。我国在 LED 领域的研究开发工作成绩突出。目前我国的普绿和高亮度纯红LED 已基本实现商品化,我国国家光电子工艺中心正在从事以IIIV 族半导体量子 阱结构为基础的新一代光点器件研究开发,承担国家863 计划项目“蓝光LED 研制和产业化技术”;我国方大集团与科研所合作,该集团首期投资8000 万,形成年产1.2 亿支蓝光LED 的生产能力。近年来我国LED 显示屏的生产已经逐步形成行业规模,目前,发光二极管年销量已超过20亿美元,到2003 年有望突破50 亿美元大关,全球LED 市场前景广阔。就目前我国市场规模每年约为3.54 亿人民币。近年来,LED 显示屏的关键控制技术随着超大规模集成电路(VLSI)的发展而日趋完善,LED 显示屏与LCD、PDP 等同类平板显示屏产品比较,由于LED 产品具有性能稳定、寿命较长、功耗较小以及价格低廉、产品质量不断的提高,给LED 市场增光添彩。1.2.3 课题背景简介本设计是结合自己在学校学习所掌握的理论基础知识,结合本设计相关的一些资料准备,经过查询相关书籍和杂志,掌握基本原理然后分模块设计,之后在电脑上用Proteus软件进行仿真测试,已证实设计的可行性。通过成功仿真,用PROTEL画出PCB,然后去采购设计所需的芯片,制作出成品。第2章 显示原理及控制方式2.1 LED点阵显示屏模块LED点阵显示屏模块,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。这种一体化封装的点阵LED模块,具有高亮度、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。LED点阵规模常见的有5*7、5*8、8*8、16*16等等。下图为本设计使用的单红色8*8LED点阵显示屏模块(图2.1)及其内部结构原理图(图2.2)。图2.1 点阵显示屏模块图2.2 点阵内部结构原理图2.2 LED点阵显示方式LED阵列的显示采用扫描的方式,首先将所要显示的文字按照每行拆解成多组显示信号,如图2.3所示,对于一个8*8LED阵列而言,若要显示“公”,则可将各行显示数据列出:图2.3 文字编码表2.1 各列数据扫描顺序显示数据(二进制)显示数据(16进制)第1行00001000B0x08第2行00100100B0x24第3行01010010B0x52第4行01001000B0x48第5行01000001B0x41第6行00100010B0x22第7行01000100B0x44第8行00001000B0x08LED阵列的显示方式就是按显示数据编码的顺序,一行一行地显示。以高态扫描为例,若要显示第一行,则先将第一行的显示数据(00001000)送至LED阵列的列引脚,再将“10000000”扫描信号送至LED阵列的行引脚,即可显示第一行,此时其他行并不显示。同样地,若要显示第二行,则先将第二行的显示数据(00100100)送至LED阵列的列引脚,再将“01000000”扫描信号送至LED阵列的列引脚,即可显示第二行,此时其他行并不显示以此类推,如表2.2所示第一条扫描线扫描信号:10000000显示信号:00001000第二条扫描线扫描信号:01000000显示信号:00100100第三条扫描线扫描信号:00100000显示信号:01010010第四条扫描线扫描信号:00010000显示信号:01001000第五条扫描线扫描信号:00001000显示信号:01001001第六条扫描线扫描信号:00000100显示信号:00100010第七条扫描线扫描信号:00000010显示信号:01000100第八条扫描线扫描信号:00000001显示信号:00001000表2.2 各条扫描线如果按照上表的显示顺序进行显示,每行的显示时间约4毫秒,由于人类视觉瞬时现象,将感觉到8行LED同时显示的样子,如图2.4所示。若时间太短,则亮度不够;若时间太长,则会感觉到闪烁2。图2.4 数据扫描2.3 LED常见的控制方式分析随着广告屏显示内容的多媒体化,对控制器传输速度,运算能力的要求越来越高。因此控制器的种类也在不断发展以适应要求,从最初的8051单片机,到PIC单片机,又到FPGA,直到现在的ARM处理器。不同功能档次的广告屏对应着不同的处理器。1.以传统8051单片机为控制器的LED显示屏。因受到单片机运算速度及通信速率的限制,LED动态显示的刷新率不可能做得太高。对显示效果和移动算法的处理也比较吃力,在实际显示效果上有比较明显的闪烁感。除此之外,传统8051单片机的内部资源贫乏,仅128字节的数据存储器,几K字节的程序存储器,无E2PROM,SPI。这就需要对单片机扩展外设,无疑增加了硬件成本。因此,8051控制的条屏只能用于显示内容及其简单,不需要经常更改显示内容的场合。2.以PIC单片机为控制器的LED显示屏。因PIC单片机是RISC架构的工业专用单片机,处理指令的速度有所增加,抗干扰能力优秀,型号种类繁多。作为条屏的控制器,可以明显的改善显示效果,同时PIC单片机内部的资源较丰富,可节省外部电路设计难度,同时降低了硬件成本。因此,以PIC单片机为控制器的条屏目前仍是单色条屏市场的主流。3.以FPGA(复杂可编程逻辑门阵列)为控制器的LED显示屏。FPGA以高速、并行著称。是近年来新兴的可编程逻辑器件。用他作为LED显示屏的控制器,能够高速的处理色阶PWM信号、高速的完成动态扫描逻辑、高速的完成字符移动算法。因此被运用于双基色、三基色的显示系统。但是其成本较高,开发难度较大。4.以ARM(32位RISC架构高性能微处理器)为控制器的LED显示屏。ARM有着极高的指令效率,极高的时钟频率。因此其运算能力非常强大,内部资源也十分丰富,极大的简化了硬件设计的难度,缩短了开发周期。在条屏的运用中,能用ARM来实现花样繁多的显示方式,以及高色阶,多像素的全彩屏驱动。ARM与FPGA的组合更是功能强大,除了海量存储技术,无线更新技术外,还能实时地显示视频信号。因此,以ARM为控制器的显示屏常为视频全彩屏。第3章 总体方案设计与分析3.1 显示单元显示一个简体汉字,至少需要16*16点阵来描述。本设计采用4个8*8点阵,像素直径3.7mm的LED模块拼接成16*16点阵的LED阵列。本设计要求整个屏幕能同时显示2个汉字,则至少需要用8个8*8的LED模块拼接成32*16的矩阵。3.2 滚屏的实现字符的位置在屏幕上实现移动,即术语“滚屏”。可以用硬件实现,但无疑增加了额外的硬件成本及设计难度。因此本设计采用软件算法实现左滚屏、左铺幕、静止显示等常见滚屏方式。用软件来完成滚屏算法,其最大的优点在于成本低廉,而且可维护性、可升级性大大增强。3.3 主控芯片的考虑因本设计采用软件来实现滚屏,且传输方式为串行方式。所以对微控制器单元的处理速度要求较高,可供选择的有ARM7和高速8位单片机。ARM的处理速度极快,但对于条屏的应用,ARM内部的资源浪费严重,且成本较高。因此选择高速8位单片机作为控制器,由于考虑到价格等因素,所以选用接口比较丰富的89C52作为主控芯片。3.4 关于现实内容的更新目前常用的下载方式有串口下载、USB下载、无线下载等。考虑到本设计的上、下位机进行一次通信时的数据量不大,而且对通信的速度及可靠性要求并不严格。因此本设计采用PC机串口来作为下载接口,PC机串口为RS-232C标准,其特点是共模传输,因此通信电缆可以是成本低廉的普通双绞线,同轴屏蔽线等。PC机串口的驱动程序编写较为简单,不需要掌握复杂的通信协议。3.5 总体电路结构及工作原理3.5.1 硬件电路框图 通过对上面对各种方案分析与比较,初步构建硬件框图如图3.132*16LED显示屏行驱动电路列扫描电路AT89C52电源电平转换PC控制图3.1 硬件电路框图3.5.2 工作原理如图3.1所示,要显示一个完整的汉字需要一个16*16的LED点阵显示屏,这就需要4块8*8的LED点阵显示屏进行级联。一个汉字的每一列由高八位和低八位组成,这就要用单片机的两个I/O口来传送数据,由于AT89C52的I/O并不能提供LED点阵屏所需要的电流,所以在设计时加了对应的两组行驱动电路。而列扫描则使用能提供32列信号扫描的芯片。由于要控制显示的内容,所以要进行数据传输,而单片机的信号电平为TTL电平,所以要进行数据传输就要进行电平转换。由上位机传送显示数据通过电平转换就可以将信号电平传递到单片机,然后完成显示数据。第4章 硬件电路设计4.1 LED点阵模块的选择本显示屏采用列扫描、直接送行显示码的方式工作,分辨率为32*16的显示屏由8个共阳型LED点阵单元构成。共阳型LED点阵单元的每个LED点阵由行输入高电平列为低电平从而点亮该显示单元。图4.1是8*8LED显示屏的参数。图4.1要显示一个完整的汉字需要一个16*16的LED显示屏,这就需要同时向每列传送16个数据,为此我设计的电路是通过单片机的P0口和P2口进行传送数据的,PO和P2口刚好可以为本次设计提供16个I/O口,因为点亮一个LED需要通过列选通才能点亮,所以这16个I/O口可以提供总共32列的LED显示屏进行数据显示,只要在选通该列的时候传输所需要的数据点亮该列即可,由于刷新速率较快,而人眼又具有视觉暂留,所以可以感觉到整屏点亮。而列选通则需要32个接口进行控制。所以8块8*8的LED显示屏的连接是P0口的0口到7口同时连接4块LED显示屏的第一行到第八行,P2口的0口到7口连接另外4块LED显示屏的第一行到第八行,这样就可以同时控制整个屏幕的第一行到第十六行,而第一列到第三十二列的控制则由前两块LED显示屏的第一列相连直到第八列,以此类推直到最后一列,这样就可以组成32*16的LED点阵显示屏。图4.2为本次设计中8块8*8LED点阵屏的级联成32*26点阵屏的原理图。图4.2 LED点阵级联图4.2 行驱动电路由于单片机等CPU的数据地址控制总线端口都有一定的负载能力,而本次设计中点亮32*16的LED显示屏已经超过其负载能力,所以为了得到较好的显示效果,应该加驱动器。市面上有多种驱动电路,从价格、原理等多方面的考虑,决定行驱动电路使用两片74HC245,这是比较常用的驱动芯片,属于总线驱动器,典型的TTL型三态缓冲门电路。 下图为74HC245的逻辑图(图4.3)和引脚图(图4.4)。图4.3 74HC245逻辑图图4.4 74HC245的引脚图下面说明各引脚的定义及功能1.第1脚DIR,为输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。2.第29脚“A”信号输入输出端,A1=B1、A8=B8,A1与B1是一组,如果DIR=“1”OE=“0”则A1输入B1输出,其它类同。如果DIR=“0”OE=“0”则B1输入A1输出,其它类同。3.第1118脚“B”信号输入输出端,功能与“A”端一样,不在描述。4.第19脚OE,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。5.第10脚GND,电源地。 6.第20脚VCC,电源正极。74HC245的真值表如下表4.1 74HC245的真值表Control Inputs控制输入Operation 运行GDIRLLB数据到A总线LHA数据到B总线HX隔开H=高电平,L=低电平,X=不定在本设计中,当DIR接高电平时,A端为输入、B端为输出。行驱动电路连接100欧姆的限流电阻,如下图所示。图4.5 行驱动电路4.3 列扫描电路列扫描电路由于要向32*16的LED点阵传送信号,所以需要提供32个列信号,在这里则是利用了两片4-16线译码器74LS154,分别对应左、右屏。A、B、C、D为输入、Y0Y15为输出。此外,还有两根线分别使能左、右屏译码器,也就是使能左、右屏。片选为低电平使能。下图为74LS154的逻辑图(图4.6)和引脚图(图4.7)。图4.6 74LS154的逻辑图图4.7 74LS154的引脚图下面介绍各引脚定义。1-11,13-17 :输出端。(outputs (active LOW) 12:GND电源地(ground (0 V)18-19:使能输入端 (enable inputs (active LOW) 20-23地址输入端 (address inputs) 24:VCC电源正 (positive supply voltage)74LS154的真值表如下图所示。图4.8 74LS154的真值表在本次设计中,74ls154的输出接了32只PNP型三极管,在这里起到开关的作用。通过控制输出来使得在任何时刻只有唯一的列导通以点亮该列,当列切换的速度足够快时,由于人眼的视觉暂留现象,看上去整个屏都是亮的,下图为本次设计的列扫描电路图。图4.9 列扫描电路4.4 串口通讯在工业自动控制,智能产品中,单片机应用越来越广泛,同时也需要对数据进行较复杂的处理,由于单片机的运算能力较差,在处理复杂数据时速度较慢,所以需要借助计算机进行运算。因此,单片机与PC间的通信便显得非常重要。大多数的计算机都具有RS232C接口,尽管它的性能指标并非很好。在广泛的市场支持下依然长盛不衰。就是用而言,RS232也确实有其优势:仅需3根线便可在两个数字设备之间全双工传送数据。不过,RS232的控制要比使用并行通信的打印机接口难于控制。RS232C使用了远比并行口更多的寄存器。这些寄存器用来实现串行数据的传送及RS232C设备之间的握手与流量控制。4.4.1 RS232总线标准串行通信接口标准以RS232C为主。RS232C标准是美国EIA与BELL等公司一起开发的,它适合于数据传输速率在020000bit/s范围内的通信。RS232C还对电器特性,逻辑电平和各种信号线功能都做了规定。RS232C使用-3V -25V表示数字“1”,使用325V表示数字“0”,RS232C在空闲时处于逻辑“1”状态。在开始传送时,首先产生一个起始位,起始位为一个宽度的逻辑“0”,紧随其后的为要传送的数据,所要传送的数据由最低位开始送出,最后以一个结束位标志表示该字节传送完毕,结束位为一个宽度的逻辑“1”。4.4.2 RS232C接口电路由于RS232C信号与MSC-51单片机信号电平不一致(前者为RS232电平,后者为TTL电平),因此,采用RS232C与单片机通信时必须要进行信号电平转换。目前,RS23C与TTL电平转换最常用的芯片有MAX232,MC1488等,本设计采用MAX232进行电平转换。MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。下图为MAX232的外部引脚(图4.10)和内部电路(图4.11)。图4.10 MAX232的外部引脚图4.11 MAX232的内部电路内部结构基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。 其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。 8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。 TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。 第三部分是供电。15脚GND、16脚VCC(+5v)。MAX232内部有两组收,发器,实际应用可以从中任选一组使用。本次设计中采用通用的连接方式,下图为本次设计的连接图。图4.12 串口通信4.5主控芯片在这次设计中采用的主控芯片是ATMEL公司生产的AT89C52, AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。 AT89C52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。下图为AT89C52的引脚图图4.13 AT89C52的引脚图AT89C52的功能特性:1.兼容MCS51指令系统;8k可反复擦写(>1000次)Flash ROM 2.32个双向I/O口;256x8bit内部RAM 3.3个16位可编程定时/计数器中断;时钟频率0-24MHz 4.2个串行中断;可编程UART串行通道 5.2个外部中断源;共8个中断源 6.2个读写中断口;3级加密位 7.低功耗空闲和掉电模式;软件设置睡眠和唤醒功能下图为AT89C52的方框图CPU数据存储器P0P2程序存储器特殊功能寄存器 P1串行口定时器计数器中断系统 P3ALE PSEN EA RESETXTAL1XTAL2图4.14 AT89C52的方框图AT89C52各引脚功能说明:VCC:电源电压GND:地P0口:P0口是一组8位漏极开路双向I/O口,也即地址/数据总线复用口,作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部上来电阻把端口拉到高电平,此时可作为输入口。作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。Flash编程和程序校验期间,P1接收低8位地址。P1口的第二功能见表4.2表4.2 P1口的第二功能端口引脚第二功能P1.5MOSI(用于ISP编程)P1.6MISO(用于ISP编程)P1.7SCK (用于ISP编程)P2口:P2 是一个带有内部上拉电阻的8位双向I/O口。P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口P2写“1”,通过内部上拉电阻把端口拉到高电平,此时可作为输入口。作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。 在访问外部程序存储器或16位地址的外部数据存储器(如执行MOV DPTR指令)时,P2口送出高8位地址数据。访问8位地址的外部数据存储器时,P2口线上的内容(也即特殊功能寄存器(SFR)区中P2寄存器的内容),在整个访问期间不改变。Flash编程或效验时,P2也接收高位地址和一些控制信号。P3口:P3口是一个带有内部上拉电阻的8位双向I/O口。P3的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口P3写“1”,通过内部上拉电阻把端口拉到高电平,此时可作为输入口。作为输入口使用时,因为内部存在上拉电阻,某个引脚