LED點陣顯示屏(完整源程序版)_第1頁
LED點陣顯示屏(完整源程序版)_第2頁
LED點陣顯示屏(完整源程序版)_第3頁
LED點陣顯示屏(完整源程序版)_第4頁
LED點陣顯示屏(完整源程序版)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、編號: 單片機 實訓(xùn) (論文)說明書題 目: LED點陣模塊控制器 院 (系): 應(yīng)用科技學(xué)院 專 業(yè): 電子信息工程 學(xué)生姓名: 學(xué) 號: 指導(dǎo)教師: 2009年12月28日目 錄引言 11 系統(tǒng)的設(shè)計與分析 21.1 LED點陣控制原理31.1.1 LED簡介 31.1.2 LED點陣 41.1.3 顯示原理 51.1.4顯示屏的原理圖及結(jié)構(gòu) 61.2 單片機小系統(tǒng) 81.2.1 51系列單片機的概述 81.2.2單片機的組成 82 程序設(shè)計 102.1 系統(tǒng)程序的框架102.1.1 串口通訊協(xié)議102.1.2 顯示處理效果函數(shù)102.1.3 顯示函數(shù)102.2 程序流程圖93 總結(jié) 11

2、謝辭 13參考文獻 14附錄(所有的源程序)15摘 要LED是發(fā)光二極管Light Emitting Diode的英文縮寫, 是一種能夠?qū)㈦娔苻D(zhuǎn)化為可見光的半導(dǎo)體。LED點陣是由發(fā)光二極管排列組成的顯示器件, 在我們?nèi)粘I畹碾娖髦须S處可見,極為普通也廣為人知。特別是它的發(fā)光類型屬于冷光源,效率及發(fā)熱量是普通發(fā)光器件難以比擬的,它采用低電壓掃描驅(qū)動,具有: 耗電少、使用壽命長、成本低、亮度高、故障少、視角大、可視距離遠、規(guī)格品、可靠耐用、應(yīng)用靈活、安全、響應(yīng)時間短、綠色環(huán)保、控制靈活種等特點。目前LED顯示屏作為新一代的信息傳播媒體,已經(jīng)成為城市信息現(xiàn)代化建設(shè)的標(biāo)志。隨著社會經(jīng)濟的不斷進步,以

3、及LED顯示技術(shù)的不斷完善,人們對LED顯示屏的認(rèn)識將越來越深入,其應(yīng)用領(lǐng)域?qū)絹碓綇V。本文設(shè)計一個16*64點陣模塊控制器,根據(jù)標(biāo)準(zhǔn)的08控制接口要求,可以驅(qū)動市面上常見的16掃單色顯示屏,顯示漢字、英文、阿拉伯?dāng)?shù)字及其他信息等。整個系統(tǒng)提供很寬的外部擴展,包括時鐘、溫濕度、亮度等常規(guī)點陣控制器的模塊。關(guān)鍵詞:LED點陣控制器;89S52;16掃;08接口AbstractLED Light Emitting Diode Light Emitting Diode is the English abbreviation is an electrical energy into visible

4、light can be a semiconductor. LED dot matrix is composed of light-emitting diode array display devices, the appliances in our daily life everywhere, it is common are also well known. In particular, it belongs to the type of light-emitting cold light source, efficiency, and heat an ordinary light-emi

5、tting devices is difficult to match, it uses low-voltage scan driver with: low power consumption, long life, low cost, high brightness, fault less large angle, visual distance specification products, reliable and durable, application flexibility, security, response time is short, green environmental

6、 protection, control and flexible kinds of characteristics. Present LED display as a new generation of information and communication media, has become a symbol of the modernization of city information. As social and economic advances, as well as LED display technology continues to improve, people

7、9;s understanding of the LED display will be more in-depth, its applications will become more widely. This design of a 16 * 64 Dot Matrix module controller, according to the standard control interface of the 08 requirements of the common market can drive 16 scan monochrome display, display Chinese c

