基于單片機(jī)漢字顯示系統(tǒng)畢業(yè)論文設(shè)計(jì)_第1頁
基于單片機(jī)漢字顯示系統(tǒng)畢業(yè)論文設(shè)計(jì)_第2頁
基于單片機(jī)漢字顯示系統(tǒng)畢業(yè)論文設(shè)計(jì)_第3頁
基于單片機(jī)漢字顯示系統(tǒng)畢業(yè)論文設(shè)計(jì)_第4頁
基于單片機(jī)漢字顯示系統(tǒng)畢業(yè)論文設(shè)計(jì)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、江西航空職業(yè)技術(shù)學(xué)院江西航空職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)說明書畢業(yè)設(shè)計(jì)說明書(論文)(論文)課題名稱 基于單片機(jī)控制文字的顯示 航空電子設(shè)備維修 專業(yè) 121333 班學(xué)生姓名 傅嘉皓_ 學(xué)號 121333021指導(dǎo)老師 易麗萍 技術(shù)職稱 高級講師2015 年 4 月 9 日江西航空職業(yè)技術(shù)學(xué)院江西航空職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)畢業(yè)設(shè)計(jì)(論文)任務(wù)書(論文)任務(wù)書學(xué)生姓名:_傅嘉皓_ 班級:_121333_1.畢業(yè)設(shè)計(jì)(論文)題目:_基于單片機(jī)控制文字的顯示 _2.畢業(yè)設(shè)計(jì)(論文)使用的原始資料數(shù)據(jù)及設(shè)計(jì)技術(shù)要求:各種資料來源于書本和互聯(lián)網(wǎng)上查找的資料,設(shè)計(jì)的要求是利用單片機(jī)的控制系統(tǒng),是文字在 LED 上

2、清晰的顯示出來。3.畢業(yè)設(shè)計(jì)(論文)工作內(nèi)容及完成時(shí)間: 以 MCS-51 系列的單片機(jī)為核心器件,組成一個(gè)點(diǎn)陣式漢字顯示屏。而顯示屏由一塊 16*16LED 點(diǎn)陣顯示器組成,可以依次顯示四個(gè)漢字“歡迎光臨”。而且可以通過編程能夠隨時(shí)對漢字進(jìn)行修改、調(diào)整。 日期:自_2015_年_4_月_9_日至_2015_年_4_月_10_日指導(dǎo)老師評語:_ 指導(dǎo)老師: 易麗萍 系主任: 周延 目目 錄錄1 1 引言引言 .1 1.11.1 目的及意義目的及意義 .12 2 總體設(shè)計(jì)的原理與實(shí)現(xiàn)總體設(shè)計(jì)的原理與實(shí)現(xiàn) .2 2.12.1 方案論證方案論證 .2 2.1.1 漢字顯示分析與論證 .2 2.1.2

3、 時(shí)間顯示分析與論證 .3 2.22.2 電路原理的總體設(shè)計(jì)電路原理的總體設(shè)計(jì) .3 2.2.1 漢字顯示的工作原理 .3 2.2.2 系統(tǒng)結(jié)構(gòu)圖 .43 3 硬件部分的設(shè)計(jì)硬件部分的設(shè)計(jì) .5 3.13.1 硬件組成部分硬件組成部分 .5 3.23.2 相關(guān)芯片介紹相關(guān)芯片介紹 .6 3.2.1 AT89C51 的功能及說明 .6 3.33.3 硬件各部分設(shè)計(jì)硬件各部分設(shè)計(jì) .7 3.3.1 單片機(jī)系統(tǒng)及外圍電路 .7 3.3.2 行驅(qū)動(dòng)電路 .7 3.3.3 列驅(qū)動(dòng)電路 .8 3.3.4 LED 點(diǎn)陣顯示電路 .104 4 軟件部分的設(shè)計(jì)軟件部分的設(shè)計(jì) .13 4.14.1 軟件總體設(shè)計(jì)軟

4、件總體設(shè)計(jì) .13 4.24.2 軟件各模塊設(shè)計(jì)軟件各模塊設(shè)計(jì) .14 4.2.1 中斷控制程序 .14 4.2.2 串行中斷程程序 .14 4.2.3 程序清單 .175 5 系統(tǒng)調(diào)試系統(tǒng)調(diào)試 .21 5.15.1 常見硬件故障調(diào)試常見硬件故障調(diào)試 .21結(jié)束結(jié)束 .20 致謝致謝 .21 1 1 引言引言單片機(jī)自 20 世紀(jì) 70 年代問世,經(jīng)歷了 SCM、MCU、SOC 三大階段。問世以來以極其高的性能價(jià)格比受到人們的重視和關(guān)注,所以應(yīng)用很廣,發(fā)展很快。單片機(jī)的特點(diǎn)是體積小、集成度高、重量輕、抗干擾能力強(qiáng),對環(huán)境要求不高,價(jià)格低廉,可靠性高,靈活性好,開發(fā)較為容易。本系統(tǒng)是以 AT89C

