畢業(yè)設(shè)計(jì)論文點(diǎn)陣實(shí)現(xiàn)_第1頁
畢業(yè)設(shè)計(jì)論文點(diǎn)陣實(shí)現(xiàn)_第2頁
畢業(yè)設(shè)計(jì)論文點(diǎn)陣實(shí)現(xiàn)_第3頁
畢業(yè)設(shè)計(jì)論文點(diǎn)陣實(shí)現(xiàn)_第4頁
畢業(yè)設(shè)計(jì)論文點(diǎn)陣實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、摘 要本文介紹了一款以單片機(jī)stc89c52為控制器的led點(diǎn)陣顯示屏系統(tǒng)的設(shè)計(jì)。該系統(tǒng)可實(shí)現(xiàn)宋體漢字的靜態(tài)顯示和動態(tài)特效顯示。系統(tǒng)采用pc機(jī)作為上位機(jī),上位機(jī)向單片機(jī)發(fā)送控制命令和上位機(jī)所存儲的顯示代碼,stc89c52單片機(jī)接收并處理pc機(jī)的控制命令以及顯示代碼,由顯示驅(qū)動模塊驅(qū)動一個1616分辨率的led點(diǎn)陣顯示屏的掃描顯示。上位機(jī)軟件部分主要通過軟件編寫一個字模轉(zhuǎn)換發(fā)送的界面;實(shí)現(xiàn)上位機(jī)與下位機(jī)的通信;控制部分主芯片是stc89c52,是系統(tǒng)的核心,再利用c語言編程下載實(shí)現(xiàn)對單片機(jī)各引腳的控制;led點(diǎn)陣顯示屏包括驅(qū)動電路和顯示屏,74hc138譯碼器輸出控制顯示屏的行掃描,74hc5

2、73(八位數(shù)據(jù)鎖存器)控制顯示屏的列,由于人眼視覺的滯留現(xiàn)象,行列驅(qū)動電路通過動態(tài)控制便實(shí)現(xiàn)了漢字的顯示。關(guān)鍵詞:stc89c52 led點(diǎn)陣屏 單片機(jī) 74hc138 74hc573 abstractthis paper introduced a system design of led dot matrix display which based on a single-chip controller stc89c52 . the system can display arial static and dynamic character effects display. system us

3、es a pc as a pc, the pc sends control commands to the microcontroller and pc display code stored, stc89c52 microcontroller receives and processes the command and control of the pc display code, by the display driver module to drive a 16 16 resolution led dot matrix display scan display. pc software

4、software development, mainly through vb interface to send a font conversion; between pc and the next crew of communication; controlling part of the main chip is stc89c52, is the core of the system, and then use the c programming language download each pin of the microcontroller to achieve control; l

5、ed dot matrix display includes a drive circuit and display, 74hc138 decoder output control display line scan, 74hc573 (eight data latches) control the display of the column, because the human visual retention phenomenon, the ranks driving circuit through the dynamic control will achieve a display of

6、 chinese characters.keywords: stc89c52 led dot matrix display microcontroller 74hc138 74hc573目錄 第一章 緒 論11.1 課題背景11.1.1 選題背景11.1.2 研究現(xiàn)狀和發(fā)展趨勢11.1.3課題意義21.2 論文主要內(nèi)容3第二章 方案的選定52.1系統(tǒng)硬件方案52.1.1 顯示屏主控制器52.1.2 通信系統(tǒng)72.1.3 led點(diǎn)陣顯示屏72.1.4 硬件設(shè)計(jì)方案92.2 系統(tǒng)軟件方案92.2.1 單片機(jī)編程語言92.2.2 系統(tǒng)軟件編譯器介紹102.2.3 上位機(jī)控制傳輸軟件10第三章 點(diǎn)陣屏

7、113.1 點(diǎn)陣屏原理113.1.1點(diǎn)陣的顯示原理113.1.2 點(diǎn)陣屏的組合123.1.3 點(diǎn)陣的驅(qū)動原理123.2 字模的提取13第四章 系統(tǒng)硬件設(shè)計(jì)154.1系統(tǒng)硬件整體設(shè)計(jì)概述和功能分析154.2控制單元設(shè)計(jì)164.2.1 stc89c52簡介164.2.2 控制系統(tǒng)設(shè)計(jì)184.3 譯碼電路184.4 驅(qū)動電路214.4.1 行驅(qū)動電路214.4.2 列驅(qū)動電路214.5電源電路23第五章 系統(tǒng)軟件設(shè)計(jì)255.1 程序設(shè)計(jì)255.1.1 靜態(tài)顯示程序265.1.2 動態(tài)掃描程序27第六章 系統(tǒng)調(diào)試296.1 系統(tǒng)硬件部分調(diào)試方法296.1.1 短路與虛焊檢測296.1.2 上電測試29

8、6.2 系統(tǒng)軟件調(diào)試方法296.3 系統(tǒng)聯(lián)合調(diào)試及結(jié)果306.4 調(diào)試結(jié)果分析30第七章 結(jié) 論31致謝33參考文獻(xiàn)35附錄a 電路圖37附錄b 程序39附錄c 實(shí)物圖43 第一章 緒 論1.1 課題背景1.1.1 選題背景 led顯示屏是八十年代后期在全球迅速發(fā)展起來的新型信息顯示媒體,顯示屏由幾萬甚至幾十萬個半導(dǎo)體發(fā)光二極管像素點(diǎn)均勻排列組成。利用不同的材料可以制造不同色彩的led像素點(diǎn)。目前應(yīng)用最廣的是紅色、綠色、黃色。而藍(lán)色和純綠色led的開發(fā)已經(jīng)達(dá)到了實(shí)用階段。led顯示屏可以顯示變化的數(shù)字、文字、圖形圖像;不僅可以用于室內(nèi)環(huán)境還可以用于室外環(huán)境,具有投影儀、電視墻、液晶顯示屏無法比

9、擬的優(yōu)點(diǎn)1。在短短的十來年中,led點(diǎn)陣顯示屏就以亮度高、工作電壓低、功耗小、小型化、壽命長、耐沖擊和性能穩(wěn)定的優(yōu)點(diǎn)迅速成長為平板顯示的主流產(chǎn)品,在信息顯示領(lǐng)域得到了廣泛的應(yīng)用。led的發(fā)展前景極為廣闊,目前正朝著更高亮度、更高耐氣候性、更高的發(fā)光密度、更高的發(fā)光均勻性、可靠性、全色化方向發(fā)展。led顯示屏的應(yīng)用涉及社會經(jīng)濟(jì)的許多領(lǐng)域,主要包括:(1)證券交易、金融信息顯示;(2)機(jī)場航班動態(tài)信息顯示;(3)港口、車站旅客引導(dǎo)信息顯示;(4)體育場館信息顯示;(5)道路交通信息顯示;(6)調(diào)度指揮中心信息顯示;(7)郵政、電信、商場購物中心等服務(wù)領(lǐng)域的業(yè)務(wù)宣傳及信息顯示;(8)廣告媒體新產(chǎn)品等