8、haracters, English, Arabic, and other information. Throughout the system provides a wide external expansion, including clock, temperature and humidity, brightness and other conventional dot matrix controller module. Key words:LED dot matrix controller; 89S52; 16 sweep; 08 Interface引言自20世紀(jì)80年代后期開始,隨著

9、LED制造技術(shù)的不斷完善,在國外得到了廣泛的應(yīng)用。在我國改革開放之后,提別是進入90年代國民經(jīng)濟的高速增長,對公眾場合發(fā)布信息的需求日益強烈。而LED顯示屏作為信息傳播的一種重要手段,已經(jīng)成為城市信息現(xiàn)代化建設(shè)的標(biāo)志,LED顯示屏隨著社會經(jīng)濟的不斷進步,以及LED制造技術(shù)的完善,人們對LED顯示屏的認(rèn)識將會越來越深入,其應(yīng)用領(lǐng)域?qū)絹碓綇V;LED顯示屏經(jīng)多年的開發(fā)、研制、生產(chǎn),其技術(shù)目前已經(jīng)成熟。 現(xiàn)在各種廣告牌不再是白底黑字了,也不再是單一的非電產(chǎn)品,而是用上了豐富多彩的LED電子產(chǎn)品,為城市的增添了一道靚麗的風(fēng)景。而且它采用低電壓掃描驅(qū)動,具有耗電少、使用壽命長、成本低、發(fā)光效率高、故障

10、少、視角大、可視距離遠、可靠耐用、組態(tài)靈活、安全、響應(yīng)時間短、綠色環(huán)保、控制靈活、色彩豐富以及對室內(nèi)外環(huán)境適應(yīng)能力強等特點。近年來LED顯示屏市場得到了迅猛的發(fā)展,已經(jīng)廣泛應(yīng)用到銀行、郵電、稅務(wù)、機場、車站、證券市場及其它交易市場、醫(yī)院、電力、海關(guān)、體育場等需要進行多種公告、宣傳的場合。 因此,學(xué)習(xí)LED系統(tǒng)原理與工程技術(shù)很有必要。通過設(shè)計一個可顯示文字與圖形的16*64點陣控制器來學(xué)習(xí)和熟悉LED的使用。1 系統(tǒng)的設(shè)計與分析本文是通過設(shè)計一個可顯示文字與圖形的16*64點陣控制器電路來學(xué)習(xí)和熟悉LED的使用,LED點陣控制器分為五個模塊,系統(tǒng)框圖(如圖1),一是參數(shù)輸入部分,例如溫度、濕度、

11、亮度等;二是字庫部分,如16點陣、24點陣或者32點;三是單片機控制部份;四是接口部分(如圖2),一般采用08接口,如果需要不同的接口類型,可以根據(jù)08接口為基礎(chǔ)進行轉(zhuǎn)接,這也是本系統(tǒng)采用08接口的原因之一;五是串口通訊部分(圖3),其中亮度、溫度、時鐘模塊由于時間的原因沒有完善,等待擴展。 圖1 系統(tǒng)框圖 圖 2 標(biāo)準(zhǔn)08接口部分 圖3 串口通訊部分1.1 LED點陣控制原理顯示屏是由發(fā)光二極管行列組成的LED點陣模塊組成顯示屏體。1.1.1 LED簡介LED是發(fā)光二極管英文Light Emitting Diode的縮寫格式,LED器件種類繁多,早期的LED產(chǎn)品是單個發(fā)光管,隨著數(shù)字化設(shè)備的

12、出現(xiàn),LED數(shù)碼管和字符管得到了廣泛的應(yīng)用,LED點陣等顯示器件的出現(xiàn),適應(yīng)了信息化社會發(fā)展的需要,成為了大眾傳媒的重要工具。LED發(fā)光燈按類型可以分為單色發(fā)光燈、雙色發(fā)光燈、三色發(fā)光燈、面發(fā)光燈、閃爍發(fā)光燈、電壓型發(fā)光燈等;按發(fā)光強度可分為普通亮度發(fā)光燈、高亮度發(fā)光燈、超高亮度發(fā)光燈等;LED發(fā)光燈結(jié)構(gòu)如圖2所示,它由芯片3、陽極引腳1、陰極引腳2和環(huán)氧樹脂封裝外殼四部分組成。它核心部分是具有復(fù)合發(fā)光功能的PN結(jié),即芯片3。環(huán)氧樹脂封裝外殼具有保護芯片的作用,還有透光聚光的能力,以增強顯示效果。圖41.1.2 LED點陣 隨著LED應(yīng)用領(lǐng)域的擴大,要求生產(chǎn)更為直接和方便的LED顯示器件。因而

