基于單片機(jī)LED點(diǎn)陣廣告屏設(shè)計(jì)論文(完整版)_第1頁
基于單片機(jī)LED點(diǎn)陣廣告屏設(shè)計(jì)論文(完整版)_第2頁
基于單片機(jī)LED點(diǎn)陣廣告屏設(shè)計(jì)論文(完整版)_第3頁
基于單片機(jī)LED點(diǎn)陣廣告屏設(shè)計(jì)論文(完整版)_第4頁
基于單片機(jī)LED點(diǎn)陣廣告屏設(shè)計(jì)論文(完整版)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第一章一、概述當(dāng)今社會(huì)在飛速發(fā)展無疑能源、健康、空間的利用,成了人們著重關(guān)注的對象。而在這個(gè)信息傳遞極速的社會(huì),LED的出現(xiàn)給人們帶來了希望之光。LED的特色之處一是節(jié)能(直接功耗,間接耗能),二是基本無電離輻射,三提高空間利用率。而這些特色又恰好解決了上述的三種問題。然而LED點(diǎn)陣顯示屏的特點(diǎn)不僅僅于此LED點(diǎn)陣顯示屏用的是數(shù)碼管,而數(shù)碼管具有實(shí)用,便宜等優(yōu)點(diǎn)。做出來的LED點(diǎn)陣顯示很耐用。LED點(diǎn)陣顯示屏之所以受到廣泛重視而得到迅速發(fā)展,是與LED顯示屏本身所具有的優(yōu)點(diǎn)分不開的。LED點(diǎn)陣顯示屏的發(fā)展前景極為廣闊,目前正朝著更高亮度、更高耐氣候性、更高的發(fā)光密度、更高的發(fā)光均勻性,可靠性、

2、全色化方向發(fā)展。二、簡介 組合型led點(diǎn)陣顯示器以發(fā)光二極體為圖素,它用高亮度LED晶粒進(jìn)行陣列組合后,再透過環(huán)氧樹脂和塑模封裝而成。具有高亮度、功耗低、引腳少、視角大、壽命長、耐濕、耐冷熱、耐腐蝕等特點(diǎn)。 點(diǎn)陣顯示器有單色和雙色兩類,可顯示紅,黃,綠,橙等。LED點(diǎn)陣有4×4、4×8、5×7、5×8、 8×8、16×16、24×24、40×40等多種;根據(jù)圖素的數(shù)目分為等,雙原色、三原色等,根據(jù)圖素顏色的不同所顯示的文字、圖像等內(nèi)容的顏色也不同,單原色點(diǎn)陣只能顯示固定色彩如紅、綠、黃等單色,雙原色和三原色點(diǎn)陣顯示

3、內(nèi)容的顏色由圖素內(nèi)不同顏色發(fā)光二極體點(diǎn)亮組合方式?jīng)Q定,如紅綠都亮?xí)r可顯示黃色,如果按照脈沖方式控制二極體的點(diǎn)亮?xí)r間,則可實(shí)現(xiàn)256或更高級灰度顯示,即可實(shí)現(xiàn)真彩色顯示。幾種LED點(diǎn)陣顯示器的內(nèi)部電路結(jié)構(gòu)和外型規(guī)格,其他型號點(diǎn)陣的結(jié)構(gòu)與引腳可試驗(yàn)獲得,LED點(diǎn)陣顯示器單塊使用時(shí),既可代替數(shù)碼管顯示數(shù)位,也可顯示各種中西文字及符號,如5 x 7點(diǎn)陣顯示器用於顯示西文字母,5×8點(diǎn)陣顯示器用於顯示中西文,8 x 8點(diǎn)陣用於顯示中文文字,也可用於圖形顯示。用多塊點(diǎn)陣顯示器組合則可構(gòu)成大螢?zāi)伙@示器,但這類實(shí)用裝置常通過微機(jī)或單片機(jī)控制驅(qū)動(dòng)。 由LED點(diǎn)陣顯示器的內(nèi)部結(jié)構(gòu)可知,器件宜採用動(dòng)態(tài)掃描

