基于单片机的LED汉字滚动显示器的设计

上传人:细水****9 文档编号:64413898 上传时间:2022-03-21 格式:DOC 页数:38 大小:4.06MB
收藏 版权申诉 举报 下载
基于单片机的LED汉字滚动显示器的设计_第1页
第1页 / 共38页
基于单片机的LED汉字滚动显示器的设计_第2页
第2页 / 共38页
基于单片机的LED汉字滚动显示器的设计_第3页
第3页 / 共38页
资源描述:

《基于单片机的LED汉字滚动显示器的设计》由会员分享,可在线阅读,更多相关《基于单片机的LED汉字滚动显示器的设计(38页珍藏版)》请在装配图网上搜索。

1、本科毕业设计本科毕业设计( (论文论文) )题目:题目:基于单片机的基于单片机的 LEDLED 汉字滚动汉字滚动显示器设计显示器设计 教学单位:教学单位: 工程技术系工程技术系 专专 业:业: 电子信息工程电子信息工程 学学 号:号: 姓姓 名:名: 张春怀张春怀 指导教师:指导教师: 赵永岐赵永岐 20132013 年年 5 5 月月摘要摘要LED 已成为一个高速发展的新兴产业,前景广阔。该设计介绍了基于单片机AT89S52 的 1616 点阵 LED 汉字滚动显示屏的设计。其中重点介绍了 LED 点阵显示的硬件设计、硬件电路各部分的功能和原理、相应软件的程序设计,及详细的使用说明和工作流程

2、。该设计分为六部分,其中主要内容为系统总体分析,系统硬件设计,系统软件设计三部分。系统总体分析是该设计的基础;系统硬件设计是该论文的关键及核心部分,首先该部分简单描述系统硬件的工作原理,且附上系统硬件设计框图,论述了该设计所应用的各硬件接口技术和各个接口模块的功能及工作过程;软件设计是系统运行必不可少的部分。本设计主要是软、硬件相结合,以硬件为基础,来进行各功能模块的设计。本设计实用性强、操作简单、扩展功能强。本显示屏的设计具有体积小、硬件少、电路结构简单及容易实现等优点。关键词关键词:单片机;LED;点阵;汉字显示AbstractLED have become a high speed de

3、velopment of emerging industries, and broad prospects. The design based on single chip microcomputer AT89S52 was introduced 16 * 16 lattice LED scrolling display of Chinese characters design. Which focus on LED dot matrix display the functions of the parts of the hardware design, hardware circuit an

4、d the principle and the corresponding software program design, and detaiLED instructions and work processes.The design is divided into six parts, including the main content for the system overall analysis, the system hardware design, system software design three parts. System overall analysis is the

5、 foundation of the design; System hardware design is the key and core part of the paper, first of all, this part simply described the working principle of the system hardware, and attach a system block diagram of hardware design, the design is discussed the application of the hardware interface tech

6、nology and the function of each interface module and working process; Software design is a crucial part of the system is running.The dominant idea of the design is a combination of software and hardware, on the basis of hardware, design of each function module. This design and strong practicability,

7、 simple operation, strong extended functionality. This display design with small size, less hardware, circuit structure is simple and easy to implement, etc.Keywords: MCU; LED; Lattice; Chinese character demonstrates目 录第 1 章 绪 论.11.1 本课题的研究意义及必要性.11.2 LED 的现状和发展趋势.11.3 LED 的参数及特点.2第 2 章 系统总体分析.42.1

8、设计目标及采取的方案.42.2 工作原理.52.3 总体设计.5第 3 章 系统硬件设计.73.1 单片机处理模块.73.2 行驱动模块.103.3 列驱动模块.123.4 LED 点阵显示模块.143.4.1 LED 点阵显示方案.143.4.2 LED 点阵原理.153.4.3 汉字显示原理.17第 4 章 系统软件设计.194.1 主程序设计.194.2 显示子程序设计.204.3 移位子程序设计.21第 5 章 系统调试及性能分析.235.1 复位电路的调试与改进.235.2 驱动电路的调试与改进.235.3 上拉电阻的调试与改进.235.4 总体性能分析.23结 论.25致 谢.26

9、参考文献.27附录.28第第 1 1 章章 绪绪 论论1.11.1 本课题的研究意义及必要性本课题的研究意义及必要性单片机是一种集成微处理芯片,高密度集成了普通计算机的微型处理器,具有8kb 的 ROM 和 P0、P1、P2、P3 输入输出接口,且集成了定时器等电路。自其问世以来就因性价比极高而广受欢迎:其因价格低廉、功能强大、对环境要求低、编程简易方便、灵活而广泛应用在一些工控机和智能化仪表装置里面。LED 点阵显示屏就是其一种常见的运用。自从改革开放以来,人们的生活水平日渐提高。纯粹的物质需求已经不能满足人们的需要。人们对信息的渴求也越来越强烈。广告已经成为人们获取信息重要的一部分。LED

10、 显示屏有图文显示屏和视频显示屏两种。其中图文屏可以显示单色或者彩色的简单图形、文字,广泛应用在医院、火车站、学校教学楼、小型门店等场所;视频显示屏通过上位机控制,能实时的显示视频、实况转播等,多用在足球场、大型会客厅等场所。而且,不同尺寸规格和亮度的 LED 为室内和室外信息显示提供了多种选择。LED 之所以收到广泛的欢迎和应用,跟它的多项优点是分不开的。其概括起来主要是:成本低、体积小、亮度高、设计简单、需要电压低、功耗小、耐冲击、稳定、寿命长。现在 LED 正在向着更小体积、更大点阵密度、更多色彩和更小成本发展。由于 LED 技术的快速发展,有很多已经超出在校生所接触到的知识范围,所以本

