版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
畢業(yè)論文(設(shè)計(jì))題目基于單片機(jī)控制的交通燈的設(shè)計(jì)_學(xué)生姓名學(xué)號(hào)專業(yè)班級(jí)指導(dǎo)教師完成時(shí)間:201年月日摘要交通信號(hào)燈的出現(xiàn),使交通得以有效管制,對(duì)于疏導(dǎo)交通流量,提高道路通行能力,減少交通事故有明顯效果。本人選擇制作交通燈作為課題加以研究。分析了現(xiàn)代城市交通控制與管理問題的現(xiàn)狀,結(jié)合城鄉(xiāng)交通的實(shí)際情況闡述了交通燈控制系統(tǒng)的工作原理,利用單片機(jī)89S51為核心部件,外加定時(shí)器、復(fù)位電路、晶振電路、顯示電路等,設(shè)計(jì)一個(gè)比較符合交通規(guī)則的模擬交通燈,包括人行道,車行道、南北東西左轉(zhuǎn)、應(yīng)急車道,以及基本的交通燈的功能,同時(shí)給出了一種簡單實(shí)用的城市交通燈控制系統(tǒng)的硬件電路設(shè)計(jì)方案。本文主要介紹了一個(gè)基于80C51單片機(jī)的交通燈控制系統(tǒng),詳細(xì)描述了利用89C51開發(fā)交通燈控制系統(tǒng)的過程,重點(diǎn)對(duì)硬件設(shè)計(jì)、軟件編程、調(diào)試分析以及各模塊系統(tǒng)流程進(jìn)行了詳細(xì)分析,對(duì)各部分的電路也一一進(jìn)行了介紹。本系統(tǒng)由80C51單片機(jī)、鍵盤、交通燈演示組成,。該系統(tǒng)可以方便的實(shí)現(xiàn)交通燈控制。該系統(tǒng)結(jié)構(gòu)簡單,可靠性高,修改程序簡單(方便加入或改變功能),有較好的應(yīng)用前景。關(guān)鍵詞:交通控制;單片機(jī);80C51
ABSTRACTTrafficlights,traffictotheeffectivecontrol,toeasethetrafficflow,increaseroadcapacity,reducetrafficaccidentshaveademonstrableeffect.Ichoosetocreateatrafficlightasasubjecttobestudied.Analysisofthestatusofamodernurbantrafficcontrolandmanagementissues,combinedwiththeactualsituationofurbanandruraltransportationonthetrafficlightcontrolsystemworkswithmicrocontroller89S51asthecorecomponents,plusthetimer,resetcircuit,crystaloscillatorcircuit,displaycircuit,designamoreinlinewiththetrafficrulesofthesimulationoftrafficlights,sidewalk,roadway,northandsouththingsturnleftemergencylane,andthebasicfunctionofthetrafficlights,atthesametimegivesasimpleandpracticalurbantrafficlightcontrolsystemhardwarecircuitdesign.Thispaperdescribesa80C51microcontroller-basedtrafficlightcontrolsystem,detaileddescriptionoftheuse89C51developmentprocessofthetrafficlightcontrolsystem.Focusonadetailedanalysisofthehardwaredesign,softwareprogramming,analysisanddebuggingprocessofthemodularsystem,onthepartofthecircuitareintroducedonebyone.Thesystemismadeupof80C5lmicrocomputer,keyboardandtrafficlightsdisplay.ThesystemcaneasilyachievetrafficlightcontrolThesystemissimple,highreliability,easytomodifytheprogram(easyaddorchangefunctions),hasgoodprospects.KEYWORDS:TrafficControl,SingleChipMicrocomputer,80C51目錄摘要 I第1章緒論 11.1課題研究的背景及意義 11.2當(dāng)前的研究現(xiàn)狀 11.3本文的主要工作和難點(diǎn) 2第2章道路交通燈的總體系統(tǒng)的設(shè)計(jì)方案 32.1總體設(shè)計(jì)方案 32.1.1系統(tǒng)機(jī)構(gòu)總框架 32.1.2交通管理的方案論證 32.1.3控制電路框圖 32.2電路的工作原理 42.3本章小結(jié) 5第3章硬件設(shè)計(jì) 63.1MCS-51單片機(jī)介紹 63.1.1簡介 63.1.3時(shí)鐘脈沖電路 113.1.4復(fù)位電路 123.1.5電源電路 123.2硬件原理圖 123.3本章小結(jié) 13第4章軟件設(shè)計(jì) 144.1主程序設(shè)計(jì) 144.1.1主程序流程圖 144.2初始化程序 144.3延時(shí)程序 144.4源程序 154.5本章小結(jié) 15第5章調(diào)試分析 165.1KEIL51軟件簡介 165.1.1系統(tǒng)概述 165.1.2KeilC51單片機(jī)軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu) 175.2調(diào)試步驟 185.2.1邏輯的調(diào)試 185.2.2模擬電路板的調(diào)試 205.3調(diào)試中的問題及解決方案 205.4本章小結(jié) 21結(jié)論與展望 22致謝 23參考文獻(xiàn) 24 緒論1.1課題研究的背景及意義隨著經(jīng)濟(jì)的發(fā)展,城市現(xiàn)代化程度不斷提高,交通需求和交通量迅速增長,城市交通網(wǎng)絡(luò)中交通擁擠日益嚴(yán)重,道路運(yùn)輸所帶來的交通擁堵、交通事故和環(huán)境污染等負(fù)面效應(yīng)也日益突出,逐步成為經(jīng)濟(jì)和社會(huì)發(fā)展中的全球性共同問題。交通問題已經(jīng)日益成為世界性的問題,城市交通事故、交通堵塞和交通污染問題愈加突出。為了解決車和路的矛盾,常用的有兩種方法:一是控制需求,最直接的辦法就是限制車輛的增加;二是增加供給,即大量修筑道路基礎(chǔ)設(shè)施的辦法,在資源、環(huán)境矛盾越來越突出的今天,面對(duì)越來越擁擠的交通,有限的資源和財(cái)力以及環(huán)境的壓力,也將受到限制。這就需要依靠除限制需求和提供道路設(shè)施之外的其他辦法來滿足日益增長的交通需求。在現(xiàn)有的道路交通條件下,實(shí)施交通控制和管理,充分發(fā)揮現(xiàn)有道路的通行能力正是解決這一矛盾的途徑之一,大量事實(shí)已經(jīng)證明這種方法的有效性。1.2當(dāng)前的研究現(xiàn)狀路是交通的物質(zhì)基礎(chǔ),有路才能通車,行人。我國是一個(gè)文明古國,許多城市已有上千年的歷史,城市布局和道路結(jié)構(gòu)是在漫長的歷史進(jìn)程中逐步形成的,近幾年雖然作了些改建和擴(kuò)建,但畢竟還難以沖破原來的基本格局。我國城市道路普遍存在的弊端是:a.路網(wǎng)密度低;b.交通干道少;c.路口平面交叉。道路狀況與車輛狀況的綜合作用形成了我國城市交通的特殊性,主要表現(xiàn)是:城市路網(wǎng)稀,干道少,間距大,市區(qū)人口稠密,出行需求集中,迫使車輛集中于少數(shù)干道上行駛。至于中小城市,干道特征更為明顯,往往只有一兩條干道貫穿全市,而其他支路上交通量極小。從流量變化情況來看,除外圍過境干道外,都是有一定規(guī)律的,高峰小時(shí)基本上都集中在幾個(gè)時(shí)段內(nèi)。我國城市機(jī)動(dòng)車車種繁雜,從50年代的老式車到80年代的新型車,從大貨車到小轎車都在一個(gè)平面上行駛,不少城市拖拉機(jī)還是一種主要運(yùn)輸工具,前面一輛舊車擋道,尾隨的新型車只能跟著爬行,過交叉口時(shí)經(jīng)常出現(xiàn)啟動(dòng)慢的車擋住啟動(dòng)快的車,使交通工程師精心設(shè)計(jì)的交通配時(shí)方案不能很好發(fā)揮效益。1.3本文的主要工作和難點(diǎn)通過對(duì)城市主要十字路口交通控制規(guī)律的觀察發(fā)現(xiàn),我國現(xiàn)有交通燈或者交通規(guī)則的一個(gè)缺陷:十字路口,右拐的車輛經(jīng)常和過馬路的行人沖突,因?yàn)檐囕v右拐和行人過馬路是同時(shí)進(jìn)行的,根本沒有時(shí)間段的劃分,所以車和人就像打籃球運(yùn)球過人,要么過去,要么撞一下,而且經(jīng)常是車不讓人,人不讓車,交通事故經(jīng)常在這里發(fā)生,有的路口有協(xié)管給車和人分配時(shí)間,但大多數(shù)路口都是沒協(xié)管的,因而在這次設(shè)計(jì)中,為了彌補(bǔ)這個(gè)缺陷,特意為行人留出時(shí)間過馬路,實(shí)行人車分流,在此期間各路轉(zhuǎn)彎不再進(jìn)行。本文主要工作是利用80C51單片機(jī)設(shè)計(jì)一個(gè)交通燈控制系統(tǒng)。在一個(gè)主要十字路口,縱向?yàn)橹鞲傻?,橫向?yàn)橹Ц傻?。主、支干道交替通行,主干道每次放?0秒,支干道每次放行12秒;每次綠燈變紅燈前,黃燈先亮4秒,此時(shí)另一干道上的紅燈亮并閃爍。它們的工作方式,有些必須是同時(shí)進(jìn)行的:主干道綠燈亮、支干道紅燈亮;主干道黃燈亮、支干道紅燈亮并閃爍;主干道紅燈亮、支干道綠燈亮;主干道紅燈亮并閃爍、支干道黃燈亮。道路交通燈的總體系統(tǒng)的設(shè)計(jì)方案2.1總體設(shè)計(jì)方案采用MSC-51系列單片機(jī)和可編程并行I/O接口芯片為中心件來設(shè)計(jì)交通燈控制器,進(jìn)行交通燈路口的管理。它用簡單的硬件電路模擬交通燈信號(hào)燈的交替變換,實(shí)現(xiàn)紅綠燈循環(huán)點(diǎn)亮。用LED數(shù)碼管作為倒計(jì)時(shí)指示,通行指示燈采用發(fā)光二極管,LED顯示動(dòng)態(tài)掃描,以節(jié)省端口,特殊緊急車輛通行采用實(shí)時(shí)中斷完成。2.1.1系統(tǒng)機(jī)構(gòu)總框架本系統(tǒng)是針對(duì)一個(gè)大型十字路口設(shè)計(jì)的交通信號(hào)燈控制系統(tǒng)。東西方向和南北方向各設(shè)有紅燈、黃燈、綠燈各一組。狀態(tài)一為主干道綠燈亮,支干道紅燈亮20秒,狀態(tài)二為主干道黃燈亮,支干道紅燈閃爍4秒狀態(tài)三為主干道紅燈亮,支干道綠燈亮12秒,狀態(tài)四為主干道紅燈閃爍,支干道黃燈亮4秒。四個(gè)狀態(tài)一直循環(huán),并有數(shù)碼管顯示時(shí)間。2.1.2交通管理的方案論證東西、南北兩干道交于一個(gè)十字路口。各干道有紅燈、黃燈、綠燈各一組,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,P1.0~P1.2分別控制支干道的紅、黃、綠燈,P1.3~P1.5分別控制主干道的紅、黃、綠燈。2.1.3控制電路框圖倒計(jì)時(shí)顯示倒計(jì)時(shí)顯示89C52系統(tǒng)處理交通信號(hào)燈圖2.1控制電路框圖本系統(tǒng)每個(gè)信號(hào)指示燈接一個(gè)對(duì)應(yīng)的I/O口,通過對(duì)I/O口賦值控制交通信號(hào)燈的狀態(tài)來指揮交通。在此基礎(chǔ)上按鍵可以觸發(fā)單片機(jī)進(jìn)入中斷,進(jìn)而控制交通信號(hào)燈的狀態(tài)。2.2電路的工作原理本系統(tǒng)的電路較簡單,實(shí)物圖如附錄一所示。共設(shè)有12個(gè)LED,其中紅色的4個(gè),綠色的4個(gè),黃色的4個(gè)。所有LED陽極接+5V電源,陰極與對(duì)應(yīng)的I/O口相連。當(dāng)單片機(jī)上電后,系統(tǒng)對(duì)其初始化,所有燈滅。當(dāng)給任何一個(gè)I/O口賦值0時(shí),與其對(duì)應(yīng)的LED點(diǎn)亮。這樣,通過對(duì)P1的合理賦值并控制其延時(shí)時(shí)間就可以實(shí)現(xiàn)基本的交通控制。圖2.2主支干道圖圖中,t表示時(shí)間,MG表示主干道綠燈,MY表示主干道黃燈,MR表示主干道紅燈,SG表示支干道綠燈,SY表示支干黃道燈,SR表示支干道紅燈,由交通燈工作時(shí)序流程圖可以看出,交通燈應(yīng)滿足兩個(gè)方向的工作時(shí)序:主干道綠燈和黃燈亮的時(shí)間等于支干道紅燈亮的時(shí)間;支干道綠燈和黃燈亮的時(shí)間等于主干道紅燈亮的時(shí)間。若假設(shè)每個(gè)單位脈沖周期為1秒,則主干道綠燈、黃燈、紅燈分別亮的時(shí)間為20秒、4秒、16秒,支干道紅燈、綠燈、黃燈分別亮的時(shí)間為24秒、12秒、4秒。一次循環(huán)為40秒。主干道黃燈亮?xí)r,支干道紅燈以1Hz的頻率閃爍;支干道黃燈亮?xí)r,主干道紅燈以1Hz的頻率閃爍。主、支干道各信號(hào)燈亮?xí)r,需配合有時(shí)間提示,以數(shù)字顯示出來,方便行人與機(jī)動(dòng)車觀察。主、支干道信號(hào)燈亮的時(shí)間均以每秒減“1”的計(jì)數(shù)方式工作,直至減到“0”后主、支干道個(gè)信號(hào)燈自動(dòng)轉(zhuǎn)換。2.3本章小結(jié)本章主要介紹了道路交通燈的總體系統(tǒng)的設(shè)計(jì)方案。設(shè)計(jì)出系統(tǒng)機(jī)構(gòu)的總框架,并且對(duì)交通管理的方案進(jìn)行了論證,在發(fā)現(xiàn)現(xiàn)有交通燈控制系統(tǒng)存在不足的基礎(chǔ)上,在本系統(tǒng)中對(duì)其進(jìn)行了改善,設(shè)計(jì)出了能實(shí)現(xiàn)本次設(shè)計(jì)要求的方案。設(shè)計(jì)出本系統(tǒng)的控制電路框圖,并對(duì)其工作原理進(jìn)行了進(jìn)一步說明。硬件設(shè)計(jì)3.1MCS-51單片機(jī)介紹MCS-51單片機(jī)廣泛應(yīng)用在簡單的設(shè)計(jì)中,例如交通燈、遙控器等,在我們的生活中都有應(yīng)用。單片機(jī)已經(jīng)稱為我們生活不可缺少的東西。3.1.1簡介單片機(jī)是微機(jī)的一種,是將單片機(jī)的CPU、存儲(chǔ)器、I/O接口和總線制作在一塊芯片上的大規(guī)模集成電路。由于單片機(jī)具有體積小、功能全、價(jià)格低、開發(fā)應(yīng)用方便等優(yōu)點(diǎn),又可將其嵌入產(chǎn)品的內(nèi)部,因此得到了及其廣泛的應(yīng)用。(1)單片機(jī)的發(fā)展史單片機(jī)的發(fā)展大致可分為4個(gè)階段。a.初始階段由于受到技術(shù)發(fā)展的影響,單片機(jī)的制作工藝較差、集成度較低。這個(gè)階段的單片機(jī)多采用雙片結(jié)構(gòu),且功能比較簡單。有些單片機(jī)在應(yīng)用過程中,由于內(nèi)部資源太少,需要外接其他功能的芯片才能實(shí)現(xiàn)應(yīng)用功能。b.低性能階段在此階段,單片機(jī)的功能有了進(jìn)一步發(fā)展、相關(guān)的接口電路、定時(shí)器、計(jì)數(shù)器等都集成到一個(gè)芯片中。同時(shí)單片機(jī)被推向市場,促進(jìn)了單片機(jī)的變革。c.高性能階段在這個(gè)階段,單片機(jī)的品種逐漸增加,功能不斷完善,其內(nèi)部的RAM、ROM都有所增大,尋址范圍也變大,并且增加了串行口和多級(jí)中斷處理。d.16位單片機(jī)階段由于電子元件、系統(tǒng)結(jié)構(gòu)和軟件技術(shù)的不斷進(jìn)步,單片機(jī)的制造工藝和集成度都得到迅速發(fā)展,其內(nèi)部資源得到了較大的發(fā)展,實(shí)時(shí)處理能力更強(qiáng)。(2)單片機(jī)的內(nèi)部結(jié)構(gòu)單片機(jī)經(jīng)過幾十年的不斷發(fā)展,其功能和組成結(jié)構(gòu)基本已固定,內(nèi)部結(jié)構(gòu)示意圖如圖1-1所示。a.中央處理器(CPU)CPU是單片機(jī)的核心部件,根據(jù)CPU字長可分為1位機(jī)、4位機(jī)、8位機(jī)、16位機(jī)以及32位機(jī),CPU的運(yùn)算速度、處理數(shù)據(jù)能力、實(shí)施控制功能等性能都與CPU的字長有關(guān),因此,字長是衡量CPU功能的主要指標(biāo)。b.存儲(chǔ)器存儲(chǔ)器按功能可分為程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,由于單片機(jī)主要面向控制,因此一般需要大容量的程序存儲(chǔ)器和較少的數(shù)據(jù)存儲(chǔ)器,同時(shí)存儲(chǔ)器類型也不一樣。c.程序存儲(chǔ)器單片機(jī)內(nèi)部程序存儲(chǔ)器容量一般為1KB~64KB,通常采用只讀存儲(chǔ)器(ROM)。采用只讀存儲(chǔ)器作為程序存儲(chǔ)器,不僅提高了可靠性,而且由于只讀存儲(chǔ)器的集成度較高、價(jià)格較低,降低了成本。CPUCPUROM中斷系統(tǒng)串行I/O口并行I/O口定時(shí)器RAM圖3.1單片機(jī)內(nèi)部結(jié)構(gòu)示意圖d.數(shù)據(jù)存儲(chǔ)器單片機(jī)內(nèi)部的數(shù)據(jù)存儲(chǔ)量一般為64B~256B,通常采用靜態(tài)隨即存儲(chǔ)器(RAM),還有少數(shù)單片機(jī)內(nèi)采用EEPROM作為數(shù)據(jù)存儲(chǔ)器。數(shù)據(jù)存儲(chǔ)器可分為工作寄存器、堆棧,位標(biāo)志和數(shù)據(jù)緩沖器使用。e.I/O接口及特殊功能部件單片機(jī)內(nèi)部有數(shù)量不等的并行接口,可以作為外界無輸入/輸出設(shè)備,通常也包含1~2個(gè)串行口,用于實(shí)現(xiàn)異步串行通信。特殊功能部件通常包括定時(shí)/計(jì)數(shù)器,其他例如A/D、PWM、DMA等根據(jù)不同類型的單片機(jī),其配置不同。(3)單片機(jī)應(yīng)用系統(tǒng)根據(jù)單片機(jī)應(yīng)用場合及系統(tǒng)控制的要求不同,在規(guī)模、結(jié)構(gòu)上存在很大不同,根據(jù)使用功能器件的種類和數(shù)量,可分為基本系統(tǒng)和擴(kuò)展系統(tǒng)。1)基本系統(tǒng)在此系統(tǒng)中,包含一個(gè)單片機(jī),在該單片機(jī)中含有程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,僅在外部配置了維持系統(tǒng)運(yùn)行的基本部件,例如電源、輸入/輸出,除了這些,還包括不擴(kuò)充程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、I/O接口以及其他功能部件,因此也被稱為最小系統(tǒng),其結(jié)構(gòu)示意圖如圖3.2所示。復(fù)位電路復(fù)位電路電源電路單片機(jī)時(shí)鐘電路輸入/輸出圖3.2單片機(jī)最小系統(tǒng)示意圖2)擴(kuò)展系統(tǒng)在大多數(shù)系統(tǒng)中,由于需要實(shí)現(xiàn)一些特殊的功能,采用最小系統(tǒng)無法滿足系統(tǒng)的控制要求,所以要擴(kuò)展特殊功能部件,彌補(bǔ)單片機(jī)內(nèi)部資源的不足。單片機(jī)擴(kuò)展系統(tǒng)通過并行I/O口或者串行口做總線,在外部擴(kuò)展了程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、A/D轉(zhuǎn)換等特殊部件,以滿足控制系統(tǒng)的特殊要求,其結(jié)構(gòu)示意圖如3.3所示。(4)單片機(jī)的發(fā)展趨勢(shì)隨著科學(xué)技術(shù)的不斷發(fā)展,單片機(jī)的工藝和集成度不斷提高,其功能正朝著多功能、高性能的方向發(fā)展,主要體現(xiàn)在一下幾方面。1)各種等級(jí)的單片機(jī)性能提高EPROM程EPROM程序存儲(chǔ)器RAM數(shù)據(jù)存儲(chǔ)器A/DD/A并行接口串行接口復(fù)位電路時(shí)鐘電路輸入/輸出電源電路單片機(jī)圖3.3單片機(jī)擴(kuò)展系統(tǒng)鋼結(jié)構(gòu)示意圖隨著工藝技術(shù)和集成度技術(shù)的發(fā)展,許多低端單片機(jī)的性能有了較大的提高,甚至可以完成部分高端單片機(jī)才能實(shí)現(xiàn)的功能,其運(yùn)算速度、功能和可靠性等方面也得到了快速的發(fā)展。a.CPU功能增強(qiáng)CPU的性能主要體現(xiàn)在數(shù)據(jù)處理的速度和精度上,通過增加CPU的字長、擴(kuò)充硬件、提高總線速度和處理效率等手段,提高CPU的性能。b.內(nèi)部資源增加單片機(jī)除了CPU外還有其他部件,通過增強(qiáng)已有部件的性能和增加特殊功能的部件來提高單片機(jī)的性能。例如增大存儲(chǔ)器的容量,現(xiàn)在一些高端單片機(jī)的程序存儲(chǔ)器的ROM、EPROM、EEPROM或者FLASH都達(dá)到及時(shí)KB,而數(shù)據(jù)存儲(chǔ)器的RAM也已達(dá)到及時(shí)KB。一般的控制系統(tǒng)要求的功能較多,采用較低端的單片機(jī),由于其內(nèi)部資源不夠,無法實(shí)現(xiàn)控制要求,因此需要擴(kuò)展部件,而擴(kuò)展部件又會(huì)造成系統(tǒng)可靠性降低,所以要在工藝水平提高的基礎(chǔ)上,盡量集成較多的部件在單片機(jī)的內(nèi)。單片機(jī)的特殊部件包括I/O口(并行口和串行口兩種)、定時(shí)/計(jì)數(shù)器、AD/DA轉(zhuǎn)換器、PWM輸出等,通過在內(nèi)部集成此類部件,可大大增強(qiáng)單片機(jī)的控制功能。c.尋址范圍增加尋址方式的多少直接反應(yīng)了機(jī)器指令系統(tǒng)功能的強(qiáng)弱,尋址方式越多,其功能越強(qiáng),靈活性越大,這也是衡量單片機(jī)性能的重要指標(biāo)之一?,F(xiàn)在已有部分單片機(jī)對(duì)外部存儲(chǔ)器、I/O口尋址范圍增加到幾MB,甚至有單片機(jī)可以選擇某些I/O口作為系統(tǒng)的擴(kuò)展總線使用。2)小型化、低功耗在一些智能控制系統(tǒng)中,其整體系統(tǒng)體積較小,功率不大,因此要求單片機(jī)的體積和功耗都要在一定范圍內(nèi),促使單片機(jī)向小型化、低功耗的方向發(fā)展。例如,1992年美國推出的i80860超級(jí)單片機(jī),運(yùn)算速度為1.2億次每秒,可進(jìn)行32位整數(shù)運(yùn)算、64位浮點(diǎn)運(yùn)算,同時(shí)片內(nèi)集成了一個(gè)三維圖形處理器,可構(gòu)成超級(jí)圖形工作站。3.1.2管腳說明圖3.4MCS-51引腳圖MCS-51單片機(jī)是采用40引腳雙列直插封裝的芯片,有些引腳具有兩種功能,引腳如圖3.4所示。引腳功能如下:Vcc:電源+5V。VSS:接地。XTAL1和XTAL2:使用內(nèi)部振蕩電路時(shí),用來接石英晶體和電容;使用內(nèi)部時(shí)鐘時(shí),用來輸入時(shí)鐘脈沖。P0口:雙向I/O口,既可以作地址∕數(shù)據(jù)總線口,也可作普通I/O口用。P1口:準(zhǔn)雙向通用I/O口。P2口:準(zhǔn)雙向口,地址總線口輸出地址高8位口。P3口:多功能端口,既可以作普通I/O口用,也可以按每位定義的第二功能操作。ALE/PROG:地址鎖存信號(hào)輸出端。在訪問片外存儲(chǔ)器時(shí),ALE為高電平有效時(shí),P0口輸出地址低8位,用ALE信號(hào)做外部地址鎖存器的鎖存信號(hào)。?ALE=?OSC/6,可以做系統(tǒng)中跟其他芯片的時(shí)鐘源。第二功能PROG是對(duì)8751的EPROM編程脈沖輸入端。RST/VPD:復(fù)位信號(hào)輸入端。接通電源后,在該引腳施加大于兩個(gè)機(jī)器周期(24個(gè)振蕩周期)的高電平,就可使單片機(jī)完成內(nèi)部的復(fù)位工作。第二功能是Vpd,即備用電源輸入端。當(dāng)主電源Vcc發(fā)生故障,降低到低電平規(guī)定值時(shí),Vpd將為RAM提供備用電源,以保證存貯在RAM中的信號(hào)不丟失。/EA/VPP:/EA=1時(shí)程序先片內(nèi)后片外自動(dòng)連續(xù)運(yùn)行;例如:89C52內(nèi)部有8K字的EEP-ROM就可使/EA=1,先從內(nèi)程序存儲(chǔ)區(qū)開始執(zhí)行程序,當(dāng)PC值超過內(nèi)部8K字節(jié)(0000-1FFF),才會(huì)轉(zhuǎn)到從2000H開始的外程序區(qū)執(zhí)行程序,當(dāng)/EA=0時(shí)程序直接從片外開始執(zhí)行程序。在對(duì)8751的EPROM編程時(shí),此引腳接編程電壓12.5V。/PSEN:片外程序存儲(chǔ)器選通信號(hào),低電平有效。3.1.3時(shí)鐘脈沖電路MCS-51的時(shí)鐘可以有兩種方式產(chǎn)生,一種是內(nèi)部方式,利用芯片內(nèi)部的震蕩電路;另外一種為外部方式。本文根據(jù)實(shí)際需要和簡便,采用內(nèi)部震蕩方式。MCS=51內(nèi)部有一個(gè)用于構(gòu)成震蕩器的高增益反響放大器,引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外警惕或陶瓷諧振器一起構(gòu)成一個(gè)自激振蕩器。MCS-51雖然有內(nèi)部振蕩電路,但要形成時(shí)鐘,必須外接元件,所以實(shí)際構(gòu)成的是振蕩時(shí)鐘電路。外接晶體以及電容Cl和C2構(gòu)成并聯(lián)諧振電路接在放大器的反饋回路中。對(duì)接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會(huì)影響振蕩器頻率的高低、振蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。晶體頻率可在1.2MHz-12MHz之間任選,電容Cl和C2的典型值在20pF-100pF之間選擇,考慮到本系統(tǒng)對(duì)于外接晶體的頻率穩(wěn)定性要求不高,所以采取比較廉價(jià)的陶瓷諧振器。由于本系統(tǒng)應(yīng)用的機(jī)器周期為lms,所以晶振選擇為12MHz,根據(jù)調(diào)試電容選擇30pF.3.1.4復(fù)位電路MCS-51的復(fù)位輸入引腳RST為MCS-51提供了初始化的手段。有了它可以使程序從指定處開始執(zhí)行,即從0000H地址單元開始執(zhí)行程序。在MCS-51的時(shí)鐘電路工作后,只要RST引腳上出現(xiàn)10ms以上的高電平時(shí),單片機(jī)內(nèi)部則出示復(fù)位。只要RST保持高電平,則MCS-51循環(huán)復(fù)位。只有當(dāng)RST由高電平變低電平以后,MCS-5l才從0000H地址開始執(zhí)行程序。MCS-51的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。復(fù)位引腳通過施密特觸發(fā)器與復(fù)位電路相連。施密特觸發(fā)器用來抑制噪聲,它的輸出在每個(gè)機(jī)器周期的S5P2,由復(fù)位電路采樣一次。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式。本系統(tǒng)采用兩種方式的復(fù)合方式即上電位按鈕復(fù)位式。3.1.5電源電路由于單片機(jī)工作時(shí)需要的+5v電壓,所以在設(shè)計(jì)電源電路時(shí),需要一個(gè)電子元件能提供+5v電壓,由于7805能夠提供5V電壓的三端穩(wěn)壓電源,在實(shí)際的電路控制中應(yīng)用其作為電源電路較為廣泛,在普通的電子元器件商場都有銷售易于購買,并且技術(shù)相對(duì)成熟。7805一腳為電源輸入段,二腳為公共接地段,三腳即為我們所需要的+5V電壓輸出端。本文采用最典型的7805提供電壓的電路,即在7805的l腳和公共接地端(即2腳)之間接入0.3mF的電容,在公共接地端和三腳+5V電壓輸出端之間接人0.1mF的電容。3.2硬件原理圖本系統(tǒng)利用89C52芯片對(duì)12個(gè)LED進(jìn)行控制,實(shí)現(xiàn)交通信號(hào)燈的控制。同時(shí),每個(gè)LED串接一個(gè)阻值為330Ω的電阻,以保證系統(tǒng)上電后通過LED的電流不會(huì)過大,防止其燒毀。 圖3.5硬件原理圖3.3本章小結(jié)本章主要是關(guān)于本系統(tǒng)用到的硬件設(shè)計(jì)的介紹。文中對(duì)MCS-51單片機(jī)進(jìn)行了介紹,系統(tǒng)闡述了本設(shè)計(jì)用到的89C52芯片各管腳功能,并且對(duì)時(shí)鐘脈沖電路、復(fù)位電路和電源電路進(jìn)行了一一解釋。重點(diǎn)介紹了本系統(tǒng)的硬件原理圖,對(duì)其進(jìn)行了較為細(xì)致的說明。軟件設(shè)計(jì)4.1主程序設(shè)計(jì)設(shè)計(jì)出程序的流程圖以及初始、延時(shí)程序及源程序。4.1.1主程序流程圖本系統(tǒng)在一般情況下循環(huán)執(zhí)行信號(hào)燈狀態(tài)流程,流程圖如圖4.1所示。圖4.1信號(hào)燈狀態(tài)流程圖主、支干道交替通行,主干道每次放行20秒,支干道每次放行12秒;每次綠燈變紅燈前,黃燈先亮4秒,此時(shí)另一干道上的紅燈亮并閃爍。它們的工作方式,有些必須是同時(shí)進(jìn)行的:主干道綠燈亮、支干道紅燈亮;主干道黃燈亮、支干道紅燈亮并閃爍;主干道紅燈亮、支干道綠燈亮;主干道紅燈亮并閃爍、支干道黃燈亮。4.2初始化程序單片機(jī)上電時(shí)I/O口默認(rèn)為高點(diǎn)平,需要在進(jìn)入主函數(shù)時(shí)對(duì)P1進(jìn)行附初值。因本系統(tǒng)中LED低電平時(shí)點(diǎn)亮,故給P1都賦值0xff,使LED全滅。程序中用到外部中斷0和外部中斷1,需要初始化,開總中斷、開外部中斷0和外部中斷1,還需要選擇觸發(fā)方式,本系統(tǒng)中斷中選擇下降沿觸發(fā)。4.3延時(shí)程序延時(shí)可有兩種途徑實(shí)現(xiàn):軟件延時(shí)和單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器延時(shí)。軟件延時(shí)不占用硬件資源,但占用了CPU時(shí)間,降低了CPU的利用率。定時(shí)/計(jì)數(shù)器延時(shí)不占用CPU時(shí)間,但占用了硬件資源。本系統(tǒng)采用定時(shí)器延時(shí),單次延時(shí)時(shí)間為50ms,晶振12MHz。4.4源程序源程序參考附錄一。4.5本章小結(jié)本章主要介紹本論文中的軟件設(shè)計(jì)部分。文中詳細(xì)介紹了本系統(tǒng)的主程序設(shè)計(jì)、初始化程序、外部中斷及延時(shí)程序,并附有程序中的各種流程圖,使讀者對(duì)本系統(tǒng)的設(shè)計(jì)有了進(jìn)一步了解。調(diào)試分析5.1KEIL51軟件簡介單片機(jī)開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過匯編軟件將源程序變?yōu)闄C(jī)器碼,用于MCS-51單片機(jī)的匯編軟件有早期的A51,隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級(jí)語言開發(fā),單片機(jī)的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)MCS-51系列單片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(mVision)將這些部份組合在一起。運(yùn)行Keil軟件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對(duì)于使用51系列單片機(jī)的愛好者來說是十分必要的,如果你使用C語言編程,那么Keil幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機(jī)也很可能只支持該軟件),即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令你事半功倍。5.1.1系統(tǒng)概述KeilC51是美國KeilSoftware公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會(huì)更加深刻。Keil51的編譯環(huán)境如圖5-1所示。圖中:標(biāo)題欄:顯示當(dāng)前編譯的文件菜單條:有十項(xiàng)菜單可供選擇,相應(yīng)的所有操作命令均可在此菜單中查找;工具欄:常用命令的快捷圖標(biāo)按鈕;管理窗口:顯示工程文件的項(xiàng)目、各個(gè)寄存器值的變化、參考資料等;信息窗口:顯示當(dāng)前文件編譯、運(yùn)行等相關(guān)信息;工作窗口:各種文件的顯示窗口。圖5.1Keil51的編譯環(huán)境KeilC51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語言的優(yōu)勢(shì)。下面詳細(xì)介紹KeilC51開發(fā)系統(tǒng)各部分功能和使用。5.1.2KeilC51單片機(jī)軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu)C51工具包的整體結(jié)構(gòu),其中mVision與Ishell分別是C51forWindows和forDos的集成開發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。開發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如EPROM中。使用獨(dú)立的Keil仿真器時(shí),注意事項(xiàng)*仿真器標(biāo)配11.0592MHz的晶振,但用戶可以在仿真器上的晶振插孔中換插其他頻率的晶振。*仿真器上的復(fù)位按鈕只復(fù)位仿真芯片,不復(fù)位目標(biāo)系統(tǒng)。*仿真芯片的31腳(/EA)已接至高電平,所以仿真時(shí)只能使用片內(nèi)ROM,不能使用片外ROM;但仿真器外引插針中的31腳并不與仿真芯片的31腳相連,故該仿真器仍可插入到擴(kuò)展有外部ROM(其CPU的/EA引腳接至低電平)的目標(biāo)系統(tǒng)中使用。5.2調(diào)試步驟進(jìn)行邏輯調(diào)試、模擬電路的調(diào)試,還有解決在調(diào)試中出現(xiàn)的問題5.2.1邏輯的調(diào)試Keil51編譯指南:第1步:打開Keil51軟件,首先彈出一個(gè)開機(jī)啟動(dòng)畫面。第2步:然后進(jìn)入Keil51的開發(fā)界面。下面簡要介紹一下Keil51開發(fā)環(huán)境中各個(gè)區(qū)域的功能。Keil51開發(fā)環(huán)境可以分為四個(gè)區(qū)域,分別為:菜單條、項(xiàng)目文件管理窗口、代碼編譯窗口和代碼編譯信息窗口四個(gè)部分。菜單條分為十項(xiàng),所有的命令都可以在這里找到。下面的命令是一些常用的菜單命令,如文件的打開、關(guān)閉及保存。其中編譯命令最為常用。中間靠左是項(xiàng)目文件管理窗口,這里可以看到當(dāng)前項(xiàng)目中所包含的所有帶編譯的文件。項(xiàng)目文件管理窗口的右側(cè)是代碼編譯窗口,這事我們最主要的工作區(qū)域。最底層顯示了代碼編譯的信息。當(dāng)代碼有語法錯(cuò)誤時(shí),可以在這里輕松的找到問題的所在。第3步:下面以建立一個(gè)簡單的項(xiàng)目為例,來說明Keil51開發(fā)項(xiàng)目的一般方法。單擊Project菜單項(xiàng),選擇NewProject項(xiàng)。第4步:此時(shí)彈出CreateNewProject對(duì)話框,選擇合適的路徑口,在文件名一欄中填入新工程的名字。單擊保存。第5步:根據(jù)所用的器件,選擇CPU的型號(hào),單擊確定。第6步:Keil51詢問是否生成默認(rèn)的配置文件,這個(gè)可選可不選,這里選定。單擊Yes,觀察項(xiàng)目文件管理窗口的變化。第7步:在File菜單下單擊New選項(xiàng),新建文件。此時(shí)在代碼窗口出現(xiàn)一“Text1”空白文檔。第8步:在“Text1”中編輯完代碼后,單擊File菜單中的保存項(xiàng),彈出保存對(duì)話框。保存名寫為text.c。單擊保存。注意在對(duì)文件命名時(shí)必須加擴(kuò)展名。第9步:在項(xiàng)目導(dǎo)航欄中SourceGroup上單擊右鍵,選AddFiletoGroup‘SourceGroup1’。第10步:此時(shí)彈出AddFile對(duì)話框。選中剛才保存的text.c文件。單擊Add。此時(shí)在項(xiàng)目文件管理窗口中就會(huì)出現(xiàn)剛才所添加的文件text.c。第11步:單擊快捷菜單欄中的編譯按鈕,可以編譯程序。第12步:單擊Project菜單項(xiàng),選擇OptionforTarget‘Target1’選項(xiàng)。在彈出的對(duì)話框中可以對(duì)Project進(jìn)行總體配置。第13步:選擇Output選項(xiàng)卡,單擊CreateHEXFile,代碼輸出格式應(yīng)為HEX-80。第14步:單擊確定后,并重新編譯。可以看到編譯成功之后,Build選項(xiàng)卡里又多了一項(xiàng)。這是生成的HEX文件。第15步:單擊Debug菜單項(xiàng)中的Start/StopDebugSession命令或工具欄中的進(jìn)入調(diào)試界面。第16步:單擊調(diào)試界面Debug菜單項(xiàng)中的Go命令或工具欄中的運(yùn)行程序,單擊StopRunning命令或來結(jié)束程序。觀察運(yùn)行結(jié)果,若結(jié)果正確,便可通過下載軟件將它燒寫到目標(biāo)板上去。這樣,一個(gè)簡單的Keil51下的項(xiàng)目就完成了。注:Keil51對(duì)匯編語言文件的編譯調(diào)試步驟和對(duì)C語言的編譯調(diào)試基本上是一樣的,只是在第八步中用匯編語言進(jìn)行代碼的編寫,并在保存文件時(shí)將擴(kuò)展名加成.asm。本系統(tǒng)中,最初采用把9個(gè)狀態(tài)分別設(shè)置成一個(gè)子函數(shù)的方法。在每個(gè)子函數(shù)中對(duì)在此狀態(tài)中需要點(diǎn)亮的LED單獨(dú)賦值,延時(shí)程序采用定時(shí)器延時(shí),在主函數(shù)中設(shè)置調(diào)用子函數(shù)。但是在調(diào)試過程中遇到很多問題,比如,LED并未按照理想的方式點(diǎn)亮或熄滅,也沒有狀態(tài)變化。在經(jīng)過分析后,采用了另一種更為簡單的方法,即給P1口和P2口整體賦值,如P1=0xff、P2=0xff即表示所有LED不點(diǎn)亮。每個(gè)狀態(tài)只需賦一個(gè)或兩個(gè)值,需要延時(shí)時(shí)只需調(diào)用延時(shí)程序。此外,對(duì)延時(shí)程序也進(jìn)行了修改,把原有方案改為用CPU延時(shí),這樣,程序變得較為簡單易行。5.2.2模擬電路板的調(diào)試通過查找資料選擇了合適的LED和電阻,合適阻值的電阻和LED串聯(lián)能保證在通上電后LED的內(nèi)部電流在允許范圍內(nèi),防止LED因內(nèi)部電流過大而被燒毀。調(diào)試過程中,因不慎短路造成一個(gè)LED燒毀,相應(yīng)的面包板的孔也燒毀。經(jīng)過分析發(fā)現(xiàn),LED和電阻兩端的引線都過長,在調(diào)試過程中如果不慎碰一下會(huì)造成LED被燒毀。所以,剪短陰線后重新安插面包板,消除了隱患。5.3調(diào)試中的問題及解決方案調(diào)試過程中遇到不少問題問題一:上文邏輯調(diào)試中提到的問題,即LED并未按照預(yù)期的流程點(diǎn)亮,而且也沒有狀態(tài)變化。解決方案:經(jīng)過進(jìn)一步分析后,發(fā)現(xiàn)把每個(gè)狀態(tài)設(shè)置成一個(gè)獨(dú)立的子函數(shù)然后在主函數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024高中地理第四章區(qū)域經(jīng)濟(jì)發(fā)展第2節(jié)區(qū)域工業(yè)化與城市化-以我國珠江三角洲地區(qū)為例精練含解析新人教必修3
- 2024高中生物第三章植物的激素調(diào)節(jié)第1節(jié)植物生長素的發(fā)現(xiàn)精練含解析新人教版必修3
- 2024高考地理一輪復(fù)習(xí)第十七單元區(qū)域經(jīng)濟(jì)發(fā)展考法精練含解析
- 2024高考化學(xué)一輪復(fù)習(xí)第4章非金屬及其化合物第14講氮及其化合物精練含解析
- 2024高考?xì)v史一輪復(fù)習(xí)方案專題二代中國反侵略求民主的潮流專題綜合測驗(yàn)含解析人民版
- 2024高考地理一輪復(fù)習(xí)第一部分自然地理-重在理解第四章地表形態(tài)的塑造第14講河流地貌的發(fā)育學(xué)案新人教版
- DB42-T 168-2024 湖北省府河流域氯化物排放標(biāo)準(zhǔn)
- 股骨粗隆間骨折-內(nèi)固定失效
- (3篇)2024年幼兒園班級(jí)總結(jié)
- 項(xiàng)目管理人員職責(zé)
- 自動(dòng)化招聘筆試試題及答案
- 重慶市主城四區(qū)2025屆高一物理第一學(xué)期期末聯(lián)考試題含解析
- 住院病人身體約束護(hù)理
- 胡夾桃綜合征
- GB/T 44415-2024基于全球衛(wèi)星導(dǎo)航的機(jī)動(dòng)車制動(dòng)性能路試檢驗(yàn)要求和方法
- 2023-2024屆高考語文復(fù)習(xí)-閱讀與訓(xùn)練主題+工匠精神(含答案)
- 四川省城市園林綠化施工技術(shù)標(biāo)準(zhǔn)
- 部編版小學(xué)一年級(jí)上冊(cè)道德與法治教學(xué)設(shè)計(jì)(第三、第四單元)
- HG-T+21527-2014回轉(zhuǎn)拱蓋快開人孔
- 胃腸減壓的護(hù)理措施要點(diǎn)課件
- DL5190.5-2019電力建設(shè)施工技術(shù)規(guī)范第5部分:管道及系統(tǒng)
評(píng)論
0/150
提交評(píng)論