4、驅(qū)動(dòng)方式工作,由於LED管芯大多為高亮度型,因此某行或某列的單體 LED驅(qū)動(dòng)電流可選用窄脈沖,但其平均電流應(yīng)限制在20mA內(nèi),多數(shù)點(diǎn)陣顯示器的單體LED的正向壓降約在2V左右,但大亮點(diǎn)10的點(diǎn)陣顯示器單體 LED的正向壓降約為6V。大螢?zāi)伙@示系統(tǒng)一般是將由多個(gè)LED點(diǎn)陣組成的小模組以搭積木的方式組合而成的,每一個(gè)小模組都有自己的獨(dú)立的控制系統(tǒng),組合在一起后只要引入一個(gè)總控制器控制各模組的命令和資料即可,這種方法既簡單而且具有易展、易維修的特點(diǎn)。LED點(diǎn)陣顯示系統(tǒng)中各模組的顯示方式有靜態(tài)和動(dòng)態(tài)顯示兩種。靜態(tài)顯示原理簡單、控制方便,但硬體接線復(fù)雜,在實(shí)際應(yīng)用中一般採用動(dòng)態(tài)顯示方式,動(dòng)態(tài)顯示採用掃描

5、的方式工作,由峰值較大的窄脈沖驅(qū)動(dòng),從上到下逐次不斷地對顯示幕的各行進(jìn)行選通,同時(shí)又向各列送出表示圖形或文字資訊的脈沖信號,反復(fù)迴圈以上操作,就可顯示各種圖形或文字資訊。第二章2.1、16×16點(diǎn)陣LED原理及應(yīng)用設(shè)計(jì)時(shí)必須掌握點(diǎn)陣工作原理方能進(jìn)行更深層設(shè)計(jì)。16x16LED點(diǎn)陣其實(shí)就是4塊8x8點(diǎn)陣LED級聯(lián)而成的,因此特給出 8×8 點(diǎn)陣LED的工作原理。圖(1)為8×8點(diǎn)陣LED外觀及引腳圖,其等效電路如圖(2)所示,只要其對應(yīng)的X、Y軸順向偏壓,即可使LED發(fā)亮。例如如果想使左上角LED點(diǎn)亮,則Y0=1,X0=0即可。應(yīng)用時(shí)限流電阻可以放在X軸或Y軸。而1

6、6x16就是在8x8原理的基礎(chǔ)上將四塊8x8級聯(lián)而成,如圖(3)。 圖(1)8×8點(diǎn)陣LED外觀及引腳圖 圖(2)8×8點(diǎn)陣LED等效電路圖(3)四塊8x8點(diǎn)陣LED級聯(lián)成16x16點(diǎn)陣2.2、LED點(diǎn)陣的顯示文字圖形原理漢字顯示屏用于顯示漢字、字符及圖像信息,在公共汽車、銀行、醫(yī)院及戶外廣告等地方都有廣泛的應(yīng)用。下面是簡單的漢字顯示屏的制作,由單片機(jī)控制漢字的顯示內(nèi)容。為了降低成本,使用了四塊8×8的LED點(diǎn)陣發(fā)光管的模塊,組成了一個(gè)16×16的LED點(diǎn)陣顯示屏,如圖(3)所示。在這里僅做了二十五個(gè)漢字的顯示,在實(shí)際的使用中可以根據(jù)這個(gè)原理自