11、设计旨在利用最简单主要的单色屏显示演示 LED 屏的工作过程和原理,并实现其显示内容的滚动效果。可以通过更改程序中的点阵字库来改变所需要显示的内容。且该设计具有较好的扩展性,要使其能同时显示更多的内容,只需要再接通上相应数量的点阵屏模块即可。还可以通过修改烧录在单片机 ROM 的程序内容来实现更多的动态效果如缩放、文字切入等。1.21.2 LEDLED 的现状和发展趋势的现状和发展趋势自从 1907 年 HjRound 发现了金刚砂通电之后可以出现发光的现象,并继此由后人发明了发光二极管,已经过去了一个多世纪。一个多世纪以来,LED 技术得到了很大的发展。早先的 LED 是单个的发光管,结构比

12、较简单。通过单向导电的方式点亮发光。它由阳极脚(1) 、阴极脚(2) 、内部芯片(3)和环氧树脂保护外壳组成。外壳不仅可以起到保护芯片的作用,还可以透光聚光,使 LED 显示效果更强。早期 LED 外形如图 1.1 所示。 随着科技的发展,人们已经不能满足于只能简单用作电源通断指示、普通照明用的发光二极管。随着要求的不断升高,更直接更方便的 LED 显示期间应运而生。如共阴极数码管、电平管、字符管等的外形虽然各不相同,他们的根本原理是相同的,即通过排列不同形状不同颜色的 LED,用电路控制不同的点亮方式显示内容。从此,LED 产品的应用更加广泛。不论是出租车计价器,投票计数牌、昂贵仪器的显示面

13、板,都可以看到它们的身影。LED 点阵通过将一定数量的发光二极管通过矩阵的形式排列在一起,用类似我们现在的液晶显示器的显示方式显示一定像素内字符或图片。常见的点阵数量有57、44、88、1616 等,可以通过排列组成更大的点阵。因为采用不同颜色的外壳和制作材料,LED 点阵可以显示多种颜色,常见的有红色、蓝色、绿色。通过不同颜色的通断、灰度搭配,可以显示几乎所有我们常见的颜色。这也是近些年来 LED 被广泛运用的原因之一。相信在未来,LED 照明和现实技术将会得到更大的进步和发展,继而有取代常规大功耗室外现实设备的趋势。LEDLED 的参数的参数及特性及特性图 1.1 发光二极管(LED)外形

14、图LED 的电压和电流的匹配。 mAI /VU /图 1.2 LED 的电压和电流LED 的正向伏安特性因此,LED 伏安特性的数字模型可用式 1.1 表示 ()() (1.1)VFRsIFonVturnTVF / 25TC其中,是 LED 的启动电压。onVturn 表示伏安曲线斜率。Rs表示环境温度。T是 LED 正向电压的温度系数,相对于多数 LED 而言典型值为。TVF /CV/2从 LED 的伏安曲线及数字模型看,LED 在正向导通后其正向电压的细小变动将引起 LED 电流的很大变化,并且,环境温度,LED 老化时间等因素也将改变影响LED 的电气性能。而 LED 的光输出直接与 L

15、ED 电流相关,所以 LED 驱动电路在输入电压和环境温度等因素发生变动的情况下最好能控制 LED 电流的大小。否则,LED的光输出将随输入电压和温度等因素变化而变化,并且,若 LED 电流失控,LED 长期工作在大电流下将影响 LED 的可靠性和寿命,并有可能失效。第第 2 2 章章 系统总体分析系统总体分析2.12.1 设计目标及采取的方案设计目标及采取的方案毕业设计是考察学生完成本专业教学培养目标的重要环节,是整个教学计划中综合性最强的实践性教学环节,它对于培养学生的正确思想和工作学习作风,提高学生综合应用专业知识和分析解决实际问题的综合能力,达到工程技术人员所必备的基本素质等方面具有重

16、要的意义。该设计借助单片机 AT89S52 使 LED 显示屏实现滚动显示汉字的方法。研究Proteus 软件在 LED 汉字滚动显示器和仿真中的应用,研究 Keil 软件编译和调试程序,并制作出 LED 滚动汉字显示屏。该设计的理论基础是单片机技术与应用基础,微机原理,模拟电子技术及数子电子技术。比如 AT89S52 芯片的一些工作原理是在 MCS51 的基础上加以改进完成的。8255 芯片的工作方式曾在微机原理课程中介绍的。74LS154 和三极管的工作原理也分别在数子和模拟电路课程中介绍过。通过该设计不但把以前学过的知识重新复习,而且在查阅专业外资料时还有好多芯片均是以学过的芯片为基础,

17、并且在其基础上完善和改进。通过该毕业设计使我在校学习的理论知识及实际应用有机地相互结合起来,同时也培养了我独立思考问题、敢于创新的科学态度和不怕辛苦的钻研精神。在做该设计时预备两种方案来完成该设计。方案一:由于整个 LED 显示屏是 1616 即显示屏有 16 条行线,16 条列线。行线接AT89S52 单片机的 P0、P1 端口,列线接单片机 P2、P3 口。按照这个方案可以使设计达到预期效果,但是这样一来显示屏行列线使单片机的 I/O 口资源耗尽不能再进行其他模块的扩展。方案二:将显示屏的行线通过一个 74HC154 4-16 译码器介入单片机的P1.0、P1.1、P1.2、P1.3 口,

