4个16x16点阵LED电子显示屏
16X16点阵LED电子显示屏设计
单片机应用系统实验设计 16X16点阵LED电子显示屏设计班级:物电学院电信2班组员:吕勇军学号:201011020219 黄波 201011020220指导老师:彭建英日期:2012年12月1号第一章绪论1.1 单片机的应用单片机是生活必不可缺的,顾名思义单片机的应用是很广泛的,导弹的导航装置、飞机上各种仪表的控制、计算机的网络通讯和数据传输、工业自动化过程和实时控制数据处理、广泛使用的智能IC卡、民用豪华轿车的安全保障系统、录像机和摄像机、全自动洗衣机的控制、以及程控玩具、电子宠物等等。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域。
1.2电子显示屏随着现代光电技术、微电子技术及计算机技术的飞速发展和普及,LED显示屏已遍及社会的各个领域。
简单的讲,显示屏就是由若干个可组合拼接的显示单元构成屏体,再加上一套适当的控制器。
所以多种规格的显示板配合不同技术的控制器就可以组成许多种LED显示屏,以满足不同环境,不同显示要求的需要。
LED显示屏是由几万到几十万个半导体发光二极管像素点均匀排列组成。
利用不同的材料可以制造不同色彩的LED像素点。
目前应用最广的是红色、绿色、黄色。
而蓝色和纯绿色LED的开发已经达到了实用阶段。
LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。
LED显示屏的分类:按颜色可以分为单基色显示屏、双基色显示屏、全基色显示屏;按显示器分类LED数码显示屏、LED点阵图文显示屏;按实用场合分类有室内显示屏和室外显示屏。
仔细分解一个LED显示屏,它有以下一些要素构成:金属结构框架、显示单元、扫描控制板、开关电源、双绞线传输电缆、主控制仪、专用显示卡及多媒体卡、电脑及其外设、其它信息源。
第二章系统整体方案2.1 需要实现的功能用移动显示屏来显示汉字,通过单片机AT89C52的行扫描和74LS138芯片的列扫描使点阵显示屏移动显示“湖南文理学院物电”的字幕。
16×16 LED点阵设计-毕业设计.
16×16 LED点阵设计学生:指导教师:内容摘要:LED点阵电子显示屏的发展越来越好广泛,它成为一个宣传信息的重要平台,已经得到了社会的普遍认同。
LED点阵显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。
该设计是一个16×16LED点阵电子显示屏显示数字的设计。
整块电子显示屏的控制核心是40引脚的单片机AT89S51,说明了LED点阵电子显示屏用AT89S51为控制系统的动态的设计和开发的具体过程。
通过该芯片控制两个列驱动器74HC595来驱动显示屏显示,本设计就是使用4块8×8点阵显示模块来组成16×16点阵显示屏,采用动态扫描显示,程序编写的实现是使用简单流通性强的C语言,该设计的结果证明,系统显示清晰,结构合理,误差小,扩展能力强,性能稳定。
关键词:AT89S51 LED点阵数字显示Design of 16*16 LED dot matrixAbstract:LED electronic display found the screen better and better.It has become an important platform of a promotional information,it has been widely accepted by the society,LED dot matrix display is the use of plane composition LED lattice module or pixel unit display screen ,It has the advantages of high light efficiency ,long.The designed is a digital design of a 16*16 LED dot matrix display ,control the core piece of electronic display is the 40 pin of the microcontroller AT89S51.Describes the specific process of the design and development of LED dot matrix display with AT89S51 as the control system dynamic.Through the control two columns drive chip 74HC595 are needed to drive the display shows that this design is to use 4 pieces of 8 x 8 dot matrix display module to form a 16 * 16 dot matrix display screen, a dynamic scans showed that the realization of the programming is simple to use strong liquidity of C language, and the design results show that the system shows clear, reasonable structure, little error and extension ability strong, stable performance.Keywords: AT89C51 dot matrix LED the digital display screen目录前言 (1)1 设计方案的论证与选择 (1)2 硬件电路设计 (3)2.1 系统的结构框图 (3)2.1.1 单片机控制模块 (3)2.1.2 时钟电路 (4)2.1.3 复位电路 (4)2.1.4 显示模块 (5)2.1.5 驱动模块 (7)2.2 单片机的最小系统图 (9)3 单片机系统 (10)3.1 8051引脚为40个的单片机芯片 (11)3.1.1 引脚为Vcc和Vss 的主电源 (11)3.1.2 外接晶体引脚XTAL1和XTAL2 (11)3.2 I/O口线的引脚排列及管脚的说明 (11)3.3 RST键 (13)3.4 PEROM阵列和锁定位 (13)4 系统软件设计 (13)4.1 主程序的设计及流程图 (13)4.2 显示程序的设计 (14)5 硬件的制作与调试 (15)5.1 系统的组装 (15)5.2 程序的调试 (16)6 结束语 (17)附录 (18)附录1:程序清单 (18)附录2:仿真结果图 (22)附录3:Protel原理图 (23)附录4:4个8*8LED组成的显示屏 (24)附录5:PCB图 (25)参考文献 (26)16×16 LED点阵电子显示屏的设计前言LED点阵电子显示屏的制作简单,并且便于安装,被广泛的应用于各个公共场合,但是LED 电子显示屏也只能用于单一的图像数字汉字的显示,如果要改变显示的内容,必须要在上位机上进行实现。
单片机课程设计16×16led点阵显示
16×16LED点阵显示摘要单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。
单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。
单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。
在现代工业控制和一些智能化仪器仪表中,越来越多的场所需要用点阵图形显示器显示汉字,汉字显示屏也广泛应用到汽车报站器,广告屏等。
所以研究LED显示有实用的意义。
LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
本设计是4个16×16点阵LED电子显示屏的设计。
整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。
通过该芯片控制一个行驱动器74LS154和八个列驱动器74HC595来驱动显示屏显示。
该电子显示屏可以显示各种文字或单色图像,全屏能显示4个汉字,采用16块8 x 8点阵LED显示模块来组成4个16x16点阵显示模式。
显示采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。
文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。
关键词:AT89C51单片机 LED 16*16点阵显示动态显示目录第一章绪论 (1)1.1 设计课题背景知识 (1)1.2 问题提出 (3)1.3 LED显示屏的发展 (4)第二章功能要求及方案论证 (6)2.1 功能要求 (6)2.1 功能要求 (6)第三章系统电路的设计 (9)3.1 设计框图及介绍 (9)3.2 51系列单片机简介 (9)3.3 单片机最小应用系统电路设计 (13)3.4 LED点阵介绍 (14)3.5 LED显示方式 (14)3.6 点阵的移动 (17)3.7 点阵的颜色 (21)3.8 LED阵列驱动电路 (21)3.9 单片机延时子程序 (22)第四章系统程序的设计 (24)4.1 显示驱动程序 (24)4.2 系统主程序 (25)第五章调试及性能分析 (32)5.1 开发环境介绍 (32)5.2 理论性能分析 (32)5.3 系统调试 (33)第六章总结 (34)致谢 (35)附录 (36)一. 程序代码 (36)系统主程序 (37)二.主要芯片介绍 (42)三.点阵左移显示的流程图 (46)四.元件清单 (47)五.参考文献 (47)六.仿真电路图 (48)第一章绪论1.1 设计课题背景知识单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。
16×16 LED点阵显示实验
16×16 LED点阵显示实验一、实验目的1、了解16×16矩阵LED显示的基本原理和功能2、掌握16×16矩阵LED和单片机的硬件接口和软件设计方法二、实验说明汉字显示屏广泛应用与汽车报站器,广告屏等。
实验介绍一种实用的汉字显示屏的制作,考虑到电路元件的易购性,采用了16×16的点阵模块;汉字显示的原理我们以UCDOS中文宋体字库为例,每一个字由16行16列的点阵组成显示。
即国标汉字库中的每一个字均由256点阵来表示。
我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。
所以在这个汉字屏上不仅可以显示汉字,也可以显示在256像素范围内的任何图形。
我们以显示汉字“大”为例,来说明其扫描原理:在UCDOS中文宋体字库中,每一个字由16行16列的点阵组成显示。
如果用8位的AT89C51单片机控制,由于单片机的总线为8位,一个字需要拆分为2个部分。
一般我们把它拆分为上部和下部,上部由8*16点阵组成,下部也由8*16点阵组成。
在本例中单片机首先显示的是左上角的第一列的上半部分,即第0列的p00---p07口。
方向为p00到p07 ,显示汉字“大”时,p05点亮,由上往下排列,为p0.0 灭,p0.1 灭, p0.2 灭p0.3 灭, p0.4 灭, p0.5 亮,p0.6 灭,p0.7 灭。
即二进制00000100,转换为16进制为 04h.。
上半部第一列完成后,继续扫描下半部的第一列,为了接线的方便,我们仍设计成由上往下扫描,即从p27向p20方向扫描,从上图可以看到,这一列全部为不亮,即为00000000,16进制则为00h。
然后单片机转向上半部第二列,仍为p05点亮,为00000100,即16进制04h。
这一列完成后继续进行下半部分的扫描,p21点亮,为二进制00000010,即16进制02h. 依照这个方法,继续进行下面的扫描,一共扫描32个8位,可以得出汉字“大”。
16x16LED显示器
目录第一章系统的功能概述.............................................. 错误!未定义书签。
电路的大体概述................................................. 错误!未定义书签。
电路的大体组成............................................. 错误!未定义书签。
电路的特点及功能.......................................... 错误!未定义书签。
要紧设计内容及技术指标......................................... 错误!未定义书签。
要紧设计内容............................................... 错误!未定义书签。
要紧技术指标............................................... 错误!未定义书签。
第二章硬件电路设计................................................ 错误!未定义书签。
电路的工作原理................................................. 错误!未定义书签。
硬件电路的设计原理......................................... 错误!未定义书签。
16×16点阵LED显示器汉字显示的工作原理..................... 错误!未定义书签。
操纵电路的工作原理........................................ 错误!未定义书签。
单片机电路的工作原理...................................... 错误!未定义书签。
16x64 LED点阵汉字显示屏的设计
16x64-LED点阵汉字显示屏的设计基于单片机的点阵汉字显示屏的设计摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成.LED点阵显示屏可以显示数字或符号,通常用来显示时间、速度、系统状态等。
本设计是4个16X 16点阵LED电子显示屏的设计。
整机以美国ATMEL公司生产的40脚单片机80C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。
通过该芯片控制一个行驱动器74LS138和八个列驱动器4049来驱动显示屏显示。
该电子显示屏可以显示4个汉字,采用16块8 x 8点阵LED显示模块来组成4个16x16点阵显示模式。
显示采用动态显示,使得文字能够实现静止显示方式。
文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。
关键词:80C51单片机;LED;点阵显示;动态显示The design of display Chinesecharacters based on MCUAbstractLED dot matrix display as a new display device, is composed of multiple independent package from the LED light emitting diodes. LED dot matrix display can display numbers or symbols, usually used to display time, speed, the system state.This design is the design of 4 16 * 16 dot-matrix LEDelectronic display screen.The machine to the United States of America ATMEL company production of 40 feet 80C51 MCU as the core, introduces the dynamic design and the development of its control system for LED dot matrix display process. The chip controls good driver 74LS138 and eight row driver 4049 to drive the display screen to display. The electronic screen can display 4 Chinese characters, using the display module is composed of 4 16x16 dot matrix display mode 16 blocks of 8 x 8 dot matrix LED.Shows the dynamic display, making the text to achieve a static display mode. This paper introduces in detail the LED dot matrix display hardware design, hardware circuit of each part of the function and principle, the corresponding software program design, as well as the use and so.Keywords: 80C51; LED; dot matrix display; dynamic display第一章绪论1.1 1.2 1.3 1.4 课题背景. ... 国内外研究现状选题目的及意义生产需求状况.第二章第三章1.5 LED 电子显示屏概述 ........... 系统方案设计与论证...............2.1 数据传输方案.................2.2 系统硬件方案.................2.2.1 单片机 .............2.2.2 EDA 电子设计自动化系统硬件的设计.............................3.1 3.2第四章目录电路原理图. .................系统硬件概述. ...............3.2.1 80C51 单片机简介.3.2.2 译码器及点阵显示屏元件清单.显示原理及控制方式分析........3.4.1 LED 点阵模块结构. ..3.4.2 LED 动态显示原理..3.4.3 LED 控制方式. ......系统软件的设计.....................4.13.33.4系统程序的设计. ....................4.1.1 显示驱动程序 ...............4.1.2 系统主程序 .................程序流程图. ........................字模生成. ..........................4.3.1 LED 显示屏领域字模实现技术4.3.2 字库生成....................4.4 Keil 软件调试 ........................4.5 Protues 仿真. .......................4.24.3总结........... 附录:程序代码参考文献...... 致谢...........0 0 0 1 1 2 3 3 4 4 4 6 6 7 7 8 9 1010111112 12 1212131415161617181922231.1 课题背景LED 显示屏的发展可分为以下几个阶段:第一阶段为 1990年到 1995年,主要是单色和 16级双色图文屏。
16×16点阵LED电子显示屏的设计
16×16点阵LED电子显示屏的设计机器人创新设计课程设计报告书题目:16×16点阵LED电子显示屏的设计姓名:张津学号:1613010320专业:国际经济与贸易指导老师:于大泳设计时间:2017年3月管理学院目录1. 引言 (3)1.1 设计意义 (3)1.2 系统功能要求 (3)2. 方案设计 (4)3. 硬件设计 (5)4. 软件设计 (8)5. 系统调试 (9)6. 设计总结 (11)7. 附录A.:源程序 (11)8. 附录B.:作品实物照片 (16)9. 参考文献 (17)16×16点阵LED电子显示屏的设计1.引言1.1 设计意义目前广告牌具有显示内容丰富、信息量大、信息更换速度快等特点。
因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。
而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。
1.2 系统功能要求本设计是一16×16点阵LED电子显示屏的设计。
整机以40脚单片机AT89C51为核心,通过该芯片控制列驱动器74HC595来驱动显示屏显示。
该电子显示屏可以显示各种文字或单色图像,全屏能显示1个汉字。
显示可以采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。
开关控制显示“矿大电气五班”、“电子综合设计”的字幕。
同时还要实现的功能:5V的电压输入,时钟电路的设置,复位电路的设置,单片机给74HC154芯片同时给E1和E2低电平,74LS154才能正常的工作。
例如如果想使左上角LED点亮,则Y0=1,X0=0即可。
应用时限流电阻可以放在X轴或Y,16*16LED点阵如图1.2.1所示。
图1.2.12.方案设计16X16点阵LED工作原理说明 : 16X16点阵共需要256个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。
16x16点阵显示
Proteus仿真16*16LED点阵显示汉字显示程序:滚动程序:#include <reg52.h>#define uchar unsigned char#define uint unsigned intuchar count,i,j,t;uchar code table[]={0x09,0x00,0xFD,0x08,0x09,0x08,0x09,0x10,0x09,0x20,0x79,0x40,0x41,0x04,0x47, 0xFE,0x41,0x40,0x79,0x40,0x09,0x20,0x09,0x20,0x09,0x10,0x09,0x4E,0x51,0x84,0x21, 0x00,//张0x08,0x20,0x08,0x28,0x7F,0xFC,0x08,0x20,0x0F,0xE0,0x08,0x20,0x08,0x20,0x0F, 0xE0,0x01,0x04,0xFF,0xFE,0x01,0x00,0x03,0x80,0x05,0x60,0x19,0x1C,0x61,0x08,0x01, 0x00,//某0x08,0x20,0x08,0x28,0x7F,0xFC,0x08,0x20,0x0F,0xE0,0x08,0x20,0x08,0x20,0x0F, 0xE0,0x01,0x04,0xFF,0xFE,0x01,0x00,0x03,0x80,0x05,0x60,0x19,0x1C,0x61,0x08,0x01, 0x00,//某0x01,0x00,0x11,0x00,0x11,0x00,0x11,0x08,0x3F,0xFC,0x21,0x00,0x41,0x00,0x41, 0x00,0x81,0x10,0x3F,0xF8,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x04,0xFF,0xFE,0x00, 0x00,//生0x00,0x10,0x1F,0xF8,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1F, 0xF0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1F,0xF0,0x10,0x10,0x00, 0x00,//日0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x88,0x5B,0xFC,0x54,0x88,0x50,0x88,0x90, 0x88,0x10,0x88,0x1F,0xFE,0x10,0x80,0x11,0x40,0x11,0x20,0x12,0x10,0x14,0x0E,0x18, 0x04,//快0x00,0x20,0x00,0xF0,0x1F,0x00,0x10,0x00,0x11,0x00,0x11,0x00,0x21,0x04,0x7F, 0xFE,0x01,0x00,0x01,0x00,0x09,0x20,0x09,0x10,0x11,0x08,0x21,0x0C,0x45,0x04,0x02, 0x00,//乐0x00,0x00,0x01,0x80,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x01, 0x80,0x01,0x80,0x01,0x80,0x00,0x00,0x01,0x80,0x03,0xC0,0x01,0x80,0x00,0x00,0x00, 0x00//!};uchar codetable1[]={0xf0,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd ,0xfe,0xff}; //列数组void delay(uint a){uint x,y;for(x=10;x>0;x--)for(y=a;y>0;y--);}void init(){TMOD=0X01;TH0=(65536-5000)/256;TL0=(65536-5000)%256;EA=1;ET0=1;TR0=1;}void main (){init();t=1; //控制滚动时长while(1){if(count==t){count=0;j++;if(j==112)j=0;}for(i=j;i<16+j;i++){P1=table1[i%16]; //列扫描,与横扫描顺序不能换P3=table[2*i]; //显示前8行P2=table[2*i+1]; //显示后8行delay(1); //延迟}}}void timer0()interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;count++;}移动程序:#include <reg52.h>#define uchar unsigned char#define uint unsigned intuchar count,i,j,t;uchar code table[]={0x09,0x00,0xFD,0x08,0x09,0x08,0x09,0x10,0x09,0x20,0x79,0x40,0x41,0x04,0x47, 0xFE,0x41,0x40,0x79,0x40,0x09,0x20,0x09,0x20,0x09,0x10,0x09,0x4E,0x51,0x84,0x21, 0x00,//张0x08,0x20,0x08,0x28,0x7F,0xFC,0x08,0x20,0x0F,0xE0,0x08,0x20,0x08,0x20,0x0F, 0xE0,0x01,0x04,0xFF,0xFE,0x01,0x00,0x03,0x80,0x05,0x60,0x19,0x1C,0x61,0x08,0x01, 0x00,//某0x08,0x20,0x08,0x28,0x7F,0xFC,0x08,0x20,0x0F,0xE0,0x08,0x20,0x08,0x20,0x0F, 0xE0,0x01,0x04,0xFF,0xFE,0x01,0x00,0x03,0x80,0x05,0x60,0x19,0x1C,0x61,0x08,0x01, 0x00,//某0x01,0x00,0x11,0x00,0x11,0x00,0x11,0x08,0x3F,0xFC,0x21,0x00,0x41,0x00,0x41, 0x00,0x81,0x10,0x3F,0xF8,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x04,0xFF,0xFE,0x00, 0x00,//生0x00,0x10,0x1F,0xF8,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1F, 0xF0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1F,0xF0,0x10,0x10,0x00, 0x00,//日0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x88,0x5B,0xFC,0x54,0x88,0x50,0x88,0x90, 0x88,0x10,0x88,0x1F,0xFE,0x10,0x80,0x11,0x40,0x11,0x20,0x12,0x10,0x14,0x0E,0x18, 0x04,//快0x00,0x20,0x00,0xF0,0x1F,0x00,0x10,0x00,0x11,0x00,0x11,0x00,0x21,0x04,0x7F, 0xFE,0x01,0x00,0x01,0x00,0x09,0x20,0x09,0x10,0x11,0x08,0x21,0x0C,0x45,0x04,0x02, 0x00,//乐0x00,0x00,0x01,0x80,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x01, 0x80,0x01,0x80,0x01,0x80,0x00,0x00,0x01,0x80,0x03,0xC0,0x01,0x80,0x00,0x00,0x00, 0x00//!};uchar codetable1[]={0xf0,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd ,0xfe,0xff}; //列数组void delay(uint a){uint x,y;for(x=10;x>0;x--)for(y=a;y>0;y--);}void init(){TMOD=0X01;TH0=(65536-5000)/256;TL0=(65536-5000)%256;EA=1;ET0=1;TR0=1;}void main (){init();t=2; //控制变化时长while(1){if(count==t){count=0;j++;if(j>112)j=0;}for(i=0;i<16;i++){P1=table1[i%16]; //列扫描,与横扫描顺序不能换P3=table[2*i+2*j]; //显示前8行P2=table[2*i+1+2*j]; //显示后8行delay(1); //延迟}}}void timer0()interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;count++;}跳动显示:#include <reg52.h>#define uchar unsigned char#define uint unsigned intuchar count,i,j,t;uchar code table[]={0x09,0x00,0xFD,0x08,0x09,0x08,0x09,0x10,0x09,0x20,0x79,0x40,0x41,0x04,0x47, 0xFE,0x41,0x40,0x79,0x40,0x09,0x20,0x09,0x20,0x09,0x10,0x09,0x4E,0x51,0x84,0x21, 0x00,//张0x08,0x20,0x08,0x28,0x7F,0xFC,0x08,0x20,0x0F,0xE0,0x08,0x20,0x08,0x20,0x0F, 0xE0,0x01,0x04,0xFF,0xFE,0x01,0x00,0x03,0x80,0x05,0x60,0x19,0x1C,0x61,0x08,0x01, 0x00,//某0x08,0x20,0x08,0x28,0x7F,0xFC,0x08,0x20,0x0F,0xE0,0x08,0x20,0x08,0x20,0x0F, 0xE0,0x01,0x04,0xFF,0xFE,0x01,0x00,0x03,0x80,0x05,0x60,0x19,0x1C,0x61,0x08,0x01, 0x00,//某0x01,0x00,0x11,0x00,0x11,0x00,0x11,0x08,0x3F,0xFC,0x21,0x00,0x41,0x00,0x41, 0x00,0x81,0x10,0x3F,0xF8,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x04,0xFF,0xFE,0x00, 0x00,//生0x00,0x10,0x1F,0xF8,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1F, 0xF0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1F,0xF0,0x10,0x10,0x00, 0x00,//日0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x88,0x5B,0xFC,0x54,0x88,0x50,0x88,0x90, 0x88,0x10,0x88,0x1F,0xFE,0x10,0x80,0x11,0x40,0x11,0x20,0x12,0x10,0x14,0x0E,0x18, 0x04,//快0x00,0x20,0x00,0xF0,0x1F,0x00,0x10,0x00,0x11,0x00,0x11,0x00,0x21,0x04,0x7F, 0xFE,0x01,0x00,0x01,0x00,0x09,0x20,0x09,0x10,0x11,0x08,0x21,0x0C,0x45,0x04,0x02, 0x00,//乐0x00,0x00,0x01,0x80,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x01, 0x80,0x01,0x80,0x01,0x80,0x00,0x00,0x01,0x80,0x03,0xC0,0x01,0x80,0x00,0x00,0x00, 0x00//!};uchar codetable1[]={0xf0,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd ,0xfe,0xff}; //列数组void delay(uint a){uint x,y;for(x=10;x>0;x--)for(y=a;y>0;y--);}void init(){TMOD=0X01;TH0=(65536-5000)/256;TL0=(65536-5000)%256;EA=1;ET0=1;TR0=1;}void main (){init();t=8; //控制滚动时长while(1){if(count==t){count=0;j+=16;if(j>128)j=0;}for(i=j;i<16+j;i++){P1=table1[i%16]; //列扫描,与横扫描顺序不能换P3=table[2*i]; //显示前8行P2=table[2*i+1]; //显示后8行delay(1); //延迟}}}void timer0()interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;count++;}4个4*4点阵构成16*16点阵Proteus中只有5×7和8×8等LED点阵,并没有16×16LED点阵,而在实际应用中,要良好地显示一个汉字,则至少需要16×16点阵。
1616点阵显示原理
1616点阵显示原理
1616点阵显示原理是一种常见的显示技术,它采用了16列16行的点阵来显示图像或文字。
点阵显示屏由许多微小的LED
灯组成,每个LED都代表着一个像素点。
LED有两种状态,
即亮和灭,通过控制LED的亮灭状态,可以在点阵上显示出
所需的图像或文字。
点阵显示屏的控制是通过驱动芯片来实现的。
驱动芯片负责接收来自控制电路的指令,然后根据指令控制LED的亮灭状态。
在1616点阵显示屏中,驱动芯片通常会有16个输出引脚,对应着16列LED。
通过控制这些引脚的电平,可以控制LED
的亮灭状态。
在显示过程中,控制电路会向驱动芯片发送逐行扫描的指令。
逐行扫描是指逐行控制LED的亮灭状态,从而逐行显示图像
或文字。
具体来说,控制电路会通过驱动芯片的输出引脚,依次控制点阵每行的LED。
当需要点亮某个像素时,控制电路
会向对应的输出引脚提供电平信号,使LED亮起;当需要熄
灭某个像素时,则不向对应引脚提供信号,LED灭掉。
通过不断逐行扫描,并控制LED的亮灭状态,可以在点阵显
示屏上显示出完整的图像或文字。
当显示内容需要更新时,控制电路会重新发送指令,从而改变LED的亮灭状态,实现内
容的更新。
1616点阵显示屏广泛应用于各种电子产品中,如计算器、电
子表格、时钟等。
它具有低功耗、显示效果好等优点,因此被
广泛使用。
同时,点阵显示技术也在不断发展,出现了更高分辨率和更多功能的点阵显示屏。
(完整版)16×16点阵LED电子显示屏的设计_毕业论文
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显示屏是八十年代后期在全球迅速发展起来的新型信息显示媒体,显示屏由几万……几十万个半导体发光二极管像素点均匀排列组成。
16x16点阵课程设计--16×16点阵LED电子显示屏的设计
天津理工大学中环信息学院电子系单片机课程设计报告题目:16×16点阵LED电子显示屏的设计班级 10信科一指导教师田野设计成员陈诗静林樟侯成飞电子系2013年07月 05日三、课程设计进度计划及检查情况记录表四、成绩评定与评语目录一.课程设计意义 (2)二.课程设计任务书 (3)三、课程设计进度计划及检查情况记录表 (4)四、成绩评定与评语 (4)一、总体设计方案 (6)1.1 总体设计 (6)1.2 硬件设计 (7)1.3 软件设计 (14)二、设计内容 (16)2.1 系统硬件原理图与仿真 (16)2.2 程序清单 (18)三.结论、建议及课程设计体会 (22)四.参考文献 (22)一、总体设计方案1.1 总体设计1.1.1 工作原根据功能要求,应采用动态显示的设计方法,同时为简化设计,减少硬件数量,显示数据的传输采用串行传输方式。
(1)熟悉AT89S51单片机系统的使用方法。
(2)掌握动态显示原理及实现方法。
(3)初步掌握AT89S51单片机编程方法。
(4)掌握串行数据传输方式的应用。
(5)实现利用AT89S51单片机控制的LED图文屏正常工作。
1.1.2 硬件部分总体设计根据功能要求,采用AT89C51单片机,动态显示的设计方法,同时为简化设计,减少硬件数量,显示数据的传输采用串行传输方式,列扫描地址用P1口控制,总体结构框图如下:图1-1 系统总体结构框图1.2 硬件设计系统的组成,硬件的选用,芯片的特点1.2.1 8051系列的单片机AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图片见下图:图 1-2 89C51管脚图(1).管脚说明VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
16×16点阵LED电子显示屏的设计报告
单片机原理及应用课程设计报告书题目:16×16点阵LED电子显示屏的设计姓名:学号:*********专业:电子信息科学与技术指导老师:设计时间:2011年 4 月目录1. 引言(字体4号,黑体,居中) (1)1.1. 设计意义(字体小4号,黑体) (1)1.2. 系统功能要求(字体小4号,黑体) (1)2. 方案设计(字体4号,黑体,居中) (1)3. 硬件设计(字体4号,黑体,居中) (2)4. 软件设计(字体4号,黑体,居中) (5)5. 系统调试(字体4号,黑体,居中) (8)6. 设计总结(字体4号,黑体,居中) (8)7. 附录A;源程序(字体4号,黑体,居中) (10)8. 附录B;作品实物图片(字体4号,黑体,居中) (17)9. 参考文献(字体4号,黑体,居中) (17)16×16点阵LED电子显示屏的设计1.引言1.1. 设计意义LED点阵显示屏在我们的日常生活中随处可见,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。
它的优点是:亮度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定。
我们已经学习了单片机及相关的课程,可以利用单片机来控制LED,以达到我们所需要的显示效果。
通过16x16点阵显示屏的课程设计,我们能更好的掌握单片机工作原理,把理论知识与实践结合起来,达到学以致用的目的。
课程设计能够提高我们的动手能力与解决实际问题的能力。
对于单片机我们已经学习了很多与之相关的理论知识,但是我们还没有机会来实际操作它,课程设计给我们提供了一个很好的机会,让我们更深入的去学习它,掌握它。
通过课程设计我们能基本掌握单片机硬件与软件相关的知识,掌握16X16LED点阵的工作原理。
1.2. 系统功能要求设计一个室内用16x16的点阵LED图文显示屏,要求在目测条件下LED 显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。
16X16LED汉字点阵系统设计(8051单片机)
电子技术综合设计总结报告姓名:专业与班级:设计题目:16*16 LED汉字点阵系统设计起始时间: 2010 ~ 2011 学年第(1)学期第14 周~第 19 周指导教师:成绩:日期:一、系统的基本理论概述⏹1.1前言当今世界,电子技术迅猛发展,点阵式显示器件作为现代信息显示的重要媒体,在金融证券、体育、机场、交通、商业、广告宣传、邮电电信、指挥调度、国防军事等许多领域中得到了广泛应用。
因此点阵式显示器件的研制、生产也的到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。
由于LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活.适用于火车,汽车站,码头,金融证券市场,文化中心,信息中心体育设施等公共场所。
该项目广泛涉及了计算机及电子技术中的电源技术、单片机技术、数据通讯技术、显示技术、存储技术、系统软件技术、接口及驱动等技术。
⏹1.2课题设计内容该电路系统是采用AT89C51单片机为控制器,控制点阵LED显示器进行显示,左移显示“百年矿大盛世华章”的内容。
⏹1.3设计目的1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。
2.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。
3.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。
4.培养学生从资料文献、科学实验中获得知识的能力。
5. 对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。
⏹1.4方案比较与选择:对于扫描LED点阵的方法有以下三种:(1)点扫描;(2)行扫描;(3)列扫描。
对于8*8的LED点阵而言:若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即可。
若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。
基于51单片机16×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。
16乘16点阵LED电子显示屏的设计
邢台职业技术学校Xingtai Polytechnic Institute 毕业设计(论文)题目16×16点阵LED电子显示屏的设计班级应电081姓名杨艳德指导教师唐俊英16×16点阵LED电子显示屏的设计目录摘要 (3)关键词 (3)前言 (4)1.背景介绍 (5)1.1 LED及LED显示屏 (5)1.2 MCS-51系列单片机简介 (6)1.2.1 MCS-51系列单片机及其特点 (6)1.2.2 单片机的发展历史简介 (6)3.功能要求 (7)4.方案实现 (7)4.1 系统硬件电路的设计 (8)4.1.1单片机系统及外围电路 (9)4.1.2列驱动电路 (9)4.2.系统程序的设计 (11)4.2.1显示驱动程序 (11)4.2.2系统主程序 (12)5性能分析 (19)5.1 性能分析 (19)总结 (20)摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。
包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。
在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。
关键词:MCS-51;LED;单片机前言LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。
在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。
本文设计的是一个室内用16x16的点阵LED图文显示屏,图形或文字显示有静止、移入移出等显示方式。
LED显示屏分为数码显示屏、图文显示屏和视频显示屏,均由LED矩阵块组成。
LED数码显示屏的显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。
16x16点阵显示
1实验目的•使用户学会利用单片机的I/O口进行LED点阵的行扫描显示。
2实验内容a.编写程序,用P1口控制C3区4片74HC164进行行扫描,在16×16LED点阵上用静态方式显示自己的姓。
(孙)b.编写程序,用P1口控制C3区4片74HC164进行行扫描,在16×16LED点阵上用滚屏方式显示自己的姓。
(孙)3实验原理3.1点阵式LED显示器的基本结构发光二极管排列成矩阵,由亮与暗来产生字符或图形。
每一行的阳极连在一起,每一列的阴极连在一起:1⃝点阵显示器每一列的阴极连在一起,对每一列而言相当于一个共阴显示器2⃝同时每一行的阳极连在一起,相当于七段显示器的笔划。
这样,可以把5X7的发光二极管点阵看作一个五位显示器3⃝可采用动态显示电路,以笔划锁存器控制行信号,以位锁存器控制列信号利用点阵显示字符和图形时,需用较多的编码。
以5X7点阵为例,每列需要一个编码,如显示字母B,当第1列有效时,其行编码信号为7FH;当第2、3、4列有效时,其行编码信号为49H;当第5列有效时,其行编码信号为36H。
3.274HC595表1:74HC595真值表RCK SCK SCLR G FunctionX X X H Q A thru Q H=T RI−ST AT EX X L L Shift Register cleared Q′H=0X↑H L Shift Register clocked Q N=Q n−1,Q0=SER↑X H L Contents of Shift Register transferred to output latches 3.3实验箱点阵连接方式使用两片8位输出锁存移位寄存器74HC595(三态输出、串入并出),将单片机I/O 口发出的串行数据转换为并行数据LD_QA∼LD_QP,作为16×16LED点阵显示器的行线,使用另外两片8位74HC595作为16×16LED点阵显示器的列线LD_1∼LD_16。
16X16点阵显示
si
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY XUANZ IS PORT(CLK:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); END ENTITY XUANZ; ARCHITECTURE XZ OF XUANZ IS BEGIN PROCESS(CLK) VARIABLE COUNT:INTEGER RANGE 1600 DOWNTO 0; VARIABLE ZI:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF CLK'EVENT AND CLK='1' THEN IF COUNT=1600 THEN IF zi="1111" THEN zi:="0000"; ELSE zi:=zi-1; END IF; COUNT:=0; ELSE COUNT:=COUNT+1; END IF; END IF; Q<=zi; END PROCESS; END ARCHITECTURE XZ;
mi
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY XUAN IS PORT(CLK:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); END ENTITY XUAN; ARCHITECTURE XZ OF XUAN IS BEGIN PROCESS(CLK) VARIABLE COUNT:INTEGER RANGE 1600 DOWNTO 0; VARIABLE ZI:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF CLK'EVENT AND CLK='1' THEN IF COUNT=1600 THEN IF zi="1111" THEN zi:="0000"; ELSE zi:=zi+2; END IF; COUNT:=0; ELSE COUNT:=COUNT+1; END IF; END IF; Q<=zi; END PROCESS; END ARCHITECTURE XZ;
16X16LED点阵屏滚动显示说明书
湄洲湾职业技术学院16X16LED点阵屏滚动显示说明书系别:自动化工程系年级:10级专业:电气自动化姓名:小容学号:1001010114 导师姓名:蔡小明职称:讲师2013年 5 月 28 日1.前言 (1)2.系统设计技术参数要求 (3)3.系统设计 (4)3.1系统设计总体框图 (5)3.2系统各模块说明 (6)3.3系统总原理图说明 (7)3.4印刷电路板的制作图 (7)3.5硬件调试 (7)3.5.1系统操作注意事项 (7)3.5.2调试所用设备及过程 (8)3.5.3测试结果分析与结论 (8)参考文献 (9)致谢词 (10)附录 (11)附录1元件清单 (12)附录2系统电路总图 (13)在微型计算机技术使用上,单片机主要用与工业测控,如家用电器,计算机外围设备,工业智能化仪表,机器人,生产过程的自动控制,农业,化工,军事,航空航天等领域等,都有着巨大的作用。
作为21世纪的工科大学生,不仅要熟练地使用通用微机进行各种数据处理,还要把计算机技术运用到本专业领域或相关领域,即具有“开发”能力。
新世纪的工科大专院校的大学生既要掌握通用微机,又要掌握单片机,所以学习单片机这一门学科对我们的学习很重要。
大家都知道,现在市面上已出现很多有关点阵显示器的商品,如广告活动字幕机、股票显示板、活动布告栏等。
它的优点是可按需要的大小、形状、单色、或彩色来组合,可与微处理器连接,做各种广告栏文字或图形变化。
因此可知汉字显示系统在人民的生活当中是何等的重要,也是研究的课题之一。
16*16点阵LED字符显示器系统在工业、各种比赛场合及日常生活应用中占有十分重要的地位,多年来,研究此项目的工程技术人员曾为简化电路、提高可靠性、降低成本,付出了很大的努力,做出不少成绩。
如今,美观、价廉、体积小、高可靠性8*8点阵LED字符显示器的出现,为这一领域的技术打开了新的天地。
LED字符显示器发发展到今天已经从模拟化、分立化迈进数字化、集成化LED系统。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
毕业设计论文点阵LED电子显示屏的设计系电子信息工程系专业应用电子技术姓名刘凯班级电子093 学号0901023317 指导教师孙玲职称副教授设计时间2011.9.22-2011.12.23江苏信息职业技术学院毕业设计(论文)目录第一章引言 (3)第二章系统方案设计 (5)第三章系统硬件电路的设计 (6)3.1 单片机系统及其外围电路 (6)3.2 行驱动电路 (6)3.3 列驱动电路 (6)第四章系统程序的设计 (8)4.1 显示驱动程序 (8)4.2 系统主程序 (9)第五章调试及性能分析................... 错误!未定义书签。
第六章控制源程序清单.. (10)6.1 单片机汇编源程序清单...................... 错误!未定义书签。
6.2单片机C源程序清单........................ 错误!未定义书签。
第七章结语 .. (18)参考文献 (19)4个16×16LED点阵电子显示屏的设计摘要:本设计以单片机AT89C52为核心,构成了4个中论文详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。
关键词:LED;点阵显示;AT89C52;74LS595江苏信息职业技术学院毕业设计(论文)第一章引言LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式的显示屏,LED显示屏分数码显示屏、图文显示屏和视屏显示屏,都是由LED矩阵块组成。
由于它具有体积小、放光效率高、工作电压低、功耗小、寿命长、组态灵活、色彩丰富、耐冲击性和性能稳定等优点,因而受到广泛的重视而得到发展。
近年LED显示屏已广泛应用于室内、外需要进行服务内容和服务宗旨宣传的公众例如银行、邮电、店铺、商场、车站、交易市场、医院、体育场等多种场合。
目前,对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,它可以用单片机控制实现显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型。
随着LED显示屏在广告传媒领域逐渐崭露头角,其控制系统也如雨后春笋,层出不穷。
由于它的控制系统均是基于嵌入式微处理器开发,所以单片机在其中也占有一席之地。
单片机的应用改变了控制系统传统的设计思想和方法。
以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。
这种以软件结合硬件或取代硬件并能提高系统性能的控制技术称为微控制技术。
本文所要论述的是通过单片机来控制LED点阵显示,具体显示技术和原理将会在正文中得到详细论述。
4个16×16LED点阵电子显示屏的设计第二章系统方案设计从控制电路到列驱动器的数据传输可以采用并行方式或串行方式。
显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。
当列数很多时,并列传输的方案是不可取的。
采用串行传输的方法,控制电路可以只用一根信号线,将列数据逐位地传往列驱动器,在硬件方面无疑是十分经济的。
但是,串行传输过程较长,数据按顺序逐位地输出给列驱动器,只有当一行的各列数据都已传输到位之后,这一行的各列才能并行地进行显示。
这样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两部分。
对于串行传输方式来说,列数据准备时间可能相对要长一些,在行扫描周期确定的情况下,行显示的时间就会缩短,以致影响到LED的亮度效果。
解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法来解决。
即在显示本行各列数据的同时,传送下一行的列数据。
为了达到重叠处理的目的,列数据的显示就需要具有锁存功能。
经过上述分析,可以归纳出列驱动器电路应具有的主要功能;对于列数据准备来说,它应能实现串入并出的移位功能;对于列数据显示来说,应具有并行锁存的功能。
这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示时间。
图2.1为显示屏电路实现的结构框图。
图2.1 显示屏电路框图列驱动器列驱动器单片机控制器列驱动器列驱动器16×16LED点阵16×16LED点阵16×16LED点阵16×16LED点阵行驱动江苏信息职业技术学院毕业设计(论文)第三章系统硬件电路的设计本设计硬件电路大致可分为单片机系统及外围电路,行驱动电路和列驱动电路3部分。
3.1 单片机系统及其外围电路单片机采用89C51或其兼容系列的芯片。
系统采用12MHz或更高频率的晶振,以获得较高的刷新频率,使显示更稳定。
单片机的串口与列驱动器相连,用来送显示数据。
P1口低4位与行驱动器相连,送出行选信号;P1.5~P1.7口则用来发送控制信号。
P0和P2口空闲,在必要时,可以扩展系统的ROM和RAM。
16×16点阵显示屏的硬件原理图如图3.1所示。
3.2 行驱动电路单片机P1口低4位输出的行号经4/16线译码器74LS154译码后生成16条行选通信号线,再经过驱动器驱动对应的行线。
一条行线上要带动16列×4的LED进行显示,按每一个LED器件5mA电流来计算,64个LED同时发光时,需要320mA电流,选用三极管8550作为驱动管可满足要求。
3.3 列驱动电路列驱动电路是由集成电路74LS595构成。
它具有一个8位串入并出的移位寄存器和一个8位输出锁存器的结构,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行各列数据的同时,传送下一行的列数据,即达到重叠处理的目的。
74LS595的外形及内部结构如图3.2所示。
它的输入侧有8个串行移位寄存器,每个移位寄存器的输出都连接一个输出锁存器。
引脚SER是串行数据的输入端。
引脚SRCLK是移位寄存器的移位时钟脉冲,在其上升沿发生移位,并将ER 的下一个数据输入最低位。
移位后的各位信号出现在各移位寄存器的输出端,也就是输出锁存器的输入端。
RCLK是输出锁存器的输入信号,其上升沿将移位寄存器的输出信号输入到输出锁存器。
引脚E是输出三态门的开放信号,只有当其为低时锁存器的输出才开放,否则为高组态。
SRCLR信号是移位寄存器清0输入端,当其为低时移位寄存器的输出全部为0。
由于SRCLK和RCLK两个信号是互相独立的,所以能够做到输入串行移位与输出锁存互不干扰。
芯片的输出端为O0~O7,最高位O7可作为多片74LS595级联应用时向上一级的级联输出。
但因4个16×16LED点阵电子显示屏的设计O7受输出锁存器输入控制,所以还从输出锁存器前引出Q7,作为与移位寄存器完全同步的级联输出。
图3.1 4个16×16点阵显示屏硬件原理图图3.2 74LS595外形及内部逻辑结构图江苏信息职业技术学院毕业设计(论文)第四章 软件设计本设计的主要功能是向屏体提供显示数据,产生各种控制信号,使屏幕按设计的要求显示。
根据软件分层次设计的原理,可以把显示屏的软件系统分为两大层;第一层是底层的显示驱动程序,第二层是上层的系统应用程序。
显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其他控制信号,配合完成LED 显示屏的扫描显示工作。
显示驱动器程序由定时器T0中断程序实现。
系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。
从有利于实现较复杂的算法(显示效果处理)和有利于程序结构化考虑,本显示屏程序适宜采用C 语言来编写。
4.1 显示驱动程序显示驱动程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定,16行扫描显示屏的刷新率计算公式如下:刷频率=161×0T 溢出率=161×)65536(120t f osc (4-1)4个16×16LED 点阵电子显示屏的设计其中f 位晶振频率,t 为定时器T0初值(工作在16位定时器模式)。
然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。
为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。
图4.1为显示驱动程序流程图 。
图4.1 显示驱动程序流程图4.2 系统主程序本设计系统主程序开始以后,首先是要对系统环境初始化,包括设置串口、定时器、中断和端口;然后以“卷帘出”效果显示图形;接着向上滚动显示,然后以“卷帘入”效果隐去图形。
由于单片机没有停机指令,所以可以设置系统程序不断的循环执行上述显示效果。
图4.2是系统主程序流程图。
退出中段 定时器赋初值 读取行号并增1送新行、打开显示切换显示数据 送新行显示数据消隐开始系统初始化化 “卷帘出”显示效果“上滚屏”显示效果“左跑马”显示效果江苏信息职业技术学院毕业设计(论文)图4.2 系统主程序流程图第六章程序清单;********************************;*4字16×16点阵电子屏字符显示器*;* AT89C52 12MHz晶振 *;********************************;显示字用查表法,不占内存,用4个16×16共阳LED点阵显示;效果:向上滚动显示字,每次4个,重复循环;R2:行扫描地址(00~0FH)。
;R3:滚动显示时控制移动速度,也可控制静止显示的时间:**************中断入口程序********ORG 0000HLJMP STARTORG 0003HRETIORG 000BHLJMP INTT0ORG 0013HRETIORG 001BHRETIORG 0023HRETIORG 002BHRETI;*************主程序****************START: MOV 20H,#00H ;清标志,00H为1帧扫描结束标志 MOV A,#0FFH ;埠初始化MOV P1,AMOV P2,AMOV P3.AMOV P0,ACLR P1,6 ;串行寄存器输入/输出端控制位MOV TMOD,#01H ;使用T0作16位定时器,行扫描用 MOV TH0,#0FCH ;1ms初值(12MHz)MOV TH0,#18HMOV SCON,#00H ;串口0方式传送显示位元元组MOV IE,#82H ;T0中断允许,总中断允许MOV SP,#70HLCALL DIS1 ;显示准备,黑屏,1.5sMAIN: MOV DPTR,#TABLCALL MOVDISP ;逐排显示,每次4字)MOV DPTR,#TABLCALL MOVDISP1 ;滚动显示,每排4字)AJMP MAIN;************4字逐排显示子程序*****************;每次4字移入移出显示方式,入口时定义好DPTR值MOVDISP: MOV R1,#6 ;显示6排字,每排4字(R1=排数)DISLOOP: MOV R3,#100 ;每排显示时间为16ms×100=1.6s DISMOV: MOV R2,#00H ;第0行开始SETB TR0 ;开扫描(每次一帧)WAITMOV: JBC 00H,DISMOV1 ;标志为1,扫描一帧结束(16ms为1帧,每行1ms)AJMP WAITMOVDISMOV1: DJNZ R3,DISMOV ;显示字指针移一排(每排4字×32=128字)MOV A,#128ADD A,DPLMOV DPL,AMOV A,#0ADDC A,DPHMOV DPH,ADEC R1 ;R1为0,显示完MOV A,R1JZ MOVOUTAJMP DISLOOPMOVOUT:RET ;移动显示结束;*******************4字滚动显示子程序*********************;每排4字向上移出显示方式,入口时定义好DPTR值;MOVDISP1:MOV R1,#255 ;向上移动显示6排字,每排4字(R1=排数×16)DISLOOP1:MOV R3,#10 ;移动速度为16 ms×10=0.16s DISMOV2:MOV R2,#00H ;第0行开始SETB TR0 ;开扫描(每次一帧)WAITMOV1:JBC 00H,DISMOV3 ;标志为1扫描一帧结束(16ms为1帧,每行1ms)AJMP WAITMOV1DISMOV3:DJNZ R3,DISMOV2 ;1帧重复显示(控制移动速度)INC DPTR ;显示字指针移一行(2字节位置)INC DPTRDEC R1 ;R1为0,显示完MOV A,R1JZ MOVOUT1AJMP DISLOOP1MOVOUT1:RET ;移动显示结束;*******************4字显示子程序**********************;静止显示表中某4字DIS1:MOV R3,#5AH ;静止显示时间控制DIS11:MOV R2.#00H ;一帧扫描初始值(行地址00~0FH)MOV DPTR,#TAB ;取表首址SETB TR0 ;开扫描(每次一帧)WAIT11:JBC 00H,DIS111 ;标志为1,扫描一帧结束AJMP WAIT11DIS111:DJNZ R3,DIS11RET;**************扫描程序********************;1ms传送一行,每行显示1ms,一次传送4字的某行共8字节INTT0:PUSH ACCMOV TH0,#0FCH ;1ms初始值重装MOV TH0,#18HMOV A,#97 ;指向第4个字行右字节ADD A,DPLMOV DPL,AMOV A,#0ADDC A,DPHMOV DPH,AMOV A,#0MOVC A,@A+DPTR ;查表MOV SBUF,A ;串口0方式发送WAIT:JBC TI,GO ;等待发送完毕AJMP WAITGO:MOV A,DPL ;指向第4个字行左字节SUBB A,#1MOV DPL,AMOV A,DPHSUBB A,#0MOV DPH,AMOV A,#0MOVC A,@A+DPTRMOV SBUF,AWAIT1:JBC TI,GO1AJMP WAIT1GO1:MOV R0,#03HMLOOP:MOV A,DPL ;指向前3个字行右字节SUBB A,#31MOV DPL,AMOV A,DPHSUBB A,#0MOV DPH,AMOV A,#0MOVC A,@A+DPTR ;查表MOV SBUF,A ;串口0方式发送WAIT2:JBC TI,GO2 ;等待发送完毕AJMP WAIT2GO2:MOV A,DPL ;指向前3个字行左字节SUBB A,#1MOV DPL,AMOV DPL,AMOV A,DPHSUBB A,#0MOV DPH,AMOV A,#0MOVC @A+DPTRMOV SBUF,AWAIT3:JBC TI,GO3AJMP WAIT3GO3:DJNZ R0,MLOOP ;执行3次SETB P1.7 ;关行显示,准备刷新NOP ;串口寄存器数据稳定SETB P1.6 ;产生上升沿,行数据输入输出端NOPNOPCLR P1.6 ;恢复低电平MOV A,R2 ;修改显示行地址ORL A,#0F0H ;修改显示行地址MOV R2,A ;修改显示行地址MOV A,P1 ;修改显示行地址ORL A,#0FH ;修改显示行地址ANL A,R2 ;修改显示行地址MOV P1,A ;修改完成CLR P1.7 ;开行显示INC R2 ;下一行扫描地址值INC DPTRINC DPTR ;下一行数据地址MOV A,R2ANL A,#0FHJNZ GO4SETB 00H ;R2为10H,现为末行扫描,置1帧结束标志MOV A,DPL ;指针修正为原帧初值SUBB A,#32MOV DPL,AMOV A,DPHSUBB A,#0MOV DPH,ACLR TR0 ;一帧扫描完,关扫描GO4:POP ACCRETI ;退出;************扫描文字表*********;共5排字,每排4个字,前后为黑屏TAB:DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFH ;黑屏DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFHDB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFH ;黑屏DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFHDB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFH ;黑屏DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFHDB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFH ;黑屏DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0 FFH,0FFH,0FFHDB0F7H,0DFH,0F9H,0CFH,0FBH,0BFH,0C0H,007H,0DEH,0F7H,0C0H,007H,0DEH, 0F7H,0DEH,0H7H ;——文字:单——DB0C0H,007H,0DEH,0F7H,0FEH,0FFH,000H,001H,0FEH,0FFH,0FEH,0FFH,0FEH,0 FFH,0FEH,0FFHDB0FEH,0BFH,0EFH,0BFH,0EFH,0BFH,0EFH,0BBH,0E0H,001H,0EFH,0FFH,0EFH, 0FFH,0EFH,0FFH ;——文字:片——DB0E0H,00FH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0DFH,0EFH,0DFH,0EFH,0BFH, 0EFH,07FH,0EFHDB0EFH,0FFH,0EFH,007H,0EFH,077H,001H,077H,0EFH,077H,0EFH,077H,0C7H,07 7H,0CBH,0FFH ;——文字:机——DB0ABH,077H,0AFH,077H,06EH,0F7H,0EFH,0F5H,0EDH,0F5H,0EDH,0F5H,0EBH, 0F9H,0EFH,0FFHDB0FFH,0FFH,0F0H,00FH,0F7H,0EFH,0F0H,00FH,0F7H,0EFH,0F0H,00FH,0FFH,0F FH,000H,001H ;——文字:是——DB0FEH,0FFH,0F6H,0FFH,0F6H,007H,0F6H,0FFH,0EAH,0FFH,0DCH,0FFH,0BFH,0 01H,0FFH,0FFH;DB0FFH,0FFH,0C0H,003H,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0FEH,0 FFH,0FEH,0FFH ;——文字:工——DB0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,000H,001H,0FFH,0 FFH,0FFH,0FFHDB0FBH,0BFH,0FBH,0BFH,0FBH,0BFH,0FBH,0BBH,0BBH,0B9H,0DBH,0B3H,0DB H,0B7H,0EBH,0AFH ;——文字:业——DB0E3H,0AFH,0EBH,09FH,0FBH,0BFH,0FBH,0BFH,0FBH,0BBH,000H,001H,0FFH, 0FFH,0FFH,0FFHDB0FEH,0FFH,0FEH,0FFH,0DEH,0F7H,0C0H,003H,0DEH,0F7H,0DEH,0F7H,0DEH, 0F7H,0DEF,0F7H ;——文字:中——DB0DEH,0F7H,0C0H,007H,0DEH,0F7H,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0FEH,0 FFH,0FEH,0FFHDB0E0H,00FH,0EFH,0EFH,0E0H,00FH,0EFH0EFH,0E0H,00FH,0FFH,0FFH,000H,00 1H,0DDH,0FFH ;——文字:最——DB0C1H,003H,0DDH,077H,0C1H,0AFH,0DCH,0DFH,0C1H,0AFH,01DH,071H,0FCH ,0FBH,0FDH,0FFHDB0F7H,0DFH,0F7H,0DFH,080H,003H,0F7H,0DFH,0F0H,01FH,0F7H,0DFH,0F0H,0 1FH,0F7H,0DFH ;——文字:基——DB000H,001H,0F7H,0DFH,0EEH,0E7H,0C0H,011H,03EH,0FBH,0FEH,0FFH,080 H,003H,0FFH,0FFHDB0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,000H,001H,0FCH,07FH,0FCH,0BFH,0FAH,0 BFH,0FAH,0DFH ;——文字:本——DB0F6H,0EFH,0EEH,0E7H,0D0H,011H,03EH,0FBH,0FEH,0FFH,0FEH,0FFH,0FEH,0 FFH,0FFH,0FFHDB0EFH,07FH,0EFH,07FH,0DEH,07FH,083H,003H0BAH,0FBH,0BAH,0FBH,0B9H, 0FBH,083H,07BH ;——文字:的——DB0BBH,0BBH,0BBH,09BH,0BBH,0DBH,0BBH,0FBH,083H,0FBH,0BBH,0D7H,0B FH,0EFH,0FFH,0FFHDB0FEH,0FFH,0FFH,07FH,0C0H,003H,0DFH,0FFH,0DDH,0FFH,0DEH,0F7H,0CFH, 073H,0D7H,037H ;——文字:应——DB0DBH,06FH,0DBF,06FH,0D9H,0DFH,0BBH,0DFH,0BFH,0BFH,0A0H,001H,07FH ,0FFH,0FFH,0FFHDB0FFH,0FFH,0E0H,003H,0EFH,07BH,0EFH,07BH,0EFH,07BH,0E0H,003H,0EFH,0 7BH,0EFH,07BH ;——文字:用——DB0EFH,07BH,0E0H,003H,0EFH,07BH,0EFH,07BH,0DFH,07BH,0DFH,07BH,0BFH,06BH,07FH,077HDB0FDH,0FFH,0FEH,0FFH,0FFH,07FH,000H,001H,0FDH,0FFH,0FDH,0FFH,0FCH,0 0FH,0FDH,0EFH ;——文字:方——DB0FBH,0EFH,0FBH,0EFH,0F7H,0EFH,0F7H,0EFH,0EFH,0EFH,0DFH,06FH,03FH,0 9FH,0FFH,0FFHDB0FFH,05FH,0FFH,067H,0FFH,06FH,080H,003H,0FFH,07FH,0FFH,07FH,0FFH,07F H,0C1H,07FH ;——文字:式——DB0F7H,0BFH,0F7H,0BFH,0F7H,0BFH,0F4H,0DFH,0E3H,0DDH,08FH,0EDH,0DFH, 0F5H,0FFH,0FBHDB0F9H,0BFH,0C7H,0AFH,0F7H,0B7H,0F7H,0B7H,0F7H,0BFH,000H,001H,0F7H,0 BFH,0F7H,0B7H ;——文字:我——DB0F1H,0D7H,0C7H,0CFH,037H,0DFH,0F7H,0AFH,0F6H,06DH,0F7H,0F5H,0D7H,0 F9H,0EFH,0FDHDB0FFH,007H,0C0H,06FH,0EDH,0EFH,0F6H,0DFH,0C0H,001H,0DDH,0FDH,0BDH, 0FFH,0C0H,003H ;——文字:爱——DBOFBH,0FFH,0F8H,00FH,0F3H,0DFH,0F4H,0BFH,0EFH,03FH,09CH,0CFH,073H,0 F1H,0CFH,0FBHDB0F7H,0DFH,0F9H,0CFH,0FBH,0BFH,0C0H,007H,0DEH,0F7H,0C0H,007H,0DEH, 0F7H,0DEH,0H7H ;——文字:单——DB0C0H,007H,0DEH,0F7H,0FEH,0FFH,000H,001H,0FEH,0FFH,0FEH,0FFH,0FEH,0 FFH,0FEH,0FFHDB0FEH,0BFH,0EFH,0BFH,0EFH,0BFH,0EFH,0BBH,0E0H,001H,0EFH,0FFH,0EFH, 0FFH,0EFH,0FFH ;——文字:片——DB0E0H,00FH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0DFH,0EFH,0DFH,0EFH,0BFH, 0EFH,07FH,0EFHDB0EFH,0FFH,0EFH,007H,0EFH,077H,001H,077H,0EFH,077H,0EFH,077H,0C7H,07 7H,0CBH,0FFH ;——文字:机——DB0ABH,077H,0AFH,077H,06EH,0F7H,0EFH,0F5H,0EDH,0F5H,0EDH,0F5H,0EBH, 0F9H,0EFH,0FFHEND第七章结语经过了将近3个月的努力学习和修改,我终于完成了毕业设计。