5、51 單片機(jī)為核心,采用 LED 點(diǎn)陣屏來實(shí)現(xiàn)漢字顯示系統(tǒng)。使用該芯片控制一個(gè)列驅(qū)動(dòng)器74LS154 和兩個(gè)行驅(qū)動(dòng)器 74HC595 來驅(qū) 16*16 點(diǎn)陣屏顯示漢字。采用 16*16 點(diǎn)陣屏一次性只能顯示一個(gè)符合國家標(biāo)準(zhǔn)的漢字,本設(shè)計(jì)實(shí)現(xiàn)了漢字的靜止、滾動(dòng)等顯示方式。本設(shè)計(jì)基于單片機(jī) AT89C51 講述了 16*16 LED 漢字點(diǎn)陣顯示的基本原理、硬件組成與程序設(shè)計(jì)等基本環(huán)節(jié)的相關(guān)技術(shù)。1.11.1 目的及意義目的及意義 隨著信息社會的到來,單片機(jī)廣泛的應(yīng)用于工業(yè)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、自動(dòng)測試系統(tǒng)、聲學(xué)領(lǐng)域和微機(jī)技術(shù)等廣闊的領(lǐng)域。而利用單片機(jī)對語音芯片進(jìn)行控制可以達(dá)到語音報(bào)站的效果。因

6、此,了解并掌握單片機(jī)智能控制技術(shù)工作原理及特性是非常重要的。在大型商場、車站、碼頭、地鐵站以及各類辦事窗口等越來越多的場所需要用 LED 點(diǎn)陣顯示圖形和漢字。LED 行業(yè)已成為一個(gè)快速發(fā)展的新興產(chǎn)業(yè),市場空間巨大,前景廣闊。隨著信息產(chǎn)業(yè)的高速發(fā)展,LED 顯示作為信息傳播的一種重要手段,已廣泛應(yīng)用于室內(nèi)外需要進(jìn)行服務(wù)內(nèi)容和服務(wù)宗旨宣傳的公眾場所,例如戶內(nèi)外公共場所廣告宣傳、機(jī)場車站旅客引導(dǎo)信息、公交車輛報(bào)站系統(tǒng)、證券與銀行信息顯示、餐館報(bào)價(jià)信息顯示、高速公路可變情報(bào)板、體育場館比賽轉(zhuǎn)播、樓宇燈飾、交通信號燈、景觀照明等。顯然,LED 顯示已成為城市亮化、現(xiàn)代化和信息化社會的一個(gè)重要標(biāo)志。 LE

7、D 電子顯示屏是隨著計(jì)算機(jī)及相關(guān)的微電子光電子技術(shù)的迅猛發(fā)展而形成的一種新型信息顯示媒體。它利用發(fā)光二極管構(gòu)成的點(diǎn)陣模塊或像素單元組成可變面積的顯示屏幕,它具有高清晰度、色彩鮮艷、視角大、工作穩(wěn)定、壽命長、功耗低等優(yōu)點(diǎn)。由于采用單元模塊化結(jié)構(gòu),屏體大小可按用戶要求靈活拼制;它的超高亮度,使它在戶內(nèi)外顯示中具有不可替代的作用。以可靠性高、使用壽命長、環(huán)境適應(yīng)能力強(qiáng)、性能價(jià)格比高、使用成本低等特點(diǎn),迅速成長為平板顯示的主流產(chǎn)品,在信息顯示領(lǐng)域得到了廣泛的應(yīng)用。廣泛應(yīng)用到軍事、車站、賓館、2體育、新聞、金融、證券、廣告以及交通運(yùn)輸?shù)仍S多行業(yè)。目前 LED 顯示屏作為新一代的信息傳播媒體,本設(shè)計(jì)的 L

8、ED 點(diǎn)陣顯示系統(tǒng)自帶字庫。其顯示和動(dòng)態(tài)效果(主要是顯示內(nèi)容的滾動(dòng))的實(shí)現(xiàn)主要依靠硬件掃描驅(qū)動(dòng),該方法方便,且易于實(shí)現(xiàn)。2 2 總體設(shè)計(jì)的原理與實(shí)現(xiàn)總體設(shè)計(jì)的原理與實(shí)現(xiàn)2.12.1 方案論證方案論證根據(jù)此設(shè)計(jì)要求,我們認(rèn)為此設(shè)計(jì)屬于多輸出量的復(fù)雜程序控制問題,結(jié)合實(shí)際情況,我們擬定了以下兩種方案并進(jìn)行了綜合的比較論證。方案一:采用組合數(shù)字電路實(shí)現(xiàn)核心控制的方案 采用組合電路實(shí)現(xiàn)控制和處理功能,具有速度快,資源豐富的優(yōu)點(diǎn),但在實(shí)現(xiàn)多路控制和附加功能上受到種種限制,且功能越多電路越復(fù)雜,給電路的設(shè)計(jì)制作帶來諸多不便,另外設(shè)計(jì)制作費(fèi)用高,功能固定,不能擴(kuò)展,因此該方案不被采用。方案二:采用單片機(jī)為核