10、。1.1.2 研究現(xiàn)狀和發(fā)展趨勢 1.我國led產(chǎn)業(yè)發(fā)展現(xiàn)狀 我國的led顯示屏產(chǎn)業(yè)經(jīng)過幾年的發(fā)展,基本形成了一批具有一定規(guī)模的骨干企業(yè)。據(jù)不完全統(tǒng)計(jì),至1998年底,年度銷售總額在1000萬元以上的企業(yè)有20多家,其銷售總額達(dá)6億元左右,占行業(yè)市場總額的85%以上。全國從事led顯示屏的各類企業(yè)有100余家,從業(yè)人員近6000人,行業(yè)年度銷售總額近8億元人民幣,1996年、1997年的增長速度均保持40%左右,1998年略有回落。在國內(nèi)市場上,國產(chǎn)led顯示屏的市場占有率近100%,國外同類產(chǎn)品基本沒有市場,四十三屆世乒賽主會場天津體育中心、京九鐵路、北京西客站、首都機(jī)場、浦東機(jī)場等,均由國

11、內(nèi)代表企業(yè)中標(biāo)。技術(shù)水平相對領(lǐng)先,我國led顯示屏產(chǎn)業(yè)在規(guī)模發(fā)展的同時,產(chǎn)品技術(shù)推陳出新,一直保持比較先進(jìn)的水平。90年代初即具備了成熟的16級灰度256色視頻控制技術(shù)及無線遙控等國際先進(jìn)水平技術(shù),近年在全彩色led顯示屏、256級灰度視頻控制技術(shù)、集群無經(jīng)線控制、多級群控技術(shù)等方面均有國內(nèi)先進(jìn)、達(dá)到國際水平的技術(shù)和產(chǎn)品出現(xiàn),led顯示屏控制專用大規(guī)模集成電路也已由國內(nèi)企業(yè)開發(fā)生產(chǎn)并得到應(yīng)用。led顯示屏產(chǎn)業(yè)培養(yǎng)形成了一批led顯示屏科技隊(duì)伍,在全國led顯示屏行業(yè)的從業(yè)人數(shù)6000人中科技人員有2800多人,將近50%。led顯示屏產(chǎn)業(yè)正成為我國電子信息產(chǎn)業(yè)的重要組成部分,也是平板顯示領(lǐng)域唯

12、一立足國內(nèi)形成的民族高科技產(chǎn)業(yè)。 2.led顯示屏的發(fā)展趨勢 現(xiàn)代信息社會中,作為人一機(jī)信息視覺傳播媒體的顯示產(chǎn)品和技術(shù)得到迅速發(fā)展,進(jìn)入二十一世紀(jì)的顯示技術(shù)將是平板顯示的時代,led顯示屏作為平板顯示的主導(dǎo)產(chǎn)品之一無疑會有更大的發(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)境條件要求,同時由于全彩色顯示屏價格性能比的優(yōu)勢,預(yù)計(jì)在未來幾

13、年的發(fā)展中,全彩色led顯示屏在戶外廣告媒體中會越來越多地代替?zhèn)鹘y(tǒng)的燈箱、霓紅燈、磁翻板等產(chǎn)品,體育場館的顯示方面全彩色led屏更會成為主流產(chǎn)品。全彩色led顯示屏的廣泛應(yīng)用會是led顯示屏產(chǎn)業(yè)發(fā)展的一個新的增長點(diǎn)。 未來led顯示屏?xí)蛑鴺?biāo)準(zhǔn)化、規(guī)范化,產(chǎn)品結(jié)構(gòu)多樣化的方向發(fā)展2。1.1.3課題意義 該設(shè)計(jì)課題使我們能夠掌握led顯示屏的基本顯示原理和設(shè)計(jì)方法,對led顯示屏這個行業(yè)有了較為深刻的了解和認(rèn)識。并且對大學(xué)期間所學(xué)習(xí)的一些理論進(jìn)行了實(shí)踐,使我們對所學(xué)過的理論知識有了新的認(rèn)識。并且通過該設(shè)計(jì)課題掌握了51單片機(jī)的的軟硬件開發(fā)工具的使用方法,為以后從事相關(guān)行業(yè)的工作積累了實(shí)際工作經(jīng)驗(yàn)

14、。目前我國的信息行業(yè)發(fā)展迅速,作為主要平面顯示媒介的led顯示屏的作用也越練越廣泛,相關(guān)的從業(yè)人員也會越來越緊缺。但同時應(yīng)該清楚的認(rèn)識到我國的led技術(shù)雖然發(fā)展迅速但和世界先進(jìn)水平還有一定的差距。因此該課題不僅對自己的專業(yè)知識進(jìn)行了一個實(shí)踐,也為以后自己有可能從事的工作打下了基礎(chǔ)。1.2 論文主要內(nèi)容1.方案的選定 通過對課題的分析,首先進(jìn)行了對方案的選定,期間參考了很多的資料,最終選定pc機(jī)為上位機(jī),單片機(jī)為核心控制器件,外加譯碼電路和驅(qū)動電路控制點(diǎn)陣顯示。 2.硬件的設(shè)計(jì) 在方案選定之后,開始了具體的硬件電路的設(shè)計(jì)和分析,通過對點(diǎn)陣原理的學(xué)習(xí)和掌握,對74hc573和74hc138芯片等的

15、學(xué)習(xí)和應(yīng)用,還有對單片機(jī)的學(xué)習(xí)和了解,設(shè)計(jì)出可行的硬件電路。論文中都有詳細(xì)的介紹。 3.軟件的設(shè)計(jì) 由硬件電路設(shè)計(jì)完成無誤之后,在這個基礎(chǔ)上進(jìn)行軟件的編寫,所用的編輯語言為c語言。程序按功能分為靜態(tài)顯示和動態(tài)顯示兩個模塊組成,在調(diào)試過程分塊單獨(dú)調(diào)試。期間還涉及到keil軟件的學(xué)習(xí)和使用,在論文中都做了詳細(xì)的介紹。 4.軟硬件的調(diào)試 調(diào)試分為硬件調(diào)試、軟件調(diào)試和系統(tǒng)聯(lián)合調(diào)試幾步來進(jìn)行。在硬件調(diào)試中發(fā)現(xiàn)有供電電源不足以及芯片的不能正常工作等問題。在軟件調(diào)試中出現(xiàn)程序整合工作不協(xié)調(diào)等問題。通過分析,查找找出了問題原因并設(shè)法將其解決。 5.結(jié)論 對自己在完成該課題的過程中所收獲到以及所犯下的錯誤的一個

