基于单片机的点阵led毕业毕设 - 图文

更新时间:2024-06-07 19:36:01 阅读量: 综合文库 文档下载

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

哈尔滨理工大学学士学位论文 模板使用说明

(请在使用前详细阅读此说明!)

1、各部分内容可以直接打字输入,也可使用粘贴功能,但要保证粘贴内容格式正确。

2、目录为自动生成模式,不要修改目录,论文完成后请右键单击目录区域,选择“更新域”即可。各级标题一定要使用相应标题格式,否则在目录里不能体现。

3、论文中各种行间距请自行调整。

4、如本模板和《哈尔滨理工大学本科毕业设计(论文)撰写规范》的规定不一至,以《哈尔滨理工大学本科毕业设计(论文)撰写规范》的规定为准。

本模板仅供参考,请严格按照《哈尔滨理工大学本科毕业设计(论文)撰写规范》完成论文。如不会使用word的模板功能,请自行按《哈尔滨理工大学本科毕业设计(论文)撰写规范》完成论文。

(请在完成论文后,打印论文前,删除本页内容!)

- I -

哈尔滨理工大学学士学位论文 基于单片机的点阵式led显示屏设计

摘要

随着科学技术与人民生活水平的不断进步,在许多公共场合都可以看到LED点阵显示屏, LED点阵显示屏是利用发光二极管依次排列组成平面的显示屏幕。通过控制每个半导体发光二极管的显示状态,达到显示图案的效果。通常用来显示图形、文字、动画、图像、视频、行情、录像信号等。它不但拥有色彩丰富,组态灵活,能够适应室内外各种环境,还具有发光效率高,使用寿命长,易操作的优势。并广泛应用于银行、营业部、车站、机场、港口、体育场馆等信息的发布,政府机关政策、政令,各类市场行情信息的发部和宣传等。点阵LED显示器的特点是可以按照需要的大小、形状和颜色进行组合,用单片机控制实行各种文字或图型的变化,达到广告宣传和提示的目的。

本设计是采用Atmel公司的AT89C52单片机设计的一款能够显示汉字、数字、字母等有多种变化的5个16*16 LED点阵显示屏。它能够利用单片机控制实现显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型、字体,根据不同的需求实现动态或静态显示。通过Protues仿真与keil软件的联合对本次设计进行测试,仿真效果显示,该系统拥有良好的显示效果,而且具有体积小,硬件电路简单,成本低廉,容易实现,容易理解等特点。点阵LED显示器的特点是可以按照需要的大小、形状和颜色进行组合,用单片机控制实行各种文字或图型的变化,达到广告宣传和提示的目的。

关键词 LED 单片机 显示屏 Protues仿真

- II -

哈尔滨理工大学学士学位论文 Based on single-chip dot matrix LED display

design Abstract

With the development of science and technology, in many occasions, you can see the LED display screenLED display screen is the use of light-emitting diode lattice model or pixel unit consisting of flat display screen.By controlling the semiconductor light emitting diode display mode, to show the pattern effect.Usually used to display text, graphics, images, animation, video, video signal, the market.It has not only rich colors, flexible configuration, can adapt to a variety of indoor and outdoor environment, but also has high luminous efficiency, long service life, easy operation advantage.And widely used in banking, business department, railway station, airport, port, stadiums and other information, government policy, decree, all kinds of market information and publicity department. This design uses the atmel company's AT89C52 Single chip microcomputer designed to display Chinese characters, numbers, letters and other various 16*16 LED electronic display screen It can be used to realize single-chip microcomputer to control display characters, figures, Chinese characters and simple graphics, may according to need to use different font size, font, according to different needs to achieve dynamic or static display.Through the simulation test, the system obtains a good display effect, and has the advantages of small volume, simple circuit, low cost, easy to implement, easy to understand .

Keywords [Click here and input keywords in English]

- III -

哈尔滨理工大学学士学位论文

目录

摘要 ...................................................................................................................... I Abstract ............................................................................................................... II

第1章 绪论 ........................................................................................................ 1 1.1 课题背景 ................................................................................................... 1 1.1.1 .............................................................................................................. 2 第2章[单击此处输入标题] ........................................... 错误!未定义书签。 2.1 本章小结 ................................................................................................... 4 第3章[单击此处输入标题] ........................................... 错误!未定义书签。 3.1 本章小结 ................................................................................................. 15 结论 .................................................................................................................... 32 致谢 .................................................................................................................... 33 参考文献 ............................................................................................................ 34 附录 .................................................................................................................... 34