18、如图 2.1 所示。列线通过两块 74HC595 芯片介入单片机的 P2.0、P2.1、P2.2、P2.3、P2.4。这一方案行列总共占用单片 I/O 口八个,这样一来节省了大量的 I/O 口,为后续扩展留有很大余地。经过两种方案的比较该设计决定采用方案二来实现。图 2.1 74HC154 接口2.22.2 工作原理工作原理LED 汉字滚动显示屏设计是利用单片机的控制技术,通过程序控制 LED 的亮灭来达到所要显示的内容。技术为通过程序控制 AT89S52 芯片输出高电平和低电平,通过高低电平来分别控制 LED 的亮灭,最终达到所要显示的内容。本设计介绍了一种实用的汉字滚动显示屏的制作方案,显

19、示屏通过 4 块88LED 点阵组合成 1616LED 显示屏,通过在程序改变汉字代码从而控制所要显示的汉字,实际使用时可根据需要显示的汉字改写程序代码来实现自己想要显示的内容。显示汉字通过行扫描和列扫描,把行列总线接在单片机的 I/O 口上,然后把扫描代码送入总线。如果将 LED 点阵的行列端口全部直接接入 AT89S52 单片机,则需要使用了 32 条 I/O 口,这样会造成 I/O 资源耗尽,系统再无扩充的余地,因此,在该设计中将 LED 点阵的 16 条行线和 4-16 线译码器 74HC154 的并行输出端之间相连接,列选扫描信号由 2 片 74HC595 来选择控制,这样一来列选控

20、制和行选控制共使用了 8 个 I/O 口,节约了很多 I/O 资源,为系统扩展提供了条件。2.32.3 总体设计总体设计通过 2.2 节的工作原理,画出该系统的框图。总体设计框图如图 2.2 所示。图 2.2 总体设计框图LED 显示屏列 驱 动单 片 机行 驱 动电 源 电 路复 位 电 路时 钟 电 路第第 3 3 章章 系统硬件设计系统硬件设计基于 AT89S52 单片机的 LED 汉字滚动显示屏的硬件设计采用目前使用比较广泛的模块化设计思想,将整个系统分为四大模块,即单片机处理模块、LED 点阵显示模块行驱动模块、列驱动模块。通过划分模块的方法,可以把一个复杂的问题分割成几个相对容易解

21、决的简单问题,分别一一解决,从而大大简化了设计的难度。3.13.1 单片机处理模块单片机处理模块此显示设计是以 AT89S52 单片机为核心器件,该单片机模块的工作原理是加载相应程序提供的高低电平来控制点阵中每个发光二极管的亮灭。下图 3.1 是单片机处理模块的电路原理图。图 3.1 单片机处理模块其中,复位电路为图 3.1 中左边单独部分,如图 3.2,复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分合过程中引起的抖动而影响复位。本设计采用简易的上电复位电路,主要由电阻 R1,R2,

22、电容 C1,按键开关组成,分别接至 AT89S52 的 RST 复位输入端。此电路的右上部分为整个电路的时钟电路如图 3.3 所示,时钟电路是为单片机提供精确定时的内置电路,其基本功能是用于计时、通讯时钟发生器、时间中断源等。本设计的时钟电路由 AT89S52 的 18,19 脚的时钟端(XTAL1 及 XTAL2)以及12MHz 晶振 X1、瓷片电容 C2,C3 组成,采用片内振荡方式。为整个系统提供时钟频率。采用晶体振荡是因为它的频率稳定性好,而这一点在显示模块也非常重要的技术求。图 3.2 复位电路图图 3.3 时钟电路图单片机作为整个设计系统的核心部件,它关系到整个设计系统的性能指标,

23、因此它的选择也是非常重要的,以下是 AT89S52 单片机的相关资料。AT89S52 拥有 40 个引脚,32 个外部双向输入/输出(I/O)端口,同时内含 2个外中断口,2 个 16 位可编程定时计数器,2 个全双工串行通信口。AT89S52 可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和 Flash 存储器结合在一起,特别是可反复擦写的 Flash 存储器可有效地降低开发成本。AT89S52 的引脚如图 3.4 主要性能参数:图 3.4 AT89S52 引脚图1.与 MCS-51 产品指令系统完全兼容;2.4k 字节可重擦写 Flash 闪速存储器;3.1000 次擦写周期

24、;4.1288 字节内部 RAM;5.32 个可编程 I /O 口线;6.低功耗空闲和掉电模式;7.6 个中断源。在本设计中所用到的 AT89S52 管脚说明:P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接出4 个 TTL 门电流,P1 口管脚写入“1”后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 Flash 编程和校验时,P1 口作为第八位地址接收。P3 口:P3 口管脚是 8 个内部带上拉电阻的双向 I/O 口,可接收输出 4 个 TTL门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,

25、并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流,这是由于上拉的缘故。P3 口也可作为 AT89C51 的一些特殊功能口,如表 3.1 所示。 表 3.1 P3 口的特出功能管脚号管脚名备选功能P3.0RXD串行输入口P3.1TXD串行输出口P3.2/INT0外部中断0P3.3/INT1外部中断1P3.4T0记时器0外部输入P3.5T1记时器1外部输入P3.6/WR外部数据存储器写选通P3.7/RD外部数据存储器读选通P3 口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。XTAL1:反向振荡放大器的输入