13、出現(xiàn)了數(shù)碼管、字符管、電平管、LED點陣等多種LED顯示器。不管顯示器的結(jié)構(gòu)怎么變,它的核心部件仍然是發(fā)光半導(dǎo)體芯片。例如一個8*8的點陣是由64個發(fā)光二極管按一個規(guī)律組成的,如圖3。圖5如圖3所示的發(fā)光二極管,行接低電平,列接高電平,發(fā)光二極管導(dǎo)通發(fā)光。1.1.3 顯示原理人眼的亮度感覺不會因光源的消失而立即消失,要有一個延遲時間,這就是視覺的惰性。視覺惰性可以理解為光線對人眼視覺的作用、傳輸、處理等過程都需要時間,因而使視覺具有一定的低通性。實驗表明,當(dāng)外界光源突然消失時,人眼的亮度感覺是按指數(shù)規(guī)律逐漸減小的。這樣當(dāng)一個光源反復(fù)通斷,在通斷頻率較低時,人眼可以發(fā)現(xiàn)亮度的變化;而通斷頻率增高

14、時,視覺就逐漸不能發(fā)現(xiàn)相應(yīng)的亮度變化了。不致于引起閃爍感覺的最低反復(fù)通斷頻率稱為臨界閃爍頻率。通過實驗證明臨界閃爍頻率大約為24Hz。因此采用每秒24幅畫面的電影,在人看起來就是連續(xù)活動的圖象了。同樣的原理,日光燈每秒通斷50次,而人看起來卻是一直亮的。由于視覺具有惰性,人們在觀察高于臨界閃爍頻率的反復(fù)通斷的光線時,所得到的主觀亮度感受實際上是客觀亮度的平均值。視覺惰性可以說是LED顯示屏得以廣泛應(yīng)用的生理基礎(chǔ)。首先,在LED顯示屏中可以利用視覺惰性,改善驅(qū)動電路的設(shè)計,形成了目前廣為采用的掃描驅(qū)動方式。掃描驅(qū)動方式的優(yōu)點在于LED顯示屏不必對每個發(fā)光燈提供單獨的驅(qū)動電路,而是若干個發(fā)光燈為一

15、組共用一個驅(qū)動電路,通過掃描的方法,使各組發(fā)光燈依次點燃,只要掃描頻率高于臨界閃爍頻率,人眼看起來各組燈都在發(fā)光。由于LED顯示屏所使用的發(fā)光燈數(shù)量很大,一般在幾千只到幾十萬只的范圍,所以節(jié)約驅(qū)動電路的效益是十分可觀的。1.1.4 顯示屏的原理圖及結(jié)構(gòu) 圖6行掃描部分 圖7 列掃描部分 根據(jù)顯示屏的原理圖結(jié)構(gòu),分析LED點陣控制器的控制原理:如顯示10個漢字,先將這10個漢字的點陣從字庫中讀出,放到顯示緩存,如果要實現(xiàn)左移或者其它的顯示效果則將顯示緩存中的每個位進行移位或者其它處理,然后再調(diào)用掃描顯示函數(shù)就可以實現(xiàn)所規(guī)定的效果。掃描顯示函數(shù)是顯示緩存的內(nèi)容,如果要實現(xiàn)不同的內(nèi)容,比如說圖片、漢