16、總結(jié)。第2章 方案的選定2.1系統(tǒng)硬件方案 大多數(shù)的led顯示屏都在戶外,所以對硬件的質(zhì)量要求非常的高。為方便檢修和維護(hù)硬件電路設(shè)計(jì)時常常采用模塊化的設(shè)計(jì)方法。硬件的設(shè)計(jì)采用模塊化設(shè)計(jì),既要滿足模塊本身功能又要能夠和整個系統(tǒng)兼容。如圖2-1所示,根據(jù)顯示系統(tǒng)的功能特點(diǎn)確定系統(tǒng)硬件由顯示屏部分,控制部分,通信系統(tǒng)及上位機(jī)四部分組成。上位機(jī)通過通信部分向控制部分發(fā)送控制指令和顯示內(nèi)容代碼,控制部分執(zhí)行顯示指令并將顯示代碼處理后控制顯示部分的顯示內(nèi)容和顯示方式。 顯示部分 控制部分 通信系統(tǒng) 上位機(jī) 圖2.1 系統(tǒng)硬件組成框圖2.1.1 顯示屏主控制器控制部分是整個系統(tǒng)的核心部分,其功能為與上位機(jī)通

17、信接收上位機(jī)發(fā)送的數(shù)據(jù)和控制指令處理過后控制顯示部分顯示內(nèi)容。其常用的電子設(shè)計(jì)方法有單片機(jī)、dsp、及eda技術(shù)。幾種設(shè)計(jì)方法比較各有其特點(diǎn)。1.單片機(jī)單片機(jī)是集成了cpu,rom,ram和i/ o口的微型計(jì)算機(jī)。它有很強(qiáng)的接口性能,非常適合于工業(yè)控制,因此又叫微控制器(mcu)。單片機(jī)品種齊全,型號多樣 cpu 從8,16,32到64位,多采用risc 技術(shù),片上i/o非常豐富,有的單片機(jī)集成有a/ d,“ 看門狗”,pwm,顯示驅(qū)動,函數(shù)發(fā)生器,鍵盤控制等。它們的價格也高低不等,這樣極大地滿足了開發(fā)者的選擇自由。除此之外單片機(jī)還具有低電壓和低功耗的特點(diǎn)。隨著超大規(guī)模集成電路的發(fā)展,nmos

18、工藝單片機(jī)被cmos代替,并開始向hmos 過渡。供電電壓由5v 降到3v,2v甚至到1v,工作電流由ma降至a ,這在便攜式產(chǎn)品中大有用武之地3。2.dsp 芯片dsp 又叫數(shù)字信號處理器。顧名思義,dsp主要用于數(shù)字信號處理領(lǐng)域,非常適合高密度,重復(fù)運(yùn)算及大數(shù)據(jù)容量的信號處理。現(xiàn)在已經(jīng)廣泛應(yīng)用于通信、便攜式計(jì)算機(jī)和便攜式儀表、雷達(dá)、圖像、航空、家用電器、醫(yī)療設(shè)備等領(lǐng)域,dsp具有修正的哈佛結(jié)構(gòu),多總線技術(shù)以及流水線結(jié)構(gòu)。將程序與數(shù)據(jù)存儲器分開,使用多總線,取指令和取數(shù)據(jù)同時進(jìn)行,以及流水線技術(shù),這使得速度有了較大的提高。dsp區(qū)別于一般微處理器的另一重要標(biāo)志是硬件乘法器以及特殊指令,一般微

19、處理器用軟件實(shí)現(xiàn)乘法,逐條執(zhí)行指令,速度慢。而dsp 依靠硬件乘法器單周期完成乘法運(yùn)算,而且還具有專門的信號處理指令,如tm320 系列的firs ,lms,macd指令等4。3.edaeda(即electronic design automation) 即電子設(shè)計(jì)自動化,它是以計(jì)算機(jī)為工具,在eda 軟件平臺上,對用硬件描述語言hdl 完成的設(shè)計(jì)文件自動地邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合及優(yōu)化、邏輯布局布線、邏輯仿真,直至對于特定目標(biāo)芯片進(jìn)行適配編譯、邏輯影射和編程下載等。設(shè)計(jì)者只需用hdl 語言完成系統(tǒng)功能的描述,借助eda工具就可得到設(shè)計(jì)結(jié)果,將編譯后的代碼下載到目標(biāo)芯片就可在硬件

20、上實(shí)現(xiàn)。由于fpga/cpld可以通過軟件編程對該硬件的結(jié)構(gòu)和工作方式進(jìn)行重構(gòu),修改軟件程序就相當(dāng)于改變了硬件,軟件編寫可以采用自頂向下的設(shè)計(jì)方案,而且可以多個人分工并行工作這樣便縮短了開發(fā)周期和上市時間,有利于在激烈的市場競爭中搶占先機(jī)。而且mcu和dsp都是通過串行執(zhí)行指令來實(shí)現(xiàn)特定功能,不可避免低速,而fpga/cpld則可實(shí)現(xiàn)硬件上的并行工作,在實(shí)時測控和高速應(yīng)用領(lǐng)域前景廣闊;另一方面,fpga/cplp器件在功能開發(fā)上是軟件實(shí)現(xiàn)的,但物理機(jī)制卻和純硬件電路一樣,十分可靠。三種設(shè)計(jì)方式相比較各有優(yōu)點(diǎn)且都能夠?qū)崿F(xiàn)控制功能,但單片機(jī)的技術(shù)門檻較低開發(fā)成本也較低非常適合初學(xué)者進(jìn)行學(xué)習(xí)和鍛煉使

21、用?,F(xiàn)在市場上常用的單片機(jī)主要有mcs-51、avr、arm、pic等。其中應(yīng)用最廣泛的單片機(jī)首推intel的51系列,由于產(chǎn)品硬件結(jié)構(gòu)合理,指令系統(tǒng)規(guī)范,加之生產(chǎn)歷史“悠久”,有先入為主的優(yōu)勢常作為單片機(jī)學(xué)習(xí)的教材。且51系列的i/o腳的設(shè)置和使用非常簡單,當(dāng)該腳作輸入腳使用時,只須將該腳設(shè)置為高電平(復(fù)位時,各i/o口均置高電平)。當(dāng)該腳作輸出腳使用時,則為高電平或低電平均可。所以在控制部分方案的選擇中選定51系列單片機(jī)作為控制部分的核心器件。2.1.2 通信系統(tǒng)通信部分要滿足的設(shè)計(jì)要求就是穩(wěn)定、快速、簡單易實(shí)現(xiàn)。因?yàn)橥ǔG闆r下顯示屏和上位機(jī)的距離不會很遠(yuǎn),所以通信距離的要求不是很高。計(jì)算