26、及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.23.2 行驱动模块行驱动模块行驱动电路的选择如果采取并口输入,会占用大量 I/O 口资源。而选取串口输入,I/O 口资源使用较少。所以本设计选用串口输入。本设计中行方向由 416 译码器 74HC154 完成扫描,它由 AT89S52 的 P1.0-P1.3 控制。74HC154 是一种单片 4 线16 线译码器,非常适合应用于高性能存储器的译码器。只要控制端/E1 和/E2 任意一个引脚为高电平,A、B、C、D 任何电平的输入都是无效。/E1、/E2 必须都为低电平才能操作芯片。当两个选通输入/E1 和/E2 为低时, 它可以

27、将 4 个二进制编码的输入值译成 16 个相互独立的输出之一。它实现解调功能采用的办法是用 4 个输入线写出输出线的地址,使得在一个选通输入为低时数据通过另一个选通输入。当任何一个选通输入是高时,所有输出都为高。其真值表如表 3.2 所示。表 3.2 74HC154 的真值表 输入/E1/E2DCBA选定输出(L)LLLLLLY0LLLLLHY1LLLLHLY2LLLLHHY3LLLHLLY4LLLHLHY5LLLHHLY6LLLHHHY7LLHLLLY8LLHLLHY9LLHLHLY10LLHLHHY11LLHHLLY12LLHHLHY13LLHHHLY14LLHHHLY15XHXXXXNO

28、NEHXXXXXNONE74HC154 引脚说明:/Y0-/Y15:输出端。GND:接地。/E1,/E2:使能输入端,低电平有效。A0-A3:地址输入端。VCC:接电源。74HC154 是 4 线-16 线译码器/解调器,其功能为:(1)将 4 个二进制编码输入译成 16 个彼此独立的输出之一。(2)将数据从一个输入线分配到 16 个输出的任意一个而实现解调功能。(3)输入箝位二极管简化了系统设计。(4)与大部分 TTL 和 DTL 电路完全兼容。引脚分布如图 3.5 所示。图 3.5 74HC154 引脚图3.33.3 列驱动模块列驱动模块为节省单片机 I/O 口的资源,方便于后续扩展,行驱

29、动电路采用串口输入并口输出的芯片。该设计电路中列方向由两片 74HC595 芯片完成扫描,它由 AT89S52的 P2.0-P2.3 控制,将 LED 点阵的 16 条列线与两片 74HC595 芯片的并行输出端之间连接。这样设计使的列方向只占用了单片机的 4 个 I/O 端口,同样节省了很多 I/O口。74HC595 是一款低功耗、低噪声、高速的 COMS 移位寄存器,它能够驱动 15个 TTL 的负载。该芯片包含一个 8 位串行输入,并行输出的移位寄存器和带有三态输出控制的 8 位 D 型存储器。存储器和移位寄存器分别由独立的时钟提供信号。移位寄存器内置直接清零,串行输入和用于级联的串行输

30、出功能。时钟的上升沿触发存储器和移位寄存器。若同一个时钟提供信号,则存储器的状态必须滞后于移位寄存器一个脉冲信号。74HC595 的最主要优点是有数据存储寄存器,在移位过程中,输出端的数据可以保持不变。这在串行速度慢的场合有很大的实用性,二极管显示不会产生闪烁感。74HC595 有很多功能,在点阵显示中用到的串行输入并行输出只是其中的一个功能,而它的各个功能是通过寄存器选择的。对于动态显示来说,行扫描主要是处理字模,需要把整个字的字模都输入到 595 芯片内,通过 595 来处理,通过子模各个位的移动来实现要显示的字。在 LED 点阵滚动显示屏中,74HC595 主要用到以下功能:1. 驱动,

31、CMOS 的 74HC595 驱动 LED 点阵显示屏。2. 串行输入转并行输出,非常节约资源,从而可以降低对处理器的 I/O 资源的需求量。3. 具有三态输出锁存。 4. 存在多个级联,可以很方便的将前一个的数据通过串口输出,再输入下一个 74HC595 芯片中用于更大的 LED 点阵屏驱动。74HC595 引脚见图 3.6 所示。图 3.6 74HC595 引脚图其引脚功能为:Q1Q7: 八位并行输出端,可以直接控制数码管的 8 个段。Q7: 级联输出端,它可接下一个 595 的 SI 端。/MR:主复位端,低电平有效位端,低电平时将移位寄存器的数据清零。SHCP:移位寄存器时钟输入,上升

32、沿时数据寄存器的数据移位,下降沿移位寄存器数据不变。STCP:存储寄存器时钟输入,上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。通常将 RCK 置为低电平,当移位结束后,在 RCK端产生一个正脉冲,更新显示数据。/OE:低电平时输出,高电平时禁止输出(高阻态) 。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。DS:串行数据输入。SI: 串行数据输入端。Q0:锁存器输出端。VCC:接电源。GND:接地。表 3.3 74HC595 的真值表3.43.4 LEDLED 点阵显示模块点阵显示模块 输入输出SHCPSTC