16、字、英文等內(nèi)容,只需要將這些內(nèi)容按掃描顯示函數(shù)對顯示緩存的協(xié)議要求就可以顯示出來。由于顯示屏中采用74HC595移位緩存器,所以需要做74HC595的驅(qū)動,這個相對簡單,只要將數(shù)據(jù)按位傳輸,一位送一個時鐘,送完一行所有的數(shù)據(jù)送一個鎖存時鐘,再通過74HC138選通該行,這樣一直循環(huán),人眼就會看到一幅完整的內(nèi)容。 對于顯示屏來說,顯示使能端是比較重要的,主要是因為送完一行后需要一個消隱的動作,所謂的消隱就是讓顯示屏黑屏一段時間,如果不做該動作,則在顯示的過程中會有拖影的現(xiàn)象。1.3 單片機小系統(tǒng)1.3.1 51系列單片機的概述單片機也被稱作“單片機微型計算機”、“微控制器”、“嵌入式微控制器”,

17、國際上采用“MCU”(Micro Controller Unit)稱呼單片機。如果將8位單片機的推出作為起點(1976年),那么單片機的發(fā)展的歷史大致可以分為4個階段。第一階段是單片機探索階段,主要探索如何把計算機的主要部件集成在單芯上;第二階段是單片機完善階段,完善了8位單片機的并行總線結(jié)構(gòu)、外圍功能單元由CPU集中管理模式、體現(xiàn)控制特性的位地址空間和位操作方式、指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控制功能的指令;第三階段是向微控制器發(fā)展的階段,說的是在51系列的基本結(jié)構(gòu)的基礎(chǔ)上,加強了外圍電路的功能,突出了單片機的控制功能,將一些用測控對象的模數(shù)轉(zhuǎn)換器、數(shù)模轉(zhuǎn)換器、程序運行監(jiān)視器、脈

18、寬調(diào)制器等納入芯片中,體現(xiàn)單片機的微控制器特征;第四階段是單片機的全面發(fā)展階段,很多大半導(dǎo)體和電氣廠商都開始加入單片機的研制和生產(chǎn),單片機世界出現(xiàn)了百花齊放,欣欣向榮的景象。隨著單片機在各個領(lǐng)域全面深入地發(fā)展和應(yīng)用,出現(xiàn)了高速、大尋址范圍、強運算能力的8位、16位、32位通用型單片機,以及小型謙價的專用型單片機。目前,單片機正朝著高性能和多品種方向發(fā)展,今后單片機的發(fā)展趨勢將是進一步向著CMOS化、低功耗、小體積、大容量、高性能、低價格和外圍電路內(nèi)裝等方面發(fā)展。1.3.2單片機的組成圖7是單片機典型組成框圖,由圖可見它通過內(nèi)部總線把計算機的各主要部件連為一體,其內(nèi)部總線包括地址總線、數(shù)據(jù)總線和

19、控制總線。其中,地址總線的作用是為進行數(shù)據(jù)交換時提供地址,CPU通過將地址輸出到存儲器或I/O接口;數(shù)據(jù)總線用于在CPU與存儲器或I/O接口之間或存儲器與外設(shè)之間交換數(shù)據(jù);控制總路線包括CPU發(fā)出的控制信號線和外部送入CPU的應(yīng)答線等。圖8 單片機結(jié)構(gòu)框圖 51系列有3種封裝形式,一種是DIP(Dual Inline Package)封裝形式,一種是LCC(Quad Flat Package)封裝形式。這種形式是具有44個“J”形腳的方型芯片。另一種是QFP(Quad Flat Package)封裝形式, 這種形式是具有44個“J”形腳的方型芯片,但它的體積更小、更薄,是一種表面貼焊的封裝形式

20、。下面介紹下89S52單片機的引腳的功能和其內(nèi)部結(jié)構(gòu)圖。AT89S52單片機實際有郊的引腳為40個,以下是89S52單片機的DIP封裝形式的引腳的名稱,如圖8。 圖9 單片機的引腳說明圖9是89S52的內(nèi)部結(jié)構(gòu)圖,由圖可以看到在單片機內(nèi)部除了有CPU、RAM、ROM和定時器、串行口等主要功能部件之外,還有驅(qū)動器、鎖存器、指令寄存器、地址寄存器等輔助電路部分,以及各功能模塊在單片機中的位置和相互關(guān)系。圖10 89S52的內(nèi)部結(jié)構(gòu)2 程序設(shè)計2.1 程序的思路根據(jù)點陣的顯示原理就可以編寫出顯示函數(shù),整個程序的設(shè)計分為串口通訊協(xié)議、掃描程序函數(shù)、效果處理函數(shù)。2.1.1 串口通訊協(xié)議#p:為顯示圖片