7、行的擴(kuò)展顯示的漢字,下面是介紹漢字顯示的原理。 LED驅(qū)動(dòng)顯示采用動(dòng)態(tài)掃描方法,動(dòng)態(tài)掃描方式是逐行輪流點(diǎn)亮,這樣掃描驅(qū)動(dòng)電路就可以實(shí)現(xiàn)多行的同名列共用一套列驅(qū)動(dòng)器。以16×16點(diǎn)陣為例,把所有同一行的發(fā)光管的陰極連在一起,把所有同一列的發(fā)光管的陽極連在一起(共陰的接法),先送出對應(yīng)第1列發(fā)光管亮滅的數(shù)據(jù)并鎖存,然后選通第1列使其燃亮一定的時(shí)間,然后熄滅;再送出第2列的數(shù)據(jù)并鎖存,然后選通第2列使其燃亮相同的時(shí)間,然后熄滅;.第16列之后,又重新燃亮第1列,反復(fù)輪回。當(dāng)這樣輪回的速度足夠快(每秒24次以上),由于人眼的視覺暫留現(xiàn)象,就能看到顯示屏上穩(wěn)定的圖形。該方法能驅(qū)動(dòng)較多的LED,

8、控制方式較靈活,而且節(jié)省單片機(jī)的資源。顯示數(shù)據(jù)可通過單片機(jī)的P0,P2口接驅(qū)動(dòng)電路傳輸?shù)近c(diǎn)陣行引腳。LED點(diǎn)陣顯示模塊進(jìn)行的方法有兩種:1)水平方向(X方向)掃描,即逐列掃描的方式(簡稱列掃描方式):此時(shí)用一個(gè)P口輸出列碼決定哪一列能亮(相當(dāng)于位碼),用另一個(gè)P口輸出行碼(列數(shù)據(jù)),決定該列上哪個(gè)LED亮(相當(dāng)于段碼)。能亮的列從左到右掃描完16列(相當(dāng)于位碼循環(huán)移動(dòng)16次)即顯示出一個(gè)完整的圖像。(2)豎直方向(Y方向)掃描,即逐行掃描方式(簡稱行掃描方式):此時(shí)用一個(gè)P口輸出決定哪一行能亮(相當(dāng)于位碼),另一個(gè)P口輸出列碼(行數(shù)據(jù),行數(shù)據(jù)為將列數(shù)據(jù)的點(diǎn)陣旋轉(zhuǎn)90度的數(shù)據(jù))決定該行上哪些LE

9、D燈亮(相當(dāng)于段碼)。能亮的行從上向下掃描完16行(相當(dāng)于位碼循環(huán)移位16次)即顯示一幀完整的圖像。本設(shè)計(jì)應(yīng)用的是第一種的掃描方法,即水平方向(X方向)掃描。每一個(gè)字由16行16列的點(diǎn)陣形成顯示,即每個(gè)字均由256個(gè)點(diǎn)陣來表示,我們可以把每一個(gè)點(diǎn)理解為一個(gè)像素。一般我們使用的16×16的點(diǎn)陣宋體字庫,即所謂的16×16,是每一個(gè)漢字在縱橫各16點(diǎn)的區(qū)域內(nèi)顯示的。漢字庫從該位置起的32字節(jié)信息記錄了該字的字模信息。事實(shí)上這個(gè)漢字屏不僅可以顯示漢字,也可以顯示在256像素范圍內(nèi)的任何圖形。我們以水平方向(x方向)掃描顯示漢字的“楊”為例來說明其掃描原理,每一個(gè)字由16行16列的

10、點(diǎn)陣組成顯示,如圖下的,如果用8位的AT89S51的單片機(jī)來控制,由于單片機(jī)的總線為8位,一個(gè)字需要拆分成兩個(gè)部分。一般我們把它分解成上部分和下部分,上部分由8*16的點(diǎn)陣組成,下部分也由8*16的點(diǎn)陣組成。在本例中單片機(jī)首先顯示的是左上角的第一列的部分,即第0列的P00P07口。方向?yàn)镻07到P00,顯示漢字“楊”的時(shí)候,P00到P02都是滅的,P03亮,因?yàn)樾薪雨帢O,即二進(jìn)制11110111,轉(zhuǎn)換為16進(jìn)制為F7H,如圖(4)所示。上半部分第一列完成之后,繼續(xù)掃描下半部分的第一列,即從P27向P20方向掃描,從上圖可以看到,這一列P2.2亮,其余全部滅,所以代碼為11111011,16進(jìn)制

