交通燈設(shè)計(jì)及及_第1頁(yè)
交通燈設(shè)計(jì)及及_第2頁(yè)
交通燈設(shè)計(jì)及及_第3頁(yè)
交通燈設(shè)計(jì)及及_第4頁(yè)
交通燈設(shè)計(jì)及及_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于單片機(jī)的交通燈設(shè)計(jì)摘要交通信號(hào)仿真過(guò)程是一個(gè)對(duì)交叉口控制的模擬過(guò)程,交通信號(hào)仿真機(jī)可讓人們直觀的認(rèn)識(shí)交通信號(hào)的參數(shù)。在交通工程教學(xué)中,能夠用交通信號(hào)仿真機(jī)來(lái)展示給學(xué)生,更是能夠收獲到很好的效果。本文介紹了利用STC89C52單片機(jī)設(shè)計(jì)制作交通信號(hào)燈。包括硬件電路板的設(shè)計(jì),控制主程序的編寫與仿真。利用LED燈做為信號(hào)燈的仿真,利用數(shù)碼管來(lái)進(jìn)行倒計(jì)時(shí)顯示。本文設(shè)計(jì)首先采使用KEIL對(duì)主程進(jìn)行C語(yǔ)言編程,然后使用proteu與KEIL進(jìn)行聯(lián)機(jī)對(duì)信號(hào)燈主程序進(jìn)行調(diào)試,最后使用protel99對(duì)電路原理圖進(jìn)行繪制。關(guān)鍵詞:交通信號(hào)燈、單片機(jī)、proteus、protel99AbstractTrafficsignalsimulationprocessisanintersectioncontrolsimulationprocess,trafficsignalsimulatorallowspeoplehavethedirect-viewingunderstandingtrafficsignalparameters.Intrafficengineeringteaching,teacherusethetrafficsignalsimulatortoshowstudentsmaytakeagoodeffect.ThispaperdescribesthetechnologicalprocessofdesignatrafficsignalsimulatorbasedonSTC89C52single-chipdesign.Includehardwarecircuitboarddesign,writingthemainprogramandsimulation.Useledsaslight,usingdigitaltubeforcountdownshow.ThepaperpresentsthedesignofthemainprogrambasedontheCprogramminglanguageinsoftwareKEILatfirst,thenusetheproteussimulationanddebuggingthemainprogramofthelights.finallyusetheprotelDXPdrawforcircuitprinciplediagram,whilegeneratingPCB(PrintedCircuitBoard)figure.Keywords:trafficsignalsimulator,microcontroller,keil,proteus,protelDXP第一章緒論交通信號(hào)燈研究的背景及意義隨著交通工程專業(yè)的發(fā)展,其在解決城市交通問(wèn)題以及在城市發(fā)展規(guī)劃中起著及其關(guān)鍵的作用,在城市交叉口口至方面,交通信號(hào)燈起著極為重要的作用。在交通工程的教學(xué)中應(yīng)該用交通信號(hào)機(jī)進(jìn)行實(shí)物的進(jìn)行展示,這樣讓學(xué)生對(duì)信號(hào)控制也有個(gè)全面直觀的認(rèn)識(shí)。同時(shí),交通信號(hào)燈也能夠作為中小城市的單點(diǎn)交叉口控制機(jī),來(lái)實(shí)現(xiàn)交通信號(hào)控制。本文對(duì)交通信號(hào)燈的設(shè)計(jì)整體過(guò)程做了詳細(xì)的介紹,包括電路設(shè)計(jì)、元件選型、程序編寫、仿真模擬四個(gè)模塊。。交通信號(hào)燈介紹本設(shè)計(jì)為基于單片機(jī)的交通信號(hào)仿真機(jī)設(shè)計(jì),所采用芯片為系列89C52芯片。在信號(hào)演示模塊采用的是LED模擬信號(hào)燈,數(shù)碼管模擬倒計(jì)時(shí)計(jì)數(shù)。本文所介紹交通信號(hào)仿真機(jī)分為四個(gè)模塊,分別為單片機(jī)控制模塊、USB數(shù)據(jù)傳輸模塊、信號(hào)燈控制模塊、倒計(jì)時(shí)模塊,其關(guān)系如圖所示。STC89C52單片機(jī)信號(hào)燈模塊STC89C52單片機(jī)信號(hào)燈模塊電源電源復(fù)位電路倒計(jì)時(shí)模塊復(fù)位電路倒計(jì)時(shí)模塊圖交通信號(hào)放著級(jí)結(jié)構(gòu)圖示論文研究的目的和內(nèi)容交通信號(hào)燈能夠?qū)崿F(xiàn)對(duì)信號(hào)燈相位變化的控制,同時(shí)能夠?qū)崿F(xiàn)倒計(jì)時(shí)技計(jì)數(shù)。交通信號(hào)仿真機(jī)的設(shè)計(jì)包括硬件設(shè)計(jì)和軟件設(shè)計(jì)兩個(gè)部分,其能夠?qū)崿F(xiàn)對(duì)中小城市交叉口的控制功能,同時(shí)可以作為交通工程教學(xué)中的演示模型。根據(jù)本論文的研究對(duì)象及特點(diǎn)確定論文的主要研究?jī)?nèi)容如下:(1)電路板設(shè)計(jì)。利用ptotel99軟件畫出交通信號(hào)機(jī)的電路原理圖。并手工焊接電路板。交通信號(hào)燈采用芯片為STC89C52,共陰極數(shù)碼管。(2)主程序設(shè)計(jì)。利用keiluVision3軟件對(duì)交通信號(hào)仿真機(jī)內(nèi)設(shè)程序進(jìn)行編寫。其既能夠?qū)崿F(xiàn)單點(diǎn)交叉口的控制,主要為其多時(shí)段多相位的控制又能夠接收交通信息控制中心傳送的數(shù)據(jù),進(jìn)而來(lái)優(yōu)化相位配時(shí)。能夠?qū)崿F(xiàn)效果為可控制交通信號(hào)燈的亮滅變化同時(shí)具有倒計(jì)時(shí)功能。(3)仿真演示。利用proteus軟件進(jìn)行原理圖繪制,并將寫好的主程序?qū)脒M(jìn)行仿真,以對(duì)程序進(jìn)行調(diào)試。第二章硬件選型單片機(jī)知識(shí)單片機(jī)簡(jiǎn)介單片機(jī)是一種集成電路芯片。它采用超大規(guī)模技術(shù)將具有數(shù)據(jù)處理能力的微處理器(CPU)、存儲(chǔ)器(含程序存儲(chǔ)器ROM和數(shù)據(jù)存儲(chǔ)器RAM)、輸入、輸出接口電路(I/O接口)集成在同一塊芯片上,構(gòu)成一個(gè)即小巧又很完善的計(jì)算機(jī)硬件系統(tǒng),在單片機(jī)程序的控制下能準(zhǔn)確、迅速、高效地完成程序設(shè)計(jì)者事先規(guī)定的任務(wù)。所以說(shuō),一片單片機(jī)芯片就具有了計(jì)算機(jī)的全部功能。由此來(lái)看,單片機(jī)有著一般微處理器(CPU)芯片所不具備的功能,它可單獨(dú)地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,這是單片機(jī)最大的特征。然而單片機(jī)又不同于單板機(jī)(一種將微處理器芯片、存儲(chǔ)器芯片、輸入輸出接口芯片安裝在同一塊印制電路板上的微型計(jì)算機(jī)),單片機(jī)芯片在沒(méi)有開(kāi)發(fā)前,它只是具備功能極強(qiáng)的超大規(guī)模集成電路,如果對(duì)它進(jìn)行應(yīng)用開(kāi)發(fā),它便是一個(gè)小型的微型計(jì)算機(jī)控制系統(tǒng),但它與單板機(jī)或個(gè)人電腦(PC機(jī))又有著本質(zhì)的區(qū)別。單片機(jī)的應(yīng)用屬于芯片級(jí)應(yīng)用,需要用戶了解單片機(jī)芯片的結(jié)構(gòu)和指令系統(tǒng)以及其它集成電路應(yīng)用技術(shù)和系統(tǒng)設(shè)計(jì)所需要的理論和技術(shù),用這樣特定的芯片設(shè)計(jì)應(yīng)用程序,從而使該芯片具備特定的功能。不同的單片機(jī)有著不同的硬件特征和軟件特征,即它們的技術(shù)特征均不盡相同,硬件特征取決于單片機(jī)芯片的內(nèi)部結(jié)構(gòu),要使用某種單片機(jī),必須了解該型產(chǎn)品是否滿足需要的功能和應(yīng)用系統(tǒng)所要求的特性指標(biāo)。這里的技術(shù)特征包括功能特性、控制特性和電氣特性等,這些信息需要從生產(chǎn)廠商的技術(shù)手冊(cè)中得到。軟件特征是指指令系統(tǒng)特性和開(kāi)發(fā)支持環(huán)境,指令特性即我們熟悉的單片機(jī)的尋址方式,數(shù)據(jù)處理和邏輯處理方式,輸入輸出特性及對(duì)電源的要求等。開(kāi)發(fā)支持的環(huán)境包括指令的兼容及可移植性,支持軟件(包含可支持開(kāi)發(fā)應(yīng)用程序的軟件資源)及硬件資源要利用某型號(hào)單片機(jī)開(kāi)發(fā)自己的應(yīng)用系統(tǒng),掌握其結(jié)構(gòu)特征和技術(shù)特征是必須的。單片機(jī)控制系統(tǒng)能夠取代以前利用復(fù)雜電子線路或數(shù)字電路構(gòu)成的控制系統(tǒng),可以以軟件控制來(lái)實(shí)現(xiàn),并能夠?qū)崿F(xiàn)智能化,現(xiàn)在單片機(jī)控制范疇無(wú)所不在,例如通信產(chǎn)品、家用電器、智能儀器儀表、過(guò)程控制和專用控制裝置等等,單片機(jī)的應(yīng)用領(lǐng)域越來(lái)越廣泛。誠(chéng)然,單片機(jī)的應(yīng)用意義遠(yuǎn)不限于它的應(yīng)用范疇或由此帶來(lái)的經(jīng)濟(jì)效益,更重要的是它已從根本上改變了傳統(tǒng)的控制方法和設(shè)計(jì)思想。是控制技術(shù)的一次革命,是一座重要里程碑。單片機(jī)發(fā)展概述1946年第一臺(tái)電子計(jì)算機(jī)誕生至今,依靠微電子技術(shù)和半導(dǎo)體技術(shù)的進(jìn)步,從電子管—晶體管—集成電路—大規(guī)模集成電路,使得計(jì)算機(jī)體積更小,功能更強(qiáng)。特別是近20年時(shí)間里,計(jì)算機(jī)技術(shù)獲得飛速的發(fā)展,計(jì)算機(jī)在工農(nóng)業(yè),科研,教育,國(guó)防和航空航天領(lǐng)域獲得了廣泛的應(yīng)用,計(jì)算機(jī)技術(shù)已經(jīng)是一個(gè)國(guó)家現(xiàn)代科技水平的重要標(biāo)志。單片機(jī)誕生于20世紀(jì)70年代,像Fairchild公司研制的F8單片微型計(jì)算機(jī)。所謂單片機(jī)是利用大規(guī)模集成電路技術(shù)把中央處理單元(CenterProcessingUnit,也即常稱的CPU)和數(shù)據(jù)存儲(chǔ)器(RAM)、程序存儲(chǔ)器(ROM)及其他I/O通信口集成在一塊芯片上,構(gòu)成一個(gè)最小的計(jì)算機(jī)系統(tǒng),而現(xiàn)代的單片機(jī)則加上了中斷單元,定時(shí)單元及A/D轉(zhuǎn)換等更復(fù)雜、更完善的電路,使得單片機(jī)的功能越來(lái)越強(qiáng)大,應(yīng)用更廣泛。20世紀(jì)70年代,微電子技術(shù)正處于發(fā)展階段,集成電路屬于中規(guī)模發(fā)展時(shí)期,各種新材料新工藝尚未成熟,單片機(jī)仍處在初級(jí)的發(fā)展階段,元件集成規(guī)模還比較小,功能比較簡(jiǎn)單,一般均把CPU、RAM有的還包括了一些簡(jiǎn)單的I/O口集成到芯片上。1976年INTEL公司推出了MCS-48單片機(jī),早期的單片機(jī)都是8位或4位的。其中最成功的是INTEL的8031,因?yàn)楹?jiǎn)單可靠而性能不錯(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)。基于這一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。這個(gè)時(shí)期的單片機(jī)才是真正的8位單片微型計(jì)算機(jī),并推向市場(chǎng)。它以體積小,功能全,價(jià)格低贏得了廣泛的應(yīng)用,為單片機(jī)的發(fā)展奠定了基礎(chǔ),成為單片機(jī)發(fā)展史上的重要里程碑。在MCS-48的帶領(lǐng)下,其后,各大半導(dǎo)體公司相繼研制和發(fā)展了自己的單片機(jī),像Zilog公司的Z8系列。到了80年代初,單片機(jī)已發(fā)展到了高性能階段,像INTEL公司的MCS-51系列,Motorola公司的6801和6802系列,Rokwell公司的6501及6502系列等等。80年代,世界各大公司均競(jìng)相研制出品種多功能強(qiáng)的單片機(jī),約有幾十個(gè)系列,300多個(gè)品種,此時(shí)的單片機(jī)均屬于真正的單片化,大多集成了CPU、RAM、ROM、數(shù)目繁多的I/O接口、多種中斷系統(tǒng),甚至還有一些帶A/D轉(zhuǎn)換器的單片機(jī),功能越來(lái)越強(qiáng)大,RAM和ROM的容量也越來(lái)越大,尋址空間甚至可達(dá)64kB,可以說(shuō),單片機(jī)的發(fā)展到了一個(gè)新的平臺(tái)。單片機(jī)的應(yīng)用事實(shí)上單片機(jī)是世界上數(shù)量最多的計(jì)算機(jī)。現(xiàn)代人類生活中所用的每件電子和機(jī)械產(chǎn)品中幾乎都會(huì)集成有單片機(jī)。手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。汽車上一般配備40多部單片機(jī),復(fù)雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺(tái)單片機(jī)在同時(shí)工作。單片機(jī)的數(shù)量不僅遠(yuǎn)超過(guò)PC機(jī)和其他計(jì)算的綜合,甚至比人類的數(shù)量還要多。單片機(jī)是通過(guò)程序?qū)崿F(xiàn)的,并且可以修改。通過(guò)不同的程序?qū)崿F(xiàn)不同的功能,尤其是一些特殊、獨(dú)特的功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一個(gè)不是很復(fù)雜的功能要是用美國(guó)50年代開(kāi)發(fā)的74系列,或者60年代的CD4000系列這些純硬件來(lái)搞定的話,電路一定是一塊大PCB板。但是如果要是用美國(guó)70年代成功投放市場(chǎng)的系列單片機(jī),結(jié)果就會(huì)有天壤之別。只因?yàn)閱纹瑱C(jī)的通過(guò)你編寫的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性。由于單片機(jī)對(duì)成本是敏感的,所以目前占統(tǒng)治地位的軟件還是最低級(jí)匯編語(yǔ)言,它是除了二進(jìn)制機(jī)器碼以上最低級(jí)的語(yǔ)言了,既然這么低級(jí)為什么還要用呢很多高級(jí)的語(yǔ)言已經(jīng)達(dá)到了可視化編程的水平為什么不用呢原因很簡(jiǎn)單,就是單片機(jī)沒(méi)有家用計(jì)算機(jī)那樣的CPU,也沒(méi)有像硬盤那樣的海量存儲(chǔ)設(shè)備。一個(gè)可視化高級(jí)語(yǔ)言編寫的小程序里面即使只有一個(gè)按鈕,也會(huì)達(dá)到幾十K的尺寸。對(duì)于家用PC的硬盤來(lái)講沒(méi)什么,可是對(duì)于單片機(jī)來(lái)講是不能接受的。單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計(jì)算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用PC上來(lái)運(yùn)行,家用PC的也是承受不了的??梢哉f(shuō),二十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過(guò),這種電腦,通常是指?jìng)€(gè)人計(jì)算機(jī),簡(jiǎn)稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計(jì)算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡(jiǎn)單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它在整個(gè)裝置中,起著有如人類頭腦的作用,它出了毛病,整個(gè)裝置就會(huì)癱瘓了?,F(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級(jí)換代的功效,常在產(chǎn)品名稱前冠以形容詞—“智能型”,如智能型洗衣機(jī)等?,F(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開(kāi)發(fā)者搞出來(lái)的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡(jiǎn)單且極易被仿制。究其原因,可能原因就在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過(guò)程控制等領(lǐng)域,大致可分如下幾個(gè)范疇:1.在智能儀器儀表上的應(yīng)用單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長(zhǎng)度、硬度、元素、壓力等物理量的測(cè)量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。2.在工業(yè)控制中的應(yīng)用用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。3.在家用電器中的應(yīng)用可以這樣說(shuō),現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯褒、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材,再到電子秤量設(shè)備,五花八門,無(wú)所不在。4.在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無(wú)線通信、再到日常工作中隨處可見(jiàn)的移動(dòng)電話,集群移動(dòng)通信,無(wú)線電對(duì)講機(jī)等。5.單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。此外,單片機(jī)在工商,金融,科研、教育,國(guó)防航空航天等領(lǐng)域都有著十分廣泛的用途。單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng),或者稱為最小應(yīng)用系統(tǒng),是指用最少的元件組成的單片機(jī)可以工作的系統(tǒng)。對(duì)51系列單片機(jī)來(lái)說(shuō),最小系統(tǒng)一般應(yīng)該包括單片機(jī)、晶振電路和復(fù)位電路。圖為一個(gè)51單片機(jī)的最小系統(tǒng)的電路圖。下面對(duì)其進(jìn)行簡(jiǎn)單的介紹。=1\*GB3①?gòu)?fù)位電路:由電容串聯(lián)電阻構(gòu)成,由圖可以知道,當(dāng)系統(tǒng)一上電,RST腳將會(huì)出現(xiàn)高電平,并且,這個(gè)高電平持續(xù)的時(shí)間由電路的RC值來(lái)決定。典型的51單片機(jī)當(dāng)RST腳的高電平持續(xù)兩個(gè)機(jī)器周期以上就將復(fù)位,所以,適當(dāng)組合RC的取值就可以保證可靠的復(fù)位。原則就是要讓RC組合可以在RST腳上產(chǎn)生不少于2個(gè)機(jī)周期的高電平。至于如何具體定量計(jì)算,可以參考電路分析相關(guān)書(shū)籍。=2\*GB3②晶振電路:典型的晶振取(因?yàn)榭梢詼?zhǔn)確地得到9600波特率和19200波特率,用于有串口通訊的場(chǎng)合)/12MHz(產(chǎn)生精確的us級(jí)時(shí)間,方便定時(shí)操作)。=3\*GB3③單片機(jī):一片AT89S51/52或其他51系列兼容單片機(jī)。=4\*GB3④特別注意:對(duì)于31腳(EA/VPP),當(dāng)接高電平時(shí),單片機(jī)在復(fù)位后從內(nèi)部ROM的0000H開(kāi)始執(zhí)行;當(dāng)接低電平時(shí),復(fù)位后直接從外部ROM的0000H開(kāi)始執(zhí)行。這一點(diǎn)是容易被忽略的。因此可以看出,其實(shí)要熟悉51單片機(jī)的40個(gè)引腳功能也很容易:總共40個(gè)腳,其功能是:P0端口共8個(gè)通用I/O口;P1端口共8個(gè)通用I/O口;P2端口共8個(gè)通用I/O口;P3端口共8個(gè)通用I/O口;VCC:電源端,一般接5V;GND:電源地;XTAL1,XTAL2:外接晶體振蕩器,不能超過(guò)24M;需加微調(diào)電容,一般 為30pF;RST/VPD:復(fù)位端,平時(shí)為低電平;ALE/PROG:地址鎖存允許信號(hào)端;EA/Vpp:外部程序存儲(chǔ)器地址允許輸入端/固化編程電壓輸入端;LED數(shù)碼顯示器數(shù)碼管簡(jiǎn)介常用的顯示器件有:CRT顯示器、LCD顯示器、LED顯示器;常用的LED顯示器有LED發(fā)光二極管、LED七段顯示器(俗稱數(shù)碼管)和LED十六段顯示器。發(fā)光二極管可顯示兩種狀態(tài),用于系統(tǒng)狀態(tài)顯示;數(shù)碼管用于數(shù)字顯示;LED十六段顯示器用于字符顯示。數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元(多一個(gè)小數(shù)點(diǎn)顯示);按能顯示多少個(gè)“8”可分為1位、2位、4位等數(shù)碼管,以下重點(diǎn)介紹LED七段顯示器。LED顯示器是由發(fā)光二極管作為為顯示字段的數(shù)碼顯示器件,圖為一位LED顯示器的外形和引腳圖,其中七只發(fā)光二極管(a~g七段)構(gòu)成字型“8”,另外還有一只發(fā)光二極管dp作為小數(shù)點(diǎn)。