21、#c:為顯示漢字#l:為顯示英文#n:為顯示數(shù)字所有的控制命令必須以回車結(jié)束,指令接收并解碼正確則返回“Receive OK” ,否則返回“error”2.1.2 顯示處理效果函數(shù) 本系統(tǒng)只做了兩個顯示效果,一個是閃爍,一個是左移。閃爍相對簡單,先顯示延時,清屏延時,再顯示。左移則相對復(fù)雜,需要將顯示緩存的內(nèi)容全部左移一點,左移的時候取前一個字節(jié)的低位等于后一個字節(jié)的低位,一屏移完一點后送顯示,再移一點,這樣循環(huán)就可以實現(xiàn)了左移的效果。2.1.3 顯示函數(shù) 這個函數(shù)是將顯示緩存的內(nèi)容送到顯示屏,做一個74HC595的驅(qū)動即可,送完一行數(shù)據(jù)后點亮,再送下一行,這樣循環(huán)16次,就可以掃描完16行高

22、的顯示屏。2.2 程序流程圖程序初始化左移或者閃爍顯示,是否顯示完 串口發(fā)送顯示命令將顯示緩存送顯示屏顯示,掃描16行 NO傳入?yún)?shù)為移動速度。YES中斷程序初始化主要程序見附錄。3 總結(jié)通過這次實訓(xùn),真正地做了一個點陣控制器,能顯示漢字、圖片、英文、數(shù)字,雖然之前有接觸過LED點陣,但是一直是在門外看,沒有真正深入進去實際操作,只是對顯示原理有個大概的了解;本來計劃將時鐘、亮度、溫度加入到整個系統(tǒng)中來,這樣就更加接近實際應(yīng)用,但是由于時間的關(guān)系,只做了串口通訊部分進去,而且功能也較為簡單。在調(diào)試串口通訊花的時候是最多的,主要是因為串口通訊芯片與單片機的連接錯誤,導(dǎo)致無法通訊。在整個實訓(xùn)過程中

23、,真正能學(xué)到東西的是調(diào)試,雖然我們平常使用的Proteus仿真軟件也與實際差距越來越小,但是理論與實際的還是有相當(dāng)?shù)牟煌铌P(guān)鍵的是發(fā)現(xiàn)問題,并解決問題,這樣會對以后的學(xué)習(xí)中都有較大的幫助。除此之外,在實訓(xùn)的過程中與其它同學(xué)之間互相溝通與交流,通過學(xué)習(xí)其它的設(shè)計思路,發(fā)現(xiàn)其優(yōu)點及缺點,然后一起討論,這有利于提高我們的綜合能力,為以后走上好的工作崗位打下堅實的基礎(chǔ)。謝 辭實訓(xùn)臨近結(jié)束了,在此過程中很多同學(xué)和老師都在耐心的幫助我。衷心感謝老師的悉心指導(dǎo)和同學(xué)們的熱情幫助,在我實訓(xùn)完成過程中,老師同學(xué)提供了許多寶貴意見,讓我學(xué)到了許多知識,開闊了眼界,增強了我的動手和動腦能力。同時,感激06級師兄的