11、為FBH,然后單片機(jī)轉(zhuǎn)向上半部的第二列,除了P03亮,其他的都不亮,即為11110111,16進(jìn)制為F7H,這一列掃描完成之后繼續(xù)進(jìn)行下半部分的掃描,除了P20P21亮,其他的為不亮,為二進(jìn)制11111100,即16進(jìn)制FCH。按照這個(gè)方法,繼續(xù)進(jìn)行下面的掃描,一共掃描32個(gè)8位,可以得出漢字“楊”的掃描代碼為 : F7H FBH F7H FCH 37H FFH 00H 00H B7H FFH 77H FEH F5H F7H BDH DBH;9DH ECH 2DH F7H B5H F9H 39H BEHBDH 7FH 3FH 80H FFH FFH FFH FFH; 圖(4)顯示原理圖由這個(gè)原

12、理可以看到,無論顯示何種字體或圖像,都可以用這種方法來分析出它的掃描代碼從而顯示在屏幕上。了解漢字的顯示原理之后,那如何得到漢字的字模信息呢?現(xiàn)在有一些現(xiàn)成的漢字字模生成軟件,可從網(wǎng)上下載漢字字庫提取程序直接提取字庫,如圖(5)所示的為一種字模生成軟件,軟件打開后輸入漢字,點(diǎn)擊“檢取”后,十六進(jìn)制數(shù)據(jù)漢字代碼即可以自動(dòng)生成,把我們需要的豎排數(shù)據(jù)復(fù)制到我們的程序即可。圖(5)2.3、 點(diǎn)陣的移動(dòng)以下以16×16點(diǎn)陣為例介紹點(diǎn)陣的移動(dòng)。要顯示一個(gè)字符,該字符的點(diǎn)陣數(shù)據(jù)可以列向(縱向)16點(diǎn)組字,又可以行向(橫向)16點(diǎn)組字。無論哪一種組字方法,都既可以顯示字符的水平方向的移動(dòng),又可以顯示

13、豎直方向的移動(dòng)。本設(shè)計(jì)主要采用漢字的左移,所以以下只作左移顯示的解釋。顯示字符的左右移動(dòng)(1) 列掃描方式左移動(dòng):列向組字顯示字符水平方向的移動(dòng)(左滾動(dòng)) 在這里有兩個(gè)方法: 方法1:延長數(shù)組法。將原來字符點(diǎn)陣數(shù)組的16個(gè)數(shù)據(jù)重復(fù)一遍延長,點(diǎn)陣數(shù)組的數(shù)據(jù)個(gè)數(shù)為32個(gè)。每掃描一幀取8個(gè)數(shù)據(jù)顯示,下一幀取數(shù)要在數(shù)組中后移一個(gè)數(shù)取數(shù)。循環(huán)一遍掃16幀??梢约傧胗袃蓧K16×16的點(diǎn)陣模塊(共32幀)水平平行排列,用一個(gè)恰好能罩住16列點(diǎn)陣的中空方框去罩這個(gè)點(diǎn)陣,第1(第1幀)罩住最左邊數(shù)起第一列開始的16列,就掃描顯示這16列;第2次(第2幀)使方框右移一列,罩住做左邊數(shù)起第2列開始的16列