33、P/OE/MRDSQ7Qn 功能X X LXLNCMR 为低电平时仅影响移位寄存器空移位寄存器到输出寄存器X LLXLL空移位寄存器到输出寄存器清空移位寄存器,并行输出为高阻态XX HLXLZ清空移位寄存器,并行输出为高阻态XLHHQ6NC逻辑高电平移入移位寄存器状态 0,包含所有的移位寄存器状态移入。XLHXNCQn移位寄存器的内容到达保持寄存器并从并口输出LHXQ6Qn移位寄存器内容移入,先前的内容到达保持寄存器并输出3.4.13.4.1 LEDLED 点阵显示方案点阵显示方案显示部分是该设计最核心的部分,它的 1616 LED 点阵显示屏通过 4 个88LED 点阵显示屏扩展而成,如图

34、3.7 所示。图 3.7 1616LED 显示屏图对于 88 LED 点阵显示有以下两种方案:静态显示,将一帧图像中的所有二极管的状态分别用 1 和 0 表示,若为 0 则表示 LED 没有电流通过,即状态为灭;若为 1 则表示二极管被点亮。如果给每一个发光二极管都加一个驱动电路,一幅画面输入以后,所有 LED 的状态保持到下一幅画。对于静态显示方式而言,所需的译码驱动装置非常多且引线多而复杂,成本高,可靠性也较低。动态显示,是把一幅画面进行分割,使组成画面的各部分分别显示,是动态显示方式。动态显示可以避免静态显示的问题。但是在硬件设计上如果处理不当,很容易易造成亮度低,LED 闪烁的问题。因

35、此合理科学的设计既应保证驱动电路容易实现,同时也要保证图像稳定,没有闪烁。动态显示大部分用多路复用技术的动态扫描显示方式, 复用的程度也不是无限增加的, 因为使用动态扫描显示使人眼看到一幅稳定的画面,实际上是利用了人眼的暂留效应和调整发光二极管发光时间的长短, 发光亮度等因素。通过实验验证, 当扫描刷新频率即发光二极管的停闪频率 50Hz 同时发光二极管导通时间1m s 时, 显示亮度最好, 无闪烁感。 由于静态显示方式,需要的译码驱动等装置很多,引线多而复杂,成本也很高高,且可靠性较低,相反动态显示可以避免静态显示的问题,只是在设计的过程中应注意合理科学的设计既应保证驱动电路容易实现,又要保

36、证图像稳定,无闪烁。且动态显示易于制作和理解,又能巩固所学知识,同时也能达到该设计的预期效果,因此选用动态显示方式。3.4.23.4.2 LEDLED 点阵原理点阵原理在结构上,单基色 88 的点阵屏每一列共用一根列线,每一行共用一根行线。当相应的行接高电平,列接低电平时,对应的发光二极管被点亮。88 点阵原理图如图 3.8 所示。图 3.8 88 点阵原理图在一般情况下,一块 88 像素的 LED 点阵显示屏是不能用来显示一个完整的汉字,因此,按照其原理结构进行扩展为 1616、1632、3232 等等,该设计选用 1616 的显示屏就足以显示一个完整的汉字了。在整个显示过程中,大多都采用扫

37、描的方式,利用人眼的视觉暂停效应,只要屏幕刷新速率大于等于 25 帧/秒,就感觉不到点阵屏幕的闪烁,从而看是一个稳定的画面了。LED 点阵屏采用 1616共有 256 个象素的点阵,通过使用万用表检测发光二极管的方法测试判断出该点阵的引脚分布如图 3.9。图 3.9 LED 点阵外观及引脚将行列总线接在单片机的 I/O 口上,然后将扫描代码送人总线,就可以得到想要显示的汉字了。如果将 LED 点阵的行列引脚全部直接接入 AT89S52 单片机,则单片机的 P0、P1、P2、P3 口占用完,这样会造成 I/O 资源耗尽,系统也再无扩展的余地。因此,将 LED 点阵显示屏的 16 条列线接两片 7

38、4HC595 的并行输出端引脚上,行扫描信号是由 4-16 线译码器 74HC154 来选择控制的,这样节约了很多 I/O 口资源,更方便于系统扩展。3.4.33.4.3 汉字显示原理汉字显示原理以 UCDOS 中文宋体字库为例,任何一个字都是由 16 行 16 列的点阵组成显示。即国标汉字库中的任何一个字均可以由 256 点阵来表示。如果将一个点理解为一个像素,把每一个字的整体字形理解为一幅图像都可以显示出来。事实上,这个显示屏不仅仅能显示汉字, 也能显示在 256 像素范围内的任何一张图像。用 8 位的 AT89S52 单片机控制, 由于单片机的总线为 8 位,要扫描一个1616 的汉字,

39、就需要把每一个汉字拆分为两个部分。 汉字的拆分可分为上下拆分和左右拆分,把一个汉字拆分为两个 8*16 的显示部分。一般情况下我们选择拆分为上部和下部,上部由 816 点阵组成, 下部也由 816 点阵组成。在本例中单片机首先显示左上角第一列的上半部分,即第 0 列的 P00-P07 口。扫描方向为 P00 到 P07 ,像图 3.10 显示汉字“大”时,P05 与第 0 列交点被点亮,由上往下依次为 P0.0 灭,P0.1 灭, P0.2 灭 P0.3 灭, P0.4 灭, P0.5 亮,P0.6 灭,P0.7 灭。即二进制 00000100,转换为 16 进制为 0 x04。上半部第一列扫