- IV -

哈尔滨理工大学学士学位论文

第1章 绪论

1.1 课题背景

在信息产业高速发展的今天,显示屏在我们的日常生活中的作用已无法取代,无论是家庭、学校、商场、火车站等与我们生活及其相关的活动场所都有显示屏的身影。LED点阵显示屏更是作为传播信息的一种重要手段成为现代信息化社会的一个闪亮标志。目前,存在一些想要呈现的内容的数量不是很多,对显示的分辨率要求也不是特别高,同时又不想支付高额的显示屏费用的小商家来说,选择像本设计研究的这种点阵式的LED显示屏是性价比相对较高的一种比较实用选择。它利用用户编写的程序通过单片机控制外围驱动电路,从而实现字母、汉字、阿拉伯数字和简易图案的显示的功能,可以根据需要使用不同字号、字型,根据不同的需求进行动态或静态显示。利用不同的材料可以制造不同色彩的LED像素点,目前应用最广的是红色、绿色、黄色,而蓝色和纯绿色LED的开发已经达到了实用阶段。

1.2 LED显示屏国内外研究发展现状

LED显示屏是20世纪90年代出现的新型平板显示器件,由于其亮度高、画面清晰、色彩鲜艳,使它在公众多媒体显示领域一枝独秀,因此市场空间巨大。经过这些年的发展,我国的LED显示屏行业基本形成了一批具有一定规模的业务成熟的骨干企业。据不完全统计,到 1998年,已有 20 多家企业每年的销售金额远超于 1000 万元,并且他们的销售总金额达到了 6亿元人民币左右,超过了LED行业市场总额的 85%。在全国,主营 LED 显示屏的大、中、小型企业大约有 100余家,所聘用的人员将近 6000余 人。就市场而言,中国加入WTO、北京申奥成功等,成为LED显示屏产业发展的新契机。国内LED显示屏市场保持持续增长,目前在国内市场上,国产LED显示屏的市场占有率近95%。国际上LED显示屏的市场容量预计以每年30的速度在增长。我国这方面的产业在不断发展壮大的同时,对其产业的技术也不断的提高,一直保持着相对于先进的水平。 1995年到1999年,出现了64级、256级灰度的双基色视频屏。视频控制技术、图像处理技术、光纤通信技术等的应用将LED显示屏提升到了一个新的台阶。LED显示屏控制专用大规模集成电路芯片也在此时由国内企业

- 1 -

哈尔滨理工大学学士学位论文

开发出来并得以应用。达到了国际先进的技术水平。我国的企业已能生产出用来控制显示屏专用的大型的集成电路,并得到了广泛的应用。 这种显示屏产业毫无疑问的成为了我国信息产业至关重要的一部分,更有效的推动了显示屏领域民族产业的崛起。目前国内全彩色市场逐步被划分为三个档次。第一档为巴可、松下等国际知名企业生产的高档产品;第二档为国内大型企业研制的采用日亚高品质LED生产的产品;第三档为采用我国生产的LED制作的显示屏。这三种档次的LED显示屏在价格和功能上也存在着较大区别。在国内,LED点阵显示屏的应用主要是用在室外的广告牌、室内的电子牌等起到宣传的作用。虽然在我国LED行业的发展已日趋成熟,但也有相对比较弱的方面,比如室内照明应用较国外比起来就显得相对来说比较欠缺

目前,LED显示屏的主要制造厂商集中在日本、北美等地,我国LED制造厂商出口的份额在其中微不足道。据不完全统计,世界上目前至少有150家厂商生产全彩屏,其中产品齐全,规模较大的公司约有30家左右。虽然中国的LED显示屏的市场一片大好,但就现在的形式看来,LED显示屏技术与国际的高水平技术还是有一定的差距的,目前国内的产品只能做到单元模块和单元箱体的调节,不能做到真正的单点调节,因此在色彩和亮度一致性上有差别,特别是在经过维修更换了显示单元后,由于LED的参数可能发生了变化,显示效果很难跟原屏保持一致,而这项工作在国外是由专用的大型设备完成的,而国内没有这类因产品特性而开发的设备,也希望社会相关行业和设备制造企业能够给予关注。同时国外的LED显示屏的发展和应用与其对于节能减排理念强大的宣传力度有着密不可分的关系。随着LED显示屏的迅速发展,显示屏原材料的市场也迅速的发展起来。表面贴装器件从2001年与广大人民群众见面了,这种产品在室内被广泛使用,而且具有高亮度、色彩鲜艳、温度低的特性,每个点阵LED的间距可以随意调整,所以,被具有不同需求的消费者所喜爱。

