迷狐直播免费版app下载-迷狐直播永久免费版下载-迷狐直播最新下载安装

機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
點矩陣顯示器的應(yīng)用-----兩個中文字?jǐn)?shù)據(jù)分批顯示并左移
點矩陣顯示器的應(yīng)用-----兩個中文字?jǐn)?shù)據(jù)分批顯示并左移
 更新時間:2009-11-13 14:26:04  點擊數(shù):0
【字體: 字體顏色

  現(xiàn)在市面上已出現(xiàn)很多有關(guān)點矩陣顯示器的商品,如廣告活動字幕機、股票顯示板、活動布告欄等。它的優(yōu)點是可按需要的大小、形狀、單色或彩色來組合,可與微處理器連接,做各種廣告性的文字或圖形變化。

    何謂點矩陣顯示器?其實它是由LED按矩陣方式排列而得名。

   點矩陣顯示器的種類,可分為5*7,5*8,6*8,8*84種;而按LED發(fā)光變化顏色來分,可分為單色、雙色、三色;按LED的極性排列方式又可分為共陽極與共陰極,而在本文中所介紹的8*8點陣排列為共陰極。

   8*8點矩陣顯示器在市面上有兩種不同引腳,如下圖:

8  7  B  1 D  6  4 A         A B  C D  5 6   7 8

 


E G  2  3  H 5  F C          1  2 3  4  E  F G  H

點矩陣顯示器的基本應(yīng)用

大家想想,對于一由N*NLED組成的點陣塊,只要讓某些LED亮,就可以組成數(shù)字,英文字、圖形、中文字。但如果用直接點亮的方式,它就可變化成很多的形狀。當(dāng)然不管是哪種形式,哪種圖案的哪些LED該亮都是固定的。以下我主要針對中文字作一些說明。要顯示中文字,必須由幾個點矩陣組成才可顯示出一個漢字。目前最常見的方式有15*1416*16兩種方式。15*14需要使用5*76個,16*16需使用5*8的六個或8*84個�,F(xiàn)以16*16舉例說明,對于漢字字形,在網(wǎng)絡(luò)上有好多漢字字型代碼提取工具,可以很方便地找查出中文字的點陣示意圖及點陣代碼。

中文字的點陣示意圖

     UCDOS中文字體庫中,每一個字由1616列的點陣組成顯示。如果用8位單片機AT89S5152控制,我們知道此單片機的總線為8位,一個中文漢字得拆分為2個部分。一般我們把它拆為上部和下部,上部由8*16點陣組成,下部也由8*16點陣組成。當(dāng)上半部第一列完成后,繼續(xù)掃描下半部的第一列,同時也為了我們硬件設(shè)計的方便,我們采用由上往下掃描。依照這個辦法,我們對漢字‘振’進行掃描,共掃描328位,可得到掃描代碼為:

08H,40H,08H,42H,08H,81H,0FFH,0FEH

09H,02H,0AH,0CH,7FH,0F0H,49H,00H

49H,0FFH,49H,02H,49H,0E0H,49H,18H

59H,14H,0CBH,26H,41H,44H,00H,00H

但這只是個顯示各種字體或圖象的原理,在真正設(shè)計開發(fā)項目時,我們可以使用漢字字模生成軟件,這樣我們就不必自己去畫表格求代碼,同時也縮短了我們的開發(fā)時間。下面就是在此設(shè)計中即將要顯示出來的‘振興中華電子事業(yè)’八字的豎排代碼和顯示字型

  在此次8個字的點陣設(shè)計中,共使用了16行,32列,如果全部使用單片機I/O口,恐怕我們1個單片機也沒那么多口,而且這樣造成I/O的資源的浪費,系統(tǒng)也再無擴展可言。在此設(shè)計中,我使用了24~16線譯碼器74LS154來完成列方向的顯示,而行方向16條線接在P0P2口。列方向由兩片74LS154完成掃描,它由89S51P1.0~P1.3控制,而驅(qū)動部分用32A1015 [PNP]的三極管完成。在行方向由于P0口沒有上拉電阻,因此在接上4.7*8的上拉排阻。同時為了提供負(fù)載能力,后面還在P0P2口后接16C1384NPN三極管驅(qū)動;而對74LS154的位選方面采用P1.4口控制,通過1/67407模塊按下圖所示接法進行位選,分別輪流顯示。每個畫面2個字,8個字分4次顯示,采用向左移動的顯示方式依次顯示。

    硬件電路如下所示:

實現(xiàn)程序如下:{已通過編譯}

ORG 00H

START:MOV A,#00H  ;清除屏幕

      MOV P0,A

      MOV P2,A

      CALL  DIS   ;調(diào)用顯示子程序

      CALL  DELAY ;調(diào)用延時子程序

      CALL  MOVE  ;調(diào)用左移子程序

      JMP  START

DIS:  MOV R2,#04H   ;每個畫面2個字,8個字分4次顯示

      MOV 20H,#00   ;取碼指針暫存地址20H初值為00

D4:   MOV R4,#00H    ;74LS154掃描指針初值

      MOV R1,#0FFH   ;每幕停留的時間

D5:   MOV R6,#32     ;每幕兩個字,32個數(shù)據(jù)碼

      MOV R0,20H     ;取碼指針存入R0

D2:   CALL READ1     ;調(diào)用取碼子程序

      INC R4         ;掃描下一列

      DJNZ R6,D2     ;顯示1幕?

      MOV R4,#00     ;清除74LS154掃描指針為00

      DJNZ R1,D5     ;每幕停留時間到了?

      MOV 20H,R0     ;保留取碼指針存入20H地址

      DJNZ R2,D4     ;2幕顯示完畢了?

      RET

