機電一體化-畢業(yè)論文
《機電一體化-畢業(yè)論文》由會員分享,可在線閱讀,更多相關《機電一體化-畢業(yè)論文(36頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1畢 業(yè) 設 計(說 明 書)題 目:基于 51 單片機的點陣式 LED 顯示控制 姓 名: 謝亞楠 學 號: 20122000166 平頂山工業(yè)職業(yè)技術學院2015 年 5 月 25 日2平頂山工業(yè)職業(yè)技術學院畢 業(yè) 設 計 任 務 書姓名 謝亞楠 專業(yè)班級 12 級中興訂單四班 任務下達日期 年 月 日設計開始日期 年 月 日設計完成日期 年 月 日設計題目: 基于 51 單片機的點陣式 LED 顯示控制 指 導 教 師 趙江濤 院(部) 主 任 郭 宗 躍 2015 年 月 日3平頂山工業(yè)職業(yè)技術學院畢業(yè)設計答辯委員會記錄電力工程 學院 中興訂單四班 專業(yè),學生 謝亞楠 于 年 月 日進行了畢業(yè)設計(論文)答辯。設計題目: 基于 51 單片機的點陣式 LED 顯示控制 指導老師: 趙江濤 答辯委員會根據(jù)學生提交的畢業(yè)設計材料,根據(jù)學生答辯情況,經(jīng)答辯委員會討論評定,給予學生 趙江濤 畢業(yè)設計成績?yōu)? 。答辯委員會 人,出席 人答辯委員會主任(簽字): 答辯委員會副主任(簽字): 答辯委員會委員: , , ,, , , 。4平頂山工業(yè)職業(yè)技術學院畢業(yè)設計評語第 頁共 頁學生姓名: 謝亞楠 專業(yè)班級 中興訂單四班 年級 12 級 畢業(yè)設計題目: 基于 51 單片機的點陣式 LED 顯示控制 評 閱 人: 指導教師: (簽字) 年 月 日成 績: 系 主 任: (簽字) 年 月 日畢業(yè)設計及答辯評語: 1目錄摘要····················································目錄····················································2第一章 緒論············································31.1 設計背景知識·····························1.2 研究趨勢及發(fā)展現(xiàn)狀··························第二章 8051 單片機的體系結(jié)構(gòu)2.1 單片機的基本內(nèi)部資源································2.2 儲存組織·································2.3 單片機系統(tǒng)外圍電路···································第三章 LED 電路3.1 LED 簡介·······························3.2 16×16 點陣 LED 原理及應用···································3.3 LED 點陣的顯示文字圖形的原理···························3.4 驅(qū)動方式·································3.5 點陣的移動·····················第四章 系統(tǒng)總體方案·····························2摘要本設計是基于 MCS-51 的 16×16 點陣 LED 電子顯示屏的設計。整機以美國 ATMEL公司生產(chǎn)的 40 腳單片機 AT89C51 為核心,介紹了以它為控制系統(tǒng)的 LED 點陣電子顯示屏的動態(tài)設計和開發(fā)過程。通過該芯片控制行驅(qū)動器 74LS154 和列驅(qū)動器 74HC595 來驅(qū)動顯示屏顯示。該電子顯示屏可以顯示各種文字或單色圖像,全屏能顯示多個漢字、圖像、阿拉伯數(shù)字等,顯示采用動態(tài)顯示,使得文字等能夠?qū)崿F(xiàn)靜止、移入移出等多種顯示方式。設計中詳細介紹了 LED 點陣顯示的硬件設計思路、硬件電路各個部分的功能及原理、相應軟件的程序設計,以及使用說明等。本文的設計是基于單片機系統(tǒng)的基本模塊的一部分。LED 點陣電子顯示屏是集微電子技術、計算機技術、信息處理技術于一體的大型顯示屏系統(tǒng)。本設計主要以 AT89C51 單片機為核心,采用串行傳輸、動態(tài)掃描技術,來制作的一款擁有多功能的模塊化 16×16LED 點陣的多功能顯示屏。關鍵詞:AT89C51;單片機;LED 點陣;顯示屏;驅(qū)動電路3、第 1 章 緒論1.1 課題設計背景知識 當今世界,電子技術迅猛發(fā)展,點陣式顯示器件作為信息顯示的重要媒體,由于LED 電子顯示屏具有所顯內(nèi)容信息量大,外形美觀大方,操作使用方便靈活在金融證券、體育、郵電電信、指揮調(diào)度、國防軍事等許多領域中得到了廣泛應用。因此點陣式顯示器件的研制、生產(chǎn)也得到了迅速的發(fā)展,并逐步形成產(chǎn)業(yè),成為光電子行業(yè)的新興產(chǎn)業(yè)領域。該設計廣泛涉及了計算機及電子技術中的電源技術,單片機技術,數(shù)據(jù)通信技術,顯示技術,存儲技術,系統(tǒng)軟件技術,接口及驅(qū)動等技術。我國經(jīng)濟發(fā)展迅猛,對信息傳播有越來越高的要求,可以相信,LED 電子顯示屏以其大的顯示信息量,壽命長,耗電量小,重量輕,空間尺寸小,穩(wěn)定性高,易于操作,安裝和維護等特點,將在社會經(jīng)濟發(fā)展中扮演越來越重要的角色。LED 顯示屏是八十年代后期在全球迅速發(fā)展起來的新型信息顯示媒體,顯示屏由幾萬……幾十萬個半導體發(fā)光二極管像素點均勻排列組成。利用不同的材料可以制造不同色彩的 LED 像素點。目前應用最廣的是紅色、綠色、黃色。而藍色和純綠色 LED 的開發(fā)已經(jīng)達到了實用階段。LED 顯示屏可以顯示變化的數(shù)字、文字、圖形圖像;不僅可4以用于室內(nèi)環(huán)境還可以用于室外環(huán)境,具有投影儀、電視墻、液晶顯示屏無法比擬的優(yōu)點。 在短短的十來年中,LED 點陣顯示屏就以亮度高、工作電壓低、功耗小、小型化、壽命長、耐沖擊和性能穩(wěn)定的優(yōu)點迅速成長為平板顯示的主流產(chǎn)品,在信息顯示領域得到了廣泛的應用。LED 的發(fā)展前景極為廣闊,目前正朝著更高亮度、更高耐氣候性、更高的發(fā)光密度、更高的發(fā)光均勻性、可靠性、全色化方向發(fā)展。LED 顯示屏的應用涉及社會經(jīng)濟的許多領域,主要包括:1.證券交易、金融信息顯示;2.機場航班動態(tài)信息顯示;3.港口、車站旅客引導信息顯示;4.體育場館信息顯示;5.道路交通信息顯示;6.調(diào)度指揮中心信息顯示;7.郵政、電信、商場購物中心等服務領域的業(yè)務宣傳及信息顯示;8.廣告媒體新產(chǎn)品等。1.2 研究趨勢及發(fā)展現(xiàn)狀1.我國 LED 產(chǎn)業(yè)發(fā)展現(xiàn)狀經(jīng)過多年的發(fā)展,我國 LED 產(chǎn)業(yè)鏈已經(jīng)日趨完善,企業(yè)遍布襯底、外延、芯片、封裝、應用各產(chǎn)業(yè)環(huán)節(jié)??v觀整體產(chǎn)業(yè)鏈條,由于上游產(chǎn)業(yè)對于技術和資金要求較高,導致國內(nèi)企業(yè)極少涉足,因此產(chǎn)業(yè)存在企業(yè)數(shù)量少,規(guī)模小的特點。相比之下,由于下游封裝和應用對企業(yè)提出的資金和技術要求相對較低,這恰恰與國內(nèi)企業(yè)資金少,技術弱的特點相匹配,因此,國內(nèi)從事這兩個環(huán)節(jié)的企業(yè)數(shù)量較多。這種企業(yè)結(jié)構(gòu)分布不均的局面導致中國 LED 產(chǎn)業(yè)多以低端產(chǎn)品為主,企業(yè)長期面臨嚴峻的價格壓力。隨著國家半導體照明工程的啟動,中國 LED 產(chǎn)業(yè)發(fā)展“一頭沉”的狀態(tài)正在發(fā)生改變,中國 LED 上游產(chǎn)業(yè)得到了較快的發(fā)展,其中芯片產(chǎn)業(yè)發(fā)展最為引人注目。但單從產(chǎn)業(yè)規(guī)模看,封裝仍是中國 LED 產(chǎn)業(yè)中最大的產(chǎn)業(yè)鏈環(huán)節(jié)。2006 年包括了襯底、外延、芯片、封裝四個環(huán)節(jié)的中國 LED 產(chǎn)業(yè)總產(chǎn)值達到 105.5 億元,其中封裝環(huán)節(jié)產(chǎn)值達到87.5 億元。不斷擴大的市場需求以及政府的大力支持是保證 LED 產(chǎn)業(yè)發(fā)展的有利因素。近幾年,諸如顯示屏、景觀照明、交通指示燈、汽車應用、背光源等 LED 應用市場迅速興起。新興應用市場對 LED 發(fā)光效率要求的不斷提升催生了對中高端產(chǎn)品的需求。隨著市場需求的增大,LED 芯片產(chǎn)業(yè)產(chǎn)品升級步伐逐漸加快,LED 芯片產(chǎn)品將整體走向高端。另一方面,LED 封裝產(chǎn)業(yè)的快速發(fā)展,也為 LED 芯片提供了廣闊的市場需求,進而為 LED 產(chǎn)業(yè)的發(fā)展提供了良好的外部環(huán)境。國家對 LED 產(chǎn)業(yè)的發(fā)展也給予了大力支持。2006 年,根據(jù)我國半導體照明產(chǎn)業(yè)的發(fā)展現(xiàn)狀,有關部門制定半導體照明產(chǎn)業(yè)發(fā)展計劃和 2006 年技術發(fā)展路線圖提出,對于 LED 芯片的投資將占 LED 產(chǎn)業(yè)投資的20%,研究重點將放在 GaN 芯片的生產(chǎn)以及功率芯片的研發(fā)上。同時,隨著 LED 芯片生5產(chǎn)企業(yè)的不斷增多,LED 芯片產(chǎn)值的增長速度一直高于封裝環(huán)節(jié),導致芯片產(chǎn)值在我國LED 產(chǎn)業(yè)產(chǎn)值中所占比重不斷提升,由 2002 年的 5.4%上升至 2006 年的 11.3%。由此可見,我國 LED 產(chǎn)業(yè)正在由低端走向高端,向附加值更高、更具核心價值的芯片環(huán)節(jié)邁進。我國 2005 年—2007 年 LED 器件、高亮度 LED 器件、LED 芯片、高亮度 LED 芯片的產(chǎn)量和年增長率。可以看出 LED 芯片產(chǎn)量從 2005 年的 180 億只上升為 2007 年的 360億只,保持著較高的年增長率,而高亮度 LED 芯片在 2005 年的產(chǎn)量為 60 億只,到2007 年味 210 億只,增長了 3.5 倍。2.LED 顯示屏的發(fā)展趨勢我國現(xiàn)階段的應用市場主要在建筑照明、室內(nèi)外顯示屏,因此,下一波的主力可能還是目前這些市場。但在手機、小尺寸液晶背光、汽車的滲透會加大,另外一些零散市場如特種照明的開拓也會更大(特種照明對成本的要求沒有通用照明那么苛刻)。經(jīng)過前幾年的替換,LED 交通指示燈已經(jīng)非常普遍,由于 LED 的使用壽命較長,短期內(nèi)很難在出現(xiàn)大規(guī)模的替換工作,這就使得交通指示燈對于 LED 的需求將出現(xiàn)一段低潮期;國內(nèi)轎車市場龐大,但要求較高,認證周期長,只要有過硬的產(chǎn)品質(zhì)量,國內(nèi)車用背光及車燈的 LED 市場需求非常大,而且這一市場的需求增長比較穩(wěn)定;而 LED 顯示屏以其易拼裝、低功耗、高亮度等優(yōu)點已經(jīng)廣泛應用到銀行、證券、廣場、車站、體育場館中,未來這一市場仍有很大增長潛力;在奧運會、世博會、一些城市夜景工程示范效應的帶動以及國家半導體照明工程等眾多有利因素的促進下,建筑照明市場依然前景廣闊。現(xiàn)代信息社會中,作為人機信息視覺傳播媒體的顯示產(chǎn)品和技術得到迅速發(fā)展,進入二十一世紀的顯示技術將是平板顯示的時代,LED 顯示屏作為平板顯示的主導產(chǎn)品之一無疑會有更大的發(fā)展,并有可能成為二十一世紀平板顯示的代表性主流產(chǎn)品。高亮度、全彩化藍色及純綠色 LED 產(chǎn)品自出現(xiàn)以來,成本逐年快速降低,已具備成熟的商業(yè)化條件?;A材料的產(chǎn)業(yè)化。使 LED 全彩色顯示產(chǎn)品成本下降,應用加快。LED 產(chǎn)品性能的提高,使全彩色顯示屏的亮度、色彩、白平衡均達到比較理想的效果,完全可以滿足戶外全天候的環(huán)境條件要求,同時,由于全彩色顯示屏價格性能比的優(yōu)勢,預計在未來幾年的發(fā)展中,全彩色 LED 顯示屏在戶外廣告媒體中會越來越多地代替?zhèn)鹘y(tǒng)的燈箱、霓紅燈、磁翻板等產(chǎn)品,體育場館的顯示方面全彩色 LED 屏更會成為主流產(chǎn)品。全彩色 LED 顯示屏的廣泛應用會是 LED 顯示屏產(chǎn)業(yè)發(fā)展的一個新的增長點。 未來 LED 顯示屏會向著標準化、規(guī)范化,產(chǎn)品結(jié)構(gòu)多樣化的方向發(fā)展。3.課題設計意義 本設計利用單片機對整個系統(tǒng)進行總體控制,進行顯示所要顯示的漢字和字符。其中顯示字模數(shù)據(jù)有單片機輸入顯存,點陣的點亮過程有程序控制,由驅(qū)動電路完成。6點陣采用單色顯示,該顯示器電路的特點是:點陣的動態(tài)顯示過程占用時間比較短,亮度均勻。該設計課題使我們能夠掌握 LED 顯示屏的基本顯示原理和設計方法,對 LED 顯示屏這個行業(yè)有了較為深刻的了解和認識。并且對大學期間所學習的一些理論進行了實踐,使我們對所學過的理論知識有了新的認識。并且通過該設計課題掌握了 51 單片機的的軟硬件開發(fā)工具的使用方法,為以后從事相關行業(yè)的工作積累了實際工作經(jīng)驗。目前我國的信息行業(yè)發(fā)展迅速,作為主要平面顯示媒介的 LED 顯示屏的作用也越練越廣泛,相關的從業(yè)人員也會越來越緊缺。但同時應該清楚的認識到我國的 LED 技術雖然發(fā)展迅速但和世界先進水平還有一定的差距。因此此課題不論是對自己的就業(yè)還是對我國 LED 顯示技術的發(fā)展都有非?,F(xiàn)實與積極的意義。第二章 單片機的系統(tǒng)結(jié)構(gòu)7MCS-51 單片機內(nèi)部包含運算器、控制器、片內(nèi)存儲器、并行 I/O 接口、串行 I/O接口、定時/計數(shù)器、中斷系統(tǒng)、振蕩器等功能等。系統(tǒng)內(nèi)部結(jié)構(gòu)由 8 位中央處理器,時鐘模塊,I/O 端口,內(nèi)部程序循序存儲器,內(nèi)部數(shù)據(jù)存儲器,2 個 16 位定時計數(shù)器,中斷系統(tǒng)和一個串行通信模塊組成, 如圖 2.1 所示51 系列單片機內(nèi)部模塊的功能說明如下:(1) 中央處理器:單片機的核心部件,執(zhí)行預先設置好的程序代碼,負責數(shù)據(jù)的計算和邏輯的控制。(2) 程序存儲器:存放程序代碼。(3) 數(shù)據(jù)存儲器:存放程序執(zhí)行過程中的數(shù)據(jù)。(4) 中斷系統(tǒng):根據(jù)設置接受單片機的各中斷事件,提交到處理器。(5) 時鐘模塊:提供整個單片機所需要的各個時鐘信號。(6) 可編程串行口:根據(jù)設置進行串行數(shù)據(jù)通信。(7) 16 位定時計數(shù)器:根據(jù)設置進行定時或計數(shù)工作。(8) I/O 端口:與外部接口部件通信,進行數(shù)據(jù)交流。82.1 單片機基本內(nèi)部資源2.1.1 單片機的內(nèi)部資源基于 51 單片機的內(nèi)部資源如下:(1)32 個 I/O 端口,4 組 8 位,可以位尋址。(2)23 個 16 位定時計數(shù)器。(3)兩個外部中斷。(4)5 個中斷源,2 個中斷優(yōu)先級。(5)一個全雙工的異步串行口。(6)128Bytl 以上的 RAM。(7)獨立的,可擴展至 64KB 的 ROM。2.1.2 并行 I/O 口引腳并行 I/O 口引腳如下:(1) P0 口—8 位雙向三態(tài) I/O 口;使用外存時,分時復用地址線(低 8 位)數(shù)據(jù)總線;P0 作為通用輸出口時 2,必須外接上拉電阻;用作輸入口時,必須先把鎖存器寫入 1。9(2) P1 口—8 位準雙向 I/O 口,只用作通用的 I/O 口使用;作為輸出口時,由于內(nèi)部有上拉電阻,所以不需要外接上拉電阻;用作輸入口時,必須首先向鎖存器寫入 1。(3) P2 口—8 位準雙向 I/O 口;訪問外存時只輸出地址高 8 位;(4) P3 口—8 位準雙向 I/O 口;每個腳還是具有第二功能,當 P3 處于第二功能時,單片機內(nèi)部硬件自動將端口鎖存器的 Q 端置 1.如表 2.1 所示。表 2.1 單片機引腳控制功能表引腳 轉(zhuǎn)義引腳 功能說名P3.0 RXD 串行數(shù)據(jù)接收端P3.1 TXD 竄行數(shù)據(jù)發(fā)送端P3.2 INT0 外部中斷 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ù)存儲器讀P3 口相應的端口線處于第二功能,應滿足以下條件:① 串行 I/O 口處于運行狀態(tài)(RXD,TXD)②外部中斷已經(jīng)打開(INT0,INT1)③定時/計數(shù)器處于外部計數(shù)狀態(tài)(T0,T1)④執(zhí)行讀/寫外部 RAM 的指令(RD,WR)2.1.3 控制引腳控制引腳如下:(1) RST/VPD:復位信號輸入端/備用電源輸入端(當 VCC電源降低到低電平時,RST/VPD端的備用電源自動施加到系統(tǒng),保證片內(nèi) RAM 中的信息不丟失) 。晶振工作后 2 個機器周期的高電平復位 CPU。(2) ALE:地址鎖存信號,用于訪問外存時鎖存器低 8 位地址。ALE 為晶振 6 分頻。(3) PSEN:外部程序存儲器,從程序存儲器中取指令或讀取數(shù)據(jù)時,該信號有效。(4) EA:允許訪問片內(nèi)外程序的存儲器控制端。當 EA=1 從內(nèi)部開始執(zhí)行程序;當EA=0 只訪問外程序存儲器2.1.4 電源及時鐘引腳電源及時鐘引腳如下:10(1) X1:按外部晶體此引腳接地,又是內(nèi)部振蕩器的輸入端。(2) X2:接外部晶體的另一端,又是內(nèi)部振蕩器的輸出端。(3) VCC,VSS:電源和地,+5 電源供電,使用 TTL 電平 【6】 。2.2 儲存組織2.2.1 算數(shù)邏輯單元 ALU算數(shù)邏輯單元是 8 位,由加法器和其它邏輯電路(如移位電路、控制門)組成,主要功能是完成算數(shù)/邏輯運算,位處理。2.2.2 寄存器(1)通用寄存器(8 位):4 組,8 個寄存器 R0-R7,R0 和 R1 可用于間接尋址。(2)特殊功能寄存器(SFR):共有 21 個。①累加器 A(Acc):8051 是累加器結(jié)構(gòu),所有的運算都是以累加器為一個源操作數(shù)和目的操作數(shù)。常用于存放與算術或邏輯運算的兩個操作數(shù)中的一個操作數(shù)及運算結(jié)果,或用于存放目的操作數(shù)。②累加器 B:乘、除指令中的一個操作數(shù),在乘法運算中被乘數(shù)放在累加器 A 中,乘數(shù)放在累加器 B 中,而積的稿 8 位放在寄存器 B 中,低 8 位放在累加器 A 中??梢宰鳛橐话阕兞渴褂? ③程序狀態(tài)字寄存器 PSW:也稱為標志位寄存器,8 位寄存器,保存指令執(zhí)行狀態(tài),其狀態(tài)表如表 2.2 所示。表 2.2 8 位寄存器執(zhí)行狀態(tài)表D7 D6 D5 D4 D3 D2 D1 D0Cy AC F0 RS1 RS0 OV - PCy:進(借)位標志,保存算數(shù)運算的進或接位,位操作的累加器。 “1”:當加法或減法運算時,最高位有進位或借位;“0”:當加法或減法運算時,最高位無進位或借位。Cy=1,溢出;Cy=0 未溢出AC:輔助進位標志, “1”:當加法或減法運算時,低 4 位向高 4 位有進位或借位;“0”: 當加法或減法運算時,低 4 位向高 4 位無進位或借位。常用于 BCD 碼的調(diào)整。F0:用戶標志,可以使用的位變量,可以隨 PSW 被保存。RS1,RS0:寄存器組選擇如表 2.3 所示。表 2.3 寄存器表組選擇表M1 M0 方式 地址0 0 組 0 (00H~07H)110 1 組 1 (08H~0FH)1 0 組 2 (10H~17H)1 1 組 3 (18H~1FH)OV:溢出標志位,有符號數(shù)運算結(jié)果超出允許范圍 OV=1,否則 OV=0;計算機在數(shù)據(jù)處理過程中,OV 置位和清零的依據(jù)是:加法運算時,若最高位產(chǎn)生進位,而次高位沒有向最高位產(chǎn)生進位;或最高位沒有產(chǎn)生進位,而次高位向最高位產(chǎn)生進位時,OV=1 否則 OV=0.減法運算時, ,若最高位產(chǎn)生借位,而次高位沒有向最高位產(chǎn)生借位;或最高位沒有產(chǎn)生借位,而次高位向最高位產(chǎn)生借位時,OV=1 否則 OV=0.P:奇偶標志位,每個機器周期根據(jù)累加器 A 中的內(nèi)容的奇偶性由硬件置 1 復位,A 中 1 的個數(shù)為奇 P=1;否則 P=0④堆棧及堆棧指針 SP:堆棧(存儲區(qū))按先進后出的原則讀寫數(shù)據(jù),堆??臻g用內(nèi)部 RAM(256) ,用于保護現(xiàn)場和恢復現(xiàn)場。堆棧指針 SP 為 8 位寄存器,指示棧頂位置。進棧,SP+1,再壓棧;出棧,先出棧再 SP-1,MCS-51 系統(tǒng)復位后,SP 初始化為07H。⑤數(shù)據(jù)指針寄存器 DPTR:16 位專用寄存器,由 DPH(數(shù)據(jù)指針高 8 位)和DPL(數(shù)據(jù)指針低 8 位)組成,用于存儲外部數(shù)據(jù)存儲器的存儲單元地址。DPTR 寄存器間接尋址方式可訪問 0000H~FFFFH 的全部 64KB 的外部數(shù)據(jù)存儲器的空間。⑥程序計數(shù)器 PC(16 位):不屬于 SFR,但有聯(lián)系,用于存放下一條的指令地址。2.3 單片機系統(tǒng)外圍電路單片機外圍電路一般有兩塊;時鐘電路(如圖 2.3 所示)和復位電路(如圖 2.4所示) 。時鐘電路由一個晶振和兩個小電容組成,用來產(chǎn)生時鐘頻率。復位電路由一個電阻、按鍵和一個電容組成,用來產(chǎn)生復位信號使單片機上電的時候復位。12AT89C51 單片機芯片內(nèi)部都有有一個反相放大器構(gòu)成的振蕩器,XTAL1 和 XTAL2 分別為振蕩器電路的輸入端和輸出端。時鐘可由內(nèi)部和外部生成,在 XTAL1 和 XTAL2 的引腳上外接定時元件,內(nèi)部振蕩器就會產(chǎn)生自激振蕩。外接元件有晶體振蕩器和電容,他們組成并聯(lián)諧振電路。晶振的振蕩頻率選擇 12MHz,C1 、C2 的電容取值 22PF,具有快速起振、穩(wěn)定晶振頻率和微調(diào)頻率的作用。若外接晶振頻率為 fosc=12MHz,則 4 個基本周期的具體數(shù)值為:(1) 震蕩周期=1/12uf;(2) 時鐘周期=1/6uf;(3) 機器周期=1uf;(4) 指令周期=1,2,和 4uf。單片機有多種復位電路,單片機復位電路的基本功能是:系統(tǒng)上電時提供復位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復位信號,以防電源開關或電源插頭分和過程中引起的抖動而影響復位。本系統(tǒng)采用電平式開關復位和上電復位方式,當上電時,C1 相當于與短路,使單片機復位,在正常工作時,按下復位時單片機復位,在有時 2 碰到干擾時會造成錯誤復位。但是大多數(shù)條件下,不會出現(xiàn)單片機錯誤復位,而可能會引起內(nèi)部某些寄存器錯誤復位,在服務端加一個去耦電容,則會得到很好地效果13第 3 章 LED 電路3.1 LED 簡介組合型 LED 點陣顯示器以以發(fā)光二極體為圖素,它用高亮度 LED 晶粒進行陣列組合后,再透過環(huán)氧樹脂和塑模封裝而成。具有高亮度、功耗低、引腳少、視角大、壽命長、耐濕、耐冷熱、耐腐蝕等特點,點陣顯示器有單色和雙色兩類,可顯示紅、黃、綠、橙等。LED 點陣有4*4,4*8,5*7,5*8,8*8,16*16,24*24,40*40……多種。根據(jù)圖素的數(shù)目分為:單色、雙原色、三原色等;根據(jù)圖素的顏色不同所顯示的文字、圖像等內(nèi)容的顏色也不同,單元色點陣只能顯示固定色彩如:紅、綠、黃等單色、雙原色和三原色點陣顯示內(nèi)容的顏色有圖素不同顏色發(fā)光二極體變量組合方式?jīng)Q定,如紅綠都亮時可顯示黃色,如果按照脈沖方式控制二極體的點亮時間,可顯示 256 或更高級灰度顯示,即可是實現(xiàn)真色彩顯示。幾種 LED 點陣顯示器的內(nèi)部電路結(jié)構(gòu)和外形規(guī)格,其它型號點陣的結(jié)構(gòu)與引腳可實驗獲得,LED 點陣顯示器單塊使用時,即可代替數(shù)碼顯示數(shù)位,也可顯示各種中西文字符號。如 5*7 點陣顯示器用于顯示西文字母,5*8 點陣顯示器用于顯示中西文。8*8點陣顯示器用于顯示中文文字,也可用于圖形顯示。用多塊點陣顯示器組合則可構(gòu)成大熒幕顯示器,但這類使用裝置常通過微機或單片機控制驅(qū)動。由 LED 點陣顯示器的內(nèi)部結(jié)構(gòu)可知,器件易采用動態(tài)掃描驅(qū)動方式工作,由于 LED管芯大多為高亮度型,因此某行或某列的單體 LED 驅(qū)動電流可選用窄脈沖,但其平均電流應限制在 20mA 內(nèi),多數(shù)點陣顯示器的單體 LED 的正向壓降約在 2V 左右,但大亮點∮10 的點陣顯示器單體 LED 的正向壓降約為 6V。大熒幕顯示系統(tǒng)一般是將由多個 LED 點陣組成的小模組以搭積木的方式組合而成的,每一個小模組都有自己的獨立的控制系統(tǒng),組合在一起后只要引入一個總控制器控制各模組的命令和資料即可,這種方法既簡單而且具有易展、易維修的特點。LED 點陣顯示系統(tǒng)中各模組的顯示方式有靜態(tài)和動態(tài)顯示兩種。靜態(tài)顯示原理簡單、控制方便,但硬件接線復雜,在實際應用中一般采用動態(tài)顯示方式,動態(tài)顯示采用掃14描的方式工作,由峰值較大的窄脈沖驅(qū)動,從上到下逐次不斷地對顯示幕的各行進行選通,同時又向各列送出表示圖形或文字資訊的脈沖信號,反復以上操作就可顯示各種圖形或文字通訊。3.2 16×16 點陣 LED 原理及應用16*16 點陣 LED 實物如圖 3.1 所示。設計時必須掌握點陣工作原理方能進行更深層設計。16*16LED 點陣其實就是 4 塊 8*8 點陣 LED 級聯(lián)而成的,因此特給出 8*8 的點陣LED 的工作原理圖。如圖 3.2 為 8*8 點陣 LED 外觀及引腳圖15其等效電路如圖 3.3 所示,只要其對應的 X、Y 軸順向偏壓,即可使 LED 發(fā)亮。例如:如果想使左上角 LED 點亮,則 Y0=1,X 0=0 即可。應用時限流電阻可以放在 X 軸或Y 軸。而 16*16 就是在 8*8 院里的基礎上將四塊 8*8 級聯(lián)而成,如圖 3.4 所示。163.3 LED 點陣的顯示文字圖形原理漢子顯示屏用于顯示漢子、字符及圖像信息,在公共汽車、銀行、醫(yī)院及戶外廣告等都有廣泛的應用。下面是簡單的漢字顯示屏的操作,由單片機控制漢字的顯示內(nèi)容。為了降低成本,使用了四塊 8*8 的 LED 點陣發(fā)光管的模塊,組成了一個 16*16 的LED 點陣顯示屏,如圖 3.5 所示。在實際的使用中可以根據(jù)這個原理自行的擴展顯示的漢字,下面是介紹漢字顯示的原理:LED 驅(qū)動顯示采用動態(tài)掃描方法,動態(tài)掃描方式是逐行輪流點亮,這樣掃描驅(qū)動電路就可以實現(xiàn)多行的同名列共用一套驅(qū)動電路。以 16*16 點陣為例,把所有同一行的發(fā)光管的陰極連在一起把所有同一行的發(fā)光管的陽極連長在一起(共陰極的接法) 。先送出對應的第一列發(fā)光管亮燈的數(shù)據(jù)并鎖存,然后選通第一列使其燃亮一定的時間,然后熄滅;再送出第二列的數(shù)據(jù)并鎖存,然后選通第二列使其燃亮相同的時間,然后熄滅;······第 16 列之后,又重新燃亮第一列,反復輪回。當這樣輪回的速度足夠快(每秒 24 次以上) ,由于人眼的視覺暫留現(xiàn)象,就能看到顯示屏上穩(wěn)定的圖形。該方法能驅(qū)動較多的 LED,控制方式較靈活,而且節(jié)省單片機的資源。顯示數(shù)據(jù)可通過單片機的 P0,P2 口接驅(qū)動電路傳輸?shù)近c陣行引腳。LED 點陣顯示模塊進行的方法有兩種:(1)水平方向(X 方向)掃描,即逐列掃描的方式(簡稱列掃描方式):此時用一個 P 口輸出列碼決定哪一列能亮(相當于位碼) ,用另一個 P 口輸出行碼(列數(shù)據(jù)) ,決定該列上哪個 LED 亮(相當于段碼) 。能亮的列從左到右掃描完 16 列(相當于位碼循環(huán)移動 16 次)即顯示出一個完整的圖像。(2)豎直方向(Y 方向)掃描,即逐行掃描方式(簡稱行掃描方式):此時用一個P 口輸出決定哪一個能亮(相當于位碼) ,另一個 P 口輸出列碼(行數(shù)據(jù),行數(shù)據(jù)為將17列數(shù)據(jù)的點陣旋轉(zhuǎn) 90 度的數(shù)據(jù))決定該行上哪些 LED 燈亮(相當于段碼) 。能亮的行從上向下掃描完 16 行(相當于位碼循環(huán)移位 16 次)即顯示一幀的完整圖形。本設計應用的是第二種的掃描方法,即豎直方向(Y 方向)掃描。每一個字由 16 行 16 列的點陣形成顯示,即每個字均有 256 個點陣來表示,我們可以把每一個點理解為一個像素。一般我們使用的是 16*16 點陣宋體字庫,即所謂的16*16,是每一個漢字在縱橫各 16 點的區(qū)域內(nèi)顯示的。漢字庫從該位置起的 32 字節(jié)信息記錄了該字的字模信息。事實上這個漢字屏不僅可以顯示漢字,也可以顯示在 256像素內(nèi)的任何圖形。我們以“習”為例來說明其掃描原理,每一個字由 16 行 16 列的點陣組成顯示,如下圖,如果用 8 位的 AT89C51 的單片機來控制,由于單片機的總線為 8 位,一個字需要拆分成兩個部分。一般我們把它分解成左部分和右部分,左部分由 16*8(列*行)的點陣組成,右部分也由 16*8(列*行)的點陣組成。在本例中單片機首先顯示的是左上角的第一行的部分,因為列接陰極,0 是亮,1 是滅, “習”字的上面兩行二進碼是11111111,11111111,11000000,00111111,轉(zhuǎn)換成對應的 16 進制代碼是0xFF,0xFF,0xC0,0x03,依次類推,就這樣一行一行的掃描。如圖 3-5 所示:由這個原理可以看到,無論顯示何種字體或圖像,都可以用這種方法來分析出它的掃描代碼從而顯示在屏幕上。了解漢字的顯示原理之后,下面本論文介紹如何得到漢字的字模信息?,F(xiàn)在有一些現(xiàn)成的漢字字模生成軟件,可從網(wǎng)上下載漢字字庫提取程序直接提取字庫,如圖 3.6 所示的為一種字模生成軟件,軟件打開后輸入漢字,點擊“檢取”后,16 進制數(shù)據(jù)漢字代碼即可以自動生成,把我們所需要的豎排數(shù)據(jù)復制到我們的程序即可。183.4 驅(qū)動方式LED 點陣的驅(qū)動方式可分為 靜態(tài)驅(qū)動和動態(tài)驅(qū)動兩種。靜態(tài)驅(qū)動方式:在靜態(tài)驅(qū)動的有機發(fā)光顯示器件上,一般各有機電致發(fā)光像素的陰極是連在一起引出的,各像素發(fā)光只要讓恒流源的電壓與陰極的電壓之差大于像素發(fā)光值的前提下,像素將在恒流源的驅(qū)動下發(fā)光,若要一個像素不發(fā)光就將它的陽極接在一個負電壓上,就將它反向截止。但是在圖像變化比較多時可能出現(xiàn)交叉效應,為了避免我們必須采取交流的形式。靜態(tài)驅(qū)動電路一般用于段式顯示屏的驅(qū)動上。動態(tài)驅(qū)動方式:在動態(tài)驅(qū)動的有機發(fā)光顯示器件上,人們把像素的兩個電極做成了矩陣型結(jié)構(gòu),即水平一組顯示像素的同一性質(zhì)的電極是共用的,縱向一組顯示像素的相同性質(zhì)的另一電極是共用的。如果像素可分為 N 行和 M 列,就可有 N 個行電極和M 個列電極。行和列分別對應發(fā)光像素的兩個電極,即陰極和陽極。在實際電路驅(qū)動過程中,要逐行點亮或者要逐列點亮像素,通常采用逐行掃描的方式,行掃描,列電極為數(shù)據(jù)電極。實現(xiàn)方式是:循環(huán)的給每行電極施加脈沖,同時所有列電極給出該行像素的驅(qū)動電流脈沖,從而實現(xiàn)一行所有像素的顯示。該行不在同一行或同一列的像素就加上反向電壓使其不顯示,以避免“交叉效應” ,這種掃描是逐行進行的,掃描所有行所需要時間叫做幀周期。19本設計驅(qū)動電路由行驅(qū)動和列驅(qū)動構(gòu)成。為了充分利用單片機的接口,行驅(qū)動電路中加入了一個 4-16 線譯碼器 74LS154,然后 A,B,C,D 四角為輸入端,形成 16 種不同的輸入狀態(tài),行驅(qū)動電路(如圖 3.7 所示) 。列驅(qū)動由集成電路 74HC595 構(gòu)成,它具有一個 8 位串入并出的移位寄存器和一個 8 位輸出鎖存器的結(jié)構(gòu),可以實現(xiàn)在顯示本行列數(shù)據(jù)的同時,傳送下一行的列數(shù)據(jù),即達到重疊處理的目的,列驅(qū)動電路如圖 3-8 所示。203.5 點陣的移動下面以 16*16 點陣為例介紹點陣的移動。要顯示一個字符,該字符的點陣數(shù)據(jù)可以列向(縱向)16 點組字。無論哪一種組字方法,都可以顯示字符的水平方向的移動,又可以顯示豎直方向的移動。本設計主要顯示方式是所有字符一一靜態(tài)卷簾顯示,上下滾動,左右滾動。1. 向上滾動原理(1) 列掃描方式向上移動列向組字顯示字符豎直方向的移動。若是列向數(shù)字,希望顯示向上移動的一個字符,第一次掃描從行碼的點陣數(shù)組中取第 1-16 個數(shù)據(jù),送行碼輸出口,對應這 16 個數(shù)據(jù),同時用列碼輸出口輸出列碼,分別控制掃描第 1-16 列。由于是列向組字(上下高低) ,掃描完成這 16 個數(shù)據(jù)后,第 2 次掃描的 16 個數(shù)據(jù),應將原來的第一個掃描的16 個行碼每一個都循環(huán)右移一位,使顯示的點都上移一行(如果顯示下滾動則應循環(huán)左移) ,在進行掃描。如此,沒進行下一次的掃描,把上一次的 16 個行碼都循環(huán)右移一位,在進行掃描就實現(xiàn)了數(shù)據(jù)向上移動。也可以用字形的方法容易理解,下面的 16*16 的 LED 顯示一個字是 8 個字型,首先掃描的而是第一個字型,同樣是 16 行,16 列掃描,16 次顯示:完成一個字型后,在掃描第二個字型,完成第二個字型后,再掃描第三個字型…………以此類推,即可產(chǎn)生改文字向上的感覺。當把第一個字型編碼中,每行顯示的數(shù)據(jù)都右移一位,以產(chǎn)生第二個字型編碼,即可產(chǎn)生字符向上滾動的感覺。當?shù)谝粋€字符掃描完成后,就進行這樣的調(diào)整動作,以產(chǎn)生第二個字型編碼。同樣的,當?shù)诙€字型完成后,就進行這樣的=調(diào)整動作,以產(chǎn)生第三個字型的編碼。調(diào)整的動作是先將 8 個編碼根據(jù)序號填入存儲器。(2)行掃描方式上下移動方法 1:延長數(shù)組法。如果是行向數(shù)字,希望顯示向上移動一個字符,第 1 次掃描從列碼的點陣數(shù)組中取第 1-16 個數(shù)據(jù),送列碼輸出口,對應于這 8 個數(shù)據(jù),同時用行碼輸出口輸出行碼,分別控制掃描第 1-16 行。第 2 次掃描從點陣數(shù)組中取第 2-17 個數(shù)據(jù)(第 17 個數(shù)據(jù)與第 1 個相同) ,分別送列碼輸出口,對應于這 16 個數(shù)據(jù),同時用行碼輸出口輸出行碼,仍分別控制第 1-16 行。第三次掃描從點陣數(shù)組中取第 3-18 個數(shù)據(jù)(第 18 個和第 2 個相同)掃描……以此類推,如此就可以實現(xiàn)了字符的向上移動。方法 2:數(shù)組數(shù)據(jù)“循環(huán)左移法” 。實現(xiàn)數(shù)組數(shù)據(jù)循環(huán)左移法的方法與上面類似。21也有用數(shù)組數(shù)據(jù)循環(huán)左移子程序:不用子程序,而是用變量判斷控制實現(xiàn)數(shù)組數(shù)據(jù)的循環(huán)左移。2. 向左移動原理(1) 列掃描方式左移動方法 1:延長數(shù)組法。將原來字符點陣數(shù)組的 16 個數(shù)據(jù)重復一遍延長,點陣屬豬的數(shù)據(jù)個數(shù)為 32 個。每掃描一幀取 8 個數(shù)據(jù)顯示,下一幀取數(shù)要在數(shù)組中后移一個數(shù)取數(shù)。循環(huán)一遍掃 16 幀??梢约傧笥袃蓧K 16*16 的點陣模塊(共 32 幀)水平平行排列,用一個恰好能罩住 16 列點陣的中控方框去罩這個點陣,第 1 罩(第 1 幀)往最左邊數(shù)起第 1 列開始的 16 列,就掃描顯示這 16 列;第 2 罩(第 2 幀)使方框右移一列,罩住從左邊數(shù)起第 2 列開始的 16 列,就掃描顯示這 16 列……以此類推,這樣每掃描完一幀使方框右移一列;最后第 16 罩(第 16 幀)時,罩住左邊數(shù)起的第 16 列開始的16 列,就掃描顯示這 16 列。如此完成 16 幀畫面的掃描顯示,也就完成了整個一次移動循環(huán)掃描,之后反復循環(huán),即刻呈現(xiàn)顯示字符沿水平向左移動的圖像,如圖 3.9 所示:因 為是列向數(shù)字 (列掃描方式,點陣數(shù)據(jù)為行碼,上面為低位,上面為高位) ,希望顯示移動的一個字符,第 1次掃描從行碼的點陣數(shù)組中取第 1-16 個數(shù)據(jù),送行碼輸出口,對應于這 8 個數(shù)據(jù),同時用列碼輸出口輸出列碼,分別控制第 1-16 列。掃描完前 16 個數(shù)據(jù)之后,第 2 次掃描從點陣數(shù)組中取第 3-18 個數(shù)據(jù)(第 18 個數(shù)據(jù)與第 1 個數(shù)據(jù)相同) ,送行碼輸出口,對應于這 16 個數(shù)據(jù),同時用列碼輸出口輸出列碼,扔分別控制掃第 1-16 列。第 3 次掃描從點陣數(shù)組中取第 5-20 個數(shù)據(jù)(第 20 個數(shù)據(jù)和第 2 個數(shù)據(jù)相同)掃描……如此實現(xiàn)字符向左移動。以上完成一個圖形移動的方法,也可以看成是移動 16 個不同的字形。 (如圖 2.1322所示) ,首先掃描第 1 個字型,同樣是 16 行,16 次掃描,16 次顯示;完成一個字型的掃描之后,再掃描第 2 個字型;完成第 2 個字型掃描之后,再掃描第 3 個字型……以此類推,即可產(chǎn)生改文字的左移感覺。也就是把第 1 個字型的編碼中,第 1 列顯示數(shù)據(jù),變成第 2 列顯示數(shù)據(jù);第 2 列顯示數(shù)據(jù)變成第 3 列顯示數(shù)據(jù),第 3 列顯示數(shù)據(jù)變成第 4 列顯示數(shù)據(jù)……以此類推。當?shù)?1 個字型掃描完成結(jié)束后,就進行這樣的動作調(diào)整,以產(chǎn)生第 2 個字型的編碼。同樣的,當?shù)?2 個字型掃描完成之后,就進行這樣的調(diào)整動作,以產(chǎn)生第 3 個字型的調(diào)整編碼。調(diào)整這個動作時,先將 16 個編碼根據(jù)序填入儲存器,例如第 1 行編碼存入 20H,第 2 行編碼存入 21H……要進行左移調(diào)整時,則先將 20H 地址的數(shù)據(jù)轉(zhuǎn)移到36H 地址,再將 21H 的數(shù)據(jù)地址轉(zhuǎn)移到 20H 地址,再將 22H 數(shù)據(jù)的地址轉(zhuǎn)移到 21H 地址,再將 23H 的地址轉(zhuǎn)移到 22H 的地址,將 24H 地址的數(shù)據(jù)轉(zhuǎn)移到 23H 的地址,到 36H 地址,再將 21H 地址的數(shù)據(jù)轉(zhuǎn)移到 20H 地址,將 22H 的地址的數(shù)據(jù)轉(zhuǎn)移到 21H 的地址,將 23H的地址數(shù)據(jù)轉(zhuǎn)移到 22H 地址,將 24H 的地址數(shù)據(jù)轉(zhuǎn)移到 23H 的地址,再將 25H 的地址數(shù)據(jù)轉(zhuǎn)移到 24H 的地址,將 26H 的地址數(shù)據(jù)轉(zhuǎn)移到 25H 的地址,將 27H 的地址數(shù)據(jù)轉(zhuǎn)移到 26H 地址……方法 2:數(shù)組數(shù)據(jù)“循環(huán)左移法” 。注意,不是把二進制數(shù)據(jù)按位循環(huán)左移,而是把數(shù)組中的數(shù)據(jù)按其在數(shù)組中的位置循環(huán)左移,具體方法如下:原先字符點陣數(shù)組中的 16 個數(shù)據(jù)不延長,但下一幀的 16 個數(shù)據(jù),是把上一幀的16 個數(shù)據(jù)的位置(先后順序) “循環(huán)左移”一次,即原來的第 2 個移到第 1 個,原來第3 個移到第 2 個,原來的第 4 個移到第 3 個……原來的第 1 個移到第 16 個。實現(xiàn)數(shù)組數(shù)據(jù)循環(huán)左移的方法有:第一遍“數(shù)組數(shù)據(jù)循環(huán)左移子程序” ,該子程序每執(zhí)行一次,可把數(shù)組中的數(shù)據(jù)循環(huán)左移一次,主程序中先調(diào)用一次該子程序,這時數(shù)組中的詩句循環(huán)左移一次,然后再從數(shù)組中取數(shù)據(jù)顯示。當數(shù)組中的數(shù)據(jù)個數(shù)較多時,片內(nèi)的 RAM將不夠大,必須將數(shù)組定義在片外 RAM:第二遍,不用子程序,而是用變量判斷控制,實現(xiàn)數(shù)組數(shù)據(jù)的循環(huán)左移。(2) 行掃描方式左移行向組字顯示字符水平方向的左移。如果是行向數(shù)字(行掃描方式,點陣數(shù)據(jù)為列碼,左邊為低位,右邊為高位) ,希望顯示向左移動一個字符,第一次掃描從列碼的點陣數(shù)組中取第 1-16 行。掃描完成這 16 個數(shù)據(jù)之后,第 2 次掃描的第 16 個數(shù)據(jù),應將原來的第 1 次掃描的 16 列碼每一個都循環(huán)右移一位(如果使顯示右移則應循環(huán)左移),再進行掃描。如此,沒進行下一次掃描,把上一次掃描的 16 個列碼都循環(huán)右移一位,在進行掃描。23數(shù)據(jù)的右移與數(shù)據(jù)的左移相似,只是取碼的順序相反而已,在此就不再作過多敘述。本設計應用的是數(shù)組方法實現(xiàn)動態(tài)移動。第四章 系統(tǒng)總體方案如圖 4.1 所示,整體電路的基本模型圖。由圖可以看出整個設計分為 4 個模塊:單片機的控制模塊,行驅(qū)動模塊,列驅(qū)動模塊,LED 點陣顯示模塊。24如圖 4.2 所示,是在此設計上將 16*16 點陣擴展成 16*64 點陣的詳細電路圖。主要電路不變,只是增加了 LED 點陣和相應數(shù)目的列驅(qū)動 74HC154 芯片。此設計的顯示驅(qū)動流程如 圖 4.3 所示:254.2 軟件設計軟件程序主要由開始、初始化、主程序、字庫組成。其中主程序和子程序的流程圖如圖 4-1 所示。主程序中,同一幀的反復掃描次數(shù)的設定,決定了顯示移動的速度延時程序至關重要,這就涉及到前文所說的刷新速率問題,如設置不當,就會有閃爍感。4.2.1 主程序設計本設計的系統(tǒng)軟件能使系統(tǒng) LED 顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩(wěn)定、清晰無串擾。圖形或文字顯示有靜止、移入移出等顯示方式。26圖 4-4 程序流程圖LED 點陣主程序,該程序能夠用來實現(xiàn)“平職學院歡迎你”等漢字的顯示。ORG 00HLOOP: MOV A,#0FFH ;開機初始化,清除畫面MOV P0,A ;清除 P0 口ANL P2,#00 ;清除 P2 口MOV R2,#200 D100MS: MOV R3,#250 ;延時 100 毫秒DJNZ R3,$DJNZ R2,D100MSMOV 20H,#00H ;取碼指針的初值 l100: MOV R1,#100 ;每個字的停留時間L16: MOV R6,#16 ;每個字 16 個碼MOV R4,#00H ;掃描指針清零MOV R0,20H ;取碼指針存入 R0L3: MOV A,R4 ;掃描指針存入 AMOV P1,A ;掃描輸出INC R4 ;掃描指針加 1,掃描下一個初始化調(diào)用顯示程序調(diào)整數(shù)據(jù)指針開始是否顯示完YN27MOV A,R0 ; 取碼指針存入 AMOV DPTR,#TABLE ;取數(shù)據(jù)表的上半部分的代碼MOVC A,@A+DPTRMOV P0,A ; 輸出到 P0INC R0 ;取碼指針加 1,取下一個碼。MOV A,R0MOV DPTR,#TABLE ;取數(shù)據(jù)表下半部份的代碼MOVC A,@A+DPTRMOV P2,A ;輸出到 P2 口INC R0MOV R3,#02;掃描 1 毫秒DELAY2: MOV R5,#248 DJNZ R5,$DJNZ R3,DELAY2MOV A,#00H ;清除屏幕MOV P0,AANL P2,#00H DJNZ R6,L3 ;一個字 16 個碼是否完成?DJNZ R1,L16 ;每個字的停留時間是否到了?MOV 20H,R0 ;取碼指針存入 20HCJNE R0,#0FFH,L100 ;8 個字 256 個碼是否完成?JMP LOOP ;反復循環(huán)STLS:;平DB 00H,00H,7FH,0FCH,01H,00H,01H,00H,11H,10H,09H,10H,09H,20H,01H,00HDB 0FFH,0FEH,01H,00H,01H,00H,01H,00H,01H,00H,01H,00H,01H,00H,01H,00H;職DB 00H,00H,0FFH,00H,24H,0FCH,24H,84H,3CH,84H,24H,84H,24H,84H,3CH,84HDB 24H,0FCH,24H,84H,2EH,00H,0F4H,48H,44H,44H,04H,84H,04H,82H,05H,02H;學DB 22H,08H,11H,08H,11H,10H,00H,20H,7FH,0FEH,40H,02H,80H,04H,1FH,0E0HDB 00H,40H,01H,80H,0FFH,0FEH,01H,00H,01H,00H,01H,00H,05H,00H,02H,00H;院28DB 00H,40H,78H,20H,4BH,0FEH,52H,02H,54H,04H,61H,0F8H,50H,00H,48H,00HDB 4BH,0FEH,48H,90H,68H,90H,50H,90H,41H,12H,41H,12H,42H,0EH,44H,00H;歡DB 00H,80H,00H,80H,0FCH,80H,04H,0FCH,05H,04H,49H,08H,2AH,40H,14H,40HDB 10H,40H,28H,0A0H,24H,0A0H,45H,10H,81H,10H,02H,08H,04H,04H,08H,02H;迎DB 00H,00H,20H,80H,13H,3CH,12H,24H,02H,24H,02H,24H,0F2H,24H,12H,24HDB 12H,24H,12H,0B4H,13H,28H,12H,20H,10H,20H,28H,20H,47H,0FEH,00H,00H;你 DB 08H,80H,08H,80H,08H,80H,11H,0FEH,11H,02H,32H,04H,34H,20H,50H,20HDB 91H,28H,11H,24H,12H,24H,12H,22H,14H,22H,10H,20H,10H,0A0H,10H,40H;! DB 00H,00H,10H,00H,10H,00H,10H,00H,10H,00H,10H,00H,10H,00H,10H,00HDB 10H,00H,10H,00H,00H,00H,00H,00H,10H,00H,10H,00H,00H,00H,00H,00H4.2.2 子程序設計子程序流程圖如下:29圖 4-5 程序流程圖延時子程序,協(xié)調(diào)字符顯示速度: DELAY: MOV R7,#1HDL1: MOV R6,#00HDL2: DJNZ R6,DL2DJNZ R7,DL1RETLED 點陣顯示子程序:開 始設 1 幀顯示時間設片選及數(shù)據(jù)指針查漢字上部數(shù)據(jù)及顯示查漢字下部數(shù)據(jù)及顯示延時 1ms關顯示并調(diào)整時針1 幀時間是否到是否顯示完漢字結(jié) 束YYNN30CSLED EQU 8000H CSR1 EQU CSLED ;行 1 273CSR2 EQU CSLED+1H ;行 2 273CSC1 EQU CSLED+2H ;列 1 374CSC2 EQU CSLED+3H ;列 2 374ORG 0000HMOV SP,#60HINIT: MOV A,#0H ;關閉行MOV DPTR,#CSR1MOVX @DPTR,AMOV DPTR,#CSR2MOVX @DPTR,AMOV A,#0FFH ;關閉列MOV DPTR,#CSC1MOVX @DPTR,AMOV DPTR,#CSC2MOVX @DPTR,AD: MOV R5,#00HMOV R4,#01H ;每次為單行掃描DISP: MOV A,R5MOV DPTR,#ASCE ;此處設定所要顯示的字符MOVC A,@A+DPTRCPL ACC ;代碼取反,決定顯示的陰陽MOV DPTR,#CSC2MOVX @DPTR,AMOV DPTR,#CSR1MOV A,R4MOVX @DPTR,ARL ACCMOV R4,ACCINC R5LCALL DELAY31CJNE R5,#8H,DISP MOV A,#0HMOVX @DPTR,AMOV R5,#08HMOV R4,#01HDISP2: MOV A,R5MOV DPTR,#ASCEMOVC A,@A+DPTRCPL ACCMOV DPTR,#CSC2MOVX @DPTR,AMOV DPTR,#CSR2MOV A,R4MOVX @DPTR,ARL ACCMOV R4,ACCINC R5LCALL DELAYCJNE R5,#10H,DISP2 MOV A,#0HMOVX @DPTR,ASJMP DEND再完成編寫程序的編譯之后,準備一臺可以燒寫 AT89C51 的編程器并與電腦主機硬件連接后即可對 AT89C51 芯片進行程序燒錄下載,然后,將燒錄好程序的 AT89C51單片機裝入到 40 腳的 IC 座上,通電即可調(diào)試和運行。另外,延時程序至關重要,這就涉及到刷新速率問題,如設置不當,就會有閃爍感。32第 5 章 總結(jié)本設計講述的是如何用 51 系列單片機控制點陣 LED 顯示屏將文字,單色簡單圖片靜態(tài)或者動態(tài)地顯示出來,本設計只使用了一塊 16×16 LED 點陣,包涵了 LED 顯示屏的電路基本原理和基本程序。在此次設計中通過查閱大量的相關資料,詳細了解了 LED 的發(fā)光原理和 LED 顯示屏的原理,了解了 LED 的現(xiàn)狀,清楚地了解了 LED 顯示屏與其它顯示屏相比較有那些優(yōu)點。在這段時間里,我學到了很多知識也有很多感受,從對單片機,LED 等相關技術不太了解的狀態(tài),我開始了獨立的學習和試驗,查看相關的資料和書籍,讓自己頭腦中模糊的概念逐漸清晰,使自己非常稚嫩作品一步步完善起來。通過本設計不僅把以前學過的知識重新溫習,而且在查閱課外資料是還有好多芯片都是以學過的芯片為基礎,并且在其基礎上改進和完善的。通過畢業(yè)設計的實施可以使學生把在校學習的理論知識和實際應用有機地結(jié)合起來,同時也能培養(yǎng)我獨立思考、勇于創(chuàng)新的科學態(tài)度和鉆研精神。為自己走上工作崗位打下了基礎。這次設計還有很多不足的地方,由于我對 LED 顯示屏和單片機的了解程度不夠,使這次設計過程走了很多彎路,為了以后再次出現(xiàn)這些問題,我要熟練掌握課本知識,多查詢資料。設計中有很多小的細節(jié)出現(xiàn)不足,使我意識到- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 機電 一體化 畢業(yè)論文
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
鏈接地址:http://appdesigncorp.com/p-359543.html