22、機(jī)數(shù)據(jù)通信主要采用并行通信和串行通信兩種方式。1.并行通信并行通信時數(shù)據(jù)的各個位同時傳送,可以字或字節(jié)為單位并行進(jìn)行。并行通信速度快,但用的通信線多、成本高,故不宜進(jìn)行遠(yuǎn)距離通信。2.串行通信串行通信數(shù)據(jù)是一位一位順序傳送,只用很少幾根通信線,串行傳送的速度低,但傳送的距離長,因此串行適用于長距離而速度要求不高的場合。在串行發(fā)送時,數(shù)據(jù)是一位一位按順序進(jìn)行的,而計(jì)算機(jī)內(nèi)部的數(shù)據(jù)是并行的。因此,當(dāng)計(jì)算機(jī)向外發(fā)送數(shù)據(jù)時,必須將并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù)再發(fā)送。反之,又必須將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)輸入計(jì)算機(jī)中。這種轉(zhuǎn)換即可以用硬件實(shí)現(xiàn)也可以用軟件實(shí)現(xiàn)。單由軟件實(shí)現(xiàn)會增加cpu負(fù)擔(dān),降低其利用率,故目前常

23、采用硬件實(shí)現(xiàn)。通用的通用異步接收/發(fā)送器,簡稱uart(universal asynchromous receeiver/trabsnitter)是完成這一功能的硬件電路。在單片機(jī)芯片中,uart已經(jīng)集成在其中,作為其組成部分,構(gòu)成一個串行口5。綜上所述,題目設(shè)計(jì)已經(jīng)選定了單片機(jī)為開發(fā)方式而單片機(jī)的uart已經(jīng)集成在單片機(jī)內(nèi),所以通信系統(tǒng)選擇串行通信為通信方式。2.1.3 led點(diǎn)陣顯示屏顯示部分包括了一塊至少可以顯示一個漢字的顯示屏,以及驅(qū)動該顯示屏的驅(qū)動電路。由于單片機(jī)的i/o口有限要不能直接用i/o口來驅(qū)動led顯示屏,所以需要對單片機(jī)io口進(jìn)行擴(kuò)展增加單片機(jī)并行輸出的能力。led顯示屏

24、是由一個一個的發(fā)光二極管點(diǎn)陣構(gòu)成的,要構(gòu)成大屏幕的led顯示屏就需要多個發(fā)光二極管。構(gòu)成led屏幕的方法有兩種,一是由單個的發(fā)光二極管逐點(diǎn)連接起來,如圖2.2所示;二是選用一些由單個發(fā)光二極管構(gòu)成的led點(diǎn)陣子模塊構(gòu)成大的led點(diǎn)陣模塊。目前市場上普遍采用的點(diǎn)陣模塊有88、1616幾種;這兩種屏幕構(gòu)成方法各有有缺點(diǎn),單個發(fā)光二極管構(gòu)成顯示屏優(yōu)點(diǎn)在于當(dāng)單個的發(fā)光二極管出現(xiàn)問題時只需更換一個二極管即可,檢修的成本較低,缺點(diǎn)在于連接線路復(fù)雜;而點(diǎn)陣模塊構(gòu)成的方法卻正好與之相反,模塊構(gòu)成省約了大量的連線,不過當(dāng)一個led出現(xiàn)問題時同在一個模塊的所有l(wèi)ed都必須被更換。這就加大了維修的成本。兩種方法相比

25、較,決定采取模塊構(gòu)成的方法來制作一個led點(diǎn)陣顯示屏。為了避免模塊的缺點(diǎn),選擇點(diǎn)陣數(shù)較小的模塊來減小出現(xiàn)這一問題的風(fēng)險。所以構(gòu)建一個1616的led點(diǎn)陣屏選用四塊88點(diǎn)陣模塊。圖 2.2 led點(diǎn)陣圖 一個1616的led顯示屏行和列各有16支引腳,不能單靠51單片機(jī)的端口驅(qū)動所以必須要對單片機(jī)的端口個數(shù)進(jìn)行擴(kuò)展。經(jīng)常采用的端口擴(kuò)展方法是用串并轉(zhuǎn)換芯片進(jìn)行譯碼。常用的串并轉(zhuǎn)換芯片有74ls154(4線-16線譯碼器)、74hc138(3線-8線譯碼器)、74ls164(8位串并轉(zhuǎn)換器)、74hc595等。51系列單片機(jī)端口低電平時,吸入電流可達(dá),具有一定的驅(qū)動能力;而為高電平時,輸出電流僅數(shù)十

26、甚至更?。娏鲗?shí)際上是由腳的上拉電流形成的),基本上沒有驅(qū)動能力,所以單片機(jī)不能直接驅(qū)動led顯示屏顯示。在單片機(jī)和顯示屏之間還需要增加以功能放大位目的的驅(qū)動電路6。2.1.4 硬件設(shè)計(jì)方案最終方案如圖2.3所示,以pc機(jī)作為上位機(jī)存儲和處理顯示內(nèi)容用串行通信的方式將顯示內(nèi)容和控制指令傳輸?shù)絾纹瑱C(jī)系統(tǒng),單片機(jī)根據(jù)上位機(jī)傳輸來的內(nèi)容和指令通過端口譯碼擴(kuò)展后驅(qū)動4塊88led點(diǎn)陣模塊構(gòu)成的1616的led點(diǎn)陣顯示屏。題目將以此方案為指導(dǎo)思想展開具體的硬件電路設(shè)計(jì)。圖2.3 硬件設(shè)計(jì)方案2.2 系統(tǒng)軟件方案 軟件的設(shè)計(jì)除了滿足設(shè)計(jì)功能外還必須要滿足易讀寫,方便下載和編譯。設(shè)計(jì)目標(biāo)和硬件總體結(jié)構(gòu)確定的

27、情況下,軟件可以分為主程序,顯示子程序,各種特效顯示子程序三個主要部分組成。軟件的編寫需要借助軟件編輯器和編譯軟件,編譯完成后還需要下載到單片機(jī)中執(zhí)行。編寫軟件之前得首先選擇一種合適的語言以及配套的編輯器和編譯軟件。最后還要選擇一款與所選單片機(jī)的下載器或下載軟件來把編寫的程序下載到單片機(jī)中執(zhí)行。2.2.1 單片機(jī)編程語言現(xiàn)在主要運(yùn)用的單片機(jī)編程語言為匯編語言和c語言。兩種語言相比較各有優(yōu)點(diǎn)。匯編語言(assembly language)是面向機(jī)器的程序設(shè)計(jì)語言,是一種功能很強(qiáng)的程序設(shè)計(jì)語言,也是利用計(jì)算機(jī)所有硬件特性并能直接控制硬件的語言。其具有執(zhí)行速度快,占內(nèi)存空間少等優(yōu)點(diǎn),但在編寫復(fù)雜程序

28、時具有明顯的局限性,匯編語言依賴于具體的機(jī)型,不能通用,也不能在不同機(jī)型之間移植7。c語言是一種源于編寫unix操作系統(tǒng)的語言,它是一種結(jié)構(gòu)化語言,可產(chǎn)生壓縮代碼。c語言結(jié)構(gòu)是以括號 而不是子和特殊符號的語言。c可以進(jìn)行許多機(jī)器級函數(shù)控制而不用匯編語言。與匯編相比,有如下優(yōu)點(diǎn):對單片機(jī)的指令系統(tǒng)不要求了解,僅要求對51的存儲器結(jié)構(gòu)有初步了解;寄存器分配、不同存儲器的尋址及數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理;程序有規(guī)范的結(jié)構(gòu),可分為不同的函數(shù)。這種方式可使程序結(jié)構(gòu)化;將可變的選擇與特殊操作組合在一起的能力,改善了程序的可讀性;編程及程序調(diào)試時間顯著縮短,從而提高效率;提供的庫包含許多標(biāo)準(zhǔn)子程序,具有較

