欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

單片機驅動8×8點陣LED

作者:佚名   來源:本站原創   點擊數:  更新時間:2007年06月21日   【字體:

  LED原理及其控制技術

  一、什么是LED?

  LED是light-emitting diode的縮寫,在某些半導體材料的PN結中,注入的少數載流子與多數載流子復合時會把多余的能量以光的形式釋放出來,從而把電能直接轉換為光能。PN結加反向電壓,少數載流子難以注入,故不發光。這種利用注入式電致發光原理制作的二極管叫發光二極管,通稱LED。

  二、LED電子顯示屏的特點優勢所在

  LED電子顯示屏作為一種現代電子媒體,以其靈活的顯示面積(可分割、任意拼裝)、高亮度、長壽命、大容量、數字化、實時性的特點,是其他任何一種媒體所不可替代的。

  LED電子顯示屏充分運用現代信息技術,將聲、光、電、機等學科整合并完美組合、集視頻、動畫、字幕、圖片于一體的高科技信息發布的終端產品。LED顯示屏還可延伸到網絡、通訊、綜合布線、監控、廣播等弱電系統

圖(1)為8×8點陣LED外觀及引腳圖,其等效電路如圖(2)所示,只要其對應的XY軸順向偏壓,即可使LED發亮。例如如果想使左上角LED點亮,則Y0=1,X0=0即可。應用時限流電阻可以放在X軸或Y軸。

 

圖(18×8點陣LED外觀及引腳圖

 

 

圖(28×8點陣LED等效電路

 

 

圖(38×8點陣LED電路原理

 

點陣LED掃描法介紹

點陣LED一般采用掃描式顯示,實際運用分為三種方式:

(1)       點掃描;

(2)       行掃描;

(3)       列掃描。

若使用第一種方式,其掃描頻率必須大于16×64=1024Hz,周期小于1ms即

可。若使用第二和第三種方式,則頻率必須大于16×8=128Hz,周期小于7.8ms即可符合視覺暫留要求。此外一次驅動一列或一行(8LED)時需外加驅動電路提高電流,否則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

關閉窗口