40、描完成后,继续扫描下半部的第一列,为了在焊接连线时方便该设计选择由上往下扫描,即从 P27 向 P20 方向进行扫描,从下图可以看到,此列全部为不亮, 即为 00000000,16 进制则为 0 x00。然后扫描转向上半部第二列,依然为 P05 点亮,为 00000100,即 16 进制 0 x04。这一列扫描完成后继续进行下半部分的扫描,P21 点亮,为二进制 00000010,即 16 进制 0 x02。图 3.10 16 行 16 列的点阵组成显示图依照这个方法,继续进行下面的扫描,一共扫描 32 个 8 位, 可以得出汉字“大”的扫描代码为:0 x04,0 x00,0 x04,0 x0

41、2,0 x04,0 x02,0 x04,0 x04,0 x04,0 x08,0 x04,0 x30,0 x05,0 xC0,0 xFE,0 x00,0 x05,0 x80,0 x04,0 x60,0 x04,0 x10,0 x04,0 x08,0 x04,0 x04,0 x0C,0 x06,0 x04,0 x04,0 x00,0 x00从这个原理可以看出, 无论显示任何字体还是图像, 都可以用这个方法来分析出它的扫描代码从而在显示屏幕上显示。现在网上有很多种现成的汉字字模生成软件,软件打开后输入汉字,点“检取” ,十六进制数据的汉字代码即可自动生成,把所需要的竖排数据复制到我们的程序中即可。如

42、图 3.11 所示。图 3.11 汉字字模生成界面第第 4 4 章章 系统软件设计系统软件设计软件中的程序设计一般主要由开始、初始化程序、主程序及字库组成。在设计主程序中,同一帧反复扫描次数的设定就决定了汉字显示移动的速度。延时程序非常重要,这就要涉及到之前所说的屏幕刷新率的问题了,如果设置不当,则会产生汉字不停闪烁。只要刷新速率不小于 25 帧/秒,就不会有闪烁的感觉。4.14.1 主程序设计主程序设计主程序调用了两个重要的子函数,即显示子函数和移位子函数。显示子函数的功能是让 LED 显示屏的显示指针指向自摸数组的数据,而移位子函数的功能是让指针所指的地址加 2,从而实现汉字向左移动一列的

43、效果。整个主程序开始运行后先初始化指针所指向的地址,让指针指向字库首地址,再设定变量 tmp 初值为 0,用tmp 的值来控制显示函数的重复次数,从而达到显示汉字的移动速度的目的。当tmp 没有达到设定值时不断重复显示子函数,此时显示屏上显示的是一个静止不动的汉字,直到 tmp 达到设定值,调用子函数将指针地址加 2,使指针位置指向第二列,然后重新从 tmp 的初始化开始执行,这样显示屏幕上将会出现一个不断由右向左移动,流程如图 4.1 所示。图 4.1 主程序流程图该 LED 显示屏主程序设计能够用来显示“西京学院欢迎您”等汉字显示。同时也可以显示 256 像素内的任何图像。4.24.2 显

44、示子程序设计显示子程序设计显示子程序的执行过程主要是单片机 I/O 口对外传输数据的过程。程序在设计时,首先设定一个局部变量 col,并将其初始值设置为 0,设置该变量的目的是确定扫描的行数,以便控制 I/O 口发送相应的字模数据。若 col 值小于 15 说明正在扫描显示屏上的某一行,P1 口送出相应的行扫描命令到 74HC154 芯片经译码后来控制相应的行数。然后 P2 口送出相应的高、低八位字模数据,最后关闭列控制以防止残影出现,影响整体效果。之后对 col 进行自己加 1 完成一个循环。当 col15时说明 16 行已全部扫描完毕,此时显示屏将出现一个完整的汉字,程序执行完毕,流程如图

45、 4.2 所示。开 始图 4.2 显示子程序流程图4.34.3 移位子程序设计移位子程序设计移位子程序就是让地址指针自动加 2,这样一来当显示函数在执行时,第一列显示的就是原本第二列要显示的内容依次类推,最终结果显示整个图像好像自由向左移动一列。所以程序执行起来是首先要将指针地址加 2 以便实现指针的移动,之后再判定指针地址的值,如果地址指针移动到最后一位及第 15 列时就要令地址指针复位为 0,否则指针一直移动下去,当移出字模数组范围后,因为字模数组以外是未知内容就会导致显示屏显示乱码或者是空白内容,流程如图 4.3 所示。初始化,定义 col=0判断 col=15?对 P1 口赋值对 P2

46、 口赋值对 P1 口消影对 P2 口消影col+否开 始结 束是图 4.3 移位子程序流成图 是地址指针移动两位判断指针是否超出字模数组范围将指针地址复位否开 始结 束第第 5 5 章章 系统调试及性能分析系统调试及性能分析5.15.1 复位电路的调试与改进复位电路的调试与改进刚开始设计时候,复位电路按照参考资料上的原理图连接完成后在 Proteus 软件中进行仿真调试整个电路时一切都正常达到了预期结果。但是在面包板上建立物理连接后发现复位按键不起作用,后经在图书馆查阅资料发现使用的电容本应该使用极性电容,之后找用相同电容值的极性电容替换原来的非极性电容,电路复位正常。5.25.2 驱动电路的

