一種基于單片機實現(xiàn)LED點陣顯示設(shè)計-智能電子、汽車服務學院畢業(yè)設(shè)計_第1頁
一種基于單片機實現(xiàn)LED點陣顯示設(shè)計-智能電子、汽車服務學院畢業(yè)設(shè)計_第2頁
一種基于單片機實現(xiàn)LED點陣顯示設(shè)計-智能電子、汽車服務學院畢業(yè)設(shè)計_第3頁
一種基于單片機實現(xiàn)LED點陣顯示設(shè)計-智能電子、汽車服務學院畢業(yè)設(shè)計_第4頁
一種基于單片機實現(xiàn)LED點陣顯示設(shè)計-智能電子、汽車服務學院畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

浙江工商職業(yè)技術(shù)學院智能電子、汽車服務學院畢業(yè)設(shè)計 智能電子、汽車服務學院畢業(yè)設(shè)計畢業(yè)設(shè)計題目 專 業(yè):電氣自動化班 級:自動化1411學 號:1301115118學生姓名:葉宇偉校外指導教師:鐘曉強校內(nèi)指導教師:XXXXX二零一七 年 四 月一種基于單片機實現(xiàn)LED點陣顯示設(shè)計摘 要:伴隨著科技的進步,LED點陣顯示屏作為一種新興的顯示器件走進我們的視野,它是由多個獨立的LED發(fā)光二極管封裝而成。通過LED點陣顯示屏可以顯示數(shù)字、符號以及文字,通常用在廣告,指示牌,公告牌上。本設(shè)計利是一種基于STC89C52單片機的16*16點陣顯示屏的設(shè)計,其中STC89C52單片機負責對整個系統(tǒng)進行總體控制,設(shè)計中使用4塊8*8單紅色點陣屏來組成16*16點陣屏,通過三極管來控制點陣的行方向的控制,而列方向的控制采用兩片串行輸入八位并行輸出的74LS595級聯(lián)來控制,通過快速的動態(tài)刷新來顯示我們需要的內(nèi)容,已達到動態(tài)顯示的目的。關(guān)鍵詞:點陣 單片機 譯碼器 動態(tài)掃描 目 錄專 業(yè):電氣自動化I第1章 緒 論41.1 課題的研究背景41.1.1 LED電子顯示屏概述41.1.2 LED電子顯示屏的分類41.1.3 設(shè)計任務51.2 MCS-51系統(tǒng)單片機簡介5第2章 總體設(shè)計62.1 系統(tǒng)概述62.1.1 顯示單元的選擇62.1.2 滾屏方式選擇62.1.3 關(guān)于屏幕的可擴展性62.1.4 單片機控制器的考慮72.1.5 關(guān)于點陣數(shù)據(jù)的存儲方式7第3章 硬件電路設(shè)計73.1 整體設(shè)計框圖73.2 主控電路83.2.1 STC89C52 單片機簡介84)STC89C52的內(nèi)部組成11(1)模式014(2)模式114(3)模式215(4)模式3153.3 LED點陣顯示電路163.3.1 74LS595的總體特點和工作原理161)總體特點162)工作原理173.4整體電路183.5實物圖18第4章 軟件實現(xiàn)194.1 概述194.2系統(tǒng)程序方案設(shè)計194.2.1主程序設(shè)計204.2.2子程序設(shè)計214.2.3延時函數(shù)214.2.4行選控制21總 結(jié)24參考文獻27附錄1: 電路原理圖28附錄2: LED點陣顯示源程序29附錄A 元件清單332第1章 緒 論1.1 課題的研究背景本文主要圍繞點陣的特點開展的點陣設(shè)計,設(shè)計中的難度諸多如限流電阻的計算,掃描時間的控制等,下面我們就介紹下點陣的概況。1.1.1 LED電子顯示屏概述LED電子顯示屏(Light Emitting Diode Panel)是由幾百-幾十萬個半導體發(fā)光二極管構(gòu)成的像素點,按矩陣均勻排列組成。利用不同的半導體材料可以制造不同色彩的LED像素點。目前應用最廣的是紅色、綠色、黃色。而藍色和純綠色LED的開發(fā)已經(jīng)達到了實用階段。 LED顯示屏是一種通過控制半導體發(fā)光二極管的亮度的方式,來顯示文字、圖形、圖像、動畫、行情、視頻、錄像信號等各種信息的顯示屏幕。 LED顯示屏分為圖文顯示屏和條幅顯示屏,均由LED矩陣塊組成。圖文顯示屏可與計算機同步顯示漢字、英文文本和圖形;而條幅顯示屏則適用于小容量的字符信息顯示。LED顯示屏因為其像素單元是主動發(fā)光的,具有亮度高,視角廣、工作電壓低、功耗小、壽命長、耐沖擊和性能穩(wěn)定等優(yōu)點。因而被廣泛應用于車站、碼頭、機場、商場、醫(yī)院、賓館、銀行、證券市場、建筑市場、拍賣行、工業(yè)企業(yè)管理和其它公共場所。 LED顯示屏的發(fā)展前景極為廣闊,目前正朝著更高亮度、更高氣候耐受性、更高的發(fā)光密度、更高的發(fā)光均勻性,可靠性、全色化方向發(fā)展。 1.1.2 LED電子顯示屏的分類按顏色分類單基色顯示屏:單一顏色(紅色或綠色)。 雙基色顯示屏:紅和綠雙基色,256級灰度、可以顯示65536種顏色。 全彩色顯示屏:紅、綠、藍三基色,256級灰度的全彩色顯示屏可以顯示一千六百多萬種顏色。 按顯示器件分類LED數(shù)碼顯示屏:顯示器件為7段碼數(shù)碼管,適于制作時鐘屏、利率屏等,顯示數(shù)字的電子顯示屏。 LED點陣圖文顯示屏:顯示器件是由許多均勻排列的發(fā)光二極管組成的點陣顯示模塊,適于播放文字、圖像信息。 按使用場合分類室內(nèi)顯示屏:發(fā)光點較小,一般3mm-8mm,顯示面積一般零點幾至十幾平方米。 室外顯示屏:面積一般幾十平方米至幾百平方米,亮度高,可在陽光下工作,具有防風、防雨、防水功能。 按發(fā)光點直徑分類室內(nèi)屏:3mm、3.75mm、5mm、 室外屏:10mm、12mm、16mm、19mm、21mm、26mm 室外屏發(fā)光的基本單元為發(fā)光筒,發(fā)光筒的原理是將一組紅、綠、藍發(fā)光二極管封在一個塑料筒內(nèi)共同發(fā)光增強亮度。1.1.3 設(shè)計任務本設(shè)計的任務就是完成一個16*16的點陣設(shè)計,并能滾動顯示“一種基于單片機的LED點陣顯示設(shè)計”內(nèi)容。任務要求:(1)1塊16*16LED點陣組成的顯示屏(2)STC89C52型單片機作為主控制器(3)74HC595驅(qū)動列,74LS154和8550三極管驅(qū)動行1.2 MCS-51系統(tǒng)單片機簡介 MCS-51系類單片機就有:1.可靠性高:因為芯片是按工業(yè)測控環(huán)境要求設(shè)計的,故抗干擾的能力優(yōu)于PC機。系統(tǒng)軟件(如:程序指令,常數(shù),表格)固化在ROM中,不易受病毒破壞。許多信號的通道均在一個芯片內(nèi),故運行時系統(tǒng)穩(wěn)定可靠。2.便于擴展:片內(nèi)具有計算機正常運行所必需的部件,片外有很多工擴展用的(總線,并行和串行的輸入/輸出)管腳,很容易組成一定規(guī)模的就算計機應用系統(tǒng)。3.控制功能強:具有豐富的控制指令:如:條件分支轉(zhuǎn)移指令,I/O的邏輯操作指令,位處理指令。4.實用性好:體積小,功耗低,價格便宜,易于產(chǎn)品化。單片機的發(fā)展歷史簡介:第1階段(1971年1978年),以MCS-48系列為代表,稱4位單片機。在片內(nèi):CPU有4位或8位;ROM有1KB或2KB;RAM有64B或128B;只有并行接口,無串行接口;只有1個8位的定時/計時器;中斷源只有2個。在片外:尋址范圍只有4KB;芯片引腳有40個。第2階段(1978年1983年)以MCS-51系列為代表,稱8位單片機。在片內(nèi):CPU有8位;ROM有4KB或8KB;RAM有128B或256B;有串/并行接口;有2個或者3個16位的定時/計時器;中斷源有5至7個。在片外:尋址范圍有64KB;芯片引腳有40個。第3階段(1983年以后),以MCS-96系列為代表,稱16位單片機。在片內(nèi):CPU有16位;ROM有8KB;RAM有232B;有串/并行接口;有4個16位的定時/計時器;中斷源有8個;增加了D/A和A/D轉(zhuǎn)換電路。在片外:尋址范圍有64KB;芯片引腳有48個或者68個。以上是對MCS-51系列以其優(yōu)良的性價比,在我國得到了廣泛的應用。第2章 總體設(shè)計2.1 系統(tǒng)概述一個完備的系統(tǒng)要考慮到多種問題的實現(xiàn),點陣的設(shè)計也是如此,下面我詳細說明我的設(shè)計過程。2.1.1 顯示單元的選擇顯示一個簡體漢字,至少需要1616點陣來描述。為了在較遠距離處獲得清晰的視覺效果,本設(shè)計采用4個88點陣,像素直徑5mm的紅色LED模塊拼接成1616點陣的LED陣列。這樣每個1616漢字能夠獲得1212cm的顯示尺寸,因此在50米處仍能清晰閱讀。本設(shè)計要求整個屏幕能顯示“你好!我是陸敏杰”一系列漢字,則需要用使用16*16紅色點陣滾動顯示。2.1.2 滾屏方式選擇字符的位置在屏幕上實現(xiàn)移動,即術(shù)語“滾屏”??梢杂糜布崿F(xiàn),但無疑增加了額外的硬件成本及設(shè)計難度。因此本設(shè)計采用軟件算法實現(xiàn)左滾屏顯示的常見滾屏方式。用軟件來完成滾屏算法,其最大的優(yōu)點在于成本低廉,而且可維護性、可升級性大大增強。2.1.3 關(guān)于屏幕的可擴展性除了基本要求外,本設(shè)計還要實現(xiàn)顯示單元數(shù)目的隨意擴展。在傳統(tǒng)的并行傳輸方式中,因受到列數(shù)據(jù)鎖存器地址線數(shù)目的制約,不能隨意的增添顯示單元,且每個顯示單元的電路結(jié)構(gòu)不同,PCB結(jié)構(gòu)也不同,完全不符合模塊化設(shè)計的要求。因此摒棄了傳統(tǒng)的并行傳輸方式,而采用獨特的串行鎖存技術(shù),通過控制五根總線就能實現(xiàn)各顯示單元之間的列數(shù)據(jù)鎖存。不僅板間連接簡單,更是降低了PCB布局及布線的難度。每個顯示單元的PCB都是完全一樣的,便于量產(chǎn)。2.1.4 單片機控制器的考慮因本設(shè)計采用軟件來實現(xiàn)滾屏,且傳輸方式為串行方式。所以對微控制器單元的處理速度要求較高,可供選擇的有ARM7和高速8位單片機。ARM的處理速度極快,但對于條屏的應用,ARM內(nèi)部的資源浪費嚴重,且成本較高。因此選擇高速8位單片機作為控制器,常見的高速8位單片機有AVR系列單片機,C8051F系列單片機,STC89C52單片機。這幾種單片機的處理速度均能達到1MIPS/MHz(在時鐘頻率為1MHz時處理能力為每秒100萬條指令),但AVR系列單片機的極限時鐘頻率只能到16MHz,而C8051F系列SOC類似于ARM7,時鐘速度可到100MHz,但會浪費其內(nèi)部豐富的資源,而且價格昂貴,用在單色條屏的控制中頗感浪費。于是最佳選擇為STC89C52系列單片機,其最高時鐘能到40MHz,且有較豐富的接口及存儲器資源,價格極其低廉,零售價僅為9元/片。大幅降低了產(chǎn)品成本。2.1.5 關(guān)于點陣數(shù)據(jù)的存儲方式目前使用最廣泛的技術(shù)是,通過上位機軟件將待顯示的字符串轉(zhuǎn)換為對應的點陣字模數(shù)據(jù),通過燒寫的方式將這些字模數(shù)據(jù)按一定的順序編址后存儲在E2PROM中。在條屏顯示的過程中按規(guī)定的方式取出E2PROM中的字模數(shù)據(jù)進行處理。對于一個1616點陣的漢字字模數(shù)據(jù),需要連續(xù)32字節(jié)的E2PROM空間來存儲。照此計算,若有256個需要顯示的字符,則至少需要32B256=8192字節(jié)(8KB)的E2PROM存儲空間。通常的單片機內(nèi)部沒有集成這么大容量的E2PROM。因此這種方案,需要在單片機外部擴展大容量的E2PROM,增加硬件成本。上位機程序設(shè)計由于涉及到漢字取模,取模算法的難度較大。在多字下載的時候傳輸時間也較長。諸多弊端使本設(shè)計放棄了傳統(tǒng)方案。因為本設(shè)計只需要很少的顯示內(nèi)容所以直接保存在STC89C52中是足夠的,因此沒有使用外部設(shè)備。第3章 硬件電路設(shè)計3.1 整體設(shè)計框圖經(jīng)過對此設(shè)計的分析,為了能夠?qū)崿F(xiàn)要求,利用單片機STC89C52作為本系統(tǒng)的主控模塊。LED點陣顯示屏作為顯示模塊,把單片機傳來的數(shù)據(jù)顯示出來,并且可以實現(xiàn)滾動顯示。硬件整體設(shè)計框圖如圖1所示:圖1 整體設(shè)計框圖3.2 主控電路此方案通過主控電路控制完成LED點陣顯示屏的字符滾動顯示,主控制器使用STC公司生產(chǎn)的單片機STC89C52。3.2.1 STC89C52 單片機簡介 STC89C52 是STC公司推出的一款超強抗干擾,加密性強,在線可編程,高速,低功耗CMOS 8位單片機。片內(nèi)含 8k bytes 的可反復擦寫Flash只讀程序存儲器和256 bytes 的隨機數(shù)據(jù)存儲器(RAM),器件采用STC公司的高密度、非易失性存儲技術(shù)生產(chǎn),與標準MCS51指令系統(tǒng)及8052產(chǎn)品引腳兼容, 片內(nèi)置通用8位中央處理器 (CPU)和Flash存儲單元, 功能強大的STC89C52單片機適合于許多較為復雜控制應用場合。1)STC89C52 外部結(jié)構(gòu)及特性 其外形封裝有兩種方式:雙列直插式40腳封裝(DIP)和方形44腳封裝 (PLCC),直插式40 腳封裝(DIP)和外部總線結(jié)構(gòu)如圖2和圖3所示: 圖2 STC89C52引腳排列 圖3外部總線STC89C52的 4 個 8 位I/O口的功能說明如下:(1)P0口:P0 口是一個 8 位漏極開路的雙向 I/O 口。作為輸出口,每位能驅(qū)動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。 當訪問外部程序和數(shù)據(jù)存儲器時,P0口也被作為低 8 位地址/數(shù)據(jù)復用。在這種模式下,P0具有內(nèi)部上拉電阻。在flash 編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。 (2)P1口:P1口是一個具有內(nèi)部上拉電阻的8位雙向 I/O口,p1輸出緩沖器能驅(qū)動4個TTL 邏輯電平。對P1端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0 和 P1.2 分別作定時器/計數(shù)器 2 的外部計數(shù)輸入(P1.0/T2)和定時器/計數(shù)器 2 的觸發(fā)輸入(P1.1/T2EX)。在 flash 編程和校驗時,P1口接收低8位地址字節(jié)。 (3)P2口:P2口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動 4 個 TTL 邏輯電平。對 P2端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用 16 位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX DPTR)時,P2口送出高八位地址。在這種應用中,P2口使用很強的內(nèi)部上拉發(fā)送 1。在使用8 位地址(如 MOVX RI)訪問外部數(shù)據(jù)存儲器時,P2 口輸出 P2 鎖存器的內(nèi)容。在 flash 編程和校驗時,P2 口也接收高 8 位地址字節(jié)和一些控制信號。 (4)P3口:P3口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,p2 輸出緩沖器能驅(qū)動4個TTL邏輯電平。對P3端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在 flash 編程和校驗時,P3 口也接收一些控制信號。P3 口亦作為AT89C52特殊功能(第二功能)使用,如下所示: l P3.0 RXD(串行輸入口) l P3.1 TXD(串行輸出口) l P3.2 INTO(外部中斷0 輸入口) l P3.3 INT1(外部中斷 1 輸入口) l P3.4 TO(定時器 0 外部輸入) l P3.5 TI(定時器 1 外部輸入)l P3.6 WR(外部數(shù)據(jù)存儲器寫選通信號) l P3.7(外部數(shù)據(jù)存儲器讀選通信號) 2)功耗特性(1)掉電模式:典型功耗 0.1uA,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序(2)空閑模式:典型功耗 2mA(3)正常工作模式:典型功耗 4mA-7mA (4)掉電模式可由外部中斷喚醒,適用于水表,氣表等電池供電系統(tǒng)及便攜設(shè)備3)STC單片機的命名規(guī)則STC89 xx xx xx40 x-xxxx何種封裝:如PDIP,PLCC,PQFP工作溫度范圍:I:工業(yè)級,-40+85C:商業(yè)級,070工作頻率:25:工作頻率可到25MHz40:工作頻率可到40MHz50:工作頻率可到50MHzRAM大?。篟C:RAM為512RD+:RAM為1280程序空間大小,如:51是4K字節(jié),52是8K字節(jié),53是15K字節(jié),54是16K字節(jié),58是32K字節(jié),516是64K字節(jié)工作電壓:C:5.5V3.8VLE:2.4V3.8VSTC 12T/6T 80514)STC89C52的內(nèi)部組成 STC89C52單片機在一塊芯片中集成了 CPU、RAM、ROM、定時器/計數(shù)器、看門狗和多種功能的 I/O 口設(shè)備的等,相當于一臺計算機所需要的基本功能部件。STC89C52單片機內(nèi)包含的具體部分如下: l 一個8 位 CPU。 l 一個片內(nèi)振蕩器及時鐘電路。 l 8KB Flash 程序存儲器。 l 256 B RAM 數(shù)據(jù)存儲器。 l 三個16 位定時器/計數(shù)器。 l 可尋址 64KB 的外部數(shù)據(jù)存儲器和 64KB 的外部程序存儲器空間的控制電路。 32 條可編程的 I/O線(4組8 位并行 I/O端口)。 l 一個可編程全雙工串口通信。 l 8 個中斷源、兩個優(yōu)先級嵌套中斷結(jié)構(gòu)。 STC89C52單片機的框圖如圖4所示,各功能部件由內(nèi)部總線連接在一起。 圖4 STC89C52單片機框圖5)特殊功能寄存器SFR(1)單片機內(nèi)核特殊功能寄存器MnemonicAddName76543210RestValueACCE0hAccumulator0000,0000BF0hB Register0000,0000PSWD0hProgramStatusWordCYACF0RS1RS0OVF1P0000,0001SP81hStackPoint0000,0111DPL82hDataPointerLowByte0000,0000DPH83hDataPointerHighByte0000,0000(2)系統(tǒng)管理特殊功能寄存器MnemonicAddName76543210RestValuePCON87hPowerControlSMODSMOD0-P0FGF1GF0PDIDL00x1,0000AUXR8EhAuxiliaryRegister0-EXTRAMALE0FFxxxx,xx00AUXR1A2hAuxiliaryRegister1-GF2-DPSxxxx,0xx0(3)中斷特殊功能寄存器MnemonicAddName76543210RestValueIEA8hInterruptEnableEA-ET2ESET1EX1ET0EX00000,0000IPB8hInterruptPriorityLow-PT2PSPT1PX1PT0PX0xx00,0000IPHB7hInterruptPriorityHighPX3HPX2HPT2HPSHPT1HPX1HPT0HPX0H0000,0000TCON88hTimer/Counter0and1ContrlTF1TR1TF0TR0IE1IT1IE0IT00000,0000SCON98hSerialContrlSM0/FESM1SM2RENTB8RB8TIRI0000,0000T2CONC8hTimer/Counter2ControlTF2EXF2RCLKTCLKEXEN2TR2C/T2#CP/RL2#0000,0000XICONC0hAuxiliaryInterrupControlPX3EX3IE3IT3PX2EX2IE2IT20000,00006)STC89C52單片機定時器的使用定時和計數(shù)功能由特殊功能寄存器TMOD的控制位C/T進行選擇,TMOD寄存器的各位信息如下表所列??梢钥闯觯?個定時/計數(shù)器有4中操作模式,通過TMOD的M1和M0選擇。2個定時/計數(shù)器的模式0、1和2都相同,模式3不同,各模式下的功能如圖5所述:圖5 定時/計數(shù)器各模式功能(1)模式0將定時器設(shè)置成模式0時,類似8048定時器,即8位計數(shù)器帶32分頻的預分頻器。下圖所示為模式0工作方式。此模式下,定時器配置為13位的計數(shù)器,由TLn的低5位和THn的8位所構(gòu)成。TLn低5位溢出向THn進位,THn計數(shù)溢出置為TCON中的溢出標志位TFn(n=0,1)。GATE=0時,如TRn=1,則定時器計數(shù)。GATE=1時,允許由外部輸入INIT1控制定時器1,INIT0控制定時器0,這樣可實現(xiàn)脈寬測量。圖6 定時器/計數(shù)器0和定時器/計數(shù)器1的模式0(2)模式1模式1除了使用THn及TLn全部16位外,其他與模式0完全相同、圖7定時器/計數(shù)器0和定時器/計數(shù)器1的模式1(3)模式2此模式下定時器/計數(shù)器0和1作為可自動重裝載的8位計數(shù)器(TLn),如下圖所示,TLn的溢出不僅置位TFn,而且將THn內(nèi)容重新裝入TLn,THn內(nèi)容由軟件預置,重裝時THn內(nèi)容不變,模式2的操作對于定時器0及定時器1是相同的。圖8 定時器/計數(shù)器0和1的模式2(4)模式3對定時器1,在模式3時,定時器1停止計數(shù),效果與將TR1設(shè)置為0相同。對定時器0,此模式下定時器0的TL0及TH0作為2個獨立的8位計數(shù)器。下圖為模式3時的定時器0邏輯圖。TL0占用定時器0的控制位:C/T、GATE、TR0、INT0及TF0。TH0限定為定時器功能(計數(shù)器周期),占用定時器1的TR1及TF1。此時,TH0控制定時器1中斷。模式3是為了增加一個附加的8位定時器/計數(shù)器而提供的,使單片機具有三個定時器/計數(shù)器。模式3只使用與定時器/計數(shù)器0,定時器T1處于模式3時相當于TR1=0,停止計數(shù)(此時T1可用來作串行口波特率發(fā)生器),而T0可作為兩個定時器用。圖9 定時器/計數(shù)器0的模式33.3 LED點陣顯示電路本設(shè)計使用的是4塊8*8單色點陣屏設(shè)計16*16點陣屏,采用單色顯示,進行顯示所要顯示的字符,通過三極管來控制點陣的行方向的顯示,而列方向的16條線則由74LS595的八位并行輸出端控制。3.3.1 74LS595的總體特點和工作原理1)總體特點:74LS595是8位串行輸入轉(zhuǎn)并行輸出移位寄存器,三態(tài)輸出功能,具有數(shù)據(jù)存儲寄存器,移位寄存器和存儲器是分別的時鐘。數(shù)據(jù)在SHcp的上升沿輸入,在STcp的上升沿進入的存儲寄存器中去。如果兩個時鐘連在一起,則移位寄存器總是比存儲寄存器早一個脈沖。在移位的過程中,輸出端的數(shù)據(jù)可以保持不變。這在串行速度慢的場合很有用處,數(shù)碼管沒有閃爍感。其DIP封裝引腳圖如圖7所示:圖7 74LS595引腳圖表1 各引腳及其功能:Q0Q7八位并行輸出端Ds串行數(shù)據(jù)輸入端/OE輸出使能端STcp存儲寄存器的時鐘脈沖輸入口SHcp移位寄存器的時鐘脈沖輸入口/MR芯片復位端Q7并行數(shù)據(jù)輸出口,即儲寄存器的數(shù)據(jù)輸出口2)工作原理每當SHcp上升沿到來時, Ds引腳當前電平值在移位寄存器中左移一位,在下一個上升沿到來時移位寄存器中的所有位都會向左移一位,同時Q7也會串行輸出移位寄存器中高位的值,這樣連續(xù)進行8次,就可以把數(shù)組中每一個數(shù)(8位的數(shù))送到移位寄存器;然后當STcp上升沿到來時,移位寄存器的值將會被鎖存到鎖存器里,并從Q17引腳輸出。74LS595的主要優(yōu)點是具有數(shù)據(jù)存儲寄存器,在移位的過程中,輸出端的數(shù)據(jù)可以保持不變。這在串行速度慢的場合很有用處,點陣沒有閃爍感。74HC595在5V供電的時候能夠達到30MHz的時鐘速度,每個并行輸出端口均能承受20mA的灌電流和拉電流。這個特點保證了不用增加額外的擴流電路即可輕松的驅(qū)動LED。它輸入端允許500nS的上升(下降)時間,對嚴重畸形的時鐘脈沖仍能檢測。這樣就可以容納較大的傳輸線對地電容,使本設(shè)計的抗干擾能力增強。74HC595并行輸出端與LED模塊列線之間通過20的電阻連接,這里電阻起到分壓,去除紅色LED的并聯(lián)嵌位作用。使紅綠兩組LED均能正常發(fā)光。由于LED顯示屏的工作電流時刻在變化,造成了系統(tǒng)電壓的波動。這種電壓波動有高頻成分,也有低頻成分。輕則對周圍無線電環(huán)境造成電磁污染,重則使系統(tǒng)時鐘紊亂,邏輯錯誤。為避免此,在每個74HC595的電源VCC和GND旁邊都并聯(lián)了兩個電容,用于濾波和退耦。穩(wěn)定系統(tǒng)電壓,旁路掉電源中的高頻脈動成份。消除自激,減小對外雜散電磁輻射,提高EMI電磁兼容性。3.4整體電路見附錄1(電路原理圖)3.5實物圖下面為我制作的16*16點陣實物圖,正面圖與背面圖。16*16正面點陣圖16*16背面點陣圖第4章 軟件實現(xiàn)4.1 概述整個系統(tǒng)的功能是由硬件電路配合軟件來實現(xiàn)的,當硬件基本定型后,軟件的功能也就基本定下來了。 從軟件的功能不同可分為兩大類: 一是監(jiān)控軟件 (主程序) ,它是整個控制系統(tǒng)的核心,專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系。二是執(zhí)行軟件(子程序),它是用來完成各種實質(zhì)性的功能。每一個執(zhí)行軟件也就是一個小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進行功能定義和接口定義。各執(zhí)行模塊規(guī)劃好后,就可以規(guī)劃監(jiān)控程序了。 首先要根據(jù)系統(tǒng)的總體功能選擇一種最合適的監(jiān)控程序結(jié)構(gòu),然后根據(jù)實時性的要求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關(guān)系。4.2系統(tǒng)程序方案設(shè)計系統(tǒng)程序主要包括了:主程序、點陣顯示驅(qū)動程序。主程序:主要控制整個顯示部分的初始化,使系統(tǒng)在目測條件下LED顯示屏各點亮度均勻、充足,可顯示文字和數(shù)字,顯示的文字和數(shù)字應穩(wěn)定、清晰無串擾。文字顯示可以移入移出。本設(shè)計的顯示內(nèi)容為“你好!我是陸敏杰”實現(xiàn)向右移動功能。下面是主程序部分:程序中首先對各個變量進行初始化,并對74HC595進行初始化,當時初始化過程完成后,開始顯示處理。/主函數(shù)void main()uchar i=1,j=0;uchar X=0;/595c初始化Init595();/循環(huán)演示下面的程序是對顯示的處理主要是對漢字的移動和顯示的處理while(1)for(j=0;j10;j+)/循環(huán)顯示10次/送入16個位數(shù)據(jù)for(i=1;i17;i+)WriteS(0xff,0xff);/消影Wei_154(i);WriteS(HanZii*2-2+2*X,HanZii*2-1+2*X);/顯示內(nèi)容Wei_154(i);delay(7);/顯示G2=0;/關(guān)閉X+;if(X=17*16)X=0;在主函數(shù)中完成函數(shù)的調(diào)用及字體的移動處理,所以使人們能看見可以移動字體顯示。點陣顯示驅(qū)動程序:主要實現(xiàn)對74ls595,已實現(xiàn)畫面的動態(tài)刷新。23/74ls595初始化void Init595()SI=1;SCK=0;RCK=0;/向595中寫一個字節(jié)void Write_byte595(uchar temp)uchar i,data_=temp;G2=1;for(i=0;i=1;RCK=0;/顯示數(shù)據(jù)RCK=1;RCK=0;/595寫入一行的字節(jié)void WriteS(uchar data1,uchar data2)Write_byte595(data2);Write_byte595(data1);4.2.1主程序設(shè)計通過主程序?qū)?4ls595的初始化和對子程序的調(diào)用完成單片屏幕的動態(tài)刷新以達到點陣的動態(tài)顯示目的。4.2.2子程序設(shè)計將各個功能程序以子程序的形式寫好, 當寫主程序的時候, 只需要調(diào)用子程序,然后在寄存器的分配上作一下調(diào)整,消除寄存器沖突和 I/O 沖突即可。程序應該盡可能多的使用調(diào)用指令代替跳轉(zhuǎn)指令。因為跳轉(zhuǎn)指令使得程序難以看懂各程序段之間的結(jié)構(gòu)關(guān)系。而調(diào)用指令則不同,調(diào)用指令使得程序結(jié)構(gòu)清晰,無論是修改還是維護都比較方便。將功能程序段寫成子程序的形式,除了方便調(diào)用之外,還有一個好處那就是以后寫程序的時候如果要用到,就可以直接調(diào)用這個單元功能模塊。下面對LED點陣顯示屏的顯示部分流程圖做介紹:4.2.3延時函數(shù)因為顯示原理是視覺暫留原理需要有延時控制顯示。延時函數(shù)如下:/等待函數(shù)void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=7;y0;y-);4.2.4行選控制通過單片機IO口控制三極管,可以實現(xiàn)5線控制16線的過程,如程序所示:/154位選驅(qū)動void Wei_154(uchar W)G2=0;/使能switch(W)case 16:A_=1;B_=1;C_=1;D_=1;break;case 15:A_=0;B_=1;C_=1;D_=1;break;case 14:A_=1;B_=0;C_=1;D_=1;break;case 13:A_=0;B_=0;C_=1;D_=1;break;case 12:A_=1;B_=1;C_=0;D_=1;break;case 11:A_=0;B_=1;C_=0;D_=1;break;case 10:A_=1;B_=0;C_=0;D_=1;break;case 9:A_=0;B_=0;C_=0;D_=1;break;case 8:A_=1;B_=1;C_=1;D_=0;break;case 7:A_=0;B_=1;C_=1;D_=0;break;case 6:A_=1;B_=0;C_=1;D_=0;break;case 5:A_=0;B_=0;C_=1;D_=0;break;case 4:A_=1;B_=1;C_=0;D_=0;break;case 3:A_=0;B_=1;C_=0;D_=0;break;case 2:A_=1;B_=0;C_=0;D_=0;break;case 1:A_=0;B_=0;C_=0;D_=0;break;總 結(jié)經(jīng)過近兩個月的努力,終于順利完成了畢業(yè)設(shè)計。在此LED點陣顯示系統(tǒng)中,由于我采用了STC89C5單片機,并且采用串行移位寄存器74HC595作列線驅(qū)動,使本設(shè)計的硬件成本大幅下降,而又提高了顯示單元的可擴展性。因為使用了高速單片機,使本系統(tǒng)的動態(tài)刷新率,移動速度等得到保障。本設(shè)計充分利用了單片機的E2PROM等片上資源,節(jié)約成本的同時使外圍電路簡潔美觀,故障率降低??傮w的性能指標均達到或超過了題目的要求。畢業(yè)設(shè)計是每個大學生必須面臨的一項綜合素質(zhì)的考驗,如果說在過去四年里,我們的學習是一個知識的積累過程,那么現(xiàn)在的畢業(yè)設(shè)計就是對過去所學知識的綜合運用,是對理論進行深化和重新認識的時間活動。在這近兩個月的畢業(yè)設(shè)計中,我們有艱辛的付出,當然更多的是豐收的喜悅。知識固然得到了鞏固和提高,但我相信在實踐中的切身體會將會使我在以后的工作和學習中終身受用。首先,學習能力得到了提高。在畢業(yè)設(shè)計中,自始至終獨立完成硬件電路的設(shè)計、單片機軟件編寫等。在這些過程中,遇到許多困難,但通過書籍或網(wǎng)絡(luò)查閱了很多相關(guān)文章和向?qū)熣埥毯蠼K于解決了。通過這次畢業(yè)設(shè)計,我不僅對理論有了更深一步的認識,增強了和外界技術(shù)的溝通,還培養(yǎng)了自學能力和分析解決問題的能力,更重要的是,培養(yǎng)了克服困難的勇氣和信心。其次,培養(yǎng)了自己的市場觀念。一個商品是否能夠搶占市場,除了必須的功能和質(zhì)量要求外,其價格是最大的競爭優(yōu)勢。如何在保證質(zhì)量和完成同等功能的情況下,把產(chǎn)品的成本降到最低。是每個設(shè)計人員在作出方案時首要考慮的因素。再次,則是人際交流能力得到鍛煉。人非生而知之者!人的學識總是不能面面俱到的,這就要求我們必須善于借鑒別人的成功經(jīng)驗或失敗教訓,使自己少走彎路??傊?,畢業(yè)設(shè)計完成了,但又面臨著工作。我相信我會把自己的熱情和所學奉獻到自己的工作中,不斷努力,不斷進?。≈轮x此設(shè)計及論文是在鐘曉強老師悉心指導和大力支持下完成的,鐘曉強老師以其嚴謹求實的治學態(tài)度、高度的敬業(yè)精神、兢兢業(yè)業(yè)的工作作風和大膽創(chuàng)新的進取精神對我產(chǎn)生重要影響。在論文的寫作過程中,也得到了許多同學的寶貴建議,同時還有那些與我一起工作奮斗的兄弟姐妹,所以在此,我要一并致以誠摯的謝意。感謝所有關(guān)心、支持、幫助過我的良師益友。參考文獻1 李方園、范海紹等.零起點學Proteus單片機仿真技術(shù)(附CD-ROM光盤1張)M.機械工業(yè)出版社.20122 劉煥成編著.工程背景下的單片機原理及系統(tǒng)設(shè)計M.北京:清華大學出版社.2008. 3 王冬梅.張建秋,路敬袆.基于單片機的交通燈控制系統(tǒng)設(shè)計與實現(xiàn)J.佳木斯大學學報(自然科學版),2009,27(1):9496。4余錫存 等. 單片機原理及接口技術(shù).陜西:西安電子科技大學出版社,20075張萌單片機應用系統(tǒng)開發(fā)綜合實例第二版清華大學出版社2005年附錄1: 電路原理圖附錄2: LED點陣顯示源程序#include /調(diào)用單片機頭文件#define uchar unsigned char /無符號字符型 宏定義變量范圍0255#define uint unsigned int /無符號整型 宏定義變量范圍065535/ / 1 2 3 4 5 6 7 8 uint code we16=0xfffb,0xffdf,0xff7f,0xffef,0xfffe,0xfffd,0xffbf,0xfff7, 0xdfff,0xfbff,0xfdff,0x7fff,0xf7ff,0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論