當(dāng)顯示器的某一段發(fā)光二極管通電時(shí),該段發(fā)光,例如,使b、c、f、g這4段發(fā)光二極管通電,則顯示字符“4”。圖數(shù)碼管外形引腳LED數(shù)碼管的主要特點(diǎn)如下:能在低電壓、小電流條件下驅(qū)動(dòng)發(fā)光,能與CMOS、ITL電路兼容。發(fā)光響應(yīng)時(shí)間極短(<0.1μs),高頻特性好,單色性好,亮度高。體積小,重量輕,抗沖擊性能好。壽命長(zhǎng),使用壽命在10萬(wàn)小時(shí)以上,甚至可達(dá)100萬(wàn)小時(shí)。成本低。因此它被廣泛用作數(shù)字儀器儀表、數(shù)控裝置、計(jì)算機(jī)的數(shù)顯器件。LED顯示器有共陰極和共陽(yáng)極兩種結(jié)構(gòu),按發(fā)光二極管單元連接方式分為共陽(yáng)極數(shù)碼管和共陰極數(shù)碼管。共陽(yáng)數(shù)碼管是指將所有發(fā)光二極管的陽(yáng)極接到一起形成公共陽(yáng)極(COM)的數(shù)碼管。共陽(yáng)數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陰極為高電平時(shí),相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽(yáng)極為高電平時(shí),相應(yīng)字段就點(diǎn)亮。反之,當(dāng)某一字段的陽(yáng)極為低電平時(shí),相應(yīng)字段就不亮。相應(yīng)接法如圖所示。圖共陰極和共陽(yáng)極接法共陰極字段碼舉例:對(duì)于共陰極的數(shù)碼管,當(dāng)某一段發(fā)光二極管為高電平時(shí),則該段發(fā)光。LED顯示0~9某個(gè)字符時(shí),則要求在a~dp送固定的字段碼,如要使LED顯示“0”,則要求a、b、c、d、f各引腳為高電平,g和dp為低電平,見(jiàn)表。表顯示0的共陰極段碼dpgfedcba