14、,就掃描顯示這16列;······;這樣每掃描完一幀使方框右移一列,最后第16次(第16幀)時(shí),罩住左邊數(shù)起的第16列開始的16列,就掃描顯示這16列。如此完成16幀畫面的掃描顯示,也就完成了整個(gè)一次移動(dòng)循環(huán)掃描、之后反復(fù)循環(huán),即可呈現(xiàn)顯示字符沿水平向左移動(dòng)的圖像,如圖6所示。 圖6 方框圖法左右移動(dòng)示意圖因?yàn)槭橇邢蚪M字(列掃描方式,點(diǎn)陣數(shù)據(jù)為行碼,上邊為低位下面為高位),希望顯示移動(dòng)的一個(gè)字符,第1次掃描從行碼的點(diǎn)陣數(shù)組中取第116個(gè)數(shù)據(jù),送行碼輸出口,對應(yīng)于這8個(gè)數(shù)據(jù),同時(shí)用列碼輸出口輸出列碼,分別控制第116列。掃描完前16個(gè)數(shù)

15、據(jù)之后,第2次掃描從點(diǎn)陣數(shù)組中取第318個(gè)數(shù)據(jù)(第18個(gè)數(shù)據(jù)與第1個(gè)數(shù)據(jù)同),送行碼輸出口,對應(yīng)于這16個(gè)數(shù)據(jù),同時(shí)用列碼輸出口輸出列碼,仍分別控制掃第116列。第3次掃描從點(diǎn)陣數(shù)組中取第520個(gè)數(shù)據(jù)(第20個(gè)數(shù)據(jù)碼與第2個(gè)數(shù)據(jù)碼相同)掃描······;如此實(shí)現(xiàn)字符向左移動(dòng)。以上完成一個(gè)圖形移動(dòng)的方法,也可以看成是移動(dòng)16個(gè)不同的字形。如圖2.13所示,首先掃描第一個(gè)字型,同樣是16行,16次掃描,16次顯示;完成一個(gè)字型的掃描以后,再掃描第二個(gè)字型;完成第二個(gè)字型的掃描之后,再掃描第三個(gè)字型···

16、83;··依此類推,即可產(chǎn)生該文字的左移的感覺。假設(shè)如果原本某個(gè)漢字的字型(第一個(gè)字型),其編碼為:00H,10H,20H,30H,40H,50H,60H,70H,80H,90H,0A0H,0B0H,0C0H,0D0H0E0H,0F0H;第二個(gè)字型的編碼為:20H,30H,40H,50H,60H,70H,80H,90H,0A0H,0B0H,0C0H,0D0H0E0H,0F0H, 00H,10H也就是把第一個(gè)字型的編碼中,第1列顯示數(shù)據(jù),變?yōu)榈?列顯示數(shù)據(jù);第2列顯示數(shù)據(jù),變成第3列顯示數(shù)據(jù);第3列顯示數(shù)據(jù),變成第4列顯示數(shù)據(jù);第4列顯示數(shù)據(jù),變成第5列顯示數(shù)據(jù)·&

17、#183;····以此類推。當(dāng)?shù)谝粋€(gè)字型掃描顯示完成之后,就進(jìn)行這樣的動(dòng)作調(diào)整,以產(chǎn)生第二個(gè)字型的編碼。同樣的,當(dāng)?shù)诙€(gè)字型掃描完成之后,就進(jìn)行這樣的調(diào)整動(dòng)作,以產(chǎn)生第三個(gè)字型的編碼。這個(gè)調(diào)整動(dòng)作時(shí)先將16個(gè)編碼根據(jù)序填入存儲(chǔ)器,例如第1行編碼存入20H,第二行編碼存入21H······要進(jìn)行左移調(diào)整時(shí),則先將20H地址的數(shù)據(jù)轉(zhuǎn)移到36H地址,再將21 H地址的數(shù)據(jù)轉(zhuǎn)移到20 H地址,將22 H地址的數(shù)據(jù)轉(zhuǎn)移到21 H地址,將23 H地址的數(shù)據(jù)轉(zhuǎn)移到22 H地址,將24 H地址的數(shù)據(jù)轉(zhuǎn)移到23