9、心控制的方案采用單片機(jī)作為控制和處理的核心,由于單片機(jī)功能的高度集成,能達(dá)到多任務(wù)的處理,使得電路的復(fù)雜程度大大降低,尤其在實(shí)現(xiàn)漢字顯示的自動(dòng)控制和時(shí)間顯示、調(diào)整上顯現(xiàn)出獨(dú)特的優(yōu)勢。同時(shí)能使設(shè)計(jì)費(fèi)用降低許多,綜合考慮以上實(shí)際情況,采用本方案。2.1.12.1.1 漢字顯示分析與論證漢字顯示分析與論證考慮到元器件的易購性和價(jià)格低廉,采用由 256 個(gè)發(fā)光二極管組成的 16*16漢字點(diǎn)陣陣列作為顯示系統(tǒng)。在顯示驅(qū)動(dòng)電路中我們擬訂了兩種設(shè)計(jì)方案:方案一:采用靜態(tài)顯示的方案 使其列選信號始終為低電平,保證列選始終選中,此方案能使各個(gè)漢字呈現(xiàn)出穩(wěn)定的顯示,但系統(tǒng)占用資源多,使 AT89C51 的 CPU

10、 的使用率降低,不能發(fā)揮主處理器應(yīng)有的功能,因此不采用此方案。方案二:采用動(dòng)態(tài)顯示的方案 動(dòng)態(tài)顯示,即使列選線按已編寫好的方案有序出現(xiàn)低電平,點(diǎn)亮該列上的二極管,由于人眼的視覺暫留,在 20ms 時(shí)間內(nèi),人的眼睛會認(rèn)為仍呈現(xiàn)出穩(wěn)定顯3示,因此結(jié)合實(shí)際,采用譯碼器為列選線循環(huán)出現(xiàn)低電平提供有效的保證,故此漢字顯示模塊采用本方案。2.1.22.1.2 時(shí)間顯示分析與論證時(shí)間顯示分析與論證 對時(shí)間的顯示采用數(shù)碼管顯示,同樣也有兩種設(shè)計(jì)方案方案一:采用靜態(tài)顯示的方案 使其位選信號始終為低電平,保證位選始終選中,從而使各個(gè)數(shù)碼管始終點(diǎn)亮,其特點(diǎn)等同于漢字靜態(tài)顯示的特點(diǎn),因此,不采用此方案。方案二:采用動(dòng)

11、態(tài)顯示的方案采用移位循環(huán)使位選線循環(huán)出現(xiàn)低電平,從而使各個(gè)數(shù)碼管依次點(diǎn)亮,此方案能提高 CPU 的效率,其特點(diǎn)等同于漢字動(dòng)態(tài)顯示,顯現(xiàn)出動(dòng)態(tài)顯示的諸多優(yōu)點(diǎn),所以此模塊采用本方案。 2.22.2 電路原理的總體設(shè)計(jì)電路原理的總體設(shè)計(jì)2.2.12.2.1 漢字顯示的工作原理漢字顯示的工作原理AT89C51 是一種帶 4 kB 閃爍可編程可擦除只讀存儲器(Falsh Programmable and Erasable Read OnlyMemory,F(xiàn)PEROM)的低電壓、高性能 CMOS 型 8 位微處理器,俗稱單片機(jī)。該器件采用 ATMEL 高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的 MCS-

12、51 指令集和輸出管腳相兼容。由于將多功能 8 位 CPU 和閃爍存儲器組合在單個(gè)芯片中,能夠進(jìn)行 1 000 次寫擦循環(huán),數(shù)據(jù)保留時(shí)間為 10 年。他是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。因此,在智能化電子設(shè)計(jì)與制作過程中經(jīng)常用到 AT89C51 芯片。時(shí)鐘電路由 AT89C51 的 18,19 腳的時(shí)鐘端(XTALl 及 XTAL2)以及 12 MHz 晶振 X1、電容 C2,C3 組成,采用片內(nèi)振蕩方式。復(fù)位電路采用簡易的上電復(fù)位電路,主要由電阻 R1,R2,電容 C1,開關(guān) K1組成,分別接至 AT89C51 的 RST 復(fù)位輸入端。 4圖圖 2-1

13、電路原理圖電路原理圖LED 點(diǎn)陣顯示屏采用 1616 共 256 個(gè)象素的點(diǎn)陣。我們把行列總線接在單片機(jī)的 IO 口,然后把上面分析到的掃描代碼送人總線,就可以得到顯示的漢字了。但是若將 LED 點(diǎn)陣的行列端口全部直接接入 89S51 單片機(jī),則需要使用 32條 IO 口,這樣會造成 IO 資源的耗盡,系統(tǒng)也再無擴(kuò)充的余地。因此,我們在實(shí)際應(yīng)用中只是將 LED 點(diǎn)陣的 16 條行線直接接在 P2 口和 P3 口,至于列選掃描信號則是由 4-16 線譯碼器 74HC154 來選擇控制,這樣一來列選控制只使用了單片機(jī)的 4 個(gè) IO 口,節(jié)約了很多 IO 資源,為單片機(jī)系統(tǒng)擴(kuò)充使用功能提供了條件。