1.3 单片机领域发展现状

单片机发展到现在,已拥有20多年的发展经验。在这20多年里单片机技术得以蓬勃稳定的发展,目前,单片机的功能正日渐完善。微处理器技术和超大规模集成电路技术的发展是单片机技术的发展的先导,展现了较微处理器更具特色的发展空间。近年来,电子产品已逐渐走入了我们的生活,它不仅使用起来简单方便,它的应用范围也是相当的大,如仪表、家用电器、测量仪器、机电一体化、技术研发和技术支持等有关行业,都可以是单片机设计人员的就业、提升、创业之所。目前单片机技术几乎遍布了我们生活和学习的各个领域,差不多每个领域都会有单片机技术的存在。

- 2 -

哈尔滨理工大学学士学位论文

现在的单片机本身,容纳了更多的资源,其内部存储量与存储资源也越来越多,用户不需要扩充资源就可以完成项目开发,不仅是开发简单,产品小巧美观,同时系统也更加稳定。单片机抗干扰能力加强,使的它更加适合工业控制领域,具有更加广阔的市场前景。单片机提供在线编程能力,加速了产品的开发进程,为企业产品上市赢得宝贵时间。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。 汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。单片机当前的趋势是向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。单片机作为计算机发展的一个重要分支领域,根据目前发展情况,从不同角度单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。

通用型/专用型这是按单片机适用范围来区分的。例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。

总线型/非总线型这是按单片机是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、 数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。

- 3 -

哈尔滨理工大学学士学位论文

第2章 总体设计方案

2.1 总体设计概要

本设计采用Atmel公司的AT89C52单片机为LED点阵显示屏的主控单元,设计主要包括LED显示模块、显示驱动模块、PC机通信模块。通过PC机与单片机通讯,通过用单片机控制驱动模块实现字符、数字、汉字和简单图形的显示,可以根据需要使用不同字号、字型,根据不同的需求实现动态或静态显示。如图 2—1错误!未找到引用源。所示,点阵电路大体上可以分成单片机本身的硬件、显示驱动电路、显示电路三部分。控制电路部分包括一个8052单片机和一些外围电路。在整个电路当中此控制电路部分相当于一个核心控制单元,它通过keil编写的程序控制整个外围电路的运行,并与PC机进行串行通讯,给屏体电路部分发送命令,从而控制行和列的各个驱动电路,以及LED点阵显示屏的显示。

本设计的显示电路采用扫描方式进行显示,每行点阵LED有十个行驱动器,各行的同名列共用两个列驱动器。由单片机控制行驱动器并给出行扫描信号,从第一行开始,按顺序依次对各行点阵进行扫描。另一方面,根据单片机控制各列驱动器并给出的列扫描信号,确定相应的列驱动器写入该列的状态。根据行驱动器与列驱动器控制每个LED灯是否导通的状态,确定灯是否导通。

行驱动器单片机列驱动器LED点阵显示

图 2—1 LED点阵显示总体框图

- 4 -

哈尔滨理工大学学士学位论文

2.2 基于单片机的点阵LED屏的功能要求

本设计通过keil软件编程,生成的HEX文件下载到AT89C52主控单片机中,单片机通过程序控制外围电路,控制LED模块每个LED二极管的状态,从而让LED模块显示我们想要它呈现的汉字、字母、数字和简易的图片等。

2.3 通讯部分方案设计

通讯协议是指通信双方的一种约定。约定包括对数据格式、同步方式、传输速度、传输步骤、捡纠错方式以及控制字符定义等问题做出的统一规定,通讯双方必须共同遵守

2.3.1 串口通讯定义

本设计采用的是目前普遍使用的RS-232标准的串行通讯接口,采用MAX232芯片,MAX232芯片是美信公司专为RS-232标准串口设计的单电源电平转换芯片,使用+5v电源供电。串行口参数定义波特率:9600Bps;字符长度:一位起始位、8为数据外、一位停止为、校验方式、无校验。

