微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 单片机驱动8×8点阵LED

单片机驱动8×8点阵LED

时间:03-12 来源:互联网 点击:

  LED原理及其控制技术

  一、什么是LED?

  LED是light-emitting diode的缩写,在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。PN结加反向电压,少数载流子难以注入,故不发光。这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。

  二、LED电子显示屏的特点优势所在

  LED电子显示屏作为一种现代电子媒体,以其灵活的显示面积(可分割、任意拼装)、高亮度、长寿命、大容量、数字化、实时性的特点,是其他任何一种媒体所不可替代的。
?
  LED电子显示屏充分运用现代信息技术,将声、光、电、机等学科整合并完美组合、集视频、动画、字幕、图片于一体的高科技信息发布的终端产品。LED显示屏还可延伸到网络、通讯、综合布线、监控、广播等弱电系统

图(1)为8×8点阵LED外观及引脚图,其等效电路如图(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。应用时限流电阻可以放在X轴或Y轴。

图(1)8×8点阵LED外观及引脚图

图(2)8×8点阵LED等效电路

 

图(3)8×8点阵LED电路原理

点阵LED扫描法介绍

点阵LED一般采用扫描式显示,实际运用分为三种方式:

(1) 点扫描;

(2) 行扫描;

(3) 列扫描。

若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即

可。若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。如图3所示。

下面是一个用P1口控制扫描,用74HC164控制显示输出,使8×8点阵LED显示一个“×”的例程。如图(3)所示。

CLK EQU P3.2

DINA EQU P3.3

DINB EQU P3.4

CLEAR EQU P3.5

ORG 0000H

AJMP MAIN

ORG 0100H

MAIN:

MOV SP,#70H ;设堆栈指针

MOV 50H,#07EH ;设置发送的列数据(Y0~Y7)

MOV 51H,#0BDH

MOV 52H,#0DBH

MOV 53H,#0E7H

MOV 54H,#0E7H

MOV 55H,#0DBH

MOV 56H,#0BDH

MOV 57H,#07EH

CLR CLEAR ;初始化I/O口

SETB CLK

SETB DINA

SETB DINB

SETB CLEAR

mainloop:

mov r6,#8h;设置扫描次数

mov dptr,#09000h;读取扫描端口数据

MOV R1,#50H ;指定列数据指针

flashcy:

MOV A,@R1 ;读取列数据

MOV R0,A

INC R1 ;列数据指针加1

CLR A

MOVC A,@A+DPTR

MOV P1,#0FFH

LCALL SENDTO

MOV P1,A

INC DPTR

LCALL DELAY

DJNZ R6,flashcy

SJMP MAINLOOP

sendto: ;发送数据子程序

PUSH ACC

CLR CLK

SENDTIME:

MOV R7,#08H

MOV A,R0

CLR C

SENDCY:

RRC A

MOV DINA,C

SETB CLK

CLR CLK

DJNZ R7,SENDCY

POP ACC

RET

DELAY: MOV R7,#01 ;延时子程序

DELAY0: MOV R4,#17

DELAY1: MOV R3,#28

DJNZ R3,$

DJNZ R4,DELAY1

DJNZ R7,DELAY0

RET

ORG 09000H

DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH ;X0~X7(列扫描)

end

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top