14、2.2.22.2.2 系統(tǒng)結(jié)構(gòu)圖系統(tǒng)結(jié)構(gòu)圖如圖 2-2 可以看出系統(tǒng)有以下幾部分:電源電路、復(fù)位電路、晶振電路、單片機(jī)、按鍵電路、行驅(qū)動(dòng)、列驅(qū)動(dòng)電路以及點(diǎn)陣屏構(gòu)成。5圖圖 2-22-2 系統(tǒng)總體設(shè)計(jì)框圖系統(tǒng)總體設(shè)計(jì)框圖如圖 2-2 可以看出系統(tǒng)有以下幾部分:電源電路、復(fù)位電路、晶振電路、單片機(jī)、按鍵電路、行驅(qū)動(dòng)、列驅(qū)動(dòng)電路以及點(diǎn)陣屏構(gòu)成。3 3 硬件部分的設(shè)計(jì)硬件部分的設(shè)計(jì)3.13.1 硬件組成部分硬件組成部分硬件電路大致上可分為單片機(jī)系統(tǒng)及外圍電路、列驅(qū)動(dòng)電路和行驅(qū)動(dòng)電路 3部分。單片機(jī)采用 89C51 及其兼容系列,采用 24M 晶振以獲得較高的屏幕刷新率,使顯示更穩(wěn)定。單片機(jī)的串口與列驅(qū)

15、動(dòng)相連,用來送顯示數(shù)據(jù)。P1 口低 4 位與行驅(qū)動(dòng)相連,送行選信號。P1.5P1.7 口則用來發(fā)送控制信號。P0 口和 P2 口可在必要時(shí)擴(kuò)展 ROM 或 RAM,以顯示更多的文字。列驅(qū)動(dòng)電路由 74HC595 構(gòu)成,它具有一個(gè) 8 位串入并出的移位寄存器和一個(gè)8 位輸出鎖存器,而且移位寄存器和輸出鎖存器的控制是各自獨(dú)立的,可以實(shí)現(xiàn)在顯示本行各列數(shù)據(jù)的同時(shí),傳送下一行的列數(shù)據(jù),達(dá)到重疊處理的目的。P1 口低四位輸出的行號經(jīng) 4 線-16 線譯碼器 74LS154 譯碼后生成 16 行選通信號線,再經(jīng)過行驅(qū)動(dòng)器驅(qū)動(dòng)相應(yīng)的行線。1 條行線上要帶動(dòng) 16 列的 LED 進(jìn)行顯示,按每一 LED 器件

16、 20mA 電流計(jì)算,16 個(gè) LED 同時(shí)發(fā)光時(shí),需要 320mA 電流,選用三極管 8550 作為驅(qū)動(dòng)管可以滿足要求。下面我就先對硬件電路設(shè)計(jì)中使用的主要器件的技術(shù)資料進(jìn)行相關(guān)的介紹。讓我們對硬件進(jìn)行整體的了解。63.23.2 相關(guān)芯片介紹相關(guān)芯片介紹3.2.13.2.1 AT89C51AT89C51 的功能及說明的功能及說明(1). AT89C51 的主要性能有:與 MCS-51 兼容;4K 字節(jié)可編程閃爍存儲器 ;壽命長:1000 寫/擦循環(huán); 數(shù)據(jù)保留時(shí)間長:10 年;全靜態(tài)工作:0Hz-24Hz;三級程序存儲器鎖存;128*8 位內(nèi)部 RAM;32 可編程 I/O 線;兩個(gè) 16

17、位定時(shí)器/計(jì)數(shù)器 1;5 個(gè)中斷源 ;可編程串行通道;低功耗的閑置和掉電模式;片內(nèi)振蕩器和時(shí)鐘電路(2)管腳說明:圖圖 3-13-1 AT89C51AT89C51 的引腳的引腳VCC:供電電壓。GND:接地。P0 口:P0 口為一個(gè) 8 位漏級開路雙向 I/O 口P1 口:P1 口是一個(gè)內(nèi)部提供上拉電阻的 8 位雙向 I/O 口P2 口:P2 口為一個(gè)內(nèi)部上拉電阻的 8 位雙向 I/O 口 P3 口:P3 口管腳是 8 個(gè)帶內(nèi)部上拉電阻的雙向 I/O 口7P3 口也可作為 AT89C51 的一些特殊功能口,如下表所示:P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /IN

18、T0(外部中斷 0)P3.3 /INT1(外部中斷 1)P3.4 T0(記時(shí)器 0 外部輸入)P3.5 T1(記時(shí)器 1 外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持 RST 腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問外部存儲器時(shí),地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)PSEN:外部程序存儲器的選通信號。EA/VPP:當(dāng) EA 端保持低電平時(shí),則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器,始終選用外部程序存儲器。當(dāng) EA 端保持高電平時(shí),首先選中內(nèi)部程序存儲