18、H地址,將25 H地址的數(shù)據(jù)轉(zhuǎn)移到24 H地址,將26 H地址的數(shù)據(jù)轉(zhuǎn)移到25 H地址,將27 H地址的數(shù)據(jù)轉(zhuǎn)移到26 H地址,將28 H地址的數(shù)據(jù)轉(zhuǎn)移到27H地址······本設(shè)計(jì)主要采用以上方法實(shí)現(xiàn)左移,其他方法在此不再說明。2.4 芯片資料主要芯片介紹1. 8051系列的單片機(jī)AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。圖片見下圖附錄1。附錄1 89S51管腳圖(1)管腳說明VCC:供電電壓。GND:接地。P0口:P0口為一個(gè)8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),

19、被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸

20、入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號和控制信號。P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功

21、能口,如下表所示:口管腳 備選功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸

22、出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。/PSEN:外部程序存儲(chǔ)器的選通信號。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號將不出現(xiàn)。/EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程

23、序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出2.74ls154功能簡介:54/74154 為 4 線16 線譯碼器,當(dāng)選通端(G1、G2)均為低電平時(shí),可將地址端(ABCD)的二進(jìn)制編碼在一個(gè)對應(yīng)的輸出端,以低電平譯出。 如果將G1和G2中的一個(gè)作為數(shù)據(jù)輸入端,由ABCD對輸出尋址,74LS154還可作1線-16線數(shù)據(jù)分配器。附錄2 74LS154管腳圖(2)引腳功能介紹A、B、C、D

24、 譯碼地址輸入端(低電平有效)G1、G2 選通端(低電平有效) 015 輸出端(低電平有效)(3)74ls154真值表:第三章 方案設(shè)計(jì)3.1 單片機(jī)延時(shí)子程序延時(shí)程序在單片機(jī)編程中使用非常廣泛,也很重要,在本課程設(shè)計(jì)的程序中用到了延時(shí)子程序,所以在此詳細(xì)的敘述一下。在弄清延時(shí)程序指令的用法之前,要清楚的了解延時(shí)程序的基本概念,機(jī)器周期和指令周期的區(qū)別和聯(lián)系、相關(guān)指令的用法等。 。下面是本設(shè)計(jì)的程序中延時(shí)程序的計(jì)算:DELAY:MOV R2,#2 ; 1 延時(shí)1msD1 :MOV R3,#248 1DJNZ R3,$ 2*248DJNZ R2,D1 2*(2+1+2*248)RET 2T=1+

25、2*(2+1+2*248)+2=1001us3.2. PROTEUS仿真1.列驅(qū)動(dòng)電路: 如圖,用74hc154控制列掃描電路,外加PNP型三極管基極經(jīng)200歐電阻接154輸出引腳,集電極接點(diǎn)陣16列引腳,發(fā)射極接電源vcc實(shí)現(xiàn)飽和導(dǎo)通狀態(tài)。2.行控制電路可直接接上單片機(jī)P0,P2口。如圖9圖9 行控制電路圖3.3 軟件調(diào)試在PROTEUS環(huán)境中通過了調(diào)試如圖10(可是實(shí)際電路當(dāng)中卻不能顯示,將在硬件調(diào)試中解釋)3.4 硬件調(diào)試3.3.1節(jié)可以看到,在PROTEUS仿真軟件中的接線可以通過,可是在實(shí)際電路中不能顯示,這是因?yàn)閷?shí)際當(dāng)中51單片機(jī)的各個(gè)引腳負(fù)載能力有限,必須還要通過外接驅(qū)動(dòng)電路才能

