8×8点阵LED字符显示器设计
河南理工大学计算机科学与技术学院课程设计报告2011—2012学年第1学期8×8点阵LED字符显示器设计一 .设计目的与要求:设计一8×8点阵LED字符显示器,要求显示“电子设计”四个汉字,显示方式提供三种:逐字显示,向上滚动显示,向右滚动显示。
二 .设计原理:在单片机系统中,常用的显示器有:发光二极管显示器,简称LED(Light Emitting Diode);液晶显示器,简称LCD(Liquid Crystal Display);荧光管显示管。
前两种显示器都有两种显示结构;段显示(8段,“米”字型等)和点阵显示(5×7,5×8,8×8点阵等)。
点阵图形显示模块有两种连接方式:一种是直接访问方式,另一种是间接控制方式。
直接访问方式就是将显示器模块的接口作为存储器或I/O设备直接挂在单片机总线上,单片机过地址译码控制E1和E2的选通;读/写操作信号R/W由地址线A1控制;命令/数据寄存器选择信号由地址线A0控制。
间接控制方式是通过单片机自身或系统扩展并行接口与显示模块连接在一起的。
单片机通过对并行接口输出状态的编程操作,完成对模块所需的时序操作和数据传输。
1.LED显示器结构LED显示器是由发光二极管组成的显示器,有8段和“米”字段之分。
BS202型共阴极BS212型共阳极上图中的BS202型为共阴极LED,BS212型是共阳极LED,它们的几何尺寸和字符相同。
每一种LED又有不同的发光颜色。
例如,BS202型中,BSR202型发红光,BSG202型发绿光;BS212型中,BSR212型发红光,BSG212型发绿光。
图1 ,点阵式LED显示器用8×8的LED显示模块可以显示各种字符,通常通过适当的驱动电路控制各LE D发光与不发光来显示点阵型。
如用8×8模块显示字符“电”的点阵码为:10H、FFH、91H、BDH、91H、FFH、12H、1EH(如下图)。
图2 8×8点阵字型8×8的LED显示模块式组建大型电子显示屏的基本单元。
用8×8模块组建的大屏幕显示器,不仅能显示文字,还可以显示图形、图像,而且还可以产生各种动画效果,是广告宣传、新闻传播的有力工具。
LED大屏幕显示器不仅有单色显示,还有彩色显示,其应用越来越广,已经渗入到人们的日常生活当中。
用大型的电子显示屏显示汉字时,简易汉字为16×16点阵,精美为24×24、32×32点阵。
其原理和8×8点阵一样。
三 .实验电路及连接:说明利用8279可实现对键盘/显示器的自动扫描,以减轻CPU负担,并具有显示稳定、程序简单、不会出现误动作等特点。
本实验系统中8279的状态/命令口地址位8701H;数据口地址位8700H。
示例程序运行将显示”电子设计”,并等待按键输入,将键值显示在数码管上。
1 、8279的结构8279主要由以下部件组成:数据缓冲器将双向三态8位内部数据总线D0~D7与系统总线相连,用于传送C8279之间的命令和状态。
控制和定时寄存器用于寄存键盘和显示器的工作方式,锁存操作命令,通过译码器产生相应的控制信号,使8279的各个部件完成相应的控制功能。
定时器包含一些计数器,其中有一个可编程的5位计数器(记数值在2~31之间),对CLK输入的时钟信号进行分频,产生100KHz的内部定时信号(此时扫描时间为5.1ms,消抖时间为10.3ms)。
外部输入时钟信号周期不小于500ns。
扫描计数器有两种输出方式:一是编码方式,计数器以二进制方式计数,4位计数状态从扫描线SL3~SL0输出,经外部译码器可以产生16位的键盘和显示器扫描信号;另一种是译码方式,扫描计数器的低两位经内部译码后从SL3~SL0输出,直接作为键盘和显示器的扫描信号。
回送缓冲器、键盘消抖及控制完成对键盘的自动扫描,以搜索闭合键,锁存RL7~RL0的键输入信息,消除键的抖动,将键输入数据写入内部先进先出存储器(FIFO RAM)。
RL7~RL0为回送信号线作为键盘的检测输入线,由回送缓冲器缓冲并锁存,当某一键闭合时,附加的移位状态SHIFT、控制状态CNTL及扫描码和回送信号拼装成一个字节的“键盘数据”送入8279内部的FIFO(先进先出)RAM。
键盘的数据格式为在传感器矩阵方式和选通方式时,回送线RL7~RL0的内容被直接送往相应的FIFO RAM,输入数据即为RL7~RL0。
数据格式为FIFO/传感器RAM是具有双功能的8×8RAM。
在键盘或选通方式时,它作为FIFO RAM,依先进先出的规则输入或读出,其状态存放在FIFO/传感器R AM状态寄存器中。
只要FIFO RAM不空,状态逻辑将置中断请求IRQ=1;在传感器矩阵方式,作为传感器RAM,当检测出传感器矩阵的开关状态发生变化时,中断请求信号IRQ=1。
在外部扫描译码方式时,可对8×8矩阵开关的状态进行扫描;在内部译码扫描方式时,可对4×8矩阵开关的状态进行扫描。
显示RAM用来存储显示数据,容量是16×8位。
在显示过程中,存储的显示数据轮流从显示寄存器输出。
显示寄存器输出分成两组,即OUTA0~OUTA3和OUTB0~OUTB3,两组可以单独送数,也可以组成一个8位的字节输出,该输出与位选扫描线SL0~SL3配合就可以实现动态扫描显示。
显示地址寄存器用来寄存CPU读/写显示RAM的地址,可以设置为每次读出或写入后自动递增。
2、74LS13874LS138是一个3-8译码器,其作用是将3位二进制代码000~111翻译成相对应的八个十进制数0~7,高电平有效。
A、B、C为输入信号,Y0~Y7为输出信号。
7407为8路驱动器,用来驱动LED的X0~X7。
四.程序框图:五.程序清单:源代码:Z8279 EQU 08701H ;8279 状态/命令口地址ﻫD8279EQU 08700H;8279数据口地址LEDMODEQU10H ;右端输入八位字符显示;外部译码键扫描方式,双键互锁LEDFEQ EQU 38H;扫描速率ﻫLEDCLS EQU0D1H ;清除ﻫLEDWR0EQU80H ;设定的将要写入的显示RAM地址ORG 0000HAJMPSTARTORG 0040HﻫSTART:MOVSP,#60HﻫLCALL INIT8279;初始化8279WAIT:MOVDPTR,#Z8279ﻫMOVXA,@DPTRANLA,#0FHJZ WAITMOV A,#40HﻫMOVX @DPTR,AﻫMOV DPTR,#D8279MOVX A,@DPTRANL A,#3FHﻫMOV R4,#00HMOV R5,AﻫLCALLDISLEDSJMP WAITINIT8279: ;8279初始化子程序ﻫPUSH DPH ;保存现场PUSH DPLPUSHACCLCALL DELAY ;延时ﻫMOV DPTR,#Z8279MOV A,#LEDMOD ;置8279工作方式ﻫMOVX @DPTR,AﻫMO VA,#LEDFEQ ;置键盘扫描速率ﻫMOVX @DPTR,AMOV A,#LEDCLS;清除LED显示ﻫMOVX@DPTR,ALCALL DELAY;延时ﻫMOV DPTR,#Z8279MOVA,#90HﻫMOV DPTR,#D8279ﻫMOV A,#40HMOVX @DPTR,AMOV A,#40HﻫMOVX @DPTR,AﻫMOV A,#0HMOVX @DPTR,AMOV A,#0HﻫMOVX @DPTR,AMOVA,#0EFHﻫMOVX @DPTR,AMOV A,#27HMOVX @DPTR,AMOV A,#5BHMOVX @DPTR,AMOV A,#7FHﻫMOVX @DPTR,APOP ACC ;恢复现场POPDPLPOPDPHﻫRETﻫ;显示字符子程序;输入: R4,位置R5,值DISLED: PUSH DPH ;保存现场ﻫPUSHDPLﻫPUSH ACCﻫMOV A,#LEDWR0 ;置显示起始地址ADDA,R4;加位置偏移量ﻫMOV DPTR,#Z8279ﻫMOVX @D PTR,A ;设定显示位置ﻫMOV DPTR,#LEDSEG ;置显示常数表起始位置ﻫMOV A,R5ﻫMOVC A,@A+DPTR ;查表MOV DPTR,#D8279MOVX@DPTR,A;显示数据POP ACC;恢复现场POPDPLﻫPOP DPHRETﻫDELAY: ;延时子程序ﻫPUSH 0 ;保存现场PUSH 1ﻫMOV 0,#0HDELAY1: MOV1,#0HDJNZ 1,$DJNZ 0,DELAY1POP 1;恢复现场POP 0RETLEDSEG: DB 10H、FFH、91H、BDH、91H、FFH、12H、1EH;ﻫDB 7EH、04H、08H、7EH、08H、08H、18H、08H;DB9CH、54H、E7H、7EH、54H、48H、74H、62H;DB 84H、44H、DFH、44H、44H、44H、64H、44H;ﻫEND六 .实验结论:本实验可以通过按键控制8279来实现字符的显示;如需要显示按下键,则可读键显示,示例程序运行将显示”电子设计”,并等待按键输入,将键值显示在数码管上。
在显示过程中,存储的显示数据轮流从显示寄存器输出。
此程序可以实现字符的逐字显示和向右滚动显示;但无法实现向上的滚动显示。
参考文献:1、《MSC-51/151/251单片机原理与应用》薛栋梁编著;中国水利水电出版社;--2、《微型计算机原理与接口技术》李长青编著;中国矿业大学出版社3、《单片机原理及接口技术》李全利迟容强编著;高等教育出版社;4、《8051单片机实验教程》徐爱钧编著电子工业出版社;5、《单片机的C语言应用程序设计》马中梅等编著;北京航空航天大学出版社;6、《数字电子技术》张建华编;机械工业出版社;7、《单片机系统设计及工程应用》雷思孝冯育长编著;西安电子科技大学出版社;--。
8﹡8点阵LED字符显示器
单片机课程设计与制作任务书专业:学号:姓名:一、设计题目:8﹡8点阵LED字符显示器的设计与制作二、设计要求:1、具有对文字及时间显示功能;2、文字时间采用一个LED字符显示器分按键显示,使用按键切换;3、能够用简单的按键对文字和时间进行设定或调整;三、设计内容:硬件设计、软件设计及样品制作四、设计成果形式:1、设计说明书一份(不少于4000字);2、样品一套。
五.完成期限: 2007年 07月 01日指导教师:年月日教研室:年月日目录第一章引言 (5)第二章方案选择及总体设计 (6)第三章控制系统的硬件设计 (8)第四章软件设计及程序清单 (11)第五章样品的制作与调试 (16)第六章使用说明 (18)第七章结束语 (20)参考文献 (21)附录 (21)第一章引言当今世界,电子技术迅猛发展,点阵式显示器件作为现代信息显示的重要媒体,在金融证券、体育、机场、交通、商业、广告宣传、邮电电信、指挥调度、国防军事等许多领域中得到了广泛应用。
因此点阵式显示器件的研制、生产也的到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。
目前,点阵式显示器件具体包括LED显示模块和LCD显示模块等。
现在发展的LCD比较先进,LCD的优点较为明显,他体积小,容易控制,功能强,价格适宜,能够适应显示器的发展方向,因而在通信、家电、大屏幕投影等领域得到了越来越广泛的应用;随着社会经济的迅猛发展,工业生产逐渐实现了自动化,其中,设备的工作状态和生产过程状态的显示与监控起到了非常重要的作用,对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,他可以显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型,显示亮度较高,并且对环境条件要求比较低。
LED显示又可以分为单色显示和双色显示,可以按照需要的大小、形状和颜色进行组合,并用单片机控制实现各种文字或图形的变化,达到宣传和提示的目的。
8×8LED点阵显示汉字课程设计
现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。
图2-1硬件连接图
2.2
1
双色8×8LED点阵是由64个双色LED构成,用它可以显示英文字符、数字和一些简单的图片和简单的汉字。
实验箱双色8×8LED点阵电路原理图如图2-2,用行驱动和列驱动可以点亮LED点阵模块。图中RCOL1~RCOL8分别控制着8×8LED的每一列显示成红色,称为红色LED的列驱动,低电平有效;而GCOL1~GCOL8分别控制着8×8LED的每一列显示成绿色,称为绿色LED的列驱动,同样是低电平有效;COM1~COM8是他们的数据口,当送入其中一个口高电平时,相应行的LED被点亮,而当送入其中一个口低电平时,相应行LED就会被熄灭,所以也称为行驱动。比如,当想要第一行(从下到上)的第一个LED显示成红色的时候,只需送RCOL1一个低电平,而且送COM1一个高电平即可,也即选中红色的第一列(从右到左),并给第一行(从下到上)送一个高电平,就可以使得第一行第一列(同前)的LED显示成红色。注意J32、J33和J34中引针的接法,1号引针引出的是RCOL8、GCOL8和COM8,这是因为在8×8LED点阵的实物图中,如果按照从上到下的顺序RCOL8、GCOL8控制第一列LED点亮,按照从左到右的顺序COM8控制第一行LED点亮,在下文中都是按照这种顺序。
(3)应用领域
凌阳单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:
8X8LED点阵显示器的设计
课程名称:自动控制课程设计设计题目:8×8点阵LED显示器的设计院系:专业:年级:姓名:指导教师:西南交通大学峨眉校区年月日课程设计任务书专业姓名学号开题日期:2010 年7 月14日完成日期:2010年7 月22 日题目8×8点阵LED显示器的设计一、设计的目的进一步加强对理论知识的理解运用,结合实际情况解决现实问题。
增强自身动手能力,学会分析问题、解决问题的能力。
通过设计更好的理解51单片机的性能、各个接口,以及工作特性;学会LED的工作原理。
二、设计的内容及要求在点阵LED显示器的设计过程中,保证字符稳定显示不产生抖动具有重要意义。
点阵LED一般采用扫描式显示,实际运用分为点扫描、行扫描和列扫描三种方式。
点扫描的扫描频率必须大于16×64=1024Hz,周期小于1ms。
行扫描和列扫描方式的扫描频率必须大于16×8=128Hz,周期小于7.8ms,才能符合视觉暂留要求。
此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。
三、指导教师评语四、成绩指导教师(签章)年月日目录第一章概述 (1)1.1LED的发展史 (1)1.2研究LED显示器的意义 (2)1.3本设计的主要研究内容 (2)第二章 AT89C52 单片机 (4)2.1 单片机的简介 (4)2.1.1 单片机发展概述 (4)2.1.2 单片机的应用领域 (5)2.2 AT89C52 单片机简介 (6)2.2.1 功能特性概述 (6)2.2.2 引脚功能说明 (7)2.2.3 特殊功能寄存器 (9)2.3 单片机的最小应用系统 (10)2.3.1 单片机的时钟电路 (10)2.3.2 复位电路 (11)2.3.3 89C2052单片机的最小应用系统 (11)第三章 8*8LED点阵 (12)3.1 LED点阵的内部结构 (12)3.2 点阵LED的工作原理 (12)3.3 点阵LED扫描法 (13)第四章硬件电路设计 (14)4.1 电源电路 (14)4.2 显示方式控制电路 (15)4.3 显示电路 (16)4.4 驱动电路 (17)第五章系统软件设计 (18)5.1 软件流程设计 (18)5.2 显示程序 (18)第六章结论 (20)致谢 (21)参考文献 (22)附录一系统程序 (23)附录二 8*8点阵LED字符的显示器的电路图 (30)摘要生活中可视广告随处可见,大多采用LED显示屏。
单片机8 8点阵设计
单片机课程设计课题:8*8点阵LED字符显示器设计一、设计目的利用8*8LED点阵动态显示汉字的字样,采用STC89C52单片机作为整个控制电路的核心,并编制软件程序,实现汉字动态显示。
通过此设计来巩固单片机硬件系统的设计及软件系统的编程,通过设计将平时所学知识付诸实践,提高动手能力。
1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。
2.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。
3.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。
4.培养学生从资料文献、科学实验中获得知识的能力。
5. 对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。
二、设计要求8*8点阵LED字符显示器设计设计要求:1、设计一个8*8点阵LED电子显示屏,要求显示“课程设计”四个文字。
2、要求在目测条件下LED显示屏各点亮度均匀、充足,显示方式可由K1、K2、K3、K4、K5进行选择,K1为逐字显示,K2为向左滚动显示,K3为向右滚动显示,K4为向上滚动显示,K5为向下滚动显示。
三、总体方案设计3.1系统框图根据设计要求与设计方案,硬件电路的设计框图如图1所示。
硬件电路结构由8个部分组成:时钟电路、复位电路、按键接口电路、电源电路、点阵显示阳极电路、点阵显示阴极电路和8*8点阵显示电路。
图1系统框图 3.2工作原理根据设计要求,初步确定设计方案如下: 1. 选择STC89C52单片机(晶振频率为f=12MHZ )作为整个系统的核心器件,对整个系统进行总体控制,发送并时时处理系统信息。
2.由于是8*8点阵屏设计,需要端口16个,可采用静态显示模式,用P0口控制行,P2口控制列 。
3.通过软件编程,即可实现汉字“课程设计”的显示,并可左移,右移,上移,下移动态流动显示。
4.点阵的点亮过程有程序控制,点阵采用单色显示。
基于51单片机的8乘8led点阵显示屏的设计
基于单片机的8*8LED点阵显示屏的设计随着单片机在各个领域的广泛应用,许多用单片机作控制驱动LED显示屏也应运产生。
本系统设计使用单片机MCS-51控制扫描方法实现LED点阵显示器的字符的显示,介绍了用单片机进行显示系统开发的方法,单片机软件、硬件调试技术,还有点阵显示驱动扩展的一般方法。
1.引言1.1 研究的目的、意义LED因其体积小,耗电量低,亮度及环保等优点而被广泛应用于公共场所的大屏显示上,LED点阵大屏可应用于户外广告,交通导航,大厅公告,比赛的多媒体实时显示等领域。
本设计作品的用途正是在于实现大屏显示的核心功能,即汉字的显示,可实际应用于简单的显示系统中,如简单的排队叫号显示屏,电梯显示屏等。
通过此次设计将单片机软硬件结合起来对程序进行编辑,校验,锻炼实践能力和理论联系实际的能力。
1.2 本设计所要做的工作为了完成该设计实现,经过考虑论证,决定分为以下几个阶段进行:(1)对课题进行全面的分析,明确系统要实现的功能,大致了解要解决的问题,制定总的设计方案;(2)根据论证设计硬件系统并画出电路图,并根据电路图在面包板上连接电路图;(3)在硬件的基础上设计软件程序;(4)利用仿真器编译软件程序,进行调试仿真;(5)把调试成功的程序利用烧入器烧入到芯片中去;(6)把固化好程序的芯片插入到实际应用系统,投入到实际使用。
2.系统设计方案2.1系统构成框图3.硬件电路设计3.1 主要器件介绍3.1.1 LED点阵LED点阵显示屏采用1个8*8共64个象素的点阵,通过LED点阵资料判断出该点阵的引脚分布,如图3.1所示。
8*8的LED点阵为单色共阳模块,单点的工作电压为正向(Vf)=1.8v,正向电流(if)=8-10MA。
静态点亮器件时(64点全亮)总电流为640mA。
总电压为1.8v,总功率为1.15w.动态时取决于扫描频率(1/8或1/16秒),单点瞬间电流可达80-160mA。
图3.1点阵LED扫描法介绍点阵LED一般采用扫描式显示,实际运用分为三种方式:(1)点扫描(2)行扫描(3)列扫描若使用第一种方式,其扫描频率必须大于16*64=1024HZ,周期小于1MS即可。
关于8x8点阵显示课程设计报告
心得体会及小结.........................................25
谢词...................................................26
附录...................................................27
本设计的特色,采用了USB供电,方便快捷。
第一章系统基本原理及功能要求
1.1系统的基本原理
MCS-51单片机作为主控芯片,控制整个电路的运行。其外围电路主要有两部分:复位电路和晶体振荡器。
复位电路的功能是:系统上电时提供复位信号,直至系统电源稳定后,撤消复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。该设计采用含有二极管的复位电路,复位电路可以有效的解决电源毛刺和电源缓慢下降(电池电压不足)等引起的问题,在电源电压瞬间下降时可以使电容迅速放电,一定宽度的电源毛刺也可令系统可靠复位。
LED驱动显示采用动态扫描方法,动态扫描方式是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。以8*8点阵为例,把所有同一行的发光管的阴极连在一起,把所有同一列的发光管的阳极连在一起(共阴的接法),先送出对应第1列发光管亮灭的数据并锁存,然后选通第1列使其燃亮一定的时间,然后熄灭;再送出第2列的数据并锁存,然后选通第2列使其燃亮相同的时间,然后熄灭;….第8列之后,又重新燃亮第1列,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。
8×8点阵LED数码字符显示器的硬件设计
第一章引言 (2)第二章方案选择及总体设计 (3)2.1方案确定 (3)2. 1. 1功能要求 (3)2.2.2方案确定 (3)2.2器件选择 (3)第三章控制系统硬件设计 (4)3.1整体模块设计 (4)3.2单片机最小系统设计 (4)3.2.1晶振电路设计 (4)3. 2.2复位电路设计 (5)3.3驱动电路设计 (6)3.4 LED点阵显示设计 (7)第四章控制系统软件设计 (10)4.1软件设计思想 (10)4.2主程序流程图 (11)第五章系统仿真及性能分析 (12)5.1系统仿真 (12)5. 2 性能分析 (12)第六章总结致谢 (13)第七章参考文献 (15)附录 (16)附录A硬件结构图 (16)附录B主程序清单 (17)附录C元件清单 (18)第一章引言LED是发光二极管LIGHT EMINTTING DIODE的英文缩写,是一种直接能将电能转化为可见光的半导体。
LED点阵是由发光二极管排列组成的显示器件,在日常生活中随处可见,其发光类型属于冷光源,效率及发热量是普通发光器件难以比拟的。
它采用低电压扫描驱动,具有耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远、可靠耐用、应用灵活、安全、响应时间短、绿色环保、控制灵活等特点。
随着社会经济的不断进步,人们对LED显示器的认识不断加深,其应用领域越来越广。
本设计是基于AT89C5151的8X8点阵LED数码字符显示器的设计,LED点阵显示屏作为一种新兴的显示器件,是曲多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号,通常用来显示时间、速度、系统状态等。
本文讲述了基于AT89C51单片机8X8 LED数码字符显示器的基本原理、硬件组成与设计,Proteus软件仿真,程序设计等基本环节与相关技术。
LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活。
适用于火车,汽车站,码头,金融证券市场,文化中心,信息中心体育设施等公共场所。
16.课件十六 8乘8 点阵字符显示器设计
DB 00H,00H,00H,00H
END ;程序结束
MOV 31H,#01H ;换帧跳转步距为1
LJMP DISP1 ;转显示子程序DISP1
;左移显示功能程序
FUN2: LJMP DISP2 ;
;
;显示控制程序
DISP1: MOV B,#50H ;显示数据首址
MOV R4,30H ;放入1帧显示时间控制数据
MOV R5,31H ;放入跳转步距控制数据
DL1MS: MOV R3,#64H ;100*(10+2)us
LOOPK: LCALL KEYWORK
DJNZ R3,LOOPK
RET
;
;0.5毫秒延时子程序
DL512: MOV R2,#0FFH
LOOP1: DJNZ R2,LOOP1
RET
;
; 10毫秒延时子程序
DL10MS: MOV R3,#14H
CLR 02H ;
RET ;子程序返回
;按键2功能处理
KEY2: LCALL DL10MS ;
JB P1.1,KEYRET ;
SETB 01H ;置上移显示方式标志(20H.1=1)
CLR 00H ;
CLR 02H ;
RET ;
;按键3功能处理
KEY3: LCALL DL10MS ;
JB P1.2,KEYRET ;
DJNZR5,DISP22 ;左移显示32次控制
LJMP START1 ;跳回主程序
;
;左移显示控制子程序
DISPP: MOV B,#50H ;第一显示字符首址
MOV R4,#25H ;1帧显示时间控制
LED8x8点阵显示设计说明报告
班级:电子1649 姓名:王立学号:1330302164944LED8x8点阵显示设计说明报告一、设计任务1.设计要求利用一块点阵数码板,按编程者要求实现任意符号的显示。
2.此次设计研究的主要内容及应解决的问题此次设计研究的主要内容是设计一个符号显示牌:通过程序控制符号显示牌,使符号显示牌,在无按键按下时,显示数字“0-9”,当第一次按下按键时,显示字母“μ”,当第二次按下按键时显示汉字“公”。
应解决的问题:单片机P1口的输出电流不足以驱动二极管,需要加驱动,本次研究中以S8050作为驱动,同时在S8050NPN晶体管基极加4.7K的电阻。
实验前要弄清晶体管三个引脚代表的极性,以免符号显示牌不亮导致而设计失败。
二、总体设计方案2.1 硬件电路组成本产品采用以89C51单片机为核心芯片的电路来实现,主要由89C51芯片、晶振电路、三极管驱动电路、按键控制电路、8×8 LED点阵5部分组成,电路框图如图1所示。
其中,89C51是一种带4kB闪烁可编程可擦除只读存储器(Falsh Programmable and Erasable Read OnlyMemory,FPEROM)的低电压、高性能CMOS型8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,工业标准的MCS一51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,能够进行1 000次写/擦循环,数据保留时间为10年。
他是一种高效微控制器,为很多嵌人式控制系统提供了一种灵活性高且价廉的方案。
因此,在智能化电子设计与制作过程中经常用到89C51芯片。
时钟电路由89C51的18,19脚的时钟端(XTAI 1及XTAL2)以及12 MHz晶振X 、电容C2、C3组成,采用片内振荡方式。
复位电路采用简易的上电复位电路,主要由电阻R ,R2,电容C ,开关K 组成,分别接至89C51的RST复位输人端。
8×8LED点阵显示数字与字符
5. C 语言程序:
#include "AT89X52.H" unsigned char code tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned char code digittab[][8]={ {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/ {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},/*"_",0*/ {0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF},/*"_",0*/ {0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF},/*"_",0*/ {0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF},/*"_",0*/ {0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF},/*"_",0*/ {0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"_",0*/ {0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"_",0*/ {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"_",0*/ {0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},/*"|",0*/ {0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},/*"|",0*/ {0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},/*"|",0*/ {0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},/*"|",0*/ {0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},/*"|",0*/ {0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},/*"|",0*/ {0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},/*"|",0*/ {0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*"|",0*/ {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/ //图形 1 {0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00},/*"未命名文件",0*/ {0x00,0x00,0x3C,0x24,0x24,0x3C,0x00,0x00},/*"未命名文件",0*/ {0x00,0x7E,0x42,0x42,0x42,0x42,0x7E,0x00},/*"未命名文件",0*/ {0xFF,0x81,0x81,0x81,0x81,0x81,0x81,0xFF},/*"未命名文件",0*/ //图形 2 {0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00},/*"未命名文件",0*/ {0x00,0x00,0x24,0x18,0x18,0x24,0x00,0x00},/*"未命名文件",0*/ {0x00,0x42,0x24,0x18,0x18,0x24,0x42,0x00},/*"未命名文件",0*/ {0x81,0x42,0x24,0x18,0x18,0x24,0x42,0x81},/*"未命名文件",0*/ //图形 3 {0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00},/*"未命名文件",0*/ {0x00,0x00,0x24,0x18,0x18,0x24,0x00,0x00},/*"未命名文件",0*/ {0x00,0x10,0x24,0x1A,0x58,0x24,0x08,0x00},/*"未命名文件",0*/ {0x08,0x10,0x24,0x9A,0x59,0x24,0x08,0x10},/*"未命名文件",0*/ {0x0C,0x10,0xA4,0x9A,0x59,0x25,0x08,0x30},/*"未命名文件",0*/ {0x0E,0x90,0xA4,0x9A,0x59,0x25,0x09,0x70},/*"未命名文件",0*/ {0x8F,0x90,0xA4,0x9A,0x59,0x25,0x09,0xF1},/*"未命名文件",0*/