19、器,當(dāng)存儲容量超過內(nèi)部程序存儲空間時(shí),如果有外擴(kuò)程序存儲器則自動(dòng)調(diào)至外部存儲空間。注意加密方式 1 時(shí),EA 將內(nèi)部鎖定為RESET;在 FLASH 編程期間,此引腳也用于施加 12V 編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。3.33.3 硬件硬件各部分設(shè)計(jì)各部分設(shè)計(jì)3.3.13.3.1 單片機(jī)系統(tǒng)及外圍電路單片機(jī)系統(tǒng)及外圍電路本系統(tǒng)由 AT89C51 構(gòu)成單片機(jī)最小應(yīng)用系統(tǒng)同時(shí)配有 110592 MHz 晶振和按鍵復(fù)位電路等。系統(tǒng)外擴(kuò)的一片 Flash 存儲器,可用來存儲由 PC 機(jī)串口送來的點(diǎn)陣信息(通過軟件將圖像或

20、文字轉(zhuǎn) 換成與 LED 顯示屏的像素相對應(yīng)的點(diǎn)陣信息)。該 Flash 存儲器是一種非易失性存儲器,它在供電電源關(guān)閉后仍能保持片8內(nèi)信息。另外,采用 MAX232 可完成 RS232 與 TTL 電平的轉(zhuǎn)換,以便使 PC 機(jī)與單片機(jī)交換信息。3.3.23.3.2 行驅(qū)動(dòng)電路行驅(qū)動(dòng)電路行驅(qū)動(dòng)電路如圖 3-2 所示,P1 口低四位輸出的行號經(jīng) 4 線-16 線譯碼器 74LS154譯碼后生成 16 行選通信號線,再經(jīng)過行驅(qū)動(dòng)器驅(qū)動(dòng)相應(yīng)的行線。1 條行線上要帶動(dòng) 16 列的 LED 進(jìn)行顯示,按每一 LED 器件 20mA 電流計(jì)算,16 個(gè) LED 同時(shí)發(fā)光時(shí),需要 320mA 電流,選用三極管

21、8550 作為驅(qū)動(dòng)管可以滿足要求。圖圖 3-23-2 行驅(qū)動(dòng)電路原理圖行驅(qū)動(dòng)電路原理圖3.3.33.3.3 列驅(qū)動(dòng)電路列驅(qū)動(dòng)電路9圖圖 3-33-3 列驅(qū)動(dòng)電路原理圖列驅(qū)動(dòng)電路原理圖列輸入驅(qū)動(dòng)由八個(gè) 8 位串行輸入,串行或并行輸出三態(tài)移位寄存器 74HC595實(shí)現(xiàn)。該芯片具有串行輸入、并行輸出兩個(gè)獨(dú)立的時(shí)鐘信號。輸入數(shù)據(jù)在串行移位時(shí)鐘 SRCLK 上升沿由串行輸入端 SER 輸入到芯片內(nèi)部串行移位寄存器中,同時(shí),SQH 端串行輸出;在鎖存時(shí)鐘信號 RCLK 上升沿到來時(shí),芯片將內(nèi)部串行移位寄存器 8 位數(shù)據(jù)并行輸出。正常工作時(shí),應(yīng)將復(fù)位端 SRCLR 與使能端 RCLK 分別接高電平、低電平。

22、單片機(jī)輸出信號直接與串入并出移位寄存器 74HC595 的鎖存器輸出端連接。10系統(tǒng)總電路圖如下所示: 圖 3-4 系統(tǒng)總電路圖它的輸入側(cè)有 8 個(gè)串行移位寄存器,每個(gè)移位寄存器的輸出都連接一個(gè)輸出鎖存器。引腳 SI 是串行數(shù)據(jù)的輸入端。引腳 SCK 是移位寄存器的移位時(shí)鐘脈沖,在其上升沿將發(fā)生移位,并將 SI 的下一個(gè)數(shù)據(jù)打入最低位。移位后的各位信號出現(xiàn)在各移位寄存器的輸出端,也就是輸出寄存器的輸入端。RCK 是輸出鎖存器的打入信號,器上升沿將移位寄存器的輸出打入輸出鎖存器。引腳 G 是輸出三態(tài)門的開放信號,只有當(dāng)其為低時(shí)鎖存器的輸出才開放,否則為高阻態(tài)。SCLR信號是移位寄存器的清 0 輸

23、入端,當(dāng)其為低時(shí)移位寄存器的輸出全為 O。由于SCK 和 RCK 兩個(gè)信號是相互獨(dú)立的,所以能夠做到輸入串行移位與輸出鎖存器互不干擾。芯片的輸出端為 QA-QH,最高位 QH 可作為多片 74HC595 級聯(lián)應(yīng)用時(shí),向上一級的級聯(lián)輸出。但因 QH 受輸出鎖存器打入控制,所以還從輸出鎖存器前引出了 QH,作為與移位寄存器完全同步的級聯(lián)輸出。113.3.3.3.4 4 LEDLED 點(diǎn)陣顯示電路點(diǎn)陣顯示電路顯示數(shù)據(jù)傳輸采用串行傳輸?shù)姆椒ǎ刂齐娐房梢灾挥靡桓盘柧€,將列數(shù)據(jù)一位一位傳往列驅(qū)動(dòng)器,在硬件方面無疑是十分經(jīng)濟(jì)的。但串行傳輸過程較長,數(shù)據(jù)按順序一位一位地輸出給列驅(qū)動(dòng)器,只有當(dāng)一行的各列數(shù)據(jù)