29、強(qiáng)的數(shù)據(jù)處理能力;已編好程序可容易的植入新程序,因?yàn)樗哂蟹奖愕哪K化編程技術(shù)。c語言作為一種非常方便的語言而得到廣泛的支持,c語言程序本身并不依賴于機(jī)器硬件系統(tǒng),基本上不做修改就可根據(jù)單片機(jī)的不同較快地移植過來?;谝陨侠碛蓻Q定采用c語言為該顯示系統(tǒng)的編程語言。2.2.2 系統(tǒng)軟件編譯器介紹c語言編寫的程序并不能被單片機(jī)直接執(zhí)行還需要編譯為單片機(jī)可執(zhí)行的機(jī)器語言。因此在系統(tǒng)軟件設(shè)計(jì)中,編譯器必不可少。支持mcs51用c語言編程的編譯器主要有兩種:franklin c51編譯器和keilc51編譯器。目前在單片機(jī)開發(fā)中普遍都是使用keil c51來進(jìn)行編譯。因此軟件設(shè)計(jì)最終方案為采用c語言為程

30、序語言,kelc為編譯工具按照控制、顯示等幾個功能模塊來編寫程序。2.2.3 上位機(jī)控制傳輸軟件其中系統(tǒng)采用現(xiàn)在已經(jīng)非常普遍的pc機(jī)作為上位機(jī),這樣對該顯示系統(tǒng)的硬件要求便降低了,增加了系統(tǒng)的通用性。上位機(jī)的作用是存儲并處理顯示內(nèi)容,然后通過通信系統(tǒng)傳送到控制系統(tǒng)驅(qū)動顯示。led顯示上位機(jī)的內(nèi)容一般有實(shí)時顯示和存儲顯示兩種方法。實(shí)時顯示及上位機(jī)屏幕上的內(nèi)容同時顯示在led顯示屏上,上位機(jī)上內(nèi)容變化led顯示屏也跟著變化。存儲顯示是將顯示內(nèi)容處理過后存儲在上位機(jī)中通過通信系統(tǒng)傳輸?shù)斤@示屏顯示8。兩種顯示方法相比較:實(shí)時顯示屏幕能及時反應(yīng)上位機(jī)內(nèi)容的變化,顯示的效果和內(nèi)容的實(shí)時性好多用于新聞播報、

31、實(shí)況轉(zhuǎn)播用,但實(shí)時顯示硬件開銷大,對通信系統(tǒng)要求高,工藝復(fù)雜,成本高;存儲顯示雖實(shí)時性不高但硬件開銷小,成本低廉。課題設(shè)計(jì)題目對顯示的實(shí)時性要求較低且所設(shè)計(jì)的顯示屏尺寸不大同時顯示的內(nèi)容不多,所以實(shí)時顯示就沒有必要。所以上位機(jī)選擇存儲顯示的方法,控制led顯示屏的顯示內(nèi)容9。第三章 點(diǎn)陣屏3.1 點(diǎn)陣屏原理3.1.1點(diǎn)陣的顯示原理 led點(diǎn)陣屏有單色和雙色、全彩三類,可顯示紅,黃,綠,橙等。如圖3.1所示,led點(diǎn)陣有4*4、4*8、5*7、5*8、 8*8、16*16、24*24、40*40等多種;根據(jù)圖素的數(shù)目分為等,雙原色、三原色等,根據(jù)圖素顏色的不同所顯示的文字、圖像等內(nèi)容的顏色也不同

32、,單原色點(diǎn)陣只能顯示固定色彩如紅、綠、黃等單色,雙原色和三原色點(diǎn)陣顯示內(nèi)容的顏色由圖素內(nèi)不同顏色發(fā)光二極體點(diǎn)亮組合方式?jīng)Q定,如紅綠都亮?xí)r可顯示黃色,假如按照脈沖方式控制二極體的點(diǎn)亮?xí)r間,則可實(shí)現(xiàn)256或更高級灰度顯示,即可實(shí)現(xiàn)真彩色顯示。如圖3.2所示的點(diǎn)陣內(nèi)部連接圖,led點(diǎn)陣根據(jù)每列l(wèi)ed的陽極(即列引腳)是否連接在一起,分為“共陽型”和“共陰型”兩種,其中“共陽型”的陽極連接在一起,每行l(wèi)ed的陰極(即行引腳)連接在一起,“共陰型”正好相反。以簡單的8x8點(diǎn)陣為例,它共由64個發(fā)光二極管組成,且每個發(fā)光二極管是放置在行線和列線的交叉點(diǎn)上,當(dāng)對應(yīng)的某一行置1電平,某一列置0電平,則相應(yīng)的二

33、極管就亮;如要將第一個點(diǎn)點(diǎn)亮,則9腳接高電平13腳接低電平,則第一個點(diǎn)就亮了;如果要將第一行點(diǎn)亮,則第9腳要接高電平,而(13、3、4、10、6、11、15、16)引腳接低電平,那么第一行就會點(diǎn)亮;如要將第一列點(diǎn)亮,則第13腳接低電平,而(9、14、8、12、1、7、2、5)引腳接高電平,那么第一列就會點(diǎn)亮。 圖3.1 8*8led點(diǎn)陣圖3.2 點(diǎn)陣內(nèi)部連接圖 從理論上說,不論顯示圖形還是文字,只要控制與組成這些圖形或文字的各個點(diǎn)所在的位置相對應(yīng)的led器件發(fā)光,就可以得到我們想要的顯示結(jié)果,這種同時控制各個發(fā)光點(diǎn)亮滅的方法稱為靜態(tài)驅(qū)動顯示方式。另一種顯示方法為動態(tài)掃描,簡單地說就是逐行輪流點(diǎn)

34、亮,這樣掃描驅(qū)動電路就可以實(shí)現(xiàn)多行(比如說16行)的同名列共用一套驅(qū)動器。具體就是16*16的點(diǎn)陣來說 ,把所有同一行的發(fā)光管的陽極還在一起,把所有同一列的發(fā)光管的陰極連在一起(共陽極的接法),先送出對應(yīng)第一行發(fā)光管亮滅的數(shù)據(jù)并鎖存,然后選通第一行使其點(diǎn)亮一定時間,然后熄滅;再送出第二行的數(shù)據(jù)并鎖存,然后選通第二行的使其點(diǎn)亮相同時間,然后熄滅;以此類推,第十六行之后,又重新點(diǎn)亮第一行,反復(fù)循環(huán)。當(dāng)這樣的循環(huán)的速度足夠快(每秒24次以上),由于人眼的視覺停留,就能夠看到顯示屏上穩(wěn)定的圖形了。3.1.2 點(diǎn)陣屏的組合 本方案中使用的點(diǎn)陣型號為ark sz411288k 1212,為共陽型,單色高麗