24、幫助,有了他們耐心的指導(dǎo)我做板,我才能在規(guī)定的時間完成這次實訓(xùn),并從中學(xué)到了更多的知識。我水平有限,所以這次設(shè)計還存在著許多不盡如人意的地方,歡迎老師和同學(xué)批評指正。此外,還要感謝我們學(xué)院為我們提供這個機會和必要物質(zhì)支持。 參考文獻1 陳孟建等編著.C語言程序設(shè)計.電子工業(yè)出版社,2006.6:1936 ,171182.2 郭勇編著.Protel 99 SE印制電路板設(shè)計教程.機械工業(yè)出版社,2005.1:51503 徐愛鈞,彭秀華編著.單片機高級語言c51windows環(huán)境編程與應(yīng)用.電子工業(yè)出版社,2001.7:1112,附 錄具體程序如下:串口通訊部分:/*函數(shù)名稱:Interrupt_

25、serial()傳入?yún)?shù): 無函數(shù)功能:串口通訊協(xié)議*/void Interrupt_serial() interrupt 4 using 1 EA = 0; if(RI) Serial_Int_tempReceiv_Count=SBUF; / Receiv_Count+; if(Receiv_Count>=4) if(Serial_Int_tempReceiv_Count-2=0x0d && Serial_Int_tempReceiv_Count-1=0x0a)/以回車結(jié)尾 Send_char(&Serial_Int_temp0,Receiv_Count); i

26、f(Serial_Int_temp0='#') /指令格式 switch(Serial_Int_temp1) case 'p': Send_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; case 'n': Send_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; case 'l': Send_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; case &

27、#39;c': Send_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; default: Send_char(&Serial_Error0,7); /指令錯誤 break; scan_mod=Serial_Int_temp1; /顯示內(nèi)容 cldispb(); /清緩存 else Send_char(&Serial_Error0,7); /指令錯誤 else Send_char(&Serial_Error0,7); /指令錯誤 Receiv_Count=0;/接收數(shù)據(jù)字節(jié)計數(shù)器 if(Receiv_C

28、ount>=39)Receiv_Count=0; RI=0; /清接收標(biāo)志 EA = 1; /開中斷/*函數(shù)名稱:display1p()傳入?yún)?shù):無函數(shù)功能:掃描顯示屏*/void display1p() uchar temp,j,k,i; unsigned char *point,*point1; uchar hangxu=1; point1=&disp_buf0; point = point1; for(j=0;j<16;j+) for(k=0;k<plong;k+) temp=*point; for(i=0;i<8;i+) CLK=0; R1=1; if(

29、temp&0x80)=0x00) R1=0; CLK=1; temp<<=1; point+; OE=0; STR=0; STR=1; STR = 0; Showline(j); OE=1; ddlay(9); OE=0; point=point1+plong*(j); /*函數(shù)名稱:moveleft(unsigned char sspp)傳入?yún)?shù): unsigned char sspp 移動速度函數(shù)功能:左移顯示效果*/void moveleft(unsigned char sspp)uchar i,j,k; switch(scan_temp) case 'p&#

30、39;: photo_todisp(); break; case 'l': letter_todisp(); break; case 'n': num_todisp(); break; case 'c': dztodisp(); break; default: dztodisp(); break; for(i=0;i<plong;i+)/屏的長度for(j=0;j<8;j+)leftoned();/左移1點for(k=0;k<sspp;k+)display1p(); if(scan_mod != scan_temp)scan_t

31、emp=scan_mod;goto exit; /是否接收到命令 exit:; /退出標(biāo)記 cldispb(); /清顯示緩存完整源程序1,main.c 主函數(shù)/*文件清單:main.c 主函數(shù)code_area.c 字庫表display.c 顯示相關(guān)函數(shù)com.c 串口通信相關(guān)函數(shù)CPU含256B RAM現(xiàn)分配如下:00H - 07FH 程序常規(guī)使用 128B7FH - FFH 顯示緩存 128B*/#include <reg51.h>#include <intrins.h>#include <display.h>#include <com.h>

32、;#include <main.h>#define uint unsigned int #define uchar unsigned charuchar Serial_Int_temp5;uchar Receiv_Count=0; /串口接收字節(jié)計數(shù)uchar scan_mod;sbit R1= P00 ;sbit R2= P01;sbit G1= P02;sbit G2= P03;sbit LL1 = P04;sbit LL2= P05;sbit LL3= P06;sbit LL4= P07;sbit OE= P23 ;sbit STR= P22;sbit CLK= P21; v