26、很好的顯示,如外接三極管放大、接鎖存器鎖存等等來增強(qiáng)驅(qū)動(dòng)能力,本設(shè)計(jì)采用了外接三極管放大的方法成功調(diào)試出較好的顯示效果。實(shí)際電路及實(shí)物圖請看附錄一。第四章經(jīng) 驗(yàn) 總 結(jié)本次課程設(shè)計(jì)到現(xiàn)在有三個(gè)多星期,回顧這些天我感到學(xué)到了很多東西,在寫這個(gè)心得的時(shí)候,我想就這些天的收獲,說一說自己內(nèi)心的想法。本設(shè)計(jì)的是一個(gè)16x16的點(diǎn)陣LED圖文顯示屏,能夠在目測條件下LED顯示屏各點(diǎn)亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應(yīng)穩(wěn)定、清晰無串?dāng)_。圖形或文字顯示有靜止、移入移出等顯示方式。本系統(tǒng)具有硬件少,結(jié)構(gòu)簡單,容易實(shí)現(xiàn),性能穩(wěn)定可靠,成本低等特點(diǎn)。 總結(jié)本文的研究工作,主要做了下面幾點(diǎn)工作: 一、

27、通過查閱大量的相關(guān)資料,詳細(xì)了解了LED的發(fā)光原理和LED顯示屏的原理,了解了LED的現(xiàn)狀,清楚地了解了LED顯示屏與其它顯示屏相比較有那些優(yōu)點(diǎn),明確了研究目標(biāo)。并且通過對單片機(jī)資料的查閱和應(yīng)用,更進(jìn)一步增加了對單片機(jī)知識的理解和運(yùn)用能力。并證實(shí)了自己的思路:“查資料思考總結(jié)運(yùn)用找出差錯(cuò),再查資料和向別人詢問再次運(yùn)用”的正確性。二,本文設(shè)計(jì)的LED顯示屏能夠?qū)崿F(xiàn)在目測條件下LED顯示屏各點(diǎn)亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應(yīng)穩(wěn)定、清晰無串?dāng)_。三,本文列出了系統(tǒng)具體的硬件設(shè)計(jì)方案,硬件結(jié)構(gòu)電路圖,軟件流程圖和具體匯編語言程序設(shè)計(jì)與調(diào)試等方面。四,在這次課程設(shè)計(jì)的過程中學(xué)會(huì)了 PRO

28、TEUS 的基本使用,感到PROTEUS對電子專業(yè)的同學(xué)來說是一個(gè)很有用的軟件。在運(yùn)用PROTEUS時(shí)可以運(yùn)用一些快捷的標(biāo)號,總線的方法畫圖,這樣既能使電路圖清晰,簡單,更能大大提高畫圖速度五,通過這次課程設(shè)計(jì),重新復(fù)習(xí)并進(jìn)一步增強(qiáng)了動(dòng)手的能力,學(xué)以致用,把只是運(yùn)用到實(shí)際生活中才是根本目的。六,存在問題:沒有考慮仿真軟件是一個(gè)理想的仿真環(huán)境,而實(shí)際連接的電路板會(huì)由于譬如連接不當(dāng),相鄰器件間的干擾等等的問題導(dǎo)致在仿真軟件中能良好運(yùn)行的程序,出現(xiàn)顯示問題,經(jīng)過排查和合理的器件擺放焊接,問題解決??傮w來說這次的課程設(shè)計(jì)很成功,達(dá)到了預(yù)想的目的:學(xué)到了知識,提高了能力,完成了任務(wù)。有點(diǎn)缺憾是時(shí)間有限,

29、不能進(jìn)一步深入和擴(kuò)散學(xué)習(xí)和研究。希望有時(shí)間可以對程序和電路圖作更進(jìn)一步的改進(jìn),譬如實(shí)現(xiàn)點(diǎn)陣的上下移動(dòng),對角線移動(dòng),三色顯示等 附錄附一:實(shí)際硬件接線圖:附二 設(shè)計(jì)流程圖附三 設(shè)計(jì)程序;多字移動(dòng);一個(gè)字占32個(gè)字節(jié),1K可以存放1K=1024字節(jié)/32=32個(gè)字,C51=4K=128個(gè)字,C52=8K=256個(gè)字。;但程序約占用160個(gè)字節(jié)(相當(dāng)于5個(gè)字的空間),最終可以顯示的字為C51=123個(gè)字,C52=251個(gè)字。;超過后單片機(jī)將存儲(chǔ)不下。ORG 000HJMP MIANORG 030HMIAN:MOV P3,#00 ;關(guān)閉端口MOV P1,#0FFHMOV P0,#0ffhMOV P2,