35、紅8*8點(diǎn)陣管,一般我們使用點(diǎn)陣顯示漢字是用的16*16的點(diǎn)陣宋體字庫,所謂16*16,是每一個漢字在縱、橫各16點(diǎn)的區(qū)域內(nèi)顯示的。也就是說用四個8*8點(diǎn)陣組合成一個16*16的點(diǎn)陣。首先得明確單個8*8點(diǎn)陣的引腳所對應(yīng)的行列,然后再進(jìn)行2個8*8橫向級聯(lián),把8條行線一一對應(yīng)連接,連接后,這個8*16的點(diǎn)陣就有8條行線,16條列線;暫且把這個8*16的點(diǎn)陣叫做 “上8行”,之后重復(fù)以上,做成另一個8*16,叫做 “下8行”,把下8行放在上8行的下面,16條行線一一對應(yīng),就完成了。再以同樣的方式對應(yīng)連接完成16條列線,完成之后的16*16點(diǎn)陣有16條行線,16條列線。通過proteus仿真組合的

36、圖3.3所示。 圖3.3 仿真組合連接圖3.1.3 點(diǎn)陣的驅(qū)動原理 若要正向點(diǎn)亮一個led,至少也得10-20ma;如果電流不夠大,則led不夠亮。而不管是8051的輸入/輸出口,亦或是ttl、cmos的輸出端,其高電平輸出電流都是不很高,大不了1-2ma而已。因此,也很難直接用高電平驅(qū)動led。這時候就需要額外的驅(qū)動電路,對于共陽型和共陰型的led點(diǎn)陣分別各自對應(yīng)兩種驅(qū)動電路。 共陰型的兩種驅(qū)動電路。 1.共陰型高電平掃描、高電平顯示信號驅(qū)動:任一時刻只有一個高電平信號,其他則為低電平。一列掃描完成后,再把高電平信號轉(zhuǎn)到臨近的其他列,掃描信號輸出為低電平,外接一個反相驅(qū)動器,連接于led點(diǎn)陣

37、的列引腳; 2.共陰型低電平掃描、高電平顯示信號驅(qū)動:任一時刻只有一個低電平信號,其他則為高電平。一列掃描完成后,再把低電平信號轉(zhuǎn)到鄰近的其他列,掃描信號經(jīng)限流電阻連接于pnp晶體管的基極。晶體管的集極接地,射極則連至led點(diǎn)陣的列引腳,實(shí)現(xiàn)低電平掃描,高電平顯示。 共陽型的兩種驅(qū)動電路。 1.共陽型高電平掃描、高電平顯示信號驅(qū)動:任一時刻只有一個高電平信號,其他則為低電平。一列掃描完成之后,再把高電平信號轉(zhuǎn)到鄰近的其他列。掃描信號連接到一個npn晶體管的基極,這個晶體管必須提供7個led同時亮所需要的電流,大約210ma; 2.共陽型低電平掃描、高電平顯示信號驅(qū)動:任一時刻只有一個低電平信號

38、,其他則為高電平。一列掃描完成后,再把低電平信號轉(zhuǎn)到鄰近的其他列。同樣也需要掃描信號端能夠提供7個led同時點(diǎn)亮的所需的電流,大約210ma,可以通過接晶體管,也可以通過一些芯片驅(qū)動。 在本課題中,所選用的點(diǎn)陣為共陽型的,所以采用了第四種低電平掃描、高電平顯示的驅(qū)動方式。3.2 字模的提取 在計(jì)算機(jī)中,一個字漢字常由16行16列的像素點(diǎn)表示。即每一個漢字由256個像素點(diǎn)構(gòu)成,若1bit對應(yīng)一個像素點(diǎn),那么表示一個16*16點(diǎn)陣的漢字需要32byte的存儲空間。 一個16*16led點(diǎn)陣在單片機(jī)的控制下,當(dāng)像素點(diǎn)為1時,相應(yīng)的led燈亮,當(dāng)像素點(diǎn)為0時,相應(yīng)的led滅,那么,點(diǎn)亮的led燈在點(diǎn)陣

39、上就可以顯示出一個字出來。實(shí)際上,這就是led或lcd點(diǎn)陣顯示漢字或圖形的基本原理。 本課題在取模過程中使用了pctollcd取模軟件,該軟件的界面簡單,操作簡便,對單字符進(jìn)行取模時,通常會有兩種方式,第一種是在圖形模式下進(jìn)行手動的繪制字符的形狀然后取模。第二種方式是將字符以輸入法的方式輸入到軟件的文本編輯區(qū)然后取模。同時該軟件可以生成自己想要的字庫,豐富了點(diǎn)陣的顯示內(nèi)容,以及簡化了設(shè)計(jì)過程。該軟件的操作界面簡單如圖3.4所示。 圖3.4 pctollcd取模軟件在該軟件里可以自主選擇取模方式包括逐行式,逐列式,行列式,列行式,在本課題中,采用了逐列式取模方式,取模順序?yàn)轫樝颍ǜ呶辉谇埃?。如圖

40、所示,“電”的字模生成為: tab=0x00,0x00,0x00,0x00,0x1f,0xf8,0x11,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0xff,0xfe, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x1f,0xf9,0x00,0x01,0x00,0x0f,0x00,0x00/*電*/第4章 系統(tǒng)硬件設(shè)計(jì) 4.1系統(tǒng)硬件整體設(shè)計(jì)概述和功能分析顯示系統(tǒng)具體設(shè)計(jì)主要由上位機(jī),通信系統(tǒng),單片機(jī)系統(tǒng),譯碼電路,顯示驅(qū)動電路和1616的點(diǎn)陣屏六部分組成。具體工作流程為:上位pc機(jī)通過通信系統(tǒng)向單片機(jī)發(fā)送控制指令和顯示代碼內(nèi)容

41、,單片機(jī)接收后執(zhí)行控制指令處理顯示代碼將顯示內(nèi)容通過i/o口串行輸出并且控制譯碼電路完成串并轉(zhuǎn)換并行輸出,最后由顯示驅(qū)動電路進(jìn)行電壓和電流的處理以達(dá)到led顯示屏的顯示電流,電壓要求進(jìn)而使顯示屏顯示內(nèi)容10。根據(jù)硬件的功能結(jié)構(gòu)圖選取合適器件,器件不但要求能實(shí)現(xiàn)所要求的功能還要能兼容至整個系統(tǒng)之中。通過查閱資料和對比最終的硬件原理圖如圖4.1所示。 列驅(qū)動器單片機(jī) 電源 led顯示點(diǎn)陣行驅(qū)動器 圖4.1硬件原理圖該系統(tǒng)所要實(shí)現(xiàn)的功能和要求有以下幾點(diǎn)。1. led顯示屏的面積必須滿足至少顯示一個漢字的標(biāo)準(zhǔn)。并且顯示要清晰;2. 驅(qū)動電路要能提供led顯示所需范圍內(nèi)的電壓和電流要求;3. 譯碼電路的