24、都已傳輸?shù)轿恢?,這一行的各列才能并行地進(jìn)行顯示。對于串行傳輸方式來說,列數(shù)據(jù)準(zhǔn)備時(shí)間可能相當(dāng)長,在行掃描周期確定的情況下,留給行顯示的時(shí)間就太少了,以致影響到 LED 的亮度。基于串行傳輸中列數(shù)據(jù)準(zhǔn)備和列數(shù)據(jù)顯示的時(shí)間矛盾,可以采用重疊處理的方法。即在顯示本行各列數(shù)據(jù)的同時(shí),傳送下一行的列數(shù)據(jù)。為了達(dá)到重疊處理的方的,列數(shù)據(jù)的顯示就需要有鎖存功能。對于列數(shù)據(jù)準(zhǔn)備來說,它應(yīng)能實(shí)現(xiàn)串入并出的移位功能。這樣,本行已準(zhǔn)備好的數(shù)據(jù)打入并行鎖存器進(jìn)行顯示時(shí),串行移位寄存器就可以準(zhǔn)備下一行的列數(shù)據(jù),而不會影響本行的顯示。經(jīng)過上述分析,可以歸納出列驅(qū)動(dòng)器電路應(yīng)具備的主要功能:對數(shù)據(jù)準(zhǔn)備來說,它應(yīng)能實(shí)現(xiàn)串入并

25、出的移位功能;對數(shù)據(jù)顯示來說,應(yīng)具有并行鎖存的功能。這樣,本行已準(zhǔn)備好的數(shù)據(jù)打人并行鎖存器進(jìn)行顯示時(shí),串并移位寄存器就可以準(zhǔn)備下一行的列數(shù)據(jù),而不會影響本行的顯示。同時(shí)為了 LED 顯示的亮度,采用8 行掃描,每個(gè)漢字上面有 2 個(gè) 16 列驅(qū)動(dòng)器驅(qū)動(dòng),列驅(qū)動(dòng)器的位置應(yīng)該是在第 1行跟第 9 行,即每個(gè) 16*16 的漢字點(diǎn)陣是有 4 個(gè) 8*8 的點(diǎn)陣組成的陣列,掃描的時(shí)候同時(shí)掃描顯示第 1 行跟第 9 行,第二次掃描的時(shí)候顯示第 2 行跟第 10 行,以此類推,最后顯示第 8 行跟第 16 行,如圖 3-4 所示:12第 1 行全亮 | 第 2 行不亮 | 第 3 行不亮 | 第 4 行不

26、亮 | 第 5 行不亮 | 第 6 行不亮 | 第 7 行不亮 | 第 8 行不亮 | 第 9 行全亮 | 第 10 行不亮 | 第 11 行不亮 | 第 12 行不亮 | 第 13 行不亮 | 第 14 行不亮 | 第 15 行不亮 | 第 16 行不亮 | 圖圖 3-43-4 LEDLED 點(diǎn)陣顯示電路點(diǎn)陣顯示電路共陽型 LED 點(diǎn)陣單元(8X8)的結(jié)構(gòu)示意圖如圖 3-5,由行輸入高電平點(diǎn)亮。13 圖圖 3-53-5 LEDLED 點(diǎn)陣單元結(jié)構(gòu)示意圖點(diǎn)陣單元結(jié)構(gòu)示意圖4 4 軟件部分的設(shè)計(jì)軟件部分的設(shè)計(jì)4.14.1 軟件總體設(shè)計(jì)軟件總體設(shè)計(jì)程序中需要使用兩個(gè)計(jì)時(shí)器,一個(gè)用于掃描定時(shí),定時(shí)時(shí)

27、間到時(shí)輸出 1 幀顯示數(shù)據(jù),另一個(gè)用于循環(huán)顯示 7 個(gè)漢字,定時(shí)時(shí)間到時(shí)調(diào)整字模數(shù)據(jù)起點(diǎn),從而改變顯示字符。第二個(gè)計(jì)時(shí)器可以在第一個(gè)定時(shí)中斷中設(shè)置一個(gè)計(jì)數(shù)器,達(dá)到預(yù)定值后調(diào)整字模數(shù)據(jù)起點(diǎn)。流程圖如下所示:14 圖圖 4-14-1 主程序流程圖主程序流程圖 圖圖 4-24-2 顯示驅(qū)動(dòng)程序流程圖顯示驅(qū)動(dòng)程序流程圖 4.24.2 軟件各模塊設(shè)計(jì)軟件各模塊設(shè)計(jì)4.2.14.2.1 中斷控制程序中斷控制程序任務(wù):啟動(dòng)下一幀數(shù)據(jù)的發(fā)送(發(fā)送本幀字模數(shù)據(jù)的第一個(gè)字節(jié)) 為每個(gè)字符顯示時(shí)間(ZFJS)計(jì)數(shù),當(dāng)達(dá)到預(yù)定值時(shí)將顯示字符編號(ZF)加 115.NNYY定時(shí)中斷入口保護(hù)現(xiàn)場恢復(fù)計(jì)數(shù)初值取字模數(shù)據(jù)發(fā)送

