基于AT89C51单片机的16×16点阵LED电子显示屏设计
- 格式:pdf
- 大小:3.87 MB
- 文档页数:40
基于AT89C51单片机的LED点阵显示系统设计一、选取硬件平台本设计选取了AT89C51单片机作为主控芯片,其具有易于编程和接口丰富的特点,适合用于控制LED点阵显示系统。
通过单片机的IO口与LED点阵进行连接,并通过相应的驱动电路控制LED的亮灭,实现点阵显示功能。
二、软件设计在单片机上,我们需要编写相应的程序来控制LED点阵的显示。
以下是基本的软件设计功能:1. 点阵数据存储:在单片机的内部RAM中,设计一块存储区域,用来存放LED点阵的数据。
每个存储单元代表一个LED的亮灭状态,通过将相应的数据写入或读取出来,来实现相应的显示效果。
2. 数据刷新和循环:通过定时器中断,定时触发点阵数据的刷新。
在每次刷新时,通过逐行扫描点阵的方式,将相应的数据输出到点阵对应的LED上。
为了实现流畅的显示效果,需要进行快速的循环刷新,并及时更新点阵数据。
3. 外部控制:为了方便控制点阵的亮灭,可以设计外部按键或开关来实现一些功能,如调整亮度、改变显示内容等。
通过单片机的IO口读取外部的输入信号,进一步控制点阵显示的效果。
三、硬件设计除了单片机之外,还需要设计相应的硬件电路来实现LED点阵的驱动和控制。
1. 驱动电路:通过行选和列选的方式,来控制点阵中的每个LED的亮灭状态。
在每个行选时,通过给相应的引脚输出高电平,从而使得该行上的LED亮起;在每个列选时,通过给相应的引脚输出低电平,从而使得该列上的LED亮起。
2. 电流限制:为了保证LED在正常工作范围内,需要在驱动电路中加入适当的电流限制元件,如电流限制电阻或恒流源。
通过限制电流,在避免烧坏LED的同时,也可进一步控制LED的亮度。
3. 外部控制接口:为了实现外部控制功能,可以设计相应的按钮或开关与单片机的IO口相连接,通过读取按钮或开关的状态,来实现相应的操作。
同时,也需要设计合适的电平转换电路,以兼容单片机和外部控制信号之间的电平差异。
四、实验结果和分析经过硬件和软件的设计与调试,我们成功地实现了基于AT89C51单片机的LED点阵显示系统。
doc文档摘<br />要<br />LED 显示器由于其价格低廉,体积小,功耗低,可靠性好得到广泛使用, LED 点阵显示电子广告牌随处可见.现在市场上各类基于LED 的显示屏较多, 但大部分产品为单一模式的LED 显示屏,其在显示内容的更换及显示屏的重组等方面都存在不便之处.随着信息化社会的迅速发展,LED 显示屏正在向显示内容丰富,信息更改方便等方面发展.本系统基于单片机(AT89C51)控制显示汉字采用16×16 LED 点阵. 关键词: 关键词:LED 点阵;汉字; 信息;单片机<br />目<br />录<br />1 课题描述.................................................................................................1 2 设计过程.................................................................................................2 2.1 硬件电路设计...............................................................................2 2.12 硬件电路组成.......................................................................2 2.14 汉字显示原理及字库代码获取方法...................................3 2.2 程序设计.. (5)2.21 程序流程图..........................................................................5 2.22 程序清单...............................................................................6 3 测试.........................................................................................................9 4总结....................................................................................................10<br />参考文献................................................................................................... 11<br />1 课题描述<br />目前,国内的LED 点阵显示屏大部分是单显示型,其显示的内容相对较少, 显示花样较单一.一般在产品出厂时,显示内容就已写入显示屏控制系统中的EPROM 芯片内,当需要更换显示内容时就非常困难,这样使该类型的显示屏使用范围受到了限制.国内的另一种LED 显示屏——可编程序型LED 显示屏,虽然增加了显示屏系统的编程能力,显示内容和显示花样都有所增加,但也存在着更换显示内容不便的缺点.随着社会经济的迅速发展,如今的广告牌都存在着显示内容丰富,信息量大,信息更换速度快等特点.因此传统的LED 显示屏控制系统已经越来越不能满足现代广告宣传业的需要. 而利用PC 机通信技术控制LED 显示屏,则具有显示内容丰富,信息更换灵活等优点. 本课题基于单片机(A T89C51)控制汉字显示采用16×16 LED 点阵. 开发工具:DICE-51 仿真开发系统,Proteus 仿真软件.<br />1<br />2 设计过程<br />设计过程主要分为:硬件电路设计,程序设计<br />2.1 硬件电路设计2.12 硬件电路组成<br />本系统以AT89C51 单片机为核心芯片的电路来实现, 主要由AT89C51 芯片, 时钟电路,复位电路,列扫描驱动电路(74HC154),16×16 LED 点阵5 部分组成,如图1 所示.使用8×8 点阵构建16×16 点阵,构造方法如图 2.<br />图1<br />图2<br />2<br />2.13 基本电路工作原理<br />AT89C51 是一种带4 kB 闪烁可编程可擦除只读存储器(Falsh Programmable and Erasable Read OnlyMemory,FPEROM)的低电压,高性能CMOS 型8 位微处理器,俗称单片机.该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS-51 指令集和输出管脚相兼容. 由于将多功能8 位CPU 和闪烁存储器组合在单个芯片中, 能够进行 1 000 次写/擦循环, 数据保留时间为10 年. 他是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案.因此,在智能化电子设计与制作过程中经常用到AT89C51 芯片. 时钟电路由AT89C51 的18,19 脚的时钟端(XTALl 及XTAL2)以及12 MHz 晶振X1,电容C2,C3 组成,采用片内振荡方式. 复位电路采用简易的上电复位电路,主要由电阻R1,R2,电容C1,开关K1组成,分别接至AT89C51 的RST 复位输入端. LED 点阵显示屏采用16×16 共256 个象素的点阵.我们把行列总线接在单片机的IO 口,然后把上面分析到的扫描代码送人总线,就可以得到显示的汉字了.但是若将LED 点阵的行列端口全部直接接入89S51 单片机,则需要使用32 条IO 口,这样会造成IO 资源的耗尽,系统也再无扩充的余地.因此,我们在实际应用中只是将LED 点阵的16 条行线直接接在P2 口和P3 口, 至于列选扫描信号则是由4-16 线译码器74HC154 来选择控制, 这样一来列选控制只使用了单片机的4 个IO 口,节约了很多IO 资源,为单片机系统扩充使用功能提供了条件. 汉字扫描显示的基本过程是这样的:通电后由于电阻R1,电容C1 的作用, 使单片机的RST 复位脚电平先高后低,从而达到复位;之后,在C2,C3,X1 以及单片机内部时钟电路的作用下,单片机89C51 按照设定的程序在P2 和P3 接口输出与内部汉字对应的代码电平送至LED 点阵的行选线(高电平驱动),同时在P1.1,P1.2,P1.3,P1.4 接口输出列选扫描信号(低电平驱动),从而选中相应的象素LCD 发光,并利用人眼的视觉暂留特性合成整个汉字的显示.<br />2.14 汉字显示原理及字库代码获取方法<br />我们以UCDOS 中文宋体字库为例,每一个字由16 行16 列的点阵组成显示. 即国标汉字库中的每一个字均由256 点阵来表示.我们可以把每一个点理解为一个象素,而把每一个字的字形理解为一幅图像.事实上这个汉字屏不仅可以显示汉字,也可以显示在256 象素范围内的任何图形.如查用8 位的AT89C51 单片机控制,由于单片机的总线为8 位,一个字需要拆分为2 个部分. 为了弄清楚汉字的点阵组成规律,首先通过列扫描方法获取汉字的代码. 汉字可拆分为上部和下部,上部由8×16 点阵组成,下部也由8×16 点阵组成. 本例通过列扫描方法首先显示左上角的第一列的上半部分,即第0 列的P2.0~<br />3<br />P2.7 口,方向为P2.0 到P2.7,显示汉字"大"时,P2.5 点亮,由上往下排列, 为:P2.0 灭,P2.1 灭,P2.2 灭P2.3 灭,P2.4 灭,P2.5 亮,P2.6 灭,P2.7 灭. 即二进制00000100,转换为十六进制为04h.上半部第一列完成后,继续扫描下半部的第一列,为了接线的方便,我们仍设计成由上往下扫描,即从P3.7 向P3.0 方向扫描,这一列全部为不亮,即为00000000,十六进制则为00h.依照这个方法转向第二列, 第三列, …, 直至第十六列的扫描, 一共扫描32 个8 位, 可以得出汉字"大"的扫描代码,由这个原理可以看出,无论显示何种字体或图像,都可以用这个方法来分析出他的扫描代码从而显示在屏幕上. 上述方法虽然能够让我们弄清楚汉字点阵代码的获取过程,但是依靠人工方法获取汉字代码是一件非常繁琐的事情.为此,我们经常采用字库软件查找字符代码,软件打开后输入汉字,点"检取",十六进制数据的汉字代码即可自动生成,把我们所需要的竖排数据复制到程序中即可,如图 3 所示.<br />图2 可见,汉字点阵显示一般有点扫描,行扫描和列扫描 3 种.为了符合视觉暂留要求,点扫描方法的扫描频率必须大于16×64=1 024 Hz,周期小于1 ms 即可. 行扫描和列扫描方法的扫描频率必须大于16×8=128 Hz, 周期小于7.8 ms 即可,但是一次驱动一列或一行(8 颗LED)时需外加驱动电路提高电流,否则LED 亮度会不足.<br />4<br />2.2 程序设计2.21 程序流程图<br />软件程序主要由开始,初始化,主程序,字库组成.其中主程序和子程序的流程图如图 4 和图 5所示<br />图3 主程序流程图<br />5<br />图表4 子程序流程图<br />2.22 程序清单<br />ORG LJMP ORG MOV SETB MOV MOV LCALL CLR MOV ADD MOV MOV ADDC MOV DJNZ LJMP SETB 0000H MIN 0030H SP,#60H P1.0 30H,#10H DPTR,#TAB MIC C A, DPL A, #32 DPL,A A, DPH A, #00H DPH, A 30H,L1 MIX P1.0<br />6<br />MIN: MIX:<br />L1:<br />MIC:<br />LP: LOOP:<br />MOV MOV MOV MOV<br />31H, #80 32H,#16 R1,#1EH R2,#00H<br />EN: MOV A,R2 MOVC A, @A+DPTR MOV P2,A INC R2 MOV A,R2 MOVC A,@A+DPTR MOV P3,A INC R2 MOV A, R1 MOV P1,A LCALL DEL SETB P1.0 RR A DEC A RL A MOV R1,A DJNZ 32H,EN DJNZ 31H,LOOP RET MOV 34H,#2 MOV R4, #250 DJNZ R4,$ DJNZ 34H,DL0 RET TAB: ;计db 02H,00H,02H,00H,42H,00H,33H,0FEH db 00H,04H,02H,08H,02H,10H,02H,00H db 02H,00H,0FFH,0FFH,02H,00H,02H,00H db 02H,00H,06H,00H,02H,00H,00H,00H; ;算db10H,10H,20H,10H,0C0H,11H,5FH,0D2H db 75H,7CH,55H,50H,55H,50H,35H,50H db0D5H,50H,55H,50H,75H,7FH,5FH,0D0H db 40H,10H,40H,30H,00H,10H,00H,00H; ;机db08H,20H,08H,0C0H,0BH,00H,0FFH,0FFH db 09H,01H,08H,82H,00H,04H,3FH,0F8H<br />7<br />DEL : DL0:<br />db 20H,00H,20H,00H,20H,00H,7FH,0FCH db 20H,02H,00H,02H,00H,0EH,00H,00H; ;科db24H,08H,24H,10H,24H,60H,25H,80H db 7FH,0FFH,0C5H,00H,44H,80H,00H,40H db24H,40H,12H,40H,00H,40H,0FFH,0FFH db 00H,80H,01H,80H,00H,80H,00H,00H; ;学db02H,20H,0CH,20H,88H,20H,69H,20H db 09H,20H,09H,22H,89H,21H,69H,7EH db09H,60H,09H,0A0H,19H,20H,28H,20H db 0C8H,20H,0AH,60H,0CH,20H,00H,00H; ;与db00H,10H,00H,10H,00H,10H,0FFH,10H db 11H,10H,11H,10H,11H,10H,11H,10H db11H,10H,11H,32H,11H,11H,11H,02H db 33H,0FCH,11H,00H,00H,00H,00H,00H; ;机db08H,20H,08H,22H,08H,41H,0FFH,0FEH db 08H,80H,08H,01H,11H,81H,11H,62H db11H,14H,0FFH,08H,11H,14H,11H,64H db 31H,82H,10H,03H,00H,02H,00H,00H; ;术db04H,08H,04H,08H,04H,10H,04H,20H db 04H,40H,04H,80H,05H,00H,0FFH,0FFH db05H,00H,44H,80H,24H,40H,34H,20H db 04H,10H,0CH,18H,04H,10H,00H,00H; ;史db08H,10H,08H,20H,08H,0C0H,0BH,00H db 0FFH,0FFH,09H,00H,08H,90H,00H,20H db08H,0C0H,0BH,00H,0FFH,0FFH,09H,00H db 08H,0C0H,18H,60H,08H,40H,00H,00H; ;明db04H,44H,0CH,0C6H,35H,44H,0C6H,48H db 0CH,48H,00H,0FCH,3EH,80H,2AH,80H db6AH,80H,0ABH,0FFH,2AH,80H,2AH,88H db 7EH,84H,21H,0F8H,00H,80H,00H,00H; ;祥db04H,44H,0CH,0C6H,35H,44H,0C6H,48H db 0CH,48H,00H,0FCH,3EH,80H,2AH,80H db6AH,80H,0ABH,0FFH,2AH,80H,2AH,88H db 7EH,84H,21H,0F8H,00H,80H,00H,00H END<br /> 8<br />3 测试<br />在完成编写程序的编译和仿真之后,运行测试结果每个字显示完后向右移, 依次显示"陕西理工学院计算机科学与技术史明祥" ,如图6 显示"林"时的结果.<br />图5<br />9<br />4总<br />结<br />这次课程设计我从硬件,软件,仿真系统下应用以前学习的汇编语言编程基础以及微机原理和单片机的一些知识,综合起来才完成了这个基于单片机的汉字显示控制设计. 在本次的课程设计中,主要运用了我以前所学的汇编语言和微机原理方面的知识,通过对程序的不段修改和调试,最终,实现了所要达到的效果.并且的这次设计过程中对硬件设计有了更深的认识,获得了很大的收获. 最后,感谢老师的细心指导,希望这个关于16*16 点阵显示的设计和实现能够为他人所用和扩展.<br />10<br />参考文献<br />[1] 戴梅萼.《微型计算机技术及应用》清华大学出版社. [2] 李学礼.《基于Proteus 的8051 单片机实例教程》电子工业出版社. [3]李华.单片机实用接口技术北京航空航天工业出版社[4]张菊鹏.计算机硬件技术基础(第二版)清华大学出版社[5] 孙德文.微型计算机及其接口技术经济科学出版社<br />11。
16×16点阵LED电子显示屏的设计摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
本设计是1616××16点阵LED电子显示屏的设计。
整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。
通过该芯片控制一个行驱动器74LS154和两个列驱动器74L373来驱动显示屏显示。
该电子显示屏可以显示各种文字或单色图像,采用4块8 x 8点阵LED显示模块来组成一个16x16点阵显示模式。
显示采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。
文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。
关键词:AT89C51单片机 LED 点阵显示动态显示AbstractAs a popular display device component, LED dot-matrix display board consists of several independent LED (Light Emitting Diode).The LED dot-matrix display board can display the number or sign,and it is usually used to show time, speed, the state of system etc.This design is 1 16 ×16 lattice LED electron display monitor design.The whole equipment is with the 40-pin AT89C51 MCU (Micro Controller Unit) produced by the American ATMEL company at thecore, introduced take it as the control system LED lattice electron display monitor dynamic design and the development process. Controls good driver 74LS154 an two row driver 74L373 through thischip actuates the display monitor demonstration. The electronic screen can show all kinds of written or monochrome images, one full screen display Chinese characters, four pieces of 8 x 8 dot-matrix LEDdisplay modules to form the 16x16 dot matrix display mode. Show dynamic show that makes static graphic or text can be achieved, shifted out of various formats. This paper describes the of the LEDdot matrix display, and the principle function of the various parts ofthe circuit, the corresponding software program design and the use of some such. Key words: AT89C51 Micro Controller U nitUnit; LED; LatticeDisplay;Dynamic Display目录第1章绪论1.1 选题背景LED显示屏是八十年代后期在全球迅速发展起来的新型信息显示媒体,显示屏由几万……几十万个半导体发光二极管像素点均匀排列组成。
HEBEINONGJI摘要:现代社会电子产品的应用越来越广泛,单片机作为核心控制器,其应用已经广泛渗入社会的各行各业。
LED显示屏在现代社会的各个领域里应用也越来越多。
本文主要研究如何用AT89C51单片机控制一块LED显示屏来循环滚动显示不同的汉字。
用C语言在Keil软件上编制程序代码,用Proteus软件对系统进行仿真。
关键词:LED显示屏;AT89C51;C语言程序基于AT89C51单片雌制的LED显示屏的设计苏州健雄职业技术学院赵素玲1控制要求使用AT89C51单片机控制一个8x8LED点阵显示屏,循环滚动显示不同的汉字。
不同的汉字有不同的代码,本文以作者自己所在的城市“太”'呛”“市”三个字为例来进行循环滚动演示,当然也可以显示其他的汉字。
具体要求是:1.1以AT89C51芯片为核心,加上外围辅助电路,设计出仿真电路图;1.2根■据要求用Keil软件编写出C语言程序代码;1.3用一个8x8LED点阵显示屏,"太""仓""市"三个字循环滚动显示。
2系统硬件设计2.1仿真电路图设计AT89C51芯片由电源、地、晶振和复位电路组成单片机最小系统。
Xl(晶体)与两个电容Cl、C2(30PF)组成了晶振。
1K电阻Rl、200fl电阻R2.22UF电容和一个按钮构成复位电路。
由P2口控制8x8LED显示屏的列,P3口控制8x8LED显示屏的行,电路如下图所示。
2.2元器件清单系统仿真元器件清单列表如表2-1所示:表2-1元器件清单列表序号代号名称型号与规格数量1Cl C2电容30PF22C3电容22UF13R1电阻1K14R2电阻20015XI晶体CRYSTAL16LED点阵8X817U1主控芯片AT89C5113系统软件设计系统C语言程序代码:#include<reg51,h>//包括一个51标准内核的头文件#include<intrins.h>#define uchar unsigned char#define uint unsigned intuchar code tai[]={0xf7,0xf7,0x00,0xe7,0xdb,0xad,0x7e,0xfif};//太uchar code cang[]={Oxf7,Oxe7,Oxdb,Ox81,0x5a,0xd3,0xdd,0xc1};〃仓uchar code shi[]={0xf7,0x80,0xf7,0x80,0xb6,0xb4,0xb6,0xf7};//市delay(uint z)//带有形参的延时子函数{uint x,y;fbr(x=z;x>0;x——)for(y=200;y>0;y―);}void main(void)//主程序{uchar a,b,c,u,v,w;//初始化定义P3=0x80;〃给行赋初值while(l){u=0;while(u<80)//"太"字显示的时间{a=0;while(a<8){P3二_crol_(P3,l);〃更新行P2=tai[a];〃将“太”字对应行的内容传给P2口delay(l);//调用延时子函数a++;}u++;}v=0;while(v<80)〃"仓"字显示的时间{b=0;while(b<8){P3二_cn)l_(P3,l);//更新行P2=cang[b];//将“仓”字对应行的内容传给P2口delay(l);//调用延时子函数b卄;}v++;}w=0;while(w<80)〃"市"字显示的时间{c=0;while(c<8){P3=_crol_(P3,l);//更新行P2=shi[c];//将“市”字对应行的内容传给P2口delay(l);//调用延时子函数C++;}2020年第5期何卞衣祀85H EBEINONGJIw++;}}}在程序设计中,先对用到的变量进行初始化设置,保证程序可以有效运行。
O引言Proteus是目前最先进、最完整的多种型号微处理器系统的仿真设计平台,由ISIS和ARES两个构成,其中ISIS是一款智能电路原理图输入系统软件,可作为电子系统仿真平台,ARES是一款高级布线编辑软件,用于制作PCB印制电路板。
开发者可以在无硬件条件下直接使用Pro-teus进行电路设计和仿真调试,真正实现了在计算机中完成电路原理图设计、电路分析与仿真、系统测试到形成印制电路板的完整电子设计、研发过程。
因此,本课题利用AT89C5l单片机作为主控制器,采用Proteus软件实现对16×16LED点阵汉字的分批显示.仿真运行通过后再进行点阵显示电路制作,大大缩减实际开发周期,节约了开发成本。
1硬件电路设计在很多LED显示的场合,需要实现一系列LED点阵汉字的分批显示,为简化设计,每批只显示2个汉字,分若干次完成全部显示。
利用ProteusISIS平台画出的硬件电路如图l所示。
该硬件电路的核心是利用单片机读取显示字型码,通过驱动电路对16×16共阴极LED点阵进行动态列扫描,以实现点阵汉字的分批显示。
设计选用的单片机为Atrnel公司的AT89C51,它是一种低功耗,高性能CMOS8位单片机,片内含4KB可反复擦写的FLASHROM,采用Atmel公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及8051引脚结构,内置看门狗电路。
功能强大的AT89C5l可为许多嵌入式控制应用系统提供高性价比的解决方案。
时钟电路用于产生单片机工作时所必需的时钟信号,其中晶振频率为12MHz。
上电复位电路可保证单片机的在程序运行出错或操作错误使系统处于死锁状态时,重启运行。
显示单元是LED汉字显示屏,由2片16×16LED点阵模块组成。
但由于Proteus软件目前版本中还没有16×16点阵模块,设计中采用Pro-teus软件中的4个8×8点阵模块组合成1个16×16点阵模块。
西安航空职业技术学院毕业设计(论文)论文题目:16×16点阵LED电子显示屏的设计所属系部:指导老师:职称:学生姓名:班级、学号:专业:西安航空职业技术学院制2012年 12月 15日西安航空职业技术学院毕业设计(论文)任务书题目:16×16点阵LED电子显示屏的设计任务与要求:利用AT89C51单片机控制整个电路,设计16×16点阵LED电子显示屏,在目测条件下16×16点阵LED显示屏各点亮度均匀、充足,可以显示文字。
文字应稳定,清晰无串扰。
时间 2012 年 10 月 15 日至 2012 年 12 月 15 日共 8 周所属系部:电子工程系学生姓名:学号:专业:指导单位或教研室:指导教师:职称:西安航空职业技术学院制2012年 12 月 15日毕业设计(论文)进度计划表本表作评定学生平时成绩的依据之一。
16×16点阵LED电子显示屏【摘要】本设计是一16×16点阵LED电子显示屏的设计。
单片机控制系统程序采用单片机汇编语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。
LED显示以其组构方式灵活、显示稳定、功耗低、寿命长、技术成熟、成本低廉等特点在车站、证券所、运动场馆、交通干道及各种室内/外显示场合的信息发布,公益宣传,环境参数实时,重大活动倒计时等等得到广泛的应用。
经实践证明,该系统显示误差小,性能稳定,结构合理,扩展能力强。
关键词:AT89C51单片机; LED;点阵显示;动态显示;汇编语言。
【Abstract】This design is a 16 ×16 lattice LED electron display monitor design. SCM process control system used for editing MCU assembly language, Programming control points indicated by the corresponding LED anode and overcast extreme level. We can effectively control the defense showed bright spots. LED display with fabric means flexibility, stability, low power consumption, long life, mature technology, low-cost features at the station, securities, sports venues, transportation corridors and various indoor / dissemination of information on foreign shows occasions, good publicity, real-time environmental parameters, etc. countdown major activities are widely used.As the practice proves, the system possesses advantages in low shows errors, stable, rational structure and strong extensible abilities.Key words: AT89C51 Micro Controller Unit;LED;Lattice display;Dynamic display; Assembly language.目录1引言 (7)1.1研究背景 (7)2系统整体设计方案 (9)2.1 需要实现的功能 (9)2.2 LED显示特点 (9)2.3 设计方案论证 (10)2.3.1显示模式方案 (10)2.3.2数据传输方案 (11)3系统硬件部分设计 (13)3.1单片机系统及外围电路 (13)3.1.1单片机的选择 (13)3.1.2 AT89C51单片机的主要特性 (14)3.1.3 引脚功能及管脚电压 (14)3.2列驱动电路 (16)3.3 行驱动电路 (18)3.3.1行驱动芯片74HC154 介绍 (18)3.3.2 行驱动电路 (20)3.4 LED显示屏电路 (21)4系统软件部分设计 (23)4.1 系统主程序 (23)4.2 显示驱动程序 (24)5调试及性能分析 (26)5.1软件调试 (26)5.2 性能分析 (26)结束语 (28)参考文献 (29)附录一 (30)附录二 (31)1引言单片机自20世纪70年代问世以来,以极其高的性能价格比受到人们的重视和关注,所以应用很广,发展很快。
16x16点阵设计摘要本设计是一16x16点阵LED电子显示屏的设计,整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。
通过该芯片控制一个驱动器74HC154和两个列驱动器74HC595米驱动显示。
该电子显示屏可以显示各种文字或单色图像,全屏能显示1个汉字,采用4块8x8点阵LED显示模块米组成16x16点阵显示模式。
显示采用动态显示,是的图形或文字能够实现静止、移入移出等多种显示方式。
文中详细介绍了LED点阵显示的硬件设计思路、硬件电路个个部分的功能原理、相应软件的程序设计,以及使用说明等。
单片机控制系统程序采用单片机汇编语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。
所显示字符的点阵数据可以自行编写,也可以标准字库中提取。
LED显示以其组构方式灵活、显示稳定、功耗低、寿命长、技术成熟、成本低廉等特点在车站、证券所、运动场馆、公交干道及各种室内外显示场合的信息发布,公益宣传,环境参数实时,重大活动倒计时等等得到广泛的应用。
设计结果证明,该系统显示误差小,性能稳定,结构合理,扩展能力强。
关键词:AT89C51单片机,LED,点阵显示,动态显示,C语言目录1 绪论 (1)1.1课题描述 (1)1.2基本工作原理及框图 (1)2 相关芯片及硬件电路设计 (2)2.1 51系列单片机简介: (2)2.2点阵显示原理 (5)2.3列驱动电路 (6)2.4行驱动电路 (8)2.5硬件总体电路 (9)3 系统软件设计 (10)3.1显示驱动程序 (10)3.2系统的主程序 (11)总结 (12)致谢 (13)参考文献 (14)附录 (15)1 绪论1.1 课题描述单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的[1]。
基于单片机的LED显示屏控制电路设计LED显示屏广泛应用于工矿企业、学校、商场、店铺、公共场所等进行图文显示,广告宣传,信息发布。
本文设计一种由4个16×16点阵LED模块组成的显示屏,由单片机作控制器,平滑移动显示任意多个文字或图形符号,本电路可级联扩展实现由任意多个16×16点阵LED模块组成的显示屏。
1 电路设计控制电路由AT89C51单片机作控制器,显示屏由4个16×16点阵LED模块组成,每个16×16点阵LED模块由4个8×8点阵LED模块组成,用户可根据需要扩展增加任意多个16×16点阵LED模块。
8×8点阵LED模块结构如图1所示,共8行8列,每个发光二极管放置在行线和列线的交叉点上,共64个发光二极管。
当某一列为高电平,某一行为低电平时,则对应的发光二极管点亮。
单片机P3.0引脚接串入并出移位寄存器74LS164(U10)的串行数据输入端,8个74LS164(U10~U17)级联,P3.1引脚接8个74LSl64的时钟脉冲输入端;8个74LS164分别接8个锁存器74LS373(U18~U25),8个锁存器的数据输出端接4个16×16点阵LED模块的行线,每个16×16点阵LED模块的行线是独立控制的。
P1.O接8个74LS164(U2~U9)的时钟脉冲输入端,P1.1接U2、U4、U6、U8的串行数据输入端,每两个74LSl64(U2和U3,U4和U5,U6和U7,U8和U9)级联;U2~U9的并行数据输出端接4个16×16点阵LED模块的64条列线。
P1.2接所有74LSl64的清0端,P1.3接锁存器的锁存控制端。
设计完成的电路如图2所示。
2 工作原理本电路利用串行通信口工作于方式0,同时利用P1.O和P1.1模拟串行输出,来实现LED显示屏字符平滑移动显示。
由于LED模块为16× 16点阵,所以字符点阵也为16×16点阵,即每个字符由32个字节即16个字数据组成,每个字数据决定了每列LED点亮的情况。
基于 51 单片机16×16点阵 LED显示屏的设计摘要:近年来,单片机己经成为科技领域的有力工具,人类社会生活的得力助手。
它的广泛应用,不仅仅体现在工业控制、机电应用、智能仪表、实时控制、航空航天、尖端武器等行业和领域的智能化、高精度化,而且在人类日常生活中也随处可见它的身影。
本论文提出基于普通51系列单片机实现LED显示屏控制的原理及方法,通过软硬件结合的方法设计出一款性价比较高且适用于职业技能教学的16×16点阵LED显示屏。
关键词:单片机 LED显示屏机电应用点阵本系统采用AT89C51单片机为核心而设计的16×16点阵LED显示屏。
系统功能划分成4大模块,分别为:单片机系统及外围电路模块、列驱动器电路模块、行驱动器电路模块和LED显示屏电路模块。
在对系统工作原理充分研究的基础上,选择合适的元件型号和参数,再用Proteus绘图软件绘制电路原理图,最后根据电路接口编写软件程序,软件程序采用C语言编程,Keil软件设计。
一、显示屏模块化设计该16X16点阵显示屏硬件设计是以单片机为中心的核心控制模块,采用模块化设计。
系统的主要功能模块原理框图如图1所示。
图1 主要功能模块原理框图二、硬件设计本设计分为硬件设计和软件设计,这两者相互结合,不可分离。
本系统硬件设计过程如下:1、单片机系统及外围电路模块单片机系统及外围电路如图2所示,主要有+5V电源、AT89C51单片机、时钟电路、复位电路等组成。
图2单片机系统及外围电路图2、时钟模块本系统中采用的是内部时钟方式。
内部时钟方式就是利用单片机芯片内部的振荡器,通过在引脚XTALl和XTAL2两端跨接晶体振荡器,构成稳定的自激振荡器的方法,再由获得的自激振荡器发出稳定的脉冲,直接送入芯片内部的时钟电路的方式。
时钟电路如图3所示。
图3时钟电路从时钟电路的示意图中可以看到,单片机所跨接的晶体振荡器旁边还有两个电容器C1和C2。