42、高低電平的區(qū)分能力以及譯碼的輸入輸出頻率必須滿足單片機(jī)以及驅(qū)動電路的要求;4. 單片機(jī)要能接收上位機(jī)的指令和顯示內(nèi)容且能夠處理后控制led顯示屏的顯示,并且端口驅(qū)動能力要足以驅(qū)動譯碼電路。執(zhí)行頻率要能達(dá)到掃描顯示的最低要求;5. 單片機(jī)由isp下載線下載程序;6. 由串口完成單片機(jī)與上位機(jī)的通信,通信速度和數(shù)據(jù)傳輸?shù)目煽啃砸_(dá)到顯示要求。4.2控制單元設(shè)計(jì)控制單元是整個顯示系統(tǒng)的核心,該系統(tǒng)中采用51系列單片機(jī)為核心器件,用來和上位機(jī)通信處理上位機(jī)發(fā)送的控制指令和顯示內(nèi)容。并且直接輸出數(shù)據(jù)通過譯碼電路控制led顯示屏的顯示內(nèi)容和顯示狀態(tài)。在51系列單片機(jī)中選定一款合適的機(jī)型來作為控制單元的主控

43、芯片。根據(jù)題目的要求該芯片必須要具有的就是方便的編程能力,因?yàn)樵谲浖O(shè)計(jì)時方便的程序下載對程序的驗(yàn)證和編寫非常有用。還有就是為了提高led顯示屏的掃描速度,單片機(jī)的執(zhí)行速度要盡可能的快。根據(jù)這兩點(diǎn)要求,選擇stc89c52為控制單元的主控芯片。4.2.1 stc89c52簡介stc89c52是stc公司生產(chǎn)的一種低功耗、高性能cmos8位微控制器,具有 8k 在系統(tǒng)可編程flash存儲器。stc89c52使用經(jīng)典的mcs-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng)可編程flash,使得stc89c52為眾多嵌入式控制應(yīng)用系統(tǒng)提

44、供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)flash,512字節(jié)ram, 32 位i/o 口線,看門狗定時器,內(nèi)置4kb eeprom,max810復(fù)位電路,3個16 位定時器/計(jì)數(shù)器,4個外部中斷,一個7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)),全雙工串行口。另外 stc89c52 可降至0hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu 停止工作,允許ram、定時器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個中斷或硬件復(fù)位為止。最高運(yùn)作頻率35mhz,6t/12t可選。其引腳圖4.

45、2所示。 圖4.2 stc89c52引腳圖stc89c52單片機(jī)的參數(shù)特性如下。1. 增強(qiáng)型8051單片機(jī),6 時鐘/機(jī)器周期和12 時鐘/機(jī)器周期可以任意 選擇,指令代碼完全兼容傳統(tǒng)8051;2. 工作電壓:5.5v3.3v(5v單片機(jī))/3.8v2.0v(3v 單片機(jī));3.工作頻率范圍:040mhz,相當(dāng)于普通8051 的080mhz,實(shí)際工作 頻率可達(dá)48mhz;4. 用戶應(yīng)用程序空間為8k字節(jié);5. 片上集成512 字節(jié)ram;6. 通用i/o 口(32 個),復(fù)位后為:p0/p1/p2/p3 是準(zhǔn)雙向口/弱上拉, p0 口是漏極開路輸出,作為總線擴(kuò)展用時,不用加上拉電阻,作為 i/

46、o 口用時,需加上拉電阻;7. isp(在系統(tǒng)可編程)/iap(在應(yīng)用可編程),無需專用編程器,無需專用仿真器,可通過串口(rxd/p3.0,txd/p3.1)直接下載用戶程 序,數(shù)秒即可完成一片;8. 具有eeprom 功能;9. 共3 個16 位定時器/計(jì)數(shù)器。即定時器t0、t1、t2;10.外部中斷4 路,下降沿中斷或低電平觸發(fā)電路,power down 模式可 由外部中斷低電平觸發(fā)中斷方式喚醒;11. 通用異步串行口(uart),還可用定時器軟件實(shí)現(xiàn)多個uart;12. 工作溫度范圍:-40+85(工業(yè)級)/075(商業(yè)級);13. pdip封裝。4.2.2 控制系統(tǒng)設(shè)計(jì)控制電路設(shè)計(jì)中

47、采用的是單片機(jī)系統(tǒng),該系統(tǒng)必須要是工作在一個最小系統(tǒng)(指單片機(jī)的可以的最小配置系統(tǒng))。stc89c52的最小系統(tǒng)包括了外界時鐘電路和復(fù)位電路,選定一定數(shù)量的io口作為控制口控制外部的各種器件和數(shù)據(jù)的輸出。根據(jù)功能選擇一定的單片機(jī)端口添加外圍的器件,具體電路如圖4.2所示。在該系統(tǒng)中,p0和p2口主要用作led顯示數(shù)據(jù)的控制輸出,p1口的動能是輸出譯碼的原始數(shù)據(jù),p0口作為i/o口輸出的時候時 輸出低電平為0 輸出高電平為高組態(tài)(并非5v,相當(dāng)于懸空狀態(tài))。也就是說p0 口不能真正的輸出高電平,給所接的負(fù)載提供電流,因此必須接上拉電阻(一電阻連接到vcc),由電源通過這個上拉電阻給負(fù)載提供電流。

48、具體接法為:p1口的前四位接到由兩個74hc138組成的4-16譯碼器的輸入端,譯碼器一直工作在譯碼狀態(tài),p0和p2口直接連接點(diǎn)陣屏的引腳,p3.0和p3.1口分別接兩個獨(dú)立按鍵,具體的單片機(jī)部分的電路如圖4.3所示。圖4.3 最小系統(tǒng) 4.3 譯碼電路 譯碼電路的功能是為了解決單片機(jī)i/o端口不足。在本課題中用到了譯碼器 74hc138。如圖4.4所示74hc138的引腳圖。74hc138 作用原理于高性能的存貯譯碼或要求傳輸延遲時間短的數(shù)據(jù)傳輸系統(tǒng),在高性能存貯器系統(tǒng)中,用這種譯碼器可以提高譯碼系統(tǒng)的效率。將快速賦能電路用于高速存貯器時,譯碼器的延遲時間和存貯器的賦能時間通常小于存貯器的典