RS232是PC上串口通讯的标准配置。通常是9Pin接口,有些设备还使用25Pin的公头接口。RS232由于使用起来简单易用,而且比较稳定,在很长一段时间内,它成为了工业仪器通讯中应用最为广泛的通讯方式。到目前为止,很多设备都以RS232为其基本的通讯配置,然后可以扩充其它通讯方式。RS232的每一支脚位都有它的功用,也有它讯号流动的方向,原来的RS232设计初衷是用来接调制解调器作传输用的,因此它的脚位意义通常也和调制解调器传输有关。但是,现在用的RS232通讯连接,更多的是各种仪器和设备上。而且应用的线路上,也越来越简化,本设计也只用到三根线即可:RXD、TXD和GND。

2.3.2 连接器的机械特性

DB-9连接器:AT机以后,不支持20MA电流环接口,使用DB-9,作为提供多若功能I/O卡或主板上COM1/COM2两个串口的连接器。

电缆长度:通信速率低于20kb/s时,RS-232C直接连接最大15m。 最大传输距离:若不使用MODEM,码元畸变小于4%的情况下,最大15m。

- 5 -

哈尔滨理工大学学士学位论文

2.3.3 数据发送与接收线 TxD 发送数据 ,RxD 接收数据,地线:有两根SG、DG,分别是信号地和保护地,无方向。只有当DSR、DTR都处于ON状态时,才能在DTE和DCE之间进行传送操作。若DTE要发送数据,则预先将DTR线置有效ON,等CTS线上收到有效ON回答后,才能在TxD线上发送串行数据。

2.3.4 MAX232引脚功能介绍及主要特点

MAX232引脚如图 2—2

1C1+V+C1-C2+C2-V-T2OUTR2INVCCGNDT1OUTR1INR1OUTT1INT2INR2OUT1615141312112345678109

图 2—2 MAX232引脚图

C1+,C1-,C2+,C2-是外接电容端

R1IN,R2IN是2路转换后RS-232C电平信号接收输入端

R1OUT,R2OUT是2路转换后的TTL点平接收信号输出端,送89C52的RXD接收端

T1是TTL电平发送输入端,接89C52的TXD发送端 V+经电容接电源+5V V-经电容接地。

- 6 -

哈尔滨理工大学学士学位论文

2.3.5 RS232接口引脚定义 1、数据载波检测(DCD) 2、接收的数据(RXD) 3、发送的数据(TXD) 4、数据终端就绪(DTR) 5、信号地(GND)

6、数据设置就绪(DSR) 7、请求发送(RTS) 8、清除发送(CTS) 9、振铃指示(DELL)

2.3.6 主要特点:

1、符合所有的RS-232技术标准 2、只需要单一 +5V电源供电

3、片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压

V+,V- 4、功耗低,典型供电电流5mA 5、内部集成2个RS-232C驱动器

6、高集成度,片外最低只需4个电容即可工作。

2.4 主控单片机的方案设计

本次设计主控单片机选择了Atmel公司的单片机AT89S52,它是C51内核,具有低功耗、高性能CMOS 8位微控制器,有8K 在系统可编程Flash 存储器,比S51的存储容量大了一倍。具有Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令功能和引脚完全相同。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

8052单片机的基本结构见图 2—3

- 7 -

哈尔滨理工大学学士学位论文

T0T1时钟电路ROMRAM定时器/计数器CPU并行接口P0P1P2P3串行接口中断系统TXDRXDINT0INT1图 2—3 8052单片机的基本结构

AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

2.4.1 主控单片机管脚的主要性能:

AT89S52引脚如图 2—4

- 8 -

哈尔滨理工大学学士学位论文

1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7XTAL2XTAL1GNDVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.04039383736352345678343332910111213141516313029282726251718192423222021

图 2—4 AT89S52引脚图

1. 与MCS-51单片机产品兼容

2. 8K字节在系统可编程Flash存储器 3. 1000次擦写周期

4. 全静态操作:0Hz~33MHz 5. 三级加密程序存储器 6. 32个可编程I/O口线 7. 三个16位定时器/计数器 8. 八个中断源

9. 全双工UART串行通道 10. 低功耗空闲和掉电模式 11. 掉电后中断可唤醒 12. 看门狗定时器

- 9 -

哈尔滨理工大学学士学位论文

13. 双数据指针 14. 掉电标识符 AT89S52引脚说明 VCC : 电源 GND: 地

P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。

在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。

P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX)。

在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能

P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出

P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用)

P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊

- 10 -

哈尔滨理工大学学士学位论文