30、#0ffhCALL DELAY ;延時(shí)1msMOV R5,#2 ;移動(dòng)列的數(shù)量(列數(shù)乘2)MOV A,#33 ;顯示幾個(gè)字MOV B,#32 ;一個(gè)字=32個(gè)碼MUL ABMOV 22H,A ;存放18個(gè)字的數(shù)量MOV 23H,B ;存放8的倍數(shù)個(gè)字的數(shù)量;如50個(gè)字:50×32=1600=0640H,則DPH處為06H=6,DPL處為40H=64;簡單算法:50÷8=6余2,6為DPH處數(shù),余的2×32=64為DPL數(shù)MOV DPTR,#TAB ;賦查表初址MOV R0,DPL ;保存DPTR初值,R0、R1記錄取碼進(jìn)度MOV R1,DPHMOV 20H,DPL

31、 ;20H、21H保持DPTR初值不變MOV 21H,DPHLOOP: MOV R7,#5 ;每屏停留時(shí)間L1: MOV R6,#16 ;每屏16個(gè)碼MOV R4,#00 ;掃描指針清零MOV DPL,R0 ;取碼指針存入DPLMOV DPH,R1L16: MOV A,R4 ;掃描指針存入AMOV P1,A ;掃描輸出INC R4 ;掃描指針加1CLR A ;A清零MOVC A,A+DPTR ;查表送AMOV P0,A ;送P0口顯示INC DPTR ;取碼指針加1CLR A ;A清零MOVC A,A+DPTR ;查表送AMOV P2,A ;送P2口顯示INC DPTR ;取碼指針加1CALL

32、 DELAY ;掃描延時(shí)1msMOV P0,#0ffh;清除屏幕MOV P2,#0ffhDJNZ R6,L16 ;1屏是否完成?DJNZ R7,L1 ;每屏停留時(shí)間是否到了?MOV A,R0 ;如字需移動(dòng),用該指令A(yù)DD A,R5 ;如大于256,C=1MOV R0,AJNC DPINC R1DP: MOV A,20H ;DPL初值A(chǔ)DD A,22H ;如大于256,C=1。因DPL初值在90H以上,顯示4個(gè)字后DPH將加1,導(dǎo)致判斷失誤MOV A,DPHSUBB A,21H ;已顯示字的數(shù)量(乘8)CJNE A,23H,LOOP ;DPH中的字是否完成?CLR C MOV A,DPLSUBB

33、 A,20H ;已顯示字的數(shù)量CJNE A,22H,LOOP ;DPL中的字是否完成?lJMP MIANDELAY:MOV R2,#2 ;延時(shí)1msD1 :MOV R3,#248DJNZ R3,$DJNZ R2,D1RETTAB: Db 0xFF,0xFB,0xFF,0xFB,0xFF,0xFB,0x8F,0xFB,0x6D,0xFB,0x53,0xFB,0x57,0xFB,0x07,0x80Db 0x53,0xFD,0x75,0xFD,0x96,0xFD,0xE7,0xFD,0xFF,0xFD,0xFF,0xFD,0xFF,0xFF,0xFF,0xFF;單db 0xFF,0xFF,0xFF,0xDF,0xFF,0xEF,0xFF,0xF3,0x01,0xFC,0xDF,0xFE,0xDF,0xFE,0xDF,0xFEdb 0x5F,0xFF,0x60,0xC0,0xEF,0xFF,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論