33、oid main()/主函數(shù)/SetTime( 0x12 , 0x23 ,0x50 ); SP = 0X30; Init_com(); Send_char(&Serial_Strar_inf0,27); /onedisp(20);while(1) cldispb(); moveleft(20); flicker(5,5);/*GetTime(); /讀DS1302 temp= ADC0832(); */*函數(shù)名稱:Interrupt_serial()傳入?yún)?shù): 無函數(shù)功能:串口通訊協(xié)議*/void Interrupt_serial() interrupt 4 using 1 EA =

34、0; if(RI) Serial_Int_tempReceiv_Count=SBUF; / Receiv_Count+; if(Receiv_Count>=4) if(Serial_Int_tempReceiv_Count-2=0x0d && Serial_Int_tempReceiv_Count-1=0x0a) Send_char(&Serial_Int_temp0,Receiv_Count); if(Serial_Int_temp0='#') /指令格式 switch(Serial_Int_temp1) case 'p': Se

35、nd_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; case 'n': Send_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; case 'l': Send_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; case 'c': Send_char(&Serial_Recei_OK0,10); /命令正確,反饋接收成功信息 break; default: Sen

36、d_char(&Serial_Error0,7); /指令錯誤 break; scan_mod=Serial_Int_temp1; /顯示內(nèi)容 cldispb(); else Send_char(&Serial_Error0,7); /指令錯誤 else Send_char(&Serial_Error0,7); /指令錯誤 Receiv_Count=0; if(Receiv_Count>=39)Receiv_Count=0; RI=0; EA = 1;Main.c所用到的頭文件源代碼:(1),display.h#define _DISPLAY_H#include

37、<reg51.h>#define uint unsigned int #define uchar unsigned char/extern void display1p();/顯示函數(shù)extern void process_disbuf(unsigned char char_num);extern void onedisp(unsigned char ttime);extern void display1p();extern void moveleft(unsigned char sspp);extern void cldispb(void);/清顯示緩存區(qū)extern void

38、flicker(unsigned char sspeed,unsigned char stop);/閃爍顯示/extern void display(uint disp_long,uchar disp_times,uchar effect);/extern void display();/extern unsigned char xdata disp_buf128;/extern unsigned char disp_buf32;(2),com.h#define _COM_H#include <reg51.h>#define uint unsigned int #define uc

39、har unsigned charextern void Send_char(uchar *Data_addr,uchar char_num);extern unsigned char code Serial_data42;extern unsigned char code Serial_Recei_OK10;extern unsigned char code Serial_Error7;extern unsigned char code Serial_Strar_inf27;extern void Init_com();(3),main.h #define _MAIN_H#include &

40、lt;reg51.h>#define uint unsigned int #define uchar unsigned charextern uchar scan_mod;2,code_area.c LED點陣的字庫/英文的ASCII為97-122(十進制) 61-7A(ASCII碼)#include <code_area.h>unsigned char code num_dotmatrix1016=/*- 文字: 0 -*/ /*- 宋體12; 此字體下對應(yīng)的點陣為:寬x高=8x16 -*/ 0xFF,0xFF,0xFF,0xE7,0xDB,0xBD,0xBD,0xBD,0

41、xBD,0xBD,0xBD,0xBD,0xDB,0xE7,0xFF,0xFF,/*"0",0*/0xFF,0xFF,0xFF,0xEF,0x8F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0x83,0xFF,0xFF,/*"1",1*/0xFF,0xFF,0xFF,0xC3,0xBD,0xBD,0xBD,0xFB,0xFB,0xF7,0xEF,0xDF,0xBD,0x81,0xFF,0xFF,/*"2",2*/0xFF,0xFF,0xFF,0xC3,0xBD,0xBD,0xFB,0xE7,0xFB

42、,0xFD,0xFD,0xBD,0xBB,0xC7,0xFF,0xFF,/*"3",3*/0xFF,0xFF,0xFF,0xFB,0xF3,0xEB,0xDB,0xDB,0xBB,0xBB,0x81,0xFB,0xFB,0xE1,0xFF,0xFF,/*"4",4*/0xFF,0xFF,0xFF,0x81,0xBF,0xBF,0xBF,0xA7,0x9B,0xFD,0xFD,0xBD,0xBB,0xC7,0xFF,0xFF,/*"5",5*/0xFF,0xFF,0xFF,0xE3,0xDB,0xBF,0xBF,0xA7,0x9B,0x

