下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1616LED 電子顯示屏設(shè)計(jì)摘 要:隨著社會(huì)的不斷發(fā)展,電子顯示屏的應(yīng)用范圍越來(lái)越廣泛。它作為一個(gè)重要的宣傳平臺(tái),已經(jīng)受到全社會(huì)的普遍認(rèn)可。如今它幾乎成為各個(gè)廣場(chǎng)和大型超市的必備品。然而這些功能的實(shí)現(xiàn)可離不開(kāi)單片機(jī)的功勞。單片機(jī)是一微型處理器,負(fù)責(zé)數(shù)據(jù)的接收、發(fā)送和處理工作。顯示屏作為單片機(jī)一個(gè)基本的輸出單元,具有顏色多樣性和樣式多樣性的特點(diǎn),不僅可以顯示漢字及各種字符,而且還可以顯示圖像,甚至是三維動(dòng)畫(huà)。在日常生活中的用途更為廣泛。以 1616LED 電子顯示屏的制作為例,電子顯示屏的工作原理,明確單片機(jī)是如何控制發(fā)光二極管顯示漢字的。本系統(tǒng)運(yùn)用 AT89S51 作為數(shù)據(jù)處理部分,1616
2、LED 電子顯示屏為漢字顯示部分,通過(guò) S51 單片機(jī)的輸入輸出口向顯示屏上送數(shù),控制在顯示屏上顯示漢字。電路板上的復(fù)位按鍵,讓程序從頭開(kāi)始執(zhí)行。: LED 電子顯示屏、單片機(jī)、并行傳輸、漢字1616LED Electronic Display Screen DesignsAbstract:Along with societys unceasing development, the application scope of the electronic display monitor is more and more widespread. IAs an important platform,
3、 the electronic display monitorhas been already received the universal approval from the entire society. Now it nearlyesnesary at each square and the large-scale supermarket. However the realizations of thesefunctions can not to leave the monolithicegrated circuit merit. The monolithicegratedcircuit
4、 is a miniature prosor,and is responsible for the data receiving, the transmisand theprosing. The display monitor tooonolithicegrated circuit basic output unit, has thecolor multiplicity and the style multiple characteristic, not only may demonstrate the Chicharacter and each kind of character, more
5、over also may demonstrate thcture, even is thethree dimenal animation. It is more widespreadhe daily life use. The pr take1616LED the electronic display monitor manufacture as the exle, the discusto electrondisplay monitor principle of work, and make a clearthow the monolithicegrated circuitunit con
6、trols the light emitter diode to demonstrate the Chicharacter.The system takes AT89S51 as the data prosing partial 1616LED electron displaymonitor for the Chicharacter demonstration part, delivers the number through the S51 inputoutlet to the display monitor on, controls demonstrates the Chicharacte
7、r on the displaymonitor. On the electric circuit board replacement pressed key, lets the procedure start to hold the front part of a jacket from the beginning.Key Words:LED electron display monitor 、 monolithicegrated circuit 、 paralleltransmis、Chi目錄引言.1222333477899第一章緒論 .1.1 問(wèn)題的提出.1.2 主要研究?jī)?nèi)容.第二章 系統(tǒng)
8、設(shè)計(jì).2.1 硬件部分.2.1.1 硬件設(shè)計(jì)原理圖 .2.1.2 方案的選擇與比較 .2.2部分.2.2.1 系統(tǒng)的功能 .2.2.2 程序算法設(shè)計(jì) .2.2.3 數(shù)據(jù)結(jié)構(gòu) .2.2.4 程序的控制部分 .2.2.5 時(shí)間復(fù)雜度評(píng)價(jià) .13131313141416161717182.3開(kāi)發(fā).2.3.1 編輯環(huán)境和調(diào)試程序.2.3.2 漢字字模2.3.3.2.4 系統(tǒng)測(cè)試.結(jié)論.致辭) .參考文獻(xiàn)和附錄.參考文獻(xiàn) .附錄 .引言在現(xiàn)代化的今天,電子顯示技術(shù)已經(jīng)滲透到社會(huì)的各個(gè)領(lǐng)域中去。例如公共汽車(chē)上報(bào)站器,煤礦上的各種監(jiān)測(cè)系統(tǒng),家庭安防系統(tǒng),以及無(wú)線(xiàn)通信系統(tǒng)。特別是 LED 電子顯示屏,它作為一
9、個(gè)基本的輸出設(shè)備,幾乎成為各種電子設(shè)備的必需品。LED 顯示屏經(jīng)過(guò)多年發(fā)展,在國(guó)內(nèi)外的應(yīng)用趨于成熟化。它從最初的單基色顯示,經(jīng)過(guò)雙基色顯示,現(xiàn)在發(fā)展到全彩色階段;顏色由最初的紅色,發(fā)展到可以表現(xiàn)真實(shí)世界的各種色彩。為了讓漢字更好地顯示出來(lái),更適合于日常應(yīng)用。電子顯示屏必需在單片機(jī)的控制下才能完成漢字顯示。單片機(jī)是一個(gè)數(shù)據(jù)處理中心,在加電的條件下,它通過(guò)對(duì)外部數(shù)據(jù)的接收,經(jīng)過(guò)處理,最后將結(jié)果送到電子顯示屏上。它相當(dāng)于漢字顯示系統(tǒng)的心臟。電子顯示設(shè)備之所以能得到廣泛的應(yīng)用,是因?yàn)樗哂幸韵聨状髢?yōu)勢(shì):首先,設(shè)備的體積小,功耗低。其次,對(duì)硬件設(shè)備和程序進(jìn)行合理的設(shè)計(jì),電子顯示產(chǎn)品能夠穩(wěn)定地實(shí)現(xiàn)目標(biāo)功能
10、。第三,外觀(guān)形式越來(lái)越新穎,深受社會(huì)的好評(píng)。本設(shè)計(jì)選取 1616LED 電子顯示屏和 AT89S51 單片機(jī),來(lái)實(shí)現(xiàn)漢字的顯示。為了保證漢字顯示的多樣化,設(shè)計(jì)具有以下功能的程序:(1)實(shí)現(xiàn)漢字間斷地顯示(2)實(shí)現(xiàn)漢字往左滾動(dòng)(3)單個(gè)漢字往左滾動(dòng)第一章 緒論1.1 問(wèn)題的提出隨著社會(huì)的不斷發(fā)展,人們獲取信息的途徑越來(lái)越廣。其中各種電子顯示屏便是宣傳信息的一個(gè)有效途徑。它具有醒目,色真,美觀(guān)的優(yōu)點(diǎn)。在現(xiàn)實(shí)生活中應(yīng)用得到了普遍的應(yīng)用。顯示屏廣泛應(yīng)用與汽車(chē)報(bào)站器、1616 電子漢字屏的設(shè)計(jì)。顯示屏和各種電子儀表中?;诖颂岢隽搜芯?.2 主要研究?jī)?nèi)容本設(shè)計(jì)是利用單片機(jī)、LED 點(diǎn)陣電子顯示屏等多種電
11、子元件組成電子屏顯示系統(tǒng),用于實(shí)現(xiàn)漢字的顯示。并且保證漢字的多種顯示方式:實(shí)現(xiàn)漢字間斷顯示;實(shí)現(xiàn)漢字左滾動(dòng);一個(gè)接一個(gè)的漢字往左滾動(dòng)。往第二章 系統(tǒng)設(shè)計(jì)設(shè)計(jì),系統(tǒng)的開(kāi)發(fā),以及系統(tǒng)測(cè)試 4 部分。本系統(tǒng)主要包括系統(tǒng)的硬件設(shè)計(jì),硬件設(shè)計(jì)主要依據(jù)電子顯示屏的工作原理,設(shè)計(jì)兩個(gè)方案,通過(guò)對(duì)方案的比較和實(shí)施,確定一個(gè)比較合理的方案。部分主要依據(jù)系統(tǒng)的硬件電路和目標(biāo)功能,寫(xiě)程序流程圖,最后產(chǎn)生程序代碼,并對(duì)程序進(jìn)行評(píng)價(jià)。系統(tǒng)的開(kāi)發(fā)主要包括程序的編輯環(huán)境和。系統(tǒng)測(cè)試說(shuō)明了調(diào)試程序時(shí)出現(xiàn)的異常情況及其分析。2.1 硬件部分2.1.1 硬件設(shè)計(jì)原理圖單片機(jī)工作原理:利用單片機(jī)來(lái)產(chǎn)生時(shí)鐘信號(hào)、進(jìn)行數(shù)據(jù)和處理數(shù)據(jù)。
12、顯示屏部分用于漢字及其各種的顯示。單片機(jī)在加電的條件下,接口提供將編譯調(diào)好的可執(zhí)行文件送往單片機(jī)中。單片機(jī)如何將程序中的各種字符在顯示屏中顯示出來(lái)呢?單片機(jī)通過(guò) 中的 2 個(gè)輸入輸出口將數(shù)據(jù)送入顯示屏中,并利用一個(gè)輸入輸出口專(zhuān)門(mén)用于控制顯示屏中列字符的顯示。單片機(jī)的工作原理圖如圖 2-1 所示。圖 2-1單片機(jī)的工作原理圖顯示屏掃描原理:以 UCDOS 中文宋體字庫(kù)為例,每一個(gè)字由 16 行 16 列的點(diǎn)陣組成顯示。即國(guó)標(biāo)漢字庫(kù)中的每一個(gè)字均由 256 點(diǎn)陣來(lái)表示??梢园衙恳粋€(gè)點(diǎn)理解為一個(gè)像素,而把每一個(gè)字的字形理解為一幅圖像。事實(shí)上這個(gè)漢字屏不僅可以顯示漢字, 也可以顯示在 256 像素范圍
13、內(nèi)的任何圖形。在 UCDOS 中文宋體字庫(kù)中,每一個(gè)字由 16 行 16 列的組成的點(diǎn)陣來(lái)顯示。如果用 8 位的 AT89S51 單片機(jī)控制,由于單片機(jī)的總線(xiàn)為 8 位,一個(gè)字需要拆分為 2 個(gè)部分。一般把它拆分為上部和下部,上部由 816 點(diǎn)陣組成, 下部也由 816 點(diǎn)陣組成。其顯示屏的掃描原理如圖 2-2 所示。5 伏電壓接口單片機(jī)顯示屏圖 2-2顯示屏的掃描原理圖2.1.2 方案的選擇與比較一、系統(tǒng)實(shí)現(xiàn)方案一為了實(shí)現(xiàn)目標(biāo)功能,電路由一個(gè)單片機(jī) AT89S51,一個(gè)地址譯碼功能的地址譯 74LS154,一個(gè) 1616 電子顯示屏組成,外加一個(gè)按鍵及兩個(gè)接口,按鍵實(shí)現(xiàn)程序的復(fù)位操作。一個(gè)接
14、口提給單片機(jī)及其它電子設(shè)備供電,另一個(gè)是提供標(biāo)準(zhǔn)接口 AT89ISP,使用 CPLD為單片機(jī)與譯單片機(jī)上。其中圖 2-3線(xiàn)實(shí)現(xiàn)將計(jì)算機(jī)生成的二進(jìn)制或十六進(jìn)制文件的連接圖;圖 2-4 為電子顯示屏的引腳連接圖。圖 2-3方案一單片機(jī)與譯的連接圖圖 2-4方案一電子顯示屏的引腳連接圖二、系統(tǒng)實(shí)現(xiàn)方案二硬件電路中 1616LED 電子顯示屏進(jìn)行擴(kuò)充,每塊顯示板有兩個(gè) 1616 的 LED 點(diǎn)陣,可以顯示兩個(gè)漢字,兩塊板可以顯示 4 個(gè)漢字,將這兩塊顯示板和一塊 89S51 的 CPU 板用電纜連接起來(lái),組成一條 2 個(gè)漢字的顯示屏,同樣也可以將 4 塊顯示板組成 8 個(gè)漢字的顯示屏,顯示屏可以滾動(dòng),
15、換屏顯示,也可以若干條短語(yǔ)。方案二電路圖如圖 2-5 所示。圖 2-5方案二電路圖三、比較方案:方案一是電子屏顯示漢字的基本方案, 方案二是在方案一基礎(chǔ)上進(jìn)行擴(kuò)展的系統(tǒng),在其中加進(jìn)了一個(gè) 3-8 譯用于控制 8 個(gè) 1616 點(diǎn)陣的漢字顯示。方案一顯示速度快, 也較穩(wěn)定,可以實(shí)現(xiàn)本設(shè)計(jì)的功能;方案二功能更強(qiáng)大但速度慢點(diǎn)。由于受限制,在這里,選用了設(shè)計(jì)方案能稍差點(diǎn),但對(duì)于了解單片機(jī)和電子顯示屏的工作原理是非常有用的,同時(shí)也為今后制作更大功能的顯示系統(tǒng)提供了寶貴的經(jīng)驗(yàn)。四、系統(tǒng)方案的實(shí)施1、單片機(jī)的選擇單片機(jī)是在一塊中集成了CPU、RAM、ROM、定時(shí)器/計(jì)數(shù)器和多種功能的 I/O口等多種資源的電
16、子設(shè)備。其中 ATMEL 公司生產(chǎn)的 AT89S51 單片機(jī)是一個(gè)提供編程的單片機(jī),集成看門(mén)狗計(jì)時(shí)器,具有數(shù)千次寫(xiě)入功能,時(shí)針頻率為 12MHz。其源主要包括:資1 個(gè) 8 位CPU一個(gè)片內(nèi)振蕩器及時(shí)鐘電路4KROM 程序128BRAM 數(shù)據(jù)器器兩個(gè) 16 位定時(shí)器/計(jì)數(shù)器可尋址 64KB 外部數(shù)據(jù)器和 64KB 外部程序器空間的控制電路32 條可編程的I/O 線(xiàn)(4 個(gè) 8 位并行I/O 端口)一個(gè)可編程全雙工串行接口具有 5 個(gè)中斷源、兩個(gè)優(yōu)先級(jí)嵌套的中斷結(jié)構(gòu)這里就選用 AT89S51 單片機(jī)。2、地址譯碼的選擇74LS154 相當(dāng)于 4 個(gè)輸入 16 個(gè)輸出的譯。74LS138 3-8
17、線(xiàn)譯,選擇路數(shù)特別有限,僅能選中 8 個(gè)。譯有 2-4 譯(74LS139)2 個(gè)輸入變量控制 4 個(gè)輸出端。2n數(shù)據(jù)選擇器(74LS151)一個(gè) n 個(gè)地址端的數(shù)據(jù)選擇器,具有對(duì)個(gè)數(shù)據(jù)選擇的功能。74LS153 雙 4 選 1 數(shù)據(jù)選擇器。經(jīng)過(guò)對(duì)系統(tǒng)的分析,選擇 74LS154 的 4 線(xiàn)16 線(xiàn)譯其功能表如表 2-1 所示:。表中 L 表示低電平,H 表示高電平,X 電平高低不確定表 2-174LS154 功能表3、數(shù)據(jù)通信的選擇 AT89LS51式是通過(guò)I/O 口并行送數(shù)。并行往顯示屏中送數(shù)有兩種方式。送數(shù)是 8 位或 16 位數(shù)據(jù)同時(shí)傳送,具有送數(shù)快和節(jié)約板空間的優(yōu)勢(shì)。適用于單片機(jī)與外
18、設(shè)近距離的數(shù)據(jù)傳輸。無(wú)需采用標(biāo)準(zhǔn)。另式是通過(guò)串行口(P3.1 和P3.2)進(jìn)行同步送數(shù)。串行通信是將數(shù)據(jù)的各個(gè)位一位一位地,通過(guò)單條 1 位寬的傳輸線(xiàn)按順序分時(shí)傳送,即通信雙方一次傳輸一個(gè)二進(jìn)制位。與并行通信相比,串行通信的優(yōu)勢(shì)傳輸距離長(zhǎng),可達(dá)到數(shù)千公里,長(zhǎng)距離內(nèi)串行數(shù)據(jù)傳送速率會(huì)比并行數(shù)據(jù)傳送速率快,串行通信的通信時(shí)鐘頻率較并行通信容易提高;能力強(qiáng),串行通信信號(hào)間的互相干擾完全可以忽略,費(fèi)用低。發(fā)送方在發(fā)送前要將并行數(shù)據(jù)轉(zhuǎn)成串行數(shù)據(jù),接收方接收后要完成串行數(shù)據(jù)到并行數(shù)據(jù)的轉(zhuǎn)換。總之,并行送數(shù)速度快,線(xiàn)路短,適合短距離的數(shù)據(jù)傳輸;串行送數(shù)與時(shí)鐘同步,受時(shí)鐘控制,適合長(zhǎng)距離的數(shù)據(jù)傳輸。這里依據(jù)快
19、捷設(shè)計(jì)的,選擇并行送數(shù)進(jìn)行數(shù)據(jù)通信。4、電子顯示屏的選擇日常生活中,點(diǎn)陣的選擇依據(jù)實(shí)際應(yīng)用。對(duì)于顯示字符或者圖形的質(zhì)量較高時(shí),可以選擇點(diǎn)陣較多的顯示屏。但是點(diǎn)陣過(guò)多,會(huì)造成單片機(jī)的 I/O 端口大量使用,同時(shí)要不斷地往這些設(shè)備進(jìn)行供電,需要消耗大量資源。但是點(diǎn)陣過(guò)少,顯示圖形字符質(zhì)量明顯下降。常見(jiàn)的點(diǎn)陣有 88 點(diǎn)陣,1616 點(diǎn)陣,3232 點(diǎn)陣以及 6464 點(diǎn)陣。為了節(jié)約單片機(jī)的 I/O 口及其陣的 LED 電子顯示屏。的空間,同時(shí)保證漢字的顯示質(zhì)量,這里選用 1616 點(diǎn)5、編程語(yǔ)言的選擇匯編語(yǔ)言是一種用文字助記符來(lái)表示機(jī)器指令的符號(hào)語(yǔ)言,是接近機(jī)器碼的一種語(yǔ)言。其主要優(yōu)點(diǎn)是占用資源少
20、、程序執(zhí)行效率高。但是不同的 CPU,其匯編語(yǔ)言可能有所差異,所以不易移植。語(yǔ)言是一種結(jié)構(gòu)化的高能語(yǔ)言,其優(yōu)點(diǎn)是可讀性好,移植容易,是普遍使用的一種計(jì)算機(jī)語(yǔ)言。缺點(diǎn)是占用資源較多,執(zhí)行效率沒(méi)有匯編高。編寫(xiě)工程時(shí),常用結(jié)構(gòu)化明確,功能模塊化強(qiáng)的語(yǔ)言寫(xiě)。這里,采用語(yǔ)言來(lái)實(shí)現(xiàn)漢字的顯示功能。本程序使用在 KEIL C51 開(kāi)發(fā)上,利用語(yǔ)言來(lái)實(shí)現(xiàn)本設(shè)計(jì)的功能。2.2部分2.2.1 系統(tǒng)的功能實(shí)現(xiàn)漢字間斷顯示:某個(gè)漢字在顯示屏上保持一段時(shí)間并,半秒后顯示下一個(gè)漢字,直到最后一個(gè)漢字顯示完畢,依次顯示“歡迎你到運(yùn)城來(lái)”。漢字 往后移動(dòng)。往左滾動(dòng)功能:以“歡迎你到運(yùn)城來(lái)”七個(gè)字為一個(gè)整體,依次以一定速度單個(gè)
21、漢字左移功能:將以上七個(gè)字拆開(kāi),一次顯示一個(gè),讓它屏幕的右側(cè)滾到屏幕的左側(cè),執(zhí)行次,將所有的漢字顯示完畢。延時(shí)程序:編寫(xiě)一毫秒級(jí)別的延時(shí)程序。用于控制字符顯示和漢字的滾動(dòng)速度。2.2.2 程序算法設(shè)計(jì)漢字顯示基本原理流程圖:先清屏顯示,進(jìn)入設(shè)置字符碼表起始地址,通過(guò) LED 行掃描,按列順序輸出碼表,最后延時(shí)以控制顯示效果,重復(fù)以上操作。流程圖如圖 2-7 所示。圖 2-7漢字顯示基本原理流程圖實(shí)現(xiàn)漢字的控制顯示:先確定顯示漢字的個(gè)數(shù)和次數(shù),判斷漢字是否顯示完畢,沒(méi)有的話(huà),則執(zhí)行漢字顯示程序,并讓漢字顯示的個(gè)數(shù)加,進(jìn)行下一個(gè)判斷。完成的話(huà),執(zhí)行其它功能子程序。漢字控制顯示流程圖如圖 2-8 所
22、示。初始化顯示漢字個(gè)數(shù)字?jǐn)?shù)顯示完顯示的字?jǐn)?shù)加 1圖 2-8漢字控制顯示流程圖退出YES調(diào)用漢字顯示程序NO本系統(tǒng)的主流程圖如圖 2-9 所示:開(kāi)始RESET 鍵按下圖 2-9主流程圖2.2.3 數(shù)據(jù)結(jié)構(gòu)本漢字顯示程序用到以下部分的數(shù)據(jù)結(jié)構(gòu)全局變量:一個(gè)用于存放所有可顯示漢字的一維數(shù)組 hanzi 。在該數(shù)組內(nèi),最多能控制 8 個(gè)漢字的顯示。其中控制一個(gè)漢字的顯示需要 16 個(gè)元素,則該數(shù)組中的元素個(gè)數(shù)最多是 168128。多于 128 個(gè)元素,程序?qū)⒉伙@示以后漢字。若要顯示漢字,必需以8 個(gè)漢字為基本,對(duì)多個(gè)數(shù)組進(jìn)行賦值。局部變量:整型單元i,j,k,c 用于循環(huán)的控制。整型m,n 用于數(shù)據(jù)的
23、下標(biāo),temp 單元相于是一個(gè)暫存器。當(dāng)兩個(gè)數(shù)據(jù)進(jìn)行交換時(shí),temp 充當(dāng)中介。另外若數(shù)據(jù)單元是單片機(jī)硬件所提供的數(shù)據(jù)單元,比如P1,P2,P3 口,使用這些寄存器時(shí),需要在程序的起始位置加入# include ,否則單片機(jī)將不認(rèn)識(shí)這些數(shù)據(jù)單元。P1,P2 口用于往電子顯示屏上送數(shù),而P3 口的高 4 位用于控制漢字列的顯示。2.2.4 程序的控制部分對(duì)于一個(gè)顯示程序來(lái)說(shuō),最基本的程序是延時(shí)程序,它將控制字符的顯示時(shí)間和時(shí)間,直接影響漢字的滾動(dòng)速度。實(shí)現(xiàn)數(shù)據(jù)的延時(shí)方案有兩種,一種是通過(guò)計(jì)時(shí)器來(lái)實(shí)現(xiàn),一個(gè)是通過(guò)程序來(lái)實(shí)現(xiàn)。雖然利用中斷計(jì)數(shù)器方式可以實(shí)現(xiàn),但這會(huì)增加程序的復(fù)雜性。對(duì)延時(shí)要求不嚴(yán)格的
24、時(shí)候,通??梢酝ㄟ^(guò)程序來(lái)實(shí)現(xiàn)延時(shí),代碼少,節(jié)約單片機(jī)的程序存儲(chǔ)空間。現(xiàn)在 先設(shè)計(jì)一個(gè)比較通用的程序,來(lái)實(shí)現(xiàn)毫秒級(jí)別的延時(shí)。void delay1ms(n)unsignedi,j,k;for(k=n;k0;k-)for(i=10;i0;i-)單個(gè)漢字往左滾動(dòng)漢字往左滾動(dòng)NO不做任何操作漢字間斷地顯示YESfor(j=100;j0;j-);為了實(shí)現(xiàn)漢字顯示樣式的多樣化,需要對(duì)數(shù)據(jù)進(jìn)行控制處理。首先,確定程序中所用的數(shù)據(jù)變量并對(duì)變量賦初值,再對(duì)數(shù)據(jù)進(jìn)行控制操作,最后清空單元。顯示漢字(歡迎你到運(yùn)城來(lái))實(shí)現(xiàn)該功能的算法如下:第一步,設(shè)置第一個(gè)循環(huán),循環(huán)次數(shù)為 16 次,實(shí)現(xiàn)對(duì)一個(gè)漢字的顯示,同時(shí)也要對(duì)
25、漢字的列間顯示進(jìn)行控制。第二步,設(shè)置第二個(gè)循環(huán),讓第一步顯示的漢字顯示 200 次,讓該漢字保持下來(lái)。第三步,設(shè)置第三個(gè)循環(huán),讓第二步的循環(huán)執(zhí)行七次,實(shí)現(xiàn)上面七個(gè)漢字的逐字顯示。void showord(unsigned char z)unsignedi,j,k,c;unsignedm=0,temp=0,n=0 ;for(i=1;i8;i+)P3=0 x00;temp=m;屏幕上漢字的保持時(shí)間,讓該漢字重復(fù)顯示 200 次for(j=0;j200;j+)P3=0 x00;for(k=0;k16;k+)P1=zm; m+; P2=zm; m+; P3+=0 x10;for(c=0;c50;c+)
26、; P1=0 x00; P2=0 x00;n=m; m=temp; k=0;m=n; j=0;delay1ms(100);漢字左移實(shí)現(xiàn)該功能的算法如下:將“歡迎你到運(yùn)城來(lái)”7個(gè)漢字整體,共128個(gè)元素。間隔四個(gè)元素拆開(kāi),每次拆開(kāi)必須保證一個(gè)漢字的完整顯示,即 32 個(gè)元素為一漢字顯示單元。計(jì)算得總共可拆分為 48 次。以拆分一次為一顯示數(shù)據(jù)的基本單元對(duì)數(shù)據(jù)控制顯示。第一步,設(shè)置第一層循環(huán),顯示一個(gè)漢字,同時(shí)控制單個(gè)字列間顯示。第二步,設(shè)置第二層循環(huán),讓第一步顯示的漢字執(zhí)行 100 次,實(shí)現(xiàn)對(duì)漢字的保持操作。第三步,設(shè)置第三層循環(huán),控制第二步的操作 48 次,依次實(shí)現(xiàn)漢字的整體左滾動(dòng)功能。注意利
27、用延時(shí)程序?qū)崿F(xiàn)漢字滾動(dòng)速度的控制。void movesigned char z)unsigned char i=0,j=0,k=0,c=0;m=0,temp=0;for(i=0;i48;i+)P3=0 x00;temp=m;將漢字拆開(kāi)后,在電子顯示屏上顯示漢字for(j=0;j100;j+)P3=0 x00;for(k=0;k16;k+)P1=zm;m+;P2=zm;m+;for(c=0;c250;c+); P1=0 x00;P2=0 x00; P3=P3+0 x10;m=temp; k=0;m=temp+4; j=0;delay1ms(1);一漢字從左到右運(yùn)動(dòng)移至屏中心保持一定時(shí)間然后退出。
28、實(shí)現(xiàn)該功能的算法:以一個(gè)完整漢字為基本,先顯示漢字的前半部分,讓它(hanzi0hanzi1)從最后一列顯示,延時(shí)一定時(shí)間后,往左移一位,在后兩列顯示該漢字,這樣循環(huán)操作,直到漢字在該顯示屏上徹底顯示出來(lái),隨后顯示漢字的后半部分,控制漢字在最后一位不顯示漢字,延時(shí)一定時(shí)間后,控制漢字不在后兩位顯示漢字,這樣循環(huán)操作,直到漢字全部退出電子顯示屏。第二步,每進(jìn)行換屏操作時(shí),該字符顯示 100 次,用于保持漢字的顯示。第三步,設(shè)置一層循環(huán),讓程序執(zhí)行七次,顯示完所有漢字。void spanmove(unsigned char z)i,j,k,l,c;be=0 x00, m=0,rb=1; for(l
29、=0;l7;l+)m=l32;漢字顯示的前半部分:?jiǎn)蝹€(gè)漢字從右端開(kāi)始往左滾動(dòng),直到其全部顯示P1=0 x00;P2=0 x00;P3=0 xf0;for(i=0;i15;i+)be=P3;for(k=0;k100;k+)for(j=0;jrb;j+)P1=zm; m+;P2=zm;m+;for(c=0;c0;i-)be=P3; for(k=0;k0;j-) P2=zm;m-;P1=zm;m-;for(c=0;c50;c+); P2=0 x00; P1=0 x00; if(P3!=0 x00) P3=P3-0 x10; m=31+l32;j=rb;P3=be;rb-;P3=be-0 x10; k
30、=0; m=31+l32;為止然后編寫(xiě)主程序,分別調(diào)用上面幾個(gè)程序,實(shí)現(xiàn)對(duì)漢字的控制顯示。在調(diào)用不同方式顯示漢字程序時(shí),中間須加入延時(shí)程序,用于協(xié)調(diào)不同方式漢字的顯示。void main(void)while(1)showord(hanzi); delay1ms(100); movel(hanzi); delay1ms(100); spanmove(hanzi); delay1ms(100);2.2.5 時(shí)間復(fù)雜度評(píng)價(jià)由于語(yǔ)言程序經(jīng)過(guò)編譯、后才能生成可供計(jì)算機(jī)執(zhí)行的二進(jìn)制代碼。然后,程序從編譯到生成二進(jìn)制文件過(guò)程中,語(yǔ)言需要從庫(kù)中調(diào)用大量的數(shù)據(jù)和函數(shù),占用了單片機(jī)中的不少容量,同時(shí)也提高了程序
31、的運(yùn)行時(shí)間數(shù)據(jù)時(shí)間復(fù)雜度反映的是基本操作的執(zhí)行次數(shù)。對(duì)于漢字顯示程序來(lái)說(shuō),主要包括三層循環(huán),內(nèi)層循環(huán)完成一個(gè)漢字顯示,其循環(huán)次數(shù)k=16;中層循環(huán)用于一個(gè)漢字的保留時(shí)間,其循環(huán)次數(shù) m=100;外層循環(huán)控制顯示漢字的個(gè)數(shù),其個(gè)數(shù)為 n。則該程序執(zhí)行的時(shí)間復(fù)雜度,即內(nèi)循環(huán)體的執(zhí)行次數(shù)為 O(kmn)=O(1600n),為線(xiàn)性型。2.3開(kāi)發(fā)2.3.1 編輯環(huán)境和調(diào)試程序本系統(tǒng)的完成使用 Keil C51品的 51 系列兼容單片機(jī) C 語(yǔ)言上來(lái)實(shí)現(xiàn)的。 Keil C51 是Keil Software 公司出開(kāi)發(fā)系統(tǒng),與匯編相比,C 語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可性上有明顯的優(yōu)勢(shì)。Keil C51提
32、供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows 界面。在生成目標(biāo)代碼的過(guò)程中,Keil C51 的效率是很高的,并且多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。就C51 工具包的整體結(jié)構(gòu)來(lái)說(shuō),它提供了一個(gè)集成開(kāi)發(fā)環(huán)境,可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā) 可用IDE 本身或其它編輯器編輯 C 或匯編源文件。然后分別由 C51 及 A51 編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由 LIB51 創(chuàng)建生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng) L51 連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS 文件由 OH51 轉(zhuǎn)換成標(biāo)準(zhǔn)的 Hex
33、文件,以供調(diào)試器dScope51 或tScope51 使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如 EPROM 中。2.3.2 漢字字模在電子顯示屏上實(shí)現(xiàn)漢字顯示,首先要得到該漢字的字型碼。這里使用編輯字庫(kù)來(lái)得到這些字型碼。方法就是在該的漢字區(qū)域中輸入所要顯示的漢字,點(diǎn)擊檢取按鈕就到點(diǎn)陣數(shù)。依據(jù)實(shí)際電路的需要,這里選取豎排的十六進(jìn)制點(diǎn)陣代碼。以“歡迎你到運(yùn)城來(lái)”字符串為例,它們的點(diǎn)陣碼為:unsignedcharcodehanzi=0 x04,0 x10,0 x34,0 x08,0 xc4,0 x06,0 x04,0 x01,0 xc4,0 x82,0
34、 x3c,0 x8c,0 x20,0 x40,0 x10,0 x30,0 x0f,0 x0c,0 xe8,0 x03,0 x08,0 x0c,0 x08,0 x10,0 x28,0 x60,0 x18,0 xc0,0 x00,0 x40,0 x00,0 x00,0 x40,0 x00,0 x42,0 x40,0 x44,0 x20,0 xc8,0 x1f,0 x00,0 x20,0 xfc,0 x47,0 x04,0 x42,0 x02,0 x41,0 x82,0 x40,0 xfc,0 x7f, 0 x0f,0 x40,0 x04,0 x42,0 x04,0 x44,0 xfe,0 x63,
35、0 x04,0 x20,0 x00,0 x00,0 x40,0 x00,0 x20,0 x00,0 xf8,0 xff,0 x07,0 x00,0 x40,0 x00,0 x20,0 x08,0 x18,0 x04,0 x0f,0 x43,0 x08,0 x80,0 xc8,0 x7f,0 x08,0 x00,0 x08,0 x01,0 x28,0 x06,0 x18,0 x0c,0 x00,0 x00,0 x00,0 x00,0 x00,0 x40,0 x62,0 x42,0 x52,0 x42,0 x4a,0 x42,0 xc6,0 x7f,0 x42,0 x22,0 x52,0 x23,
36、0 x63,0 x22,0 xc2,0 x20,0 x00,0 x00,0 xf8,0 xf0,0 x00,0 x40,0 x00,0 x80,0 xff,0 x7f,0 x00,0 x00,0 x00,0 x00,0 x40,0 x00,0 x42,0 x40, 0 x44,0 x20,0 xcc,0 x1f,0 x00,0 x20,0 x20,0 x48,0 x22,0 x4c,0 x22,0 x4b,0 xe2,0 x48,0 x22,0 x48,0 x22,0 x4a,0 x23,0 x4c,0 x32,0 x58,0 x20,0 x60,0 x00,0 x02,0 x00,0 x00
37、,0 x10,0 x08,0 x10,0 x18,0 xff,0 x0f,0 x10,0 x48,0 x10,0 x44,0 xf8,0 x3f,0 x88,0 x08,0 x88,0 x10,0 x88,0 x4f,0 x08,0 x20,0 xff,0 x13,0 x08,0 x1c,0 x0a,0 x63,0 xcc,0 x80,0 x08,0 xe0,0 x00,0 x00,0 x00,0 x21,0 x08,0 x21,0 x28,0 x11,0 x48,0 x11,0 xc8,0 x09,0 x08,0 x05,0 x08,0 x03,0 xff,0 xff,0 x08,0 x03
38、,0 x88,0 x05,0 x48,0 x09,0 x68,0 x18,0 x0c,0 x11,0 x88,0 x31,0 x00,0 x11,0 x00,0 x00;2.3.3AT89ISPAtmel 的編程選用 ispMCU_Download??梢栽赪indows 9x/ME/2000/NT 操作系統(tǒng)上運(yùn)行。Atmel ISP提供可以編寫(xiě)的微控制器的芯片有以下幾種:AT89S51、AT89S52、AT89S53、AT89LS53、AT89LS8252、AT89LS8252等幾種。這里完成通過(guò)該接口向 AT89S51中寫(xiě)程序。為了使用 Atmel 微控制器編程,用戶(hù)需要使用 ATMEL 單
39、片機(jī)、CPLD線(xiàn)。編程器的引腳應(yīng)該象圖 2-10似動(dòng)連接到含有 AT89S的電路板上(目標(biāo)板、或稱(chēng)用戶(hù)板),編程的示意圖如圖 2-11 所示。25 針電纜連接到計(jì)算機(jī)的并行端口。ISP圖 2-10AT89ISP 接口圖 2-11編程示意圖2.4 系統(tǒng)測(cè)試本系統(tǒng)測(cè)試主要包括以下幾個(gè)部分:測(cè)試硬件的良,主要是保證各功能的實(shí)現(xiàn)和整體電路連接的正確性。測(cè)試編寫(xiě)的漢字顯示程序,以滿(mǎn)足本系統(tǒng)的要求。著重從以下兩個(gè)方面測(cè)試硬件的良:首先,依照設(shè)計(jì)的硬件電路圖,通過(guò)肉眼觀(guān)察PCB 板上各的引腳連接無(wú)誤。其次,編寫(xiě)測(cè)試,確定每個(gè)發(fā)光二極管都正常,沒(méi)有壞點(diǎn)出現(xiàn),單片機(jī)和顯示屏連接完好;進(jìn)一步控制二極管的上下滾動(dòng),
40、左右滾動(dòng),全屏顯示來(lái)確保地址譯、單片機(jī)和電子顯示屏連接正確。(測(cè)試程序見(jiàn)附錄)漢字顯示程序的編寫(xiě),通過(guò)參考別人程序,修改并且進(jìn)一步完善各功能。在設(shè)計(jì)過(guò)程中,主要遇到以下問(wèn)題:(1)CPLD線(xiàn)影響漢字的正常顯示。每次完程序時(shí),位于顯示屏中間二排的發(fā)光二極管全亮。解決方案,撥掉線(xiàn)查看程序運(yùn)行情況。()在往單片機(jī)程序器中寫(xiě)程序時(shí),必需保證電壓在伏以上,否則程序不能寫(xiě)入單片機(jī)中,但單片機(jī)中的程序仍然能讀出。解決方案,更換電池。()在程序時(shí),保證電壓的正負(fù)極正確。否則會(huì)影響單片機(jī)的()關(guān)于漢字的滾動(dòng)速度的測(cè)試漢字換屏問(wèn)題。漢字的換屏問(wèn)題是影響漢字滾動(dòng)的一個(gè)重要。對(duì)于漢字整體滾動(dòng)來(lái)說(shuō),必需明確換屏前后的狀
41、態(tài)。以本程序中的 void movesignedchar z)為例,將一個(gè)漢字拆為 8 部分。下一屏幕的漢字字碼與上一屏幕漢字的漢字字碼相差 4 個(gè)四節(jié)。漢字的保持問(wèn)題。在顯示漢字的設(shè)計(jì)中,漢字的顯示必需保持一定時(shí)間。保持漢字主要有兩個(gè)側(cè)重點(diǎn)。一個(gè)是保證漢字中的某一列保持時(shí)間,另一個(gè)是保證整個(gè)漢字的保持時(shí)間。兩者必需相互匹配起來(lái)。前者時(shí)間過(guò)短,肉眼看上去會(huì)給人一種屏幕全亮的感覺(jué)。后者時(shí)間過(guò)短,會(huì)讓人看不清上一個(gè)漢字,就進(jìn)入下一個(gè)漢字的顯示。通過(guò)對(duì)修改延時(shí)時(shí)間,每一列保持 50 微秒,整個(gè)漢字必需掃描 100 次,才能滿(mǎn)足系統(tǒng)需要。漢字的時(shí)間。字與字之間的切換需要一定的時(shí)間。這段時(shí)間的顯示對(duì)于漢
42、字滾動(dòng)速度來(lái)說(shuō)是非常重要的。時(shí)間過(guò)短,會(huì)給人一種漢字跳動(dòng)的感覺(jué);時(shí)間過(guò)長(zhǎng),會(huì)讓人感覺(jué)枯燥無(wú)味的感覺(jué)。因此,必需選擇適當(dāng)?shù)臐h字間。時(shí)經(jīng)過(guò)多次調(diào)試程序,電子顯示屏具有以下功能:間斷地顯示漢字;漢字單個(gè)漢字往左滾動(dòng)。依次顯示字符串”歡迎你到運(yùn)城來(lái)”。往左滾動(dòng);結(jié)論通過(guò)對(duì)方案的選擇和實(shí)施,最后程序完成了漢字顯示功能。顯示功能主要有以下面:間斷地顯示漢字,漢字往左滾動(dòng)以及單個(gè)的漢字往左滾動(dòng)。在整個(gè)設(shè)計(jì)過(guò)程中,由于受時(shí)間和太清楚限制,本系統(tǒng)不能保證漢字的完美顯示。首先,出現(xiàn)單個(gè)顯示漢字并不。對(duì)于一些復(fù)雜的漢字,甚至于破壞了漢字的完整性。這里建議使用 3232點(diǎn)陣或者 6464 點(diǎn)陣的顯示屏來(lái)顯示漢字,再者是選取體積小的發(fā)光二極管,這樣做會(huì)讓漢字顯示得更加細(xì)膩。其次,利用單片機(jī)的 P3.0、P3.1 口與微機(jī)的串口進(jìn)行,實(shí)現(xiàn)單片機(jī)與微機(jī)進(jìn)進(jìn)行通信。由于本方案輸入漢字不容易,需要操作多步才能完成。取得漢字的點(diǎn)陣碼,將它們到程序中,然后調(diào)用子程序完成。若進(jìn)一步改進(jìn)的話(huà),只需在微機(jī)中輸入漢字,相應(yīng)的漢字就顯示在電子顯示屏上。這樣更接近于實(shí)踐,方便用戶(hù)的修改。再次,本設(shè)計(jì)的電子顯示屏僅輸出漢字。若對(duì)此設(shè)計(jì)擴(kuò)展,則可
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年省屬?lài)?guó)企公開(kāi)招聘?jìng)淇碱}庫(kù)完整答案詳解
- 2025年杭州之江灣股權(quán)投資基金管理有限公司招聘?jìng)淇碱}庫(kù)及一套答案詳解
- 2025年景洪市嘎灑強(qiáng)村管理有限公司人員招聘?jìng)淇碱}庫(kù)及參考答案詳解1套
- 2025年鄂倫春自治旗人民醫(yī)院消防人員招聘?jìng)淇碱}庫(kù)附答案詳解
- 2025年鄂爾多斯市勝豐種業(yè)有限公司科研助理招聘?jìng)淇碱}庫(kù)及完整答案詳解1套
- 2026年天津高級(jí)中學(xué)-骨干教師及青年教師招聘?jìng)淇碱}庫(kù)及參考答案詳解一套
- 2025年郴州市第三人民醫(yī)院?jiǎn)T工招聘?jìng)淇碱}庫(kù)及完整答案詳解1套
- 2025年中國(guó)瑞林工程技術(shù)股份有限公司杭州分公司(國(guó)企上市公司)招聘結(jié)構(gòu)設(shè)計(jì)師備考題庫(kù)帶答案詳解
- 2025年江門(mén)市江海區(qū)銀信資產(chǎn)管理有限公司招聘?jìng)淇碱}庫(kù)及參考答案詳解一套
- 滄州市中心醫(yī)院2026年度高層次人才選聘170人備考題庫(kù)及1套參考答案詳解
- 塔吊施工方案(專(zhuān)項(xiàng)方案)
- 空壓機(jī)入井及使用安全技術(shù)措施
- 對(duì)昆明機(jī)場(chǎng)地區(qū)天氣氣候特征的一些綜述分析
- YS/T 277-2009氧化亞鎳
- YS/T 1109-2016有機(jī)硅用硅粉
- 教師的信仰與價(jià)值(合師院講座)
- GB/T 10609.2-2009技術(shù)制圖明細(xì)欄
- 汽車(chē)制造工程的核心技術(shù)及四大工藝流程開(kāi)發(fā)體系-
- 上海地理高二等級(jí)考 第7講 巖石和地貌1
- 安徽省合肥市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名明細(xì)及行政區(qū)劃代碼
- 視神經(jīng)膠質(zhì)瘤-影像科
評(píng)論
0/150
提交評(píng)論