28、字模數(shù)據(jù)調(diào)整字模的指針字符顯示計(jì)時(shí)時(shí)間到?字符號+1字符號*7字符號=0恢復(fù)現(xiàn)場返回CTC: PUSH ACC PUSH B MOV TH0, #CTH MOV TL0, #CTL CLR A MOVC A, A+DPTR INC DPTR MOV SBUF, A INC ZFJS MOV A, ZFJS CJNE A, #YS, CTCR MOV ZFJS, #0 INC AF MOV A, ZF CJNE A, #7, CTCR MOV ZF, #0CTCR:POP B POP ACC RETI圖圖 4-34-3 定時(shí)計(jì)數(shù)器定時(shí)中斷程序框圖與程序定時(shí)計(jì)數(shù)器定時(shí)中斷程序框圖與程序4.2.24

29、.2.2 串行中斷程程序串行中斷程程序任務(wù):發(fā)送的字節(jié)數(shù)(JXJS)為 02 時(shí),繼續(xù)發(fā)送字模數(shù)據(jù),每次發(fā)送后發(fā)送字節(jié)數(shù)(JZJS)加 1。 發(fā)送的字節(jié)數(shù)(JZJS)為 3 時(shí),4 字節(jié)的字模數(shù)據(jù)已發(fā)送完,發(fā)送掃描碼(SMM),發(fā)送字節(jié)數(shù)再加 1。 發(fā)送的字節(jié)數(shù)(JZJS)為 4 時(shí),本幀數(shù)據(jù)全部發(fā)送完成,由 P3.2 產(chǎn)生一個(gè) RCLK 脈沖,使移位寄存器鎖存數(shù)據(jù),同時(shí)檢查一個(gè)字符的全部 8 行數(shù)據(jù)是16否都發(fā)送完成,若是則調(diào)整字模數(shù)據(jù)指針(DPTR)指向本字符字模數(shù)據(jù)的起點(diǎn)。NY串行中斷入口保護(hù)現(xiàn)場取發(fā)送字節(jié)數(shù)字節(jié)數(shù)4?字符號8?掃描行0調(diào)整字模指針返回SHUCHU: PUSH ACCCL

30、R TIMOV A,JZJSCJNE A,#4,SHUCHU1CLR RCLKMOV JZJS,#0INC SMJSMOV A,SMJSSETB RCLKCJNE A,#8,SCRMOV SMJS,#0MOV A,ZFMOV B,#32MUL ABMOV DPTR,#XUADD A,DPLMOV DPL,AMOV A,BADDC A,DPHMOV DPH,ASJMP SCRSHUCHU1:CJNE A,#3,SHUCHU2MOV A,SMMMOV SBUF,ARL AMOV SMM,ASJMP SHUCHU3SHUCHU2: CLR AMOVC A,A+DPTRMOV SBUF,AINC DP

31、TRSHUCHU3: INC JZJSSCR: POP ACCRETI 取掃描行數(shù)字節(jié)計(jì)數(shù)器0發(fā)送一個(gè)鎖存脈沖字符號=0恢復(fù)現(xiàn)場字節(jié)數(shù)3?取掃描碼輸出掃描碼掃描移位取字模數(shù)據(jù)發(fā)送字模數(shù)據(jù)字模指針+1YNYYN圖圖 4-4 串行中斷程序框圖與程序串行中斷程序框圖與程序17注意:串行中斷首先是在定時(shí)中斷中向串行口發(fā)送了第一字節(jié),串行口發(fā)送完成后產(chǎn)生的。串行中斷程序繼續(xù)向串行口發(fā)送數(shù)據(jù),每當(dāng)串行口發(fā)送完成后繼續(xù)產(chǎn)生中斷。當(dāng)字節(jié)計(jì)數(shù)器達(dá)到 4 后,本幀數(shù)據(jù)發(fā)送完畢,不再向串行口發(fā)送數(shù)據(jù),因此也就不會再有串行中斷產(chǎn)生,直到定時(shí)計(jì)數(shù)器中斷發(fā)起下一幀數(shù)據(jù)的傳送。定時(shí)中斷發(fā)送一字節(jié)字模數(shù)據(jù)串行中斷發(fā)送第二字節(jié)

32、字模數(shù)據(jù)串行中斷發(fā)送第三字節(jié)字模數(shù)據(jù)串行中斷發(fā)送第四字節(jié)字模數(shù)據(jù)中行中斷發(fā)送掃描碼串行中斷不再發(fā)送串行數(shù)據(jù)串行口發(fā)送 1 字節(jié)串行口發(fā)送 1 字節(jié)串行口發(fā)送 1 字節(jié)串行口發(fā)送 1 字節(jié)串行口發(fā)送 1 字節(jié)串行口發(fā)送 1 字節(jié) 圖圖 4-54-5 一幀數(shù)據(jù)的發(fā)送過程示意圖一幀數(shù)據(jù)的發(fā)送過程示意圖4.2.34.2.3 程序程序清單清單由于顯示工作都安排在中斷中完成,主程序的工作只是對定時(shí)計(jì)數(shù)器控制寄存器,串行口控制寄存器進(jìn)行設(shè)置,同時(shí)開放定時(shí)計(jì)數(shù)器 0 和串行中斷,啟動(dòng)定時(shí)計(jì)數(shù)器 0漢字顯示ORG 0000HLJMP MAINORG 000BH ; 定時(shí)計(jì)數(shù)器 0 中斷程序矢量地址SJMP CT

