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