功能(第二功能)使用。 在flash编程和校验时,P3口也接收一些控制信号。 引脚号第二功能

P3.0 RXD(串行输入) P3.1 TXD(串行输出) P3.2 INT0(外部中断0) P3.3 INT0(外部中断0)

P3.4 T0(定时器0外部输入) P3.5 T1(定时器1外部输入) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器写选通)

RST: 复位输入。晶振工作时,RST脚持续2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96 个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。

ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。

PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。

EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。

XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。

2.5 驱动模块的方案设计

本次设计的驱动电路由12个74HC595芯片组成, 74HC595是硅结构的CMOS器件, 兼容低电压TTL电路,遵守JEDEC标准。 74HC595是具有8位移位寄存器和一个存储器,三态输出功能。 移位寄存器和存储器是分别的时钟。 数据在SHcp的上升沿输入到移位寄存器中,在STcp的上升沿输入到存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比

- 11 -

哈尔滨理工大学学士学位论文

图 3—3 复位电路

3.3.3 供电电路

AT89C51工作电压VCC=5V,其EA引脚需接高电平,5V电源电路如图所示。供电电路如图 3—4

图 3—4 供电电路

3.3.4 主控单片机与驱动模块的连接电路

单片机与移位寄存器连接电路如图 3—5

- 17 -

哈尔滨理工大学学士学位论文

AT89C52P1.0DS74HC595 图 3—5 单片机与移位寄存器连接电路

3.4 驱动模块的硬件设计

3.4.1 驱动模块的工作原理

单片机从存储器中读取的8Bit并行数据,通过并串变换,按顺序一位一位的输出给595,与此同时595的每一列都把当前数据传给后一列,并从前一列接收新的数据,直到全部数列传完为止,只有当一行的各列数据都已传到位之后,这一行的数据才能显示。

3.4.2 驱动模块的电路设计

本设计采用12个74HC595依次相连的方式,通过单片机的P1.0口向595送数据。连接方式是:第一个595的14角连接单片机的P1.0口,9角连接下一个595的14角,以此类推,第12个595的9角悬空,这样就形成了本次设计的驱动电路。

- 18 -

哈尔滨理工大学学士学位论文

3.5 显示模块的硬件设计 3.5.1 显示模块的工作原理

本设计采用8*8点阵LED显示模块,在这里说明一下点阵模块的使用方法及控制过程。如图 3—6中,水平线Y0、Y1??Y7叫做行线,接内部发光二极管的阳极,每一行8个LED的阳极都接在本行的行线上。相邻两行线间绝缘。同样,竖直线X0、X1??X7叫做列线,接内部每列8个LED的阴极,相邻两列线间绝缘。

在这种形式的LED点阵模块中,若在某行线上施加高电平(用“1”表示),在某列线上施加低电平(用“0”表示)。则行线和列线的交叉点处的LED就会有电流流过而发光。比如,Y7为1,X0为0,则右下角的LED点亮。再如Y0为1,X0到X7均为0,则最上面一行8个LED全点亮。

Y0Y1Y2Y3Y4Y5Y6Y7X0X1X2X3X4X5X6X7

图 3—6 8*8点阵模块内部结构与引脚

- 19 -

哈尔滨理工大学学士学位论文

本设计用两个驱动模块控制一个8*8的点阵led,用595的Q1~Q7口分别接到LED的行线和列线上,通过控制Q1~Q7口的数据,来控制LED灯的亮灭。

3.5.2 显示模块的电路设计

本次设计采用20个8*8的点阵LED模块,组成5个16*16的点阵屏,用两个595控制列驱动,其余10个595控制行驱动。并且连接595时不需要加上拉电阻,因为595提供的30MA的电流足以维持LED灯的显示。显示模块与移位寄存器的电路连接如图 3—7

图 3—7 显示模块与移位寄存器的电路连接

3.6 基于单片机的点阵LED显示屏总体原理图

原理图如图 3—8

- 20 -

哈尔滨理工大学学士学位论文

图 3—8 基于单片机的点阵式LED屏设计原理图

3.7 基于单片机的点阵LED显示屏pcb板的设计

PCB设计如图 3—9

图 3—9 基于单片机的点阵式LED屏设计PCB图

- 21 -

哈尔滨理工大学学士学位论文

3.8 本章小结 本章详细介绍了通讯部分、主控单片机部分、驱动部分和显示部分的工作原理和详细的电路连接,及总体的原理图和PCB图。

