LED顯示屏是由發(fā)光二極管構(gòu)成的顯示點陣,人們通過控制每個LED的亮滅實現(xiàn)圖形或字符的顯示。由于LED顯示屏亮度高、視角廣、工作電壓低、功耗小、壽命長、耐沖擊、">

国产亚洲不卡一卡2卡三卡4卡网站_中文字乱码在线生成2021_yellow片高清_黄黄的高清无码网站_XXXX9999无码

大學(xué)校園網(wǎng)

大學(xué)生活網(wǎng) > 大學(xué)生學(xué)習(xí) > 電氣工程

以單片機為控制核心 設(shè)計和制作漢字顯示系統(tǒng)

0.引言

LED顯示屏是由發(fā)光二極管構(gòu)成的顯示點陣,人們通過控制每個LED的亮滅實現(xiàn)圖形或字符的顯示。由于LED顯示屏亮度高、視角廣、工作電壓低、功耗小、壽命長、耐沖擊、性能穩(wěn)定,因而被廣泛應(yīng)用于機場、商場、醫(yī)院、賓館、證券市場等公共場所。本文以單片機為控制核心設(shè)計和制作了一種漢字顯示系統(tǒng),其成本低廉,內(nèi)容更新簡便。

1.顯示原理

1.1LED點陣顯示屏

將多個LED按矩陣方式排列在一起,如圖1所示,就構(gòu)成了一個LED點陣顯示屏。其中各個LED引腳按照一定的規(guī)律連接,以最常見的8*8單色LED點陣共陽型顯示器為例,其內(nèi)部電路結(jié)構(gòu)和外形規(guī)格如圖1所示。

16*16單色LED點陣顯示屏可由4塊8*8單色LED點陣顯示器組合而成,即16行16列,16*16=256像素。如果采用共陽型連接方式,即每行的LED陽極連接在一起,每列的LED陰極連接在一起

1.2顯示原理

對于共陽型LED點陣顯示屏,如果采用動態(tài)掃描方式,掃描電路就可以實現(xiàn)多行發(fā)光二極管的同名列共用一套驅(qū)動器。動態(tài)掃描,簡單說就是逐行輪流點亮。具體以8*8點陣模塊為例顯示字符“B”的過程如圖2所示。即先送出對應(yīng)于第一行發(fā)光二極管亮滅的數(shù)據(jù)0FFH并鎖存,然后選通第一行,即送行數(shù)據(jù)80H,延時一段時間后,送行數(shù)據(jù)00H,第一幀顯示結(jié)束;再送第二行的列數(shù)據(jù)87H并鎖存,然后選通第二行,即送行數(shù)據(jù)40H點亮相同時間后,送行數(shù)據(jù)00H,相應(yīng)二極管熄滅,第二幀顯示結(jié)束;以此類推第8行顯示之后,又重新點亮第一行,周而復(fù)始。當這樣輪回的速度足夠快(每秒24次以上)時,就能看到顯示屏上穩(wěn)定的字符B了。上述列數(shù)據(jù)即為字符B了。上述列數(shù)據(jù)即為字符B的字模數(shù)據(jù)。

1.3漢字字模的生成

由于要顯示內(nèi)容的不確定性,漢字字模的生成僅靠用戶自己構(gòu)建是不可能的。如果依靠單片機完成字模的創(chuàng)建和顯示控制,則由于單片機運算能力有限,是無法實現(xiàn)漢字的選定和實時顯示。為此利用PC機和相關(guān)軟件,于先生成所要顯示漢字的字模。

通常可以利用UCDOS的漢字庫構(gòu)造需要顯示的漢字字模。在UCDOS漢字庫中漢字均以行字模的形式存儲,只要確定了漢字在字庫中的位置和行字模的長度,就可以將需要漢字的行字模讀出。漢字在字庫中的位置可以通過漢字的機內(nèi)碼根據(jù)如下公式加以確定:

采用PCtoLCD2002字模軟件?梢苑奖愕纳勺帜(shù)據(jù),如圖3所示。將生成的字模數(shù)據(jù)復(fù)制到系統(tǒng)源程序中。

2系統(tǒng)硬件電路設(shè)計

圖4給出的是可以顯示一個16*16漢字系統(tǒng)的框圖。系統(tǒng)由AT89C51為主控芯片,顯示屏由4塊8*8LED共陰連接組成,其列驅(qū)動電路由2片74HC595構(gòu)成,擴展為具有鎖存、串并移位和三態(tài)輸出的16位移位寄存器,字模數(shù)據(jù)由此輸出;行驅(qū)動電路由1片4-16線譯碼器74HC154構(gòu)成,從DCBA輸入增量數(shù)據(jù),將輸出逐行掃描信號。K1、K2、K3為顯示方式控制鍵,按鍵選擇可實現(xiàn)LED點陣顯示屏卷簾、上移、左移等顯示輸出。該系統(tǒng)在Proteus軟件環(huán)境下仿真獲得良好的顯示效果。

3系統(tǒng)軟件設(shè)計

3.1主程序流程圖

系統(tǒng)主程序開始以后首先是對系統(tǒng)環(huán)境初始化,包括設(shè)置串口、定時器、中斷和端口。然后進行鍵盤掃描,如果K1鍵按下字符左移輸出。主程序流程見圖5所示。

3.2顯示驅(qū)動程序

顯示驅(qū)動程序查詢當前亮點的行號,從顯示緩存區(qū)內(nèi)讀取下一行的顯示數(shù)據(jù),并通過串口發(fā)送給移位寄存器。為消除在切換行顯示數(shù)據(jù)的時候產(chǎn)生拖尾現(xiàn)象,在中斷程序中,驅(qū)動程序先要關(guān)閉顯示屏,等顯示數(shù)據(jù)打入輸出鎖存器后,然后再輸入新的行選通信號,重新打開顯示。顯示驅(qū)動程序如下:

4結(jié)束語

本設(shè)計以AT89C51為系統(tǒng)的控制核心,采用動態(tài)掃描的方法實現(xiàn)對16*16LED點陣顯示屏的控制。該系統(tǒng)通過仿真和實物制作,均獲得良好的顯示效果,證明這種方案是可行的,而且具有體積小、硬件電路結(jié)構(gòu)簡單和容易實現(xiàn)等特點。但也存在更換顯示內(nèi)容時需要對AT89C51進行重新編程的問題,如果增加ISP編程電路,可通過USB下載電纜對單片機程序數(shù)據(jù)進行及時更新。