MOVE:

     MOV 20H,#00   ;取碼指針暫存地址20H初值為00

     MOV R4,#00H   ;74LS154掃描指針初值

M1:  MOV R1,#0FFH    ;每幕停留時間

M2:  MOV R6,#32      ;每幕兩個字,32個數(shù)據(jù)碼

     MOV R0,20H      ;取碼指針存入R0

M3:  CALL READ1      ;調(diào)用取碼子程序

     INC R4          ;掃描下一列

     DJNZ R6,M3      ;顯示1?

     MOV R4,#00      ;清除74LS154掃描指針為00

     DJNZ R1,M2      ;每幕停留時間到了?

     MOV A,20H       ;取碼指針載入A

     ADD A,#08H      ;8

     MOV 20H,A       ;再存入20H地址取碼指針

     XRL A,#128      ;8個字是否都左移完畢了

     JNZ M1

     RET    

READ1:MOV A,R4         ;掃描指針載入A

      MOV P1,A         ;輸出至P1掃描列

      MOV A,R0         ;取碼指針載入A

      MOV DPTR,#TABLE  ;數(shù)據(jù)指針指到TABLE

      MOVC A,@A+DPTR   ;TABLE取上半部的數(shù)據(jù)碼

      MOV P0,A         ;輸出至P0顯示

      INC R0           ;取下一個碼

      MOV A,R0         ;取碼指針載入A

      MOV DPTR,#TABLE  ;數(shù)據(jù)指針指到TABLE

      MOVC A,@A+DPTR   ;TABLE 取下半部的數(shù)據(jù)碼

      MOV P2,A         ;輸出至p2顯示

      INC R0           ;取碼值加1

      MOV R3,#25       ;延時

      DJNZ R3,$

      MOV A,#00H       ;清除屏幕

      MOV P0,A

      MOV P2,A

      RET

DELAY:

      MOV R3,#200

D7:   MOV R5,#248

      DJNZ R5,$

      DJNZ R3,D7

      RET

      ;1  ""

TABLE:DB 08H,40H,08H,42H

      DB 08H,81H,0FFH,0FEH

      DB 09H,02H,0AH,0CH

      DB 7FH,0F0H,49H,00H

      DB 49H,0FFH,49H,02H

      DB 49H,0E0H,49H,18H

      DB 59H,14H,0CBH,26H

      DB 41H,44H,00H,00H

      ;2  ""

      DB 00H,80H,00H,81H

      DB 20H,82H,18H,84H

      DB 0CH,88H,00H,98H

      DB 0C0H,80H,3CH,80H

      DB 00H,80H,01H,90H

      DB 06H,88H,18H,84H

      DB 60H,86H,01H,83H

      DB 00H,80H,00H,00H

      ;3  ""

      DB 00H,00H,1FH,0C0H

      DB 10H,80H,10H,80H

      DB 10H,80H,10H,80H

      DB 10H,80H,0FFH,0FFH

      DB 10H,80H,10H,80H

      DB 10H,80H,10H,80H

      DB 10H,80H,3FH,0C0H

      DB 10H,00H,00H,00H

      ;4  ""

      DB 00H,20H,02H,20H

      DB 04H,20H,08H,20H

      DB 3FH,0A0H,0C0H,20H

      DB 02H,20H,04H,0FFH

      DB 08H,20H,0FFH,20H

      DB 10H,0A0H,20H,0A0H

      DB 60H,0A0H,03H,0A0H

      DB 00H,20H,00H,00H

      ;5  ""

      DB 00H,00H,1FH,0E0H

      DB 12H,40H,12H,40H

      DB 12H,40H,12H,40H

      DB 0FFH,0FCH,12H,42H

      DB 12H,42H,12H,42H

      DB 12H,42H,3FH,0E2H

      DB 10H,02H,00H,0EH

      DB 00H,00H,00H,00H

     ;6  ""

     DB 01H,00H,01H,00H

     DB 41H,00H,41H,00H

     DB 41H,00H,41H,02H

     DB 41H,01H,47H,0FEH

     DB 45H,00H,49H,00H

     DB 51H,00H,61H,00H

     DB 01H,00H,03H,00H

     DB 01H,00H,00H,00H

     ;7  ""

     DB 20H,20H,20H,20H

     DB 2EH,0A8H,2AH,0A8H

     DB 2AH,0A8H,2AH,0AAH

     DB 2AH,0A9H,0FFH,0FEH

     DB 2AH,0A8H,2AH,0A8H

     DB 2AH,0A8H,2AH,0A8H 

     DB 2EH,0FCH,60H,20H

     DB 20H,20H,00H,00H

     ;8  "業(yè)" 

     DB 00H,02H,08H,02H

     DB 06H,02H,01H,0E2H

     DB 00H,02H,0FFH,0FEH

     DB 00H,02H,00H,02H

     DB 00H,02H,0FFH,0FEH

     DB 00H,22H,00H,0C2H

     DB 03H,02H,0CH,06H

     DB 00H,02H,00H,00H

END

參考圖書:《8051單片機實踐與應(yīng)用》清華大學(xué)出版社

         《單片機應(yīng)用系統(tǒng)設(shè)計與產(chǎn)品開發(fā)》人民郵電出版社

  • 上一篇: 一種基于單片機控制的數(shù)字視頻混合器
  • 下一篇: 沒有了
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實性、準(zhǔn)確性和合法性。
    機電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1