43、BD,0xBD,0xBD,0xDB,0xE7,0xFF,0xFF,/*"6",6*/0xFF,0xFF,0xFF,0x81,0xBB,0xBB,0xF7,0xF7,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xFF,0xFF,/*"7",7*/0xFF,0xFF,0xFF,0xC3,0xBD,0xBD,0xBD,0xDB,0xE7,0xDB,0xBD,0xBD,0xBD,0xC3,0xFF,0xFF,/*"8",8*/0xFF,0xFF,0xFF,0xE7,0xDB,0xBD,0xBD,0xBD,0xD9,0xE5,

44、0xFD,0xFD,0xDB,0xC7,0xFF,0xFF/*"9",9*/;unsigned char code picture_code128=/*-圖片-*/*-寬度16*64*/0xFF,0xFF,0xFF,0xE0,0x7F,0xFE,0x03,0xFF,0xF8,0x01,0xFF,0xCF,0x3F,0xFC,0xF8,0x7F,0xF3,0xFC,0xFF,0xBF,0x9F,0xF3,0xFF,0x3F,0xE6,0x66,0x3E,0x7F,0xCF,0xF5,0xAD,0xDF,0xEC,0x63,0xBE,0xC4,0x27,0xEC,0x21,0x

45、CF,0xE9,0x5B,0xBC,0xFF,0xF3,0xCE,0x73,0xEF,0xEF,0xFF,0xBD,0xFF,0xFB,0xDF,0xFF,0xEF,0xEF,0xFF,0xBD,0xFF,0xF3,0xDF,0xFF,0xEF,0xEE,0xF7,0xBC,0xE0,0x77,0xCC,0xFD,0x9F,0xEE,0x67,0xBE,0xFF,0xF7,0xEE,0xF9,0x9F,0xEF,0x0F,0x3E,0x7F,0xF7,0xEE,0x03,0x3F,0xE7,0xFF,0x7F,0x3F,0xC7,0xF7,0xFF,0x7F,0xF7,0xFE,0x7F,0x

46、BF,0x8F,0xF1,0xFE,0x7F,0xF3,0xFC,0xFF,0x9F,0xBF,0xFC,0xFC,0xFF,0xF8,0x01,0xFF,0xC0,0x7F,0xFF,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"未命名文件",0*/;unsigned char code dotmatrix_chinese832=0xDF,0xBF,0xDF,0xBF,0xDF,0xBF,0xDC,0x03,0x03,0xBF,0xDF,0xBF,0x88,0x01,0x97,0xFF,0x97,0xBF,0x5

47、F,0xBF,0xDC,0x03,0xDF,0xBF,0xDF,0xBF,0xDF,0xBF,0xD0,0x01,0xDF,0xFF,/*"桂",0*/0xEF,0xDF,0xEF,0xDF,0xEF,0xDF,0xEF,0xDF,0x02,0x01,0xEF,0xDF,0xEF,0x9F,0xC7,0x8F,0xCB,0x4F,0xAB,0x57,0xAE,0xD7,0x6D,0xD9,0xEB,0xDB,0xEF,0xDF,0xEF,0xDF,0xEF,0xDF,/*"林",1*/0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xC0,

48、0x07,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,0xDE,0xF7,0xFE,0xFD,0xFE,0xFD,0xFF,0x01,0xFF,0xFF,/*"電",2*/0xFF,0xFF,0xC0,0x0F,0xFF,0xDF,0xFF,0xBF,0xFF,0x7F,0xFE,0xFF,0xFE,0xFF,0xFE,0xFB,0x00,0x01,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFA,0xFF,0xFD,0xFF,/*"子",3*/0xF9,0xF7,0x87,0x77,0xF7,0xB7,0xF7,0xB7,0x01,0xF7,0xE7,0x77,0xE3,0xB7,0xD5,0xB7,0xD7,0xF1,0xB7,0x87,0x74,0x77,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,0xF7,

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論