49、型存取時間,這就是說由肖特基鉗位的系統(tǒng)譯碼器所引起的有效系統(tǒng)延遲可以忽略不計(jì)。74hc138 按照三位二進(jìn)制輸入碼和賦能輸入條件,從8 個輸出端中譯出一個低電平輸出。兩個低電平有效的賦能輸入端和一個高電平有效的賦能輸入端減少了擴(kuò)展所需要的外接門或倒相器,擴(kuò)展成24 線譯碼器不需外接門;擴(kuò)展成32 線譯碼器,只需要接一個外接倒相器。在解調(diào)器應(yīng)用中,賦能輸入端可用作數(shù)據(jù)輸入端。其工作原理如下:當(dāng)一個選通端(g1)為高電平,另兩個選通端(/(g2a)和/(g2b))為低電平時,可將地址端(a、b、c)的二進(jìn)制編碼在一個對應(yīng)的輸出端以低電平譯出。利用 g1、/(g2a)和/(g2b)可級聯(lián)擴(kuò)展成 24

50、 線譯碼器;若外接一個反相器還可級聯(lián)擴(kuò)展成 32 線譯碼器。如表4.1 74hc138的真值表所示。 圖4.4 74hc138引腳圖表4.1 74hc138真值表 由于單片機(jī)的io端口有限,所以這里選用兩片74hc138級聯(lián)成4線-16線譯碼電路,點(diǎn)陣的行引腳剛好對應(yīng)一個io口具體的電路連接如圖4.5所示。圖 4.5 4線-16線譯碼電路4.4 驅(qū)動電路 4.4.1 行驅(qū)動電路 發(fā)光二極管,led(light emitting diodes),即是在在某些半導(dǎo)體材料的pn結(jié)中,注入的少數(shù)載流子與多數(shù)載流子復(fù)合時會把多余的能量以光的形式釋放出來,從而把電能直接轉(zhuǎn)換為光能。pn結(jié)加反向電壓,少數(shù)載

51、流子難以注入,故不發(fā)光。這種利用注入式電致發(fā)光原理制作的二極管叫發(fā)光二極管,通稱led。單片機(jī)p1口低4位經(jīng)4-16譯碼電路后生成16行選通信號,直接與點(diǎn)陣的行引腳相連,由于74hc138的輸出電流可達(dá)25ma,所以足夠驅(qū)動led點(diǎn)亮。具體電路如圖4.6所示。圖4.6 行驅(qū)動電路4.4.2 列驅(qū)動電路列驅(qū)動使用單片機(jī)的p0口和p2口直接輸出字模的高8位和低8位,送入2個74hc573使用鎖存功能且高電平有效,由于p0口作輸出,所以接了一個10k上拉電阻。當(dāng)數(shù)據(jù)有p0口,p2口送入74hc573時,使用鎖存功能并提供驅(qū)動led的電壓,使一列l(wèi)ed處于高或低電平。如圖4.7所示。 圖4.7 列驅(qū)動

52、電74hc573為八進(jìn)制3態(tài)非反轉(zhuǎn)透明鎖存器,屬于高性能硅門cmos器件。如圖4.8所示為74hc573引腳圖。輸入是與標(biāo)準(zhǔn)cmos輸出兼容的。當(dāng)鎖存使能端le為高時,這些器件的鎖存對于數(shù)據(jù)是透明的(也就是輸出同步)。當(dāng)鎖存使能變低時,符合建立時間和保持時間的數(shù)據(jù)會被鎖存。1d8d為數(shù)據(jù)輸入端,1q8q為數(shù)據(jù)輸出端。如表4.2 74hc573真值表所示。圖4.8 74hc573引腳圖 表4.2 74hc573真值表4.5電源電路 電源電壓的設(shè)計(jì)主要是針對系統(tǒng)要求的不同工作電壓進(jìn)行電源分配,一般有兩種方法,一種是多電源方案,一種是單電源方案。 在設(shè)計(jì)一般單片機(jī)控制器時,主要困難常常找不到工作于同

53、一電壓電源的整套期間。在許多低壓供電系統(tǒng)既用5v電壓的器件又用到3v的器件,這時需要多電源方案。而5v與3v的接口是首先應(yīng)該解決的問題,3v電壓可以從5v電壓得到,只需采用三端穩(wěn)壓芯片7803即可,同樣5v的電壓也可以通過三端穩(wěn)壓芯片7805得到,我們可以通過變壓器供電的方式得到系統(tǒng)電源,也可以通過簡單蓄電池作為控制器的電源,由于本設(shè)計(jì)只用到5v電壓,所以只用到了7805,如圖所示是該系統(tǒng)的電源電路的設(shè)計(jì)原理圖。7805三端穩(wěn)壓器,三端穩(wěn)壓集成電路是一種串聯(lián)調(diào)整式穩(wěn)壓器,這個系列的穩(wěn)壓集成電路的最大輸出電流為1.5a,最大輸入電壓為18v,對于輸入電壓低于該期間穩(wěn)壓值的情況,三端穩(wěn)壓集成電路的

54、輸出也會低于穩(wěn)壓值,并且將無法起到穩(wěn)壓的作用,如果輸入電壓達(dá)到穩(wěn)壓值,并且小于它的最大允許電壓,那么三端穩(wěn)壓電路將會把輸出嚴(yán)格控制在穩(wěn)壓值出,起到穩(wěn)壓的作用。所以在本設(shè)計(jì)中采用三端穩(wěn)壓集成電路來提供多電源電壓。另外,本設(shè)計(jì)中由于只點(diǎn)亮一個16*16的點(diǎn)陣,所以采用了9v的蓄電池作為輸入來供電。電路圖如圖4.9所示。圖4.9 電源電路第5章 系統(tǒng)軟件設(shè)計(jì)5.1 程序設(shè)計(jì) 對比c語言和匯編語言,雖然c語言編寫的程序生成代碼效率比匯編低,但是c語言有很多突出的特點(diǎn):c語言簡潔、可以直接操作計(jì)算機(jī)硬件、可移植性好、表達(dá)能力強(qiáng)、可以進(jìn)行結(jié)構(gòu)話程序設(shè)計(jì)等。所以系統(tǒng)軟件采用c語言編寫,按照模塊化的設(shè)計(jì)思路設(shè)

55、計(jì)。首先分析程序所要實(shí)現(xiàn)的功能,程序要實(shí)現(xiàn)串口通信,靜態(tài)顯示,動態(tài)顯示三大功能。通信程序接收上位機(jī)數(shù)據(jù),交給主程序處理再通過控制程序選擇不同的顯示程序進(jìn)行顯示。程序開始時首先必須對單片機(jī)進(jìn)行初始化,其中初始化的內(nèi)容包括:io口功能的設(shè)定等。初始化完成后程序進(jìn)入待機(jī)狀態(tài)等待中斷的發(fā)生,該程序中主要用到了兩個外部中斷源,外部中斷源由按鍵的電平變化觸發(fā),外部中斷主要功能是選擇led點(diǎn)陣顯示屏的顯示狀態(tài)是靜態(tài)顯示還是動態(tài)顯示。中斷程序設(shè)定了led點(diǎn)陣顯示屏所要顯示的內(nèi)容和顯示的方式,最后執(zhí)行的是各種顯示程序。按照設(shè)定的方式和內(nèi)容顯示出所需要的內(nèi)容。主函數(shù)流程圖如圖5.1所示。 開 始 系統(tǒng)初始從顯示數(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論