47、调试与改进驱动电路的调试与改进最初的设计的设计方案是列驱动中的每个 74HC595 均是通过一个 10K 的排阻与点阵显示屏的列相连接,软件仿真也是正常。在焊接实物之前,在面包板上依照仿真图建立物理连接后,调试时发现 LED 忽明忽暗,有的 LED 甚至不亮,导致汉字显示时不稳定。后经万用表测量 LED 显示器中单个发光二极管通过的电流不足1.5mA,达不到额定的工作电流。确定原因是由于加载的排阻阻值过大,导致 LED电压、电流不足。为了解决此问题,本次设计去掉 74HC595 与点阵显示器之间的排阻。经试验后,显示器显示效果良好,上述问题得以解决。5.35.3 上拉电阻的调试与改进上拉电阻的

48、调试与改进设计之初是选用 P0 口来控制 74HC154 从而控制点阵显示屏的行,但是插好线后发现单片机不能正常工作。经分析单片机的 P0 口比较特殊,P0 口在不接片外存储器和不扩展 I/O 口的情况下,可作为准双向输入输出口。在接有片外存储器或者扩展 I/O 口时,P0 口分时复用为低八位地址总线和双向数据总线,所以 P0 口的带负载能力比较弱,一般情况下需要接入一个上拉电阻,由于在焊接时候没有合适的排阻,而本次设计总共只占用八个 I/O 口,所以将显示器行控制选择接到 P1 口,解决了之前不能正常工作的原因。5.45.4 总体性能分析总体性能分析经过仿真,焊接前面包板物理连接测试、焊接实

49、物到最终实物完成,达到了预期设计效果,但是现实效果和理论比较起来还是存在一些差异性,但不是很大的影响。主要是在焊接过程中线条过多,线与线之间难免会相互产生些影响。设计之初计划 P0 口接一上拉电阻后接入 74HC154 输入端和显示屏行线相连接。P2 口与两片74HC595 相连接再分别接 1K 排阻目的在于分压防止电压过大烧坏二极管。本次设计在焊机过程中由于上述问题的出现,三个排阻均去掉。但是从总体上看,本次设计满足设计之初的预期效果。仿真效果如图 5.1 所示。图 5.1 系统仿真结结 论论本设计硬件电路能够实现从右向左滚动显示汉字功能,如果需要让显示的汉字实现向左、向右、向上、向下滚动显

50、示汉字,只需要在程序编写过程中改编程序就可使实现,在通过一个按键或者四个按键来切换显示方式。虽然本次设计只使用了四块 88 点阵组成 1616 LED 点阵显示屏,电路简单,但是已经包涵了 LED 显示屏的电路基本原理和程序,只要扩展单片机的 I/O 接口,并增加一些 LED 点阵和相关芯片,就可以设计出更大面积、更多花样的 LED 显示屏。因此本文对同类设计具有一定的理论和实践参考价值。该设计的理论基础是单片机原理,微机原理,模拟电子技术和数子电子技术。比如 AT89C51 芯片的一些工作原理是在 MCS51 的基础上通过改进完成的。时钟电路、复位电路、电源模块、74HC154 和 74HC

51、595 芯片的工作方式和工作原理也分别在模拟和数子电路里介绍过。通过本设计不仅把以前学过的知识重新温习,而且在查阅课外资料时还有好多芯片都是以学过的芯片为基础,并且在其基础上改进和完善的。通过毕业设计的实施,我把在校学习的理论知识和实际应用有机地结合起来,同时也能培养我独立思考、勇于创新的科学态度和钻研精神,为我将要踏上工作岗位做一次提前的锻炼。毕业设计使我在以下几个方面有所明显提高:融会和贯通所学习专业的基本概念、基本理论和基本技能。综合运用所学专业理论知识和技能分析,提高解决实际问题的能力。以科学的、实事求是的态度进行科学试验和工程实践的动手操作能力。提高文献阅读和使用能力。致致 谢谢历时

52、近四个月的时间终于将这篇论文写完了,在论文写作过程中遇到了很多困难,但是都在同学和老师的帮助下解决了,尤其是要感谢我的论文指导老师赵永岐老师和司老师,他对我的论文写作给予了无私的指导帮我解决了不少的困难,不厌其烦的对我的论文进行修改,我从心里向你们道一声谢谢!在实验的这段日子,我又结识很多可敬可爱的老师和学长,他们都给我留下了很深的印象,我的指导老师赵永岐老师和司老师对问题有着深邃的洞察力,每每对问题给予高层的指导。他严谨求实的治学态度、一丝不苟的工作作风,诲人不倦的师者风范和敏锐的科学洞察力给我留下极为深刻的印象,深深地感染着我,并影响和激励着本人开展研究工作。在这四年中老师的谆谆教导,同学

53、的互相帮助是我在专业技术和为人处事方面都得到了很大提高。感谢西京学院对我大学四年的教育和培养,感谢西京学院电子信息工程专业的所有老师,没有你们的辛勤劳动,就没有我今日的满载而归,感谢大学四年曾今帮助过我的同学。在我的毕业设计过程中我曾向老师和同学请教过不少的问题,老师和同学都热情帮我解答才能使我的毕业设计顺利完成,在此我向你们表达我最衷心的感谢。参考文献参考文献1 周一恒,严家明.基于单片机控制的 LED 显示原理与设计J.测控技术,2008,37(10):40-43.2 徐敏,卢周平.单片机原理及应用J.实验室研究与探索,2006,25(1):82-84.3 李生明.单片机 LED 显示接口