33、C ORG 0023H ;串行中斷程序矢量地址SJMP SHUCHU18主程序MAIN: MOV TMOD,#01H ;設(shè)置定時(shí)計(jì)數(shù)器 0 為工作模式 1MOV TH0,#CTH ;設(shè)置計(jì)數(shù)器初值MOV TL0,#CTLMOV SCON,#00H ;設(shè)置串行口工作模式MOV SMM,#01 ;掃描碼初值MOV SMJS,#0 ;掃描行計(jì)數(shù)初值MOV JZJS,#0 ;發(fā)送字節(jié)計(jì)數(shù)初值MOV DPTR,#XU ;字模表起點(diǎn)MOV ZF,#0 ;先顯示第 0 個(gè)字符SETB TR0 ;啟動(dòng)定時(shí)計(jì)數(shù)器 0SETB ET0 ;開定時(shí)計(jì)數(shù)器 0 中斷SETB ES ;開串行口中斷SETB EA ;開總中

34、斷定時(shí)計(jì)數(shù)器 0 中斷程序入口CTC: PUSH ACC ;保護(hù)現(xiàn)場PUSH BMOV TH0,#CTH ;重置計(jì)數(shù)器初值MOV TL0,#CTLCLR A ;取字模數(shù)據(jù)MOVC A,A+DPTRINC DPTR ;字模指針加 1MOV SBUF,A ;發(fā)送字模數(shù)據(jù)INC ZFJS ;字符顯示時(shí)間計(jì)數(shù)器加 1 MOV A,ZFJS ;判斷字符顯示時(shí)間是否達(dá)到預(yù)定值(YS)CJNE A,#YS,CTCR19 MOV ZFJS,#0 ;達(dá)到字符顯示時(shí)間,字符顯示時(shí)間計(jì)數(shù)器=0INC ZF ;字符編號加 1MOV A,ZF ;字符編號=7,說明 7 個(gè)字符已顯示完CJNE A,#12,CTCRMOV

35、 ZF,#0 ;從頭開始顯示CTCR: POP B ;恢復(fù)現(xiàn)場POP ACCRETI ;中斷返回串行口中斷服務(wù)程序SHUCHU: PUSH ACC ;保護(hù)現(xiàn)場CLR TI ;清 TI 標(biāo)志MOV A,JZJS ;取發(fā)送字節(jié)計(jì)數(shù)CJNE A,#4,SHUCHU1 ;本幀未發(fā)送完,轉(zhuǎn) SHUCHU1CLR RCLK ;本幀發(fā)送完,輸出一個(gè)鎖存脈沖下降沿MOV JZJS,#0 ;字節(jié)計(jì)數(shù)器清零INC SMJS ;掃描行加 1MOV A,SMJS ;檢查 8 行是否掃描完SETB RCLK ;輸出一個(gè)鎖存脈沖上升沿CJNE A,#8,SCR ;未掃描完返回MOV SMJS,#0 ;已掃描完,恢復(fù)掃描計(jì)

36、數(shù)MOV A,ZF ;根據(jù)字符計(jì)數(shù)器調(diào)整數(shù)據(jù)指針 ZFMOV B,#32 ;每個(gè)漢字字模為 32 字節(jié)MUL ABMOV DPTR,#XUADD A,DPL ;調(diào)整指針MOV DPL,AMOV A,B20ADDC A,DPHMOV DPH,ASJMP SCRSHUCHU1: CJNE A,#3,SHUCHU2 ;本幀字模未發(fā)送完,輸出掃描碼MOV A,SMM ;本幀字模已發(fā)送完,取出掃描碼MOV SBUF,A ;發(fā)送掃描碼RL A ;掃描碼移位MOV SMM,ASJMP SHUCHU3SHUCHU2: CLR A ;取字模數(shù)據(jù)MOVC A,A+DPTRMOV SBUF,A ;發(fā)送INC DPTR ;指針指向下一位數(shù)據(jù)SHUCHU3: INC JZJS ;字節(jié)計(jì)數(shù)器加 1SCR: POP ACC ;恢復(fù)現(xiàn)場RETI ;中斷返回變量,常量,字模數(shù)據(jù)設(shè)置SMJS DATA 22H ;掃描計(jì)數(shù)器JZJS DATA 23H ;輸出字節(jié)計(jì)數(shù)器SMM DATA 24H ;掃描碼ZFJS DATA 25H ;每個(gè)字符顯示時(shí)間計(jì)數(shù)器ZF DATA 26H ;當(dāng)前輸出字符編號RCLK BIT P3.2 ;移位寄存器鎖存端連接在 P3.2YS EQU 200 ;字符顯示時(shí)間計(jì)數(shù)CT EQU 65535-1000*3;12MHz ; 主頻時(shí)定時(shí)器初值計(jì)算公

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論