- 22 -

哈尔滨理工大学学士学位论文

第4章 软件设计

4.1 软件设计思路

本设计采用keil软件编程,系统程序采用进行子程序模块化设计,将显示汉字的点阵码从只读存储器读入到单片机内部的显示缓存区中,再将缓存区的点阵码依时间片从串口送到显示驱动。每行显示时间为1.2ms,每秒扫描50次。用不同的子程序改变显示缓冲存储器中点阵码的排列方式,即可得到不同的显示方式。读入不同地址的汉字显示码,即可改变显示内容。

4.2 Keil软件的开发环境

Keil公司开发的ARM开发工具MDK(Microcontroller Development Kit),是用来开发基于ARM核的系列微控制器的嵌入式应用程序。它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。MDK包含了工业标准的Keil C编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照计划完成项目。

4.3 基于单片机的点阵LED的软件设计

4.3.1 字模软件的应用

每一个字由16行16列的点阵组成显示。我们可以把每一个点理解为一个象素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以显示汉字,也可以显示在256象素范围内的任何图形。我们以“哈”字为例,显示效果如图

- 23 -

哈尔滨理工大学学士学位论文

图2 汉字显示原理

为了弄清楚汉字的点阵组成规律,首先通过列扫描方法获取汉字的代码。首先将16行分成8位的上、下两部分,把发光的象素位编为0不发光的象素位为1的十六进制代码。这样就把要显示的“ 哈”字编为如下代码:

DB 0FFH,80H,0BAH,82H,0BEH,82H,0BAH,80H ;四

由这个原理可以看出,无论显示何种字体或图像,都可以用这个方法来分析出他的扫描代码从而显示在屏幕上。上述方法虽然能够让我们弄清楚汉字点阵代码的获取过程,但是依靠人工方法获取汉字代码是一件非常繁琐的事情。对于16X16十六进制数据的汉字代码,我们经常采用字库软件查找字符代码,软件打开后输入汉字,点“检取”,十六进制数据的汉字代码即可自动生成,把我们所需要的竖排数据复制到程序中即可,如图4所示。可见,汉字点阵显示一般有点扫描、行扫描和列扫描3种。为了符合视觉暂留要求,点扫描方法的扫描频率必须大于16×64—1 024 Hz,周期小于1 ms即可。行扫描和列扫描方法的扫描频率必须大于16×8—128 Hz,周期小于7.8 ms即可,但是一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。

- 24 -

哈尔滨理工大学学士学位论文

图3 显示结果

4.3.2 程序流程图

软件程序主要由开始、初始化、主程序、字库组成。其中主程序的流程图如图所示。下面的程序能够用来实现显示“哈理工大学” 。

汉字的显示。程序清单如下

- 25 -

哈尔滨理工大学学士学位论文

4.3.3 程序的管脚定义

sbit DATAIN = P1^0; sbit CLK = P1^2; sbit OUT = P1^3;

4.3.4 程序的调用数组

table[6]={0xff,0xc3,0x5d,0x7e,0xee,0x4f}, table1[6]={0xff,0xdd,0x43,0x7e,0xed,0x97}, table2[6]={0xff,0xc3,0x57,0x7e,0xe3,0x45}, table3[6]={0xff,0xdf,0x06,0x00,0x87,0x80}, table4[6]={0xff,0x21,0x52,0x7e,0xe3,0xc7}, table5[6]={0xff,0xe5,0x00,0x7e,0xed,0x97}, table6[6]={0xff,0xc1,0x56,0x7e,0xee,0x4f}, table7[6]={0xff,0xdf,0x07,0x7e,0xee,0xdf};

4.3.5 延时子函数

void Delay_time(void) {

unsigned int i = 0, j = 0; for (i = 0; i < 1; i++) { for (j = 0; j <1; j++); } }

4.3.6 数据写入子函数

void write_data(unsigned int dat) {

unsigned char i; for (i = 0; i < 8; i++) { CLK = 0; DATAIN = dat & 0x80; dat = dat << 1; Delay_time(); CLK = 1; Delay_time(); } }

- 26 -

哈尔滨理工大学学士学位论文

4.3.7 显示子函数 void test_display(unsigned int* data_test) { unsigned char i=0; OUT=0; for(;i<6;i++)

write_data( data_test[i]); OUT=1; }

4.3.8 主函数

void main(void) {

Delay_time();

while(1){ } }