54、技术J.长江职工大学学报,2003,20(4): 47-49.4 张建军,陈忠荣.基于可编程逻辑器件的 LED 显示屏控制系统设计J.LED 与显示,2006,21(4):398-402.5 谭浩强.C 程序设计M.北京:清华大学出版社,2008. 6 钟蔚,袁臣虎,林志贵,李现国.点阵式 LED 滚动汉字显示屏的 Proteus 仿真设计J.微计算机信息,2008,24(17): 106-107.7 景向伟,李娣娜,邵思飞.基于单片机的 LED 点阵显示系统J.现代电子技术,2011,34(20):153-155.8 朱清慧,王志奎. Proteus 在 LED 点阵滚动显示屏设计中的应用J

55、.液晶与显示,2009,24(2):232-237.9 陈莉.基于单片机的 LED 汉字显示屏的设计J.电子设计工程,2012,20(20):186-189.10 宋永献,陈超,马娟丽,冯源,张先进.基于 Proteus 的单片机的汉字点阵显示电路设计J.微计算机信息,2012,28(9):42-43.11 陈勇,黄石红.LED 显示模块与单片机接口技术J.南京林业大学学报(自然科学版) ,2002,26(5):24-26.12 李全利,仲伟峰,徐军.单片机原理及应用M.北京:清华大学出版社,2006.2.13 SHI-Kai,XuPei-feng1,HuangWen-xin1,ChenJia

56、n-feng1. A Human-Computer Interface Scheme Based on SCM Control J.Journal of Electrical & Electronic Education,2012,34(2):57-60.14 LIJiao. 1616 dot matrix display designJ. Science & Technology Information,2011,(32):187-189.15 Yue WeiMing1.LED dot matrix display designJ. Getting rich wizard,2012,(27)

57、:117附录附录 A A#include #include #define uint unsigned int#define uchar unsigned charsbit SH_595=P21;/sbit key0=P30;sbit DATA_595=P20;sbit ST_CP_595=P22;/74HC595(12)-ST_CP 上升沿-移位寄存器的数据进入数据存储寄存器 输出锁存器的时钟信号端口sbit MR_595=P23; /74HC595(10)-MR 为 0 将移位寄存器的数据清 0sbit E1_154=P24;/74HC154(18)-E1 为 0 开列(col)输出 显示

58、允许 控制信号端口uchar tempbmp64;uint k;uint y;unsigned char code bmp1= /字模表0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x0

59、0,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x20,0 x00,0 x23,0 xFF,0 x22,0 x02,0 x22,0 x0A,0 x22,0 x12,0 x3F,0 xE2,0 x22,0 x02,0 x22,0 x02,0 x22,0 x02,0 x3F,0 xE2,0 x22,0 x12,0 x22,0 x12,0 x2

60、2,0 x02,0 x67,0 xFF,0 x22,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,/*西,0*/0 x10,0 x00,0 x10,0 x00,0 x10,0 x02,0 x17,0 xC4,0 x14,0 x58,0 x14,0 x42,0 x94,0 x41,0 x74,0 x7E,0 x14,0 x40,0 x14,0 x50,0 x14,0 x48,0 x1F,0 xCC,0 x14,0 x

61、06,0 x30,0 x00,0 x10,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,/*京,1*/0 x02,0 x20,0 x0C,0 x20,0 x88,0 x20,0 x69,0 x20,0 x09,0 x20,0 x09,0 x22,0 x89,0 x21,0 x69,0 x7E,0 x09,0 x60,0 x09,0 xA0,0 x19,0 x20,0 x28,0 x20,0 xC8,0 x20,0

62、x0A,0 x60,0 x0C,0 x20,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,/*学,2*/0 x00,0 x00,0 x7F,0 xFF,0 x44,0 x20,0 x5A,0 x10,0 x69,0 xE1,0 x30,0 x81,0 x24,0 x82,0 x24,0 x8C,0 xA4,0 xF0,0 x64,0 x80,0 x24,0 xFC,0 x2C,0 x82,0 x25,0 x82,0 x28,0

63、 x82,0 x30,0 x0E,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,/*院,3*/0 x20,0 x08,0 x2C,0 x10,0 x23,0 x60,0 x20,0 x80,0 x23,0 x41,0 x3C,0 x31,0 x04,0 x02,0 x08,0 x0C,0 xF0,0 x30,0 x17,0 xC0,0 x10,0 x30,0 x10,0 x08,0 x14,0 x06,0 x18,0 x03,

64、0 x00,0 x02,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,/*欢,3*/0 x02,0 x00,0 x42,0 x02,0 x22,0 x04,0 x13,0 xF8,0 x00,0 x04,0 x3F,0 xE2,0 x20,0 x42,0 x40,0 x82,0 x41,0 x02,0 x3F,0 xFE,0 x20,0 x02,0 x20,0 x42,0 x20,0 x22,0 x7F,0 xC6,0 x20

65、,0 x04,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,/*迎,4*/0 x02,0 x02,0 x04,0 x0C,0 x08,0 x00,0 x3F,0 xEE,0 xC4,0 x01,0 x08,0 x81,0 x31,0 x11,0 xE6,0 x49,0 x20,0 x2D,0 x2F,0 xC1,0 x20,0 x01,0 x22,0 x07,0 x29,0 x00,0 x31,0 x88,0 x00,0 x0

66、6,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,/*您,5*/0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!