00111111而00111111變成16進(jìn)制即0x3f,即共陰極是0的字段碼為“0xfh”。

共陰極和共陽(yáng)極字符0~9的段碼如下表:表共陰極和共陽(yáng)極7段LED顯示字形十六進(jìn)制編碼表字符0123456789共陰極字段碼0xfh0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f共陽(yáng)極字段碼0xc00xf90xa40xb00x990x920x820xf80x800x90數(shù)碼管顯示方式數(shù)碼管要正常顯示,就要用驅(qū)動(dòng)電路來(lái)驅(qū)動(dòng)數(shù)碼管的各個(gè)段碼,從而顯示出我們要的數(shù)字,因此根據(jù)數(shù)碼管的驅(qū)動(dòng)方式的不同,可以分為靜態(tài)式和動(dòng)態(tài)式兩類。在靜態(tài)顯示方式下,每一位顯示器的字段控制線是獨(dú)立的。當(dāng)顯示某一字時(shí),該位的各字段線和字位線的電平不變,也就是各字段的亮滅狀態(tài)不變。靜態(tài)顯示方式下LED顯示器的電路連接方法是:每位LED的字位控制線門共陰極點(diǎn)或共陽(yáng)極點(diǎn)連在一起,接地或接+5V;其字段控制線(a~dp)分別接到一個(gè)8位口。靜態(tài)顯示的優(yōu)點(diǎn)是占用CPU時(shí)間少,編程簡(jiǎn)單,顯示便于監(jiān)測(cè)和控制且亮度高,缺點(diǎn)是占用I/O端口多,硬件電路比較復(fù)雜且成本較高,如驅(qū)動(dòng)5個(gè)數(shù)碼管靜態(tài)顯示則需要5×8=40根I/O端口來(lái)驅(qū)動(dòng),實(shí)際應(yīng)用時(shí)必須增加譯碼驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng),增加了硬件電路的復(fù)雜性。而動(dòng)態(tài)顯示則是利用人眼的視覺(jué)暫留效應(yīng)。分時(shí)顯示不同的數(shù)碼管。動(dòng)態(tài)顯示是一位一位地輪流點(diǎn)亮各位數(shù)碼管,這種逐位點(diǎn)亮顯示器的方式稱為位掃描。其方法就是把所有數(shù)碼管的8個(gè)筆畫段a~dp同名端連在一起,而每一個(gè)顯示器的公共極COM是各自獨(dú)立地受I/O線控制。CPU向字段輸出口送出字形碼時(shí),所有顯示器接收到相同的字形碼,由公共極COM段來(lái)控制這8位哪一位工作。數(shù)碼管與單片機(jī)的連接數(shù)碼管的控制分為兩個(gè)部分進(jìn)行,分別是數(shù)碼管的位控制和數(shù)碼管的段控制。本設(shè)計(jì)的數(shù)碼管位選控制功能引腳為P2^0-P2^3,數(shù)碼管段選控制功能引腳為P0。第三章使用軟件介紹keil軟件單片機(jī)開(kāi)發(fā)除必要的硬件外,同樣離不開(kāi)軟件,我們寫的匯編語(yǔ)言源程序要變?yōu)镃PU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編。機(jī)器匯編是通過(guò)匯編軟件將源程序變?yōu)闄C(jī)器碼。隨著單片機(jī)開(kāi)發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語(yǔ)言到逐漸使用高級(jí)語(yǔ)言開(kāi)發(fā),單片機(jī)的開(kāi)發(fā)軟件也在不斷發(fā)展,keil軟件是目前最流行開(kāi)發(fā)8051系列單片機(jī)的軟件。keil提供了包括C編譯器,宏匯編,連接器,庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uVision)將這些部分組合在一起。keilC51是keil公司針對(duì)80C51系列單芯片,在Windows平臺(tái)上開(kāi)發(fā)出的一套工具軟件,通過(guò)keiluVision2的IDE(整合發(fā)展環(huán)境),提供80C51匯編語(yǔ)言與C51語(yǔ)言的編譯/連結(jié)、除錯(cuò)/模擬測(cè)試,并具備完善的項(xiàng)目管理系統(tǒng)(Project),以及系統(tǒng)文件說(shuō)明等功能。keil工程的建立首先啟動(dòng)keil軟件的集成開(kāi)發(fā)環(huán)境,可以從桌面上直接雙擊uVision的圖標(biāo)以啟動(dòng)該軟件。uVision啟動(dòng)后,程序窗口的左邊有一個(gè)工程管理窗口,該窗口有3個(gè)標(biāo)簽,分別是分別是Files、Regs、和Books,這三個(gè)標(biāo)簽頁(yè)分別顯示當(dāng)前項(xiàng)目的文件結(jié)構(gòu)、CPU的寄存器及部份特殊功能寄存器的值(調(diào)試時(shí)才出現(xiàn))和所選CPU的附加說(shuō)明文件,如果是第一次啟動(dòng)Keil,那么這三個(gè)標(biāo)簽頁(yè)全是空的。使用菜單“File->New”或者點(diǎn)擊工具欄的新建文件按鈕,即可在項(xiàng)目窗口的右側(cè)打開(kāi)一個(gè)新的文本編緝窗口,在該窗口中輸入?yún)R編語(yǔ)言源程序。輸入完成后,保存該文件,注意必須加上擴(kuò)展名(C語(yǔ)言源程序一般用C為擴(kuò)展名),這里假定將文件保存為。需要說(shuō)明的是,源文件就是一般的文本文件,不一定使用Keil軟件編寫。在項(xiàng)目開(kāi)發(fā)中,并不是僅有一個(gè)源程序就行了,還要為這個(gè)項(xiàng)目選擇CPU(Keil支持?jǐn)?shù)百種CPU,而這些CPU的特性并不完全相同),確定編譯、匯編、連接的參數(shù),指定調(diào)試的方式,有一些項(xiàng)目還會(huì)有多個(gè)文件組成等,為管理和使用方便,Keil使用工程(Project)這一概念,將這些參數(shù)設(shè)置和所需的所有文件都加在一個(gè)工程中,只能對(duì)工程而不能對(duì)單一的源程序進(jìn)行編譯(匯編)和連接等操作,下面我們就一步一步地來(lái)建立工程。點(diǎn)擊“Project->NewProject…”菜單,出現(xiàn)一個(gè)對(duì)話框,要求給將要建立的工程起一個(gè)名字,你可以在編輯框中輸入一個(gè)名字(假設(shè)為prog),不需要擴(kuò)展名。點(diǎn)擊“保存”按鈕,出現(xiàn)第二個(gè)對(duì)話框,所示,這個(gè)對(duì)話框要求選擇目標(biāo)CPU(即你所用芯片的型號(hào)),Keil支持的CPU很多,我們選擇Atmel公司的89C51芯片,如圖。圖選擇目標(biāo)CPU點(diǎn)擊ATMEL前面的“+”號(hào),展開(kāi)該層,點(diǎn)擊其中的89C51,然后再點(diǎn)擊“確定”按鈕,回到主界面,此時(shí),在工程窗口的文件頁(yè)中,出現(xiàn)了“Target1”,前面有“+”號(hào),點(diǎn)擊“+”號(hào)展開(kāi),可以看到下一層的“SourceGroup1”,這時(shí)的工程還是一個(gè)空的工程,里面什么文件也沒(méi)有,需要手動(dòng)把剛才編寫好的源程序加入。點(diǎn)擊“SourceGroup1”使其反白顯示,然后,點(diǎn)擊鼠標(biāo)右鍵,出現(xiàn)一個(gè)下拉菜單,如圖。圖加入文件選中其中“AddfiletoGroup‘SourceGroup1’”,出現(xiàn)一個(gè)對(duì)話框,要求尋找源文件。注意,該對(duì)話框下面的“文件類型”默認(rèn)為Csourcefile(*.c),也就是以C為擴(kuò)展名的文件,雙擊文件,將文件加入項(xiàng)目,然后點(diǎn)擊“Close”即可返回主界面,返回后,點(diǎn)擊“SourceGroup1”前的加號(hào),會(huì)發(fā)現(xiàn)文件已在其中。雙擊文件名,即可打開(kāi)源程序了。工程的詳細(xì)設(shè)置工程建立好以后,還要對(duì)工程進(jìn)行進(jìn)一步的設(shè)置,以滿足所需要求。首先點(diǎn)擊左邊Project窗口的Target1,然后使用菜單“Project->Optionfortarget‘target1’”即出現(xiàn)對(duì)工程設(shè)置的對(duì)話框,設(shè)置對(duì)話框中的Target頁(yè)面,如圖所示,Xtal后面的數(shù)值是晶振頻率值。圖對(duì)目標(biāo)進(jìn)行設(shè)置設(shè)置對(duì)話框中的OutPut頁(yè)面,如圖所示,這里面也有多個(gè)選擇項(xiàng),其中CreatHexfile用于生成可執(zhí)行代碼文件(可以用編程器寫入單片機(jī)芯片的HEX格式文件,文件的擴(kuò)展名為.HEX),默認(rèn)情況下該項(xiàng)未被選中,如果要寫片做硬件實(shí)驗(yàn),就必須選中該項(xiàng)。選中Debuginformation將會(huì)產(chǎn)生調(diào)試信息,這些信息用于調(diào)試,如果需要對(duì)程序進(jìn)行調(diào)試,應(yīng)當(dāng)選中該項(xiàng)。Browseinformation是產(chǎn)生瀏覽信息,該信息可以用菜單view->Browse來(lái)查看,這里取默認(rèn)值。按鈕“SelectFolderforobjects”是用來(lái)選擇最終的目標(biāo)文件所在的文件夾,默認(rèn)是與工程文件在同一個(gè)文件夾中。NameofExecutable用于指定最終生成的目標(biāo)文件的名字,默認(rèn)與工程的名字相同,這兩項(xiàng)一般不需要更改。工程設(shè)置對(duì)話框中的其它各頁(yè)面與C51編譯選項(xiàng)、A51的匯編選項(xiàng)、BL51連接器的連接選項(xiàng)等用法有關(guān),這里均取默認(rèn)值,不作任何修改。圖對(duì)輸出進(jìn)行控制編譯、連接在設(shè)置好工程后,即可進(jìn)行編譯、連接。選擇菜單Project->Buildtarget,對(duì)當(dāng)前工程進(jìn)行連接,如果當(dāng)前文件已修改,軟件會(huì)先對(duì)該文件進(jìn)行編譯,然后再連接以產(chǎn)生目標(biāo)代碼;如果選擇RebuildAlltargetfiles將會(huì)對(duì)當(dāng)前工程中的所有文件重新進(jìn)行編譯然后再連接,確保最終生產(chǎn)的目標(biāo)代碼是最新的,而Translate…項(xiàng)則僅對(duì)該文件進(jìn)行編譯,不進(jìn)行連接。以上操作也可以通過(guò)工具欄按鈕直接進(jìn)行。圖是有關(guān)編譯、設(shè)置的工具欄按鈕,從左到右分別是:編譯、編譯連接、全部重建、停止編譯和對(duì)工程進(jìn)行設(shè)置。編譯過(guò)程中的信息將出現(xiàn)在輸出窗口中的Build頁(yè)中,如果源程序中有語(yǔ)法錯(cuò)誤,會(huì)有錯(cuò)誤報(bào)告出現(xiàn),雙擊該行,可以定位到出錯(cuò)的位置,對(duì)源程序反復(fù)修改之后,最終會(huì)得到如圖所示的結(jié)果,提示獲得了名為的文件,該文件即可被編程器讀入并寫到芯片中,同時(shí)還產(chǎn)生了一些其它相關(guān)的文件,可被用于Keil的仿真與調(diào)試,這時(shí)可以進(jìn)入下一步調(diào)試的工作。圖有關(guān)編譯、連接、項(xiàng)目設(shè)置的工具條圖正確編譯、連接之后的結(jié)果 程序調(diào)試運(yùn)行編譯成功后,選擇Debug下面的Start/StopDebugSession(或者使用快捷鍵Ctrl+F5),如圖,這個(gè)選項(xiàng)可以打開(kāi)調(diào)試也可以關(guān)閉調(diào)試。在下拉菜單中單“Go”選項(xiàng)(或者使用快捷鍵F5),則開(kāi)始運(yùn)行,然后再單擊“Debug”菜單,在下拉菜單中單擊“StopRunning”選項(xiàng)(或者使用快捷鍵Esc)則停止運(yùn)行。圖打開(kāi)、關(guān)閉調(diào)試下面介紹一些常用的調(diào)試按鈕,如圖圖常用調(diào)試按鈕圖中的第一個(gè)就是Reset,相當(dāng)于單片機(jī)最簡(jiǎn)系統(tǒng)的復(fù)位按鈕,按下后,所有的系統(tǒng)狀態(tài)將變成初始狀態(tài)。第二個(gè)是全速運(yùn)行,相當(dāng)于單片機(jī)的通電執(zhí)行。第三個(gè)是停止全速運(yùn)行的按鈕。第四個(gè)stepinto逐語(yǔ)句,進(jìn)入單步執(zhí)行,單步執(zhí)行。第五個(gè)stepover逐過(guò)程。第六個(gè)stepout跳出。第七個(gè)執(zhí)行到斷點(diǎn)處。proteus軟件Proteus軟件是英國(guó)Labcenterelectronics公司出版的EDA工具軟件(該軟件中國(guó)總代理為廣州風(fēng)標(biāo)電子技術(shù)有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國(guó)內(nèi)推廣剛起步,但已受到單片機(jī)愛(ài)好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開(kāi)發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。本設(shè)計(jì)主要利用proteus軟件對(duì)主程序進(jìn)行仿真。protel99軟件PROTEL是PORTEL公司在20世紀(jì)80年代末推出的電路行業(yè)的CAD軟件,它當(dāng)之無(wú)愧地排在眾多EDA軟件的前面,是電路設(shè)計(jì)者的首選軟件。較早在國(guó)內(nèi)使用,普及率也最高。幾乎所有的電路公司都要用到它。早期的PROTEL主要作為印刷板自動(dòng)布線工具使用,運(yùn)行在DOS環(huán)境,對(duì)硬件的要求很低,在無(wú)硬盤286機(jī)的1M內(nèi)存下就能運(yùn)行。它的功能較少,只有電原理圖繪制與印刷板設(shè)計(jì)功能,印刷板自動(dòng)布線的布通率也低。Protel99是Protel公司近10年來(lái)致力于Windows平臺(tái)開(kāi)發(fā)的最新結(jié)晶,能實(shí)現(xiàn)從電學(xué)概念設(shè)計(jì)到輸出物理生產(chǎn)數(shù)據(jù),以及這之間的所有分析、驗(yàn)證和設(shè)計(jì)數(shù)據(jù)管理。因而今天的Protel最新產(chǎn)品已不是單純的PCB(印制電路板)設(shè)計(jì)工具,而是一個(gè)系統(tǒng)工具,覆蓋了以PCB為核心的整個(gè)物理設(shè)計(jì)。最新版本的Protel軟件可以毫無(wú)障礙地讀Orcad、Pads、Accel(PCAD)等知名EDA公司設(shè)計(jì)文件,以便用戶順利過(guò)渡到新的EDA平臺(tái)。它包含了電原理圖繪制、模擬電路與數(shù)字電路混合信號(hào)仿真、多層印刷電路板設(shè)計(jì)(包含印刷電路板自動(dòng)布線)、可編程邏輯器件設(shè)計(jì)、圖表生成、電路表格生成、支持宏操作等功能,并具有Client/Server(客戶/服務(wù)器)體系結(jié)構(gòu),同時(shí)還兼容一些其它設(shè)計(jì)軟件的文件格式,如ORCAD、PSPICE、EXCEL等。使用多層印制線路板的自動(dòng)布線,可實(shí)現(xiàn)高密度PCB的100%布通率。Protel99共分5個(gè)模塊,分別是原理圖設(shè)計(jì)、PCB設(shè)計(jì)(包含信號(hào)完整性分析)、自動(dòng)布線器、原理圖混合信號(hào)仿真、PLD設(shè)計(jì)。第四章電路設(shè)計(jì)原理系統(tǒng)概要該系統(tǒng)采用51單片機(jī)作為主控制芯片,口作為東西向和南北向的LED紅燈、綠燈、黃燈的控制,P0口作為數(shù)碼管顯示段選的控制,口作為數(shù)碼管的位選控制。此交通信號(hào)仿真機(jī)設(shè)置系統(tǒng)內(nèi)部為兩相位信號(hào)配時(shí),能夠?qū)崿F(xiàn)單點(diǎn)信號(hào)交叉口的信號(hào)控制控制。設(shè)計(jì)流程在設(shè)計(jì)交通信號(hào)仿真機(jī)過(guò)程中,首先要討論哪類單片機(jī)能夠?qū)崿F(xiàn)此功能,其次要對(duì)C語(yǔ)言程序可行性進(jìn)行驗(yàn)證,然后再對(duì)整個(gè)電路進(jìn)行設(shè)計(jì)。下面為設(shè)計(jì)交通信號(hào)仿真機(jī)的總體流程:=1\*GB3①選中單片機(jī)類型及確定引腳控制功能=2\*GB3②對(duì)程序進(jìn)行基于C語(yǔ)言的編寫并調(diào)試=3\*GB3③在PROTEUS中對(duì)電路仿真圖進(jìn)行繪制=4\*GB3④將PROTEUS與KEIL進(jìn)行聯(lián)機(jī)調(diào)試=5\*GB3⑤將設(shè)計(jì)好的電路原理圖圖在protel99中進(jìn)行繪制單片機(jī)引腳連接對(duì)象單片機(jī)的每個(gè)引腳的與元器件的連接關(guān)系到電路的復(fù)雜性。對(duì)引腳對(duì)應(yīng)元件的關(guān)系進(jìn)行精心的設(shè)計(jì),將引腳盡可能的設(shè)計(jì)的合理一些,能夠降低印刷板電路圖的成本,同時(shí)也簡(jiǎn)化了電路。具體簡(jiǎn)化思路為將位置相鄰的元器件用相鄰的單片機(jī)引腳來(lái)進(jìn)行控制,這樣能夠形成并排的導(dǎo)線布設(shè)??刂埔髷?shù)碼管控制使用了共陰極的數(shù)碼管,公共端接低電平??紤]到系統(tǒng)簡(jiǎn)化后I/O口完全夠用,所以使兩個(gè)兩位數(shù)碼作為顯示,并使用動(dòng)態(tài)顯示方案,利用循環(huán)程序來(lái)實(shí)現(xiàn)數(shù)碼管的持續(xù)點(diǎn)亮。信號(hào)燈控制東西、南北兩干道交于一個(gè)十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。交通燈系統(tǒng)開(kāi)始工作,按下停止按鈕系統(tǒng)復(fù)位且重新工作。系統(tǒng)工作時(shí),交通燈的亮滅規(guī)律為:初始信號(hào)燈為東西向紅燈亮(禁止通行)南北向綠燈亮(通行),并計(jì)為S1狀態(tài),時(shí)間20秒;20秒后,綠燈轉(zhuǎn)換為黃燈顯示,同時(shí)紅燈保持不變,持續(xù)5秒,此為S2狀態(tài)。進(jìn)而信號(hào)燈轉(zhuǎn)換為東西向綠燈亮(通行)南北向紅燈亮(禁止通行),計(jì)為狀態(tài)S3,時(shí)間30秒;30秒而后綠燈轉(zhuǎn)換為黃燈顯示,同時(shí)紅燈保持不變,持續(xù)5秒,此為狀態(tài)S4。繼續(xù)重復(fù)上述的過(guò)程。硬件系統(tǒng)根據(jù)設(shè)計(jì)流程,首先對(duì)電路仿真圖進(jìn)行了繪制并調(diào)試好C語(yǔ)言程序;其次進(jìn)行了基于protelDXP的原理圖設(shè)計(jì),并對(duì)原理圖中的元器件進(jìn)行了封裝進(jìn)而生成了印刷板電路圖;最后列清元件清單。信號(hào)仿真機(jī)硬件設(shè)計(jì)原理圖(見(jiàn)附圖1)信號(hào)仿真機(jī)印刷板電路圖(見(jiàn)附圖2)信號(hào)仿真機(jī)程序仿真圖(見(jiàn)附圖3)第五章實(shí)現(xiàn)設(shè)計(jì)的程序程序流程圖初始化初始化初始東西紅燈亮南北綠燈亮初始東西紅燈亮南北綠燈亮開(kāi)始倒計(jì)時(shí)開(kāi)始倒計(jì)時(shí)計(jì)數(shù)值計(jì)夠1S否計(jì)數(shù)值計(jì)夠1S否NNYY個(gè)位計(jì)夠10s否個(gè)位計(jì)夠10s否NNYYN倒計(jì)時(shí)時(shí)間計(jì)夠否N倒計(jì)時(shí)時(shí)間計(jì)夠否YY重新賦值,繼續(xù)計(jì)時(shí)重新賦值,繼續(xù)計(jì)時(shí)黃燈點(diǎn)亮綠燈滅并延時(shí)黃燈點(diǎn)亮綠燈滅并延時(shí)黃燈是否夠3s黃燈是否夠3sNNYY黃燈滅燈色轉(zhuǎn)換黃燈滅燈色轉(zhuǎn)換圖主程序循環(huán)流程圖時(shí)間設(shè)定延時(shí)方案比較延時(shí)方法可以有兩種一中是利用MCS-51內(nèi)部定時(shí)器才生溢出中斷來(lái)確定時(shí)間,另一種是采用軟延時(shí)的方法。表比較了軟件與硬件定時(shí)的性能,通過(guò)比較,最終決定采用軟件定時(shí)的方案,這樣可以不使用中斷,而時(shí)間要求不是很高,對(duì)于程序,經(jīng)過(guò)仔細(xì)調(diào)整即可使時(shí)間更精確。表軟件與硬件定時(shí)的性能比較性能比較軟件定時(shí)硬件定時(shí)硬件電路復(fù)雜度無(wú)需多余硬件,電路簡(jiǎn)單需要用計(jì)數(shù)器產(chǎn)生中斷,電路比較復(fù)雜軟件復(fù)雜度設(shè)定循環(huán)參數(shù),用L00P語(yǔ)句實(shí)現(xiàn)定時(shí),編寫簡(jiǎn)單要對(duì)計(jì)數(shù)器初始化,還要編寫中斷服務(wù)程序,較復(fù)雜可靠性受CPU處理速度、狀態(tài)等多因索影響,可靠性較差完全由計(jì)數(shù)器單獨(dú)控制,可靠性高實(shí)時(shí)性循環(huán)程序占用CPU,效率低、實(shí)時(shí)性較差采用中斷方式,效率低、實(shí)時(shí)性好定時(shí)精確度各參數(shù)粗略計(jì)算得到,精確度較差通過(guò)控制輸入脈沖,能精確控制使用場(chǎng)合對(duì)時(shí)間精度要求不高、在專用微機(jī)上使用的情況下常常使用該方式對(duì)時(shí)間精度要求高、程序要求通用的情況下,應(yīng)使用硬件定時(shí)軟件延時(shí)延時(shí)定義函數(shù)voiddelay(intms){ uintj,k; for(j=0;j<ms;j++) for(k=0;k<124;k++);}對(duì)其延時(shí)函數(shù)進(jìn)行多次循環(huán)既可以達(dá)到延時(shí)效果,通常能為其循環(huán)120次即可視為1s。程序設(shè)計(jì)系統(tǒng)初始化設(shè)置編寫程序初始要對(duì)單片機(jī)的引腳進(jìn)行一次定義,所編程序如下:sbitk1=P1^6;sbitk2=P1^7;sbitk3=P2^7;sbitk4=P3^0;sbitk5=P3^4; 基于單片機(jī)的交通燈控制系統(tǒng)設(shè)計(jì)[J].現(xiàn)代企業(yè)教育.2009年9月下期.[2]楊劍禮.基于單片機(jī)交通燈智能控制系統(tǒng)研究[J].煤炭技術(shù).2010年第29卷第10期.[3]安曉莉.AT89S51單片機(jī)開(kāi)發(fā)板的設(shè)計(jì)[J].電子設(shè)計(jì)工程.2009年.第17卷第9期.[4]

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論