test_display(table); test_display(table1); test_display(table2); test_display(table3); test_display(table4); test_display(table5); test_display(table6); test_display(table7); Delay_time();

- 27 -

哈尔滨理工大学学士学位论文

第5章 仿真与调试

5.1 用proteus绘制原理图

运行 Proteus 的 ISIS 程序后, 进入该仿真软件的主界面。主界面由菜单栏、工具栏、预览窗口、元件选择按钮、元件列表窗口、原理图绘制窗口和仿真进程控制按钮组成(如图1所示)。通过元件选择按钮 P (从库中选择元件命令) 命令, 在弹出的 Pick Devices 窗口中选择电路所需的元件, 放置元件并调整其相对位置, 对元件参数设置及元器件间连线, 完成单片机系统的硬件原理图绘制。图所示是绘制完成的电路图。

5.2 Proteus对单片机内核的仿真

在source 菜单的Define code generation tools 菜单命令下,选择程序编译的工具、路径、扩展名等项目;在source菜单的Add/remove source files 命令下,加入单片机硬件电路的对应程序(主要采用 Keil 进行程序编译)

打开如图8所示的对话框。在 Program File 栏添加编译好的十六进制格式的程序文件8X8.hex,给AT89C51输入晶振频率,此处默认为12MHZ, 单击OK 按钮完成程序添加工作, 下面就可以进行系统仿真了。

Proteus 与其它单片机仿真软件不同的是,它不仅能仿真单片机外围电路或没有单片机参与的其它电路的工作情况,也能仿真单片机CPU的工作情况。因此在仿真和程序调试时,是从工程的角度直接看程序运行和电路工作的过程和结果。从某种意义上讲Proteus仿真,基本接近与工程应用。

- 28 -

哈尔滨理工大学学士学位论文

5.3 Proteus仿真效果与分析

5.3.1 利用proteus仿真步骤

(1)选择设计图纸的到小 (2)选取仿真所需的元器件

选取元器件的方式是,单击元器件放置按钮“P”。 (3)把元器件放到图纸的合适位置,进行布线。 (4)编辑窗口连接端子

(5)分别对各元器件的属性值进行设置,单击按钮,进行电气检测,查看接线是否合理,说明硬件电路已经顺利的完成。

(6)双击单片机,将用伟福编译成功的程序烧进单片机。单击proteus中的play进行仿真。

- 29 -

哈尔滨理工大学学士学位论文

5.3.2 电路仿真图

5.3.3 系统功能的拓展方向

本设计作品不但可以运用到车站、医院等行业,而且可以通过拓展,

发展出更多的用途.本作品单片机部分P0和P2空闲,必要时,可以扩展系统的ROM和RAM。可以做为下位机辅助调试模块,实现例如照明,温度测量,时钟报警、计时,霓虹灯等功能。

利用发光二极管的控制电压很低和控制方法简单的优点,将它装在室内天棚中或做成大型灯饰,通过电脑输出信号直接驱动三极管后控制它的开关状态。由于使用了电脑,再多的的LED数量也能方便自如地控制,得到时暗可变颜色可变绚丽多彩的照明效果,并且已有成功的案例。例如在美国“雨林咖啡厅”上做了一个色彩变幻的彩色天棚,在Hollyword赌场做了一盏色彩斑烂的大型艺术吊灯。

当然,将许多个发光二极管拼在一起做成一盏盏灯后做成标志牌,标志线也是目前常见的应用手法。英国千禧宫高达100米的支撑柱顶部的每只红色航空障碍灯就有开发都是以普通照明用途为最终目标的。而且从当今的发展速度看,其成为新一代普通照明光源1万多颗红色发光二极管组

- 30 -

哈尔滨理工大学学士学位论文

成。 到目前为止,对LED的技术已成定势。

与此同时,LED在照明以外的用途也开始受到关注。比如使用LED产品替代农药进行杀菌、杀虫; 冰箱内用LED促进蔬菜光合成产生维生素;利用LED可控制波长的特点进行的特殊应用等等。在机动车、铁路、轮船等交通工具领域,LED以低能耗、体积小的特点正在迅速普及。

总之,LED的优势不仅是在照明领域,其在诸多领域中亦潜力巨大,期待今后的进一步开发。

附录

- 31 -

哈尔滨理工大学学士学位论文

结论

本系统是以AT89C52单片机为核心,采用并行ISP下载,串行数据传输、动态扫描技术,利用人眼视觉暂留现象实现汉字移动显示并可与PC机进行通信的16*64LED汉字显示屏。

系统总体电路由通信电路,驱动电路和外部存储电路构成。通信电路由MAX485进行与单片机的信息传送。74HC595作用完成对显示屏的驱动,实现字模信息于LED点阵上小灯亮灭的转变过程。

通过软硬件的仿真调试,实现了本次设计的基本功能:汉字的显示。但在实际应用中,功能不仅仅于此,通过对程序的稍做修改,可以实现汉字的静态显示,左移,右移的显示,以及根据要求来控制移动速度和每次移动的距离,并且都可以和上位机进行通信实现汉字的更新。

总结本文的研究工作,主要做了下面几点较突出的工作:

一、通过查阅大量的相关资料,详细了解了LED的发光原理和LED显示屏的原理,了解了LED的现状,清楚地了解了LED显示屏与其它显示屏相比较有那些

优点,明确了研究目标。

二,本文设计的LED显示屏能够实现在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。

三,文章给出了系统具体的硬件设计方案,硬件结构电路图,软件流程图和具体汇编语言程序设计与调试等方面。

四,在这次毕业设计的过程中学会了 Protel 99se 的基本使用,感到Protel 99se 对自动化专业的同学来说是一门很有用的课程。

五,通过这次毕业设计,重新复习并进一步学习了MCS-51;熟练掌握了WORD软件的使用。

- 32 -

哈尔滨理工大学学士学位论文

致谢

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。在设计中遇到了很多专业知识问题,最后在蔡老师的辛勤指导下,终于游逆而解。此次课程设计,学到了很多课内学不到的东西,比如独立思考解决问题,出现差错的随机应变,和与人合作共同提高,都受益非浅。同时,在蔡老师的身上我们学也到很多实用的知识,在此我们表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!

- 33 -

哈尔滨理工大学学士学位论文

参考文献

[1] 郭建江.单片机技术与应用.东南大学出版社. [2] 诸昌钤 编著 :《LED显示屏系统原理及工程技术》.成都:电子科技大学出 版社

[3] 张志良 主编 :《单片机原理及控制技术》.北京:机械工业出版社,2005

[4] 李光飞 编著 :《单片机课程设计实例指导》.北京:北京航空航天出版社,

[5] 吴金戍,沈庆阳,郭庭吉编著.8051单片机实践与应用.北京:清华

大学出版社.

[7] 侯丽玲:基于AT89S52单片机的LEDD点阵显示屏控制系统的设计[J],漳州

职业技术学院学 报,2008年第3 期

[8] Paul F. Lister:Single-chip microcomputers .Austin, Tex. : Motorola

Semiconductor Products, c1984

- 34 -

哈尔滨理工大学学士学位论文

附录

#include sbit DATAIN = P1^0; sbit CLK = P1^2; sbit OUT = P1^3;

unsigned int code

table[6]={0xff,0xc3,0x5d,0x7e,0xee,0x4f}, table1[6]={0xff,0xdd,0x43,0x7e,0xed,0x97}, table2[6]={0xff,0xc3,0x57,0x7e,0xe3,0x45}, table3[6]={0xff,0xdf,0x06,0x00,0x87,0x80}, table4[6]={0xff,0x21,0x52,0x7e,0xe3,0xc7}, table5[6]={0xff,0xe5,0x00,0x7e,0xed,0x97}, table6[6]={0xff,0xc1,0x56,0x7e,0xee,0x4f}, table7[6]={0xff,0xdf,0x07,0x7e,0xee,0xdf};

void Delay_time(void) {

unsigned int i = 0, j = 0; for (i = 0; i < 1; i++) { for (j = 0; j <1; j++); } }

void write_data(unsigned int dat) { unsigned char i; for (i = 0; i < 8; i++) { CLK = 0; DATAIN = dat & 0x80; dat = dat << 1; Delay_time(); CLK = 1; Delay_time(); } }

- 35 -

哈尔滨理工大学学士学位论文

void test_display(unsigned int* data_test) { unsigned char i=0; OUT=0; for(;i<6;i++)

write_data( data_test[i]); OUT=1; }

void main(void) { Delay_time(); while(1){ } }

test_display(table); test_display(table1); test_display(table2); test_display(table3); test_display(table4); test_display(table5); test_display(table6); test_display(table7); Delay_time(); - 36 -

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

Top