版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、 畢業(yè)論文(設(shè)計) 題 目 基于單片機控制的交通燈設(shè)計 專 業(yè) 數(shù)碼嵌入式技術(shù) 班 級 數(shù)嵌(35)班 學(xué) 生 田 成 指導(dǎo)教師 魏勤勤 西安數(shù)字技術(shù)學(xué)院二 0一二年摘 要交通信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量,提高道路通行能力,減少交通事故有明顯效果。本人選擇制作交通燈作為課題加以研究。分析了現(xiàn)代城市交通控制與管理問題的現(xiàn)狀,結(jié)合城鄉(xiāng)交通的實際情況闡述了交通燈控制系統(tǒng)的工作原理,利用單片機89s51為核心部件,外加定時器、復(fù)位電路、晶振電路、顯示電路等,設(shè)計一個比較符合交通規(guī)則的模擬交通燈,包括人行道,車行道、南北東西左轉(zhuǎn)、應(yīng)急車道,以及基本的交通燈的功能,同時給出了一種簡單
2、實用的城市交通燈控制系統(tǒng)的硬件電路設(shè)計方案。本文主要介紹了一個基于80c51單片機的交通燈控制系統(tǒng),詳細描述了利用89c51開發(fā)交通燈控制系統(tǒng)的過程,重點對硬件設(shè)計、軟件編程、調(diào)試分析以及各模塊系統(tǒng)流程進行了詳細分析,對各部分的電路也一一進行了介紹。本系統(tǒng)由80c51單片機、鍵盤、交通燈演示組成,。該系統(tǒng)可以方便的實現(xiàn)交通燈控制。該系統(tǒng)結(jié)構(gòu)簡單,可靠性高,修改程序簡單(方便加入或改變功能),有較好的應(yīng)用前景。 關(guān)鍵詞:交通控制;單片機;80c51abstracttraffic lights, traffic to the effective control, to ease the traff
3、ic flow, increase road capacity, reduce traffic accidents have a demonstrable effect. i choose to create a traffic light as a subject to be studied. analysis of the status of a modern urban traffic control and management issues, combined with the actual situation of urban and rural transportation on
4、 the traffic light control system works with microcontroller 89s51 as the core components, plus the timer, reset circuit, crystal oscillator circuit, display circuit, design a more in line with the traffic rules of the simulation of traffic lights, sidewalk, roadway, north and south things turn left
5、 emergency lane, and the basic function of the traffic lights, at the same time gives a simple and practical urban traffic light control system hardware circuit design.this paper describes a 80c51 microcontroller-based traffic light control system, detailed description of the use 89c51 development p
6、rocess of the traffic light control system. focus on a detailed analysis of the hardware design, software programming, analysis and debugging process of the modular system, on the part of the circuit are introduced one by one. the system is made up of 80c5l microcomputer, keyboard and traffic lights
7、 display. the system can easily achieve traffic light control the system is simple, high reliability, easy to modify the program (easy add or change functions), has good prospects.key words: traffic control, single chip microcomputer , 80c51目 錄摘 要iabstractii第1章 緒論11.1 課題研究的背景及意義11.2 當(dāng)前的研究現(xiàn)狀11.3 本文的主
8、要工作和難點2第2章 道路交通燈的總體系統(tǒng)的設(shè)計方案32.1 總體設(shè)計方案32.1.1 系統(tǒng)機構(gòu)總框架32.1.2 交通管理的方案論證32.1.3 控制電路框圖32.2 電路的工作原理42.3 本章小結(jié)5第3章 硬件設(shè)計63.1 mcs-51單片機介紹63.1.1 簡介63.1.3 時鐘脈沖電路113.1.4 復(fù)位電路123.1.5 電源電路123.2 硬件原理圖123.3 本章小結(jié)13第4章 軟件設(shè)計144.1 主程序設(shè)計144.1.1 主程序流程圖144.2 初始化程序144.3 延時程序144.4 源程序154.5 本章小結(jié)15第5章 調(diào)試分析165.1 keil51軟件簡介165.1.
9、1 系統(tǒng)概述165.1.2 keilc51單片機軟件開發(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參考文獻24第1章 緒論1.1 課題研究的背景及意義隨著經(jīng)濟的發(fā)展,城市現(xiàn)代化程度不斷提高,交通需求和交通量迅速增長,城市交通網(wǎng)絡(luò)中交通擁擠日益嚴(yán)重,道路運輸所帶來的交通擁堵、交通事故和環(huán)境污染等負(fù)面效應(yīng)也日益突出,逐步成為經(jīng)濟和社會發(fā)展中的全球性共同問題。交通問題已經(jīng)日益成為世界性的問題,城市交通事故、交通堵塞和交通污染問題愈加突出。為了解決車和路的矛盾,常用的有兩種方
10、法:一是控制需求,最直接的辦法就是限制車輛的增加;二是增加供給,即大量修筑道路基礎(chǔ)設(shè)施的辦法,在資源、環(huán)境矛盾越來越突出的今天,面對越來越擁擠的交通,有限的資源和財力以及環(huán)境的壓力,也將受到限制。這就需要依靠除限制需求和提供道路設(shè)施之外的其他辦法來滿足日益增長的交通需求。在現(xiàn)有的道路交通條件下,實施交通控制和管理,充分發(fā)揮現(xiàn)有道路的通行能力正是解決這一矛盾的途徑之一,大量事實已經(jīng)證明這種方法的有效性。1.2 當(dāng)前的研究現(xiàn)狀路是交通的物質(zhì)基礎(chǔ),有路才能通車,行人。我國是一個文明古國,許多城市已有上千年的歷史,城市布局和道路結(jié)構(gòu)是在漫長的歷史進程中逐步形成的,近幾年雖然作了些改建和擴建,但畢竟還難
11、以沖破原來的基本格局。我國城市道路普遍存在的弊端是:a. 路網(wǎng)密度低;b. 交通干道少;c. 路口平面交叉。道路狀況與車輛狀況的綜合作用形成了我國城市交通的特殊性,主要表現(xiàn)是: 城市路網(wǎng)稀,干道少,間距大,市區(qū)人口稠密,出行需求集中,迫使車輛集中于少數(shù)干道上行駛。至于中小城市 ,干道特征更為明顯,往往只有一兩條干道貫穿全市,而其他支路上交通量極小。從流量變化情況來看,除外圍過境干道外,都是有一定規(guī)律的,高峰小時基本上都集中在幾個時段內(nèi)。我國城市機動車車種繁雜,從50年代的老式車到80年代的新型車,從大貨車到小轎車都在一個平面上行駛,不少城市拖拉機還是一種主要運輸工具,前面一輛舊車擋道,尾隨的新
12、型車只能跟著爬行,過交叉口時經(jīng)常出現(xiàn)啟動慢的車擋住啟動快的車,使交通工程師精心設(shè)計的交通配時方案不能很好發(fā)揮效益。1.3 本文的主要工作和難點通過對城市主要十字路口交通控制規(guī)律的觀察發(fā)現(xiàn),我國現(xiàn)有交通燈或者交通規(guī)則的一個缺陷:十字路口,右拐的車輛經(jīng)常和過馬路的行人沖突,因為車輛右拐和行人過馬路是同時進行的,根本沒有時間段的劃分,所以車和人就像打籃球運球過人,要么過去,要么撞一下,而且經(jīng)常是車不讓人,人不讓車,交通事故經(jīng)常在這里發(fā)生,有的路口有協(xié)管給車和人分配時間,但大多數(shù)路口都是沒協(xié)管的,因而在這次設(shè)計中,為了彌補這個缺陷,特意為行人留出時間過馬路,實行人車分流,在此期間各路轉(zhuǎn)彎不再進行。本文
13、主要工作是利用80c51單片機設(shè)計一個交通燈控制系統(tǒng)。在一個主要十字路口,縱向為主干道,橫向為支干道。主、支干道交替通行,主干道每次放行20秒,支干道每次放行12秒;每次綠燈變紅燈前,黃燈先亮4秒,此時另一干道上的紅燈亮并閃爍。它們的工作方式,有些必須是同時進行的:主干道綠燈亮、支干道紅燈亮;主干道黃燈亮、支干道紅燈亮并閃爍;主干道紅燈亮、支干道綠燈亮;主干道紅燈亮并閃爍、支干道黃燈亮。 第2章 道路交通燈的總體系統(tǒng)的設(shè)計方案2.1 總體設(shè)計方案采用msc-51系列單片機和可編程并行i接口芯片為中心件來設(shè)計交通燈控制器,進行交通燈路口的管理。它用簡單的硬件電路模擬交通燈信號燈的交替變換,實現(xiàn)紅
14、綠燈循環(huán)點亮。用led數(shù)碼管作為倒計時指示,通行指示燈采用發(fā)光二極管,led顯示動態(tài)掃描,以節(jié)省端口,特殊緊急車輛通行采用實時中斷完成。2.1.1 系統(tǒng)機構(gòu)總框架本系統(tǒng)是針對一個大型十字路口設(shè)計的交通信號燈控制系統(tǒng)。東西方向和南北方向各設(shè)有紅燈、黃燈、綠燈各一組。狀態(tài)一為主干道綠燈亮,支干道紅燈亮20秒,狀態(tài)二為主干道黃燈亮,支干道紅燈閃爍4秒狀態(tài)三為主干道紅燈亮,支干道綠燈亮12秒,狀態(tài)四為主干道紅燈閃爍,支干道黃燈亮4秒。四個狀態(tài)一直循環(huán),并有數(shù)碼管顯示時間。2.1.2 交通管理的方案論證東西、南北兩干道交于一個十字路口。各干道有紅燈、黃燈、綠燈各一組,指揮車輛和行人安全通行。紅燈亮禁止通
15、行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,p1.0p1.2分別控制支干道的紅、黃、綠燈,p1.3p1.5分別控制主干道的紅、黃、綠燈。2.1.3 控制電路框圖倒計時顯示89c52系統(tǒng)處理交通信號燈圖2.1 控制電路框圖本系統(tǒng)每個信號指示燈接一個對應(yīng)的i/o口,通過對i/o口賦值控制交通信號燈的狀態(tài)來指揮交通。在此基礎(chǔ)上按鍵可以觸發(fā)單片機進入中斷,進而控制交通信號燈的狀態(tài)。2.2 電路的工作原理本系統(tǒng)的電路較簡單,實物圖如附錄一所示。共設(shè)有12個led,其中紅色的4個,綠色的4個,黃色的4個。所有l(wèi)ed陽極接+5v電源,陰極與對應(yīng)的i/o口相連。當(dāng)單片機上電后,系統(tǒng)對其初始化
16、,所有燈滅。當(dāng)給任何一個i/o口賦值0時,與其對應(yīng)的led點亮。這樣,通過對p1的合理賦值并控制其延時時間就可以實現(xiàn)基本的交通控制。 圖2.2 主支干道圖圖中,t表示時間,mg表示主干道綠燈,my表示主干道黃燈,mr表示主干道紅燈,sg表示支干道綠燈,sy表示支干黃道燈,sr表示支干道紅燈,由交通燈工作時序流程圖可以看出,交通燈應(yīng)滿足兩個方向的工作時序:主干道綠燈和黃燈亮的時間等于支干道紅燈亮的時間;支干道綠燈和黃燈亮的時間等于主干道紅燈亮的時間。若假設(shè)每個單位脈沖周期為1秒,則主干道綠燈、黃燈、紅燈分別亮的時間為20秒、4秒、16秒,支干道紅燈、綠燈、黃燈分別亮的時間為24秒、12秒、4秒。
17、一次循環(huán)為40秒。主干道黃燈亮?xí)r,支干道紅燈以1hz的頻率閃爍;支干道黃燈亮?xí)r,主干道紅燈以1hz的頻率閃爍。主、支干道各信號燈亮?xí)r,需配合有時間提示,以數(shù)字顯示出來,方便行人與機動車觀察。主、支干道信號燈亮的時間均以每秒減“1”的計數(shù)方式工作,直至減到“0”后主、支干道個信號燈自動轉(zhuǎn)換。2.3 本章小結(jié)本章主要介紹了道路交通燈的總體系統(tǒng)的設(shè)計方案。設(shè)計出系統(tǒng)機構(gòu)的總框架,并且對交通管理的方案進行了論證,在發(fā)現(xiàn)現(xiàn)有交通燈控制系統(tǒng)存在不足的基礎(chǔ)上,在本系統(tǒng)中對其進行了改善,設(shè)計出了能實現(xiàn)本次設(shè)計要求的方案。設(shè)計出本系統(tǒng)的控制電路框圖,并對其工作原理進行了進一步說明。第3章 硬件設(shè)計3.1 mcs
18、-51單片機介紹mcs-51單片機廣泛應(yīng)用在簡單的設(shè)計中,例如交通燈、遙控器等,在我們的生活中都有應(yīng)用。單片機已經(jīng)稱為我們生活不可缺少的東西。3.1.1 簡介單片機是微機的一種,是將單片機的cpu、存儲器、i/o接口和總線制作在一塊芯片上的大規(guī)模集成電路。由于單片機具有體積小、功能全、價格低、開發(fā)應(yīng)用方便等優(yōu)點,又可將其嵌入產(chǎn)品的內(nèi)部,因此得到了及其廣泛的應(yīng)用。(1)單片機的發(fā)展史單片機的發(fā)展大致可分為4個階段。a. 初始階段 由于受到技術(shù)發(fā)展的影響,單片機的制作工藝較差、集成度較低。這個階段的單片機多采用雙片結(jié)構(gòu),且功能比較簡單。有些單片機在應(yīng)用過程中,由于內(nèi)部資源太少,需要外接其他功能的芯
19、片才能實現(xiàn)應(yīng)用功能。b. 低性能階段在此階段,單片機的功能有了進一步發(fā)展、相關(guān)的接口電路、定時器、計數(shù)器等都集成到一個芯片中。同時單片機被推向市場,促進了單片機的變革。c. 高性能階段在這個階段,單片機的品種逐漸增加,功能不斷完善,其內(nèi)部的ram、rom都有所增大,尋址范圍也變大,并且增加了串行口和多級中斷處理。d. 16位單片機階段由于電子元件、系統(tǒng)結(jié)構(gòu)和軟件技術(shù)的不斷進步,單片機的制造工藝和集成度都得到迅速發(fā)展,其內(nèi)部資源得到了較大的發(fā)展,實時處理能力更強。(2)單片機的內(nèi)部結(jié)構(gòu)單片機經(jīng)過幾十年的不斷發(fā)展,其功能和組成結(jié)構(gòu)基本已固定,內(nèi)部結(jié)構(gòu)示意圖如圖1-1所示。a. 中央處理器(cpu)
20、cpu是單片機的核心部件,根據(jù)cpu字長可分為1位機、4位機、8位機、16位機以及32位機,cpu的運算速度、處理數(shù)據(jù)能力、實施控制功能等性能都與cpu的字長有關(guān),因此,字長是衡量cpu功能的主要指標(biāo)。b. 存儲器存儲器按功能可分為程序存儲器和數(shù)據(jù)存儲器,由于單片機主要面向控制,因此一般需要大容量的程序存儲器和較少的數(shù)據(jù)存儲器,同時存儲器類型也不一樣。c. 程序存儲器單片機內(nèi)部程序存儲器容量一般為1kb64kb,通常采用只讀存儲器(rom)。采用只讀存儲器作為程序存儲器,不僅提高了可靠性,而且由于只讀存儲器的集成度較高、價格較低,降低了成本。cpurom中斷系統(tǒng)串行i/o口并行i/o口定時器r
21、am圖3.1 單片機內(nèi)部結(jié)構(gòu)示意圖d. 數(shù)據(jù)存儲器單片機內(nèi)部的數(shù)據(jù)存儲量一般為64b256b,通常采用靜態(tài)隨即存儲器(ram),還有少數(shù)單片機內(nèi)采用eeprom作為數(shù)據(jù)存儲器。數(shù)據(jù)存儲器可分為工作寄存器、堆棧,位標(biāo)志和數(shù)據(jù)緩沖器使用。e. i/o接口及特殊功能部件單片機內(nèi)部有數(shù)量不等的并行接口,可以作為外界無輸入/輸出設(shè)備,通常也包含12個串行口,用于實現(xiàn)異步串行通信。特殊功能部件通常包括定時/計數(shù)器,其他例如a/d、pwm、dma等根據(jù)不同類型的單片機,其配置不同。(3)單片機應(yīng)用系統(tǒng)根據(jù)單片機應(yīng)用場合及系統(tǒng)控制的要求不同,在規(guī)模、結(jié)構(gòu)上存在很大不同,根據(jù)使用功能器件的種類和數(shù)量,可分為基本
22、系統(tǒng)和擴展系統(tǒng)。 1)基本系統(tǒng)在此系統(tǒng)中,包含一個單片機,在該單片機中含有程序存儲器和數(shù)據(jù)存儲器,僅在外部配置了維持系統(tǒng)運行的基本部件,例如電源、輸入/輸出,除了這些,還包括不擴充程序存儲器、數(shù)據(jù)存儲器、i/o接口以及其他功能部件,因此也被稱為最小系統(tǒng),其結(jié)構(gòu)示意圖如圖3.2所示。復(fù)位電路電源電路單片機時鐘電路輸入/輸出圖3.2 單片機最小系統(tǒng)示意圖2)擴展系統(tǒng)在大多數(shù)系統(tǒng)中,由于需要實現(xiàn)一些特殊的功能,采用最小系統(tǒng)無法滿足系統(tǒng)的控制要求,所以要擴展特殊功能部件,彌補單片機內(nèi)部資源的不足。單片機擴展系統(tǒng)通過并行i/o口或者串行口做總線,在外部擴展了程序存儲器、數(shù)據(jù)存儲器、a/d轉(zhuǎn)換等特殊部件,
23、以滿足控制系統(tǒng)的特殊要求,其結(jié)構(gòu)示意圖如3.3所示。(4)單片機的發(fā)展趨勢隨著科學(xué)技術(shù)的不斷發(fā)展,單片機的工藝和集成度不斷提高,其功能正朝著多功能、高性能的方向發(fā)展,主要體現(xiàn)在一下幾方面。1)各種等級的單片機性能提高eprom程序存儲器ram數(shù)據(jù)存儲器a/dd/a并行接口串行接口復(fù)位電路時鐘電路輸入/輸出電源電路單片機 圖3.3 單片機擴展系統(tǒng)鋼結(jié)構(gòu)示意圖隨著工藝技術(shù)和集成度技術(shù)的發(fā)展,許多低端單片機的性能有了較大的提高,甚至可以完成部分高端單片機才能實現(xiàn)的功能,其運算速度、功能和可靠性等方面也得到了快速的發(fā)展。a. cpu功能增強cpu的性能主要體現(xiàn)在數(shù)據(jù)處理的速度和精度上,通過增加cpu的
24、字長、擴充硬件、提高總線速度和處理效率等手段,提高cpu的性能。b. 內(nèi)部資源增加單片機除了cpu外還有其他部件,通過增強已有部件的性能和增加特殊功能的部件來提高單片機的性能。例如增大存儲器的容量,現(xiàn)在一些高端單片機的程序存儲器的rom、eprom、eeprom或者flash都達到及時kb,而數(shù)據(jù)存儲器的ram也已達到及時kb。一般的控制系統(tǒng)要求的功能較多,采用較低端的單片機,由于其內(nèi)部資源不夠,無法實現(xiàn)控制要求,因此需要擴展部件,而擴展部件又會造成系統(tǒng)可靠性降低,所以要在工藝水平提高的基礎(chǔ)上,盡量集成較多的部件在單片機的內(nèi)。單片機的特殊部件包括i/o口(并行口和串行口兩種)、定時/計數(shù)器、a
25、d/da轉(zhuǎn)換器、pwm輸出等,通過在內(nèi)部集成此類部件,可大大增強單片機的控制功能。c. 尋址范圍增加尋址方式的多少直接反應(yīng)了機器指令系統(tǒng)功能的強弱,尋址方式越多,其功能越強,靈活性越大,這也是衡量單片機性能的重要指標(biāo)之一?,F(xiàn)在已有部分單片機對外部存儲器、i/o口尋址范圍增加到幾mb,甚至有單片機可以選擇某些i/o口作為系統(tǒng)的擴展總線使用。2)小型化、低功耗在一些智能控制系統(tǒng)中,其整體系統(tǒng)體積較小,功率不大,因此要求單片機的體積和功耗都要在一定范圍內(nèi),促使單片機向小型化、低功耗的方向發(fā)展。例如,1992年美國推出的i80860超級單片機,運算速度為1.2億次每秒,可進行32位整數(shù)運算、64位浮點
26、運算,同時片內(nèi)集成了一個三維圖形處理器,可構(gòu)成超級圖形工作站。3.1.2 管腳說明圖3.4 mcs-51引腳圖mcs-51單片機是采用40引腳雙列直插封裝的芯片,有些引腳具有兩種功能,引腳如圖3.4所示。引腳功能如下:vcc :電源+5v。vss:接地。xtal1和xtal2:使用內(nèi)部振蕩電路時,用來接石英晶體和電容;使用內(nèi)部時鐘時,用來輸入時鐘脈沖。p0口:雙向i/o口,既可以作地址數(shù)據(jù)總線口,也可作普通i/o口用。p1口:準(zhǔn)雙向通用i/o口。p2口:準(zhǔn)雙向口,地址總線口輸出地址高8位口。p3口:多功能端口,既可以作普通i/o口用,也可以按每位定義的第二功能操作。ale/prog:地址鎖存信
27、號輸出端。在訪問片外存儲器時,ale為高電平有效時,p0口輸出地址低8位,用ale信號做外部地址鎖存器的鎖存信號。ale =osc /6,可以做系統(tǒng)中跟其他芯片的時鐘源。第二功能prog是對8751的eprom編程脈沖輸入端。rst/vpd:復(fù)位信號輸入端。接通電源后,在該引腳施加大于兩個機器周期(24個振蕩周期)的高電平,就可使單片機完成內(nèi)部的復(fù)位工作。第二功能是vpd ,即備用電源輸入端。當(dāng)主電源vcc 發(fā)生故障,降低到低電平規(guī)定值時,vpd 將為ram提供備用電源,以保證存貯在ram中的信號不丟失。/ea/vpp :/ea=1時程序先片內(nèi)后片外自動連續(xù)運行;例如:89c52內(nèi)部有8k字的
28、eep-rom就可使/ea=1,先從內(nèi)程序存儲區(qū)開始執(zhí)行程序,當(dāng)pc值超過內(nèi)部8k字節(jié)(0000-1fff),才會轉(zhuǎn)到從2000h開始的外程序區(qū)執(zhí)行程序,當(dāng)/ea=0時程序直接從片外開始執(zhí)行程序。在對8751的eprom編程時,此引腳接編程電壓12.5v。/psen:片外程序存儲器選通信號,低電平有效。3.1.3 時鐘脈沖電路mcs-51的時鐘可以有兩種方式產(chǎn)生,一種是內(nèi)部方式,利用芯片內(nèi)部的震蕩電路;另外一種為外部方式。本文根據(jù)實際需要和簡便,采用內(nèi)部震蕩方式。mcs=51內(nèi)部有一個用于構(gòu)成震蕩器的高增益反響放大器,引腳xtal1和xtal2分別是此放大器的輸入端和輸出端。這個放大器與作為反
29、饋元件的片外警惕或陶瓷諧振器一起構(gòu)成一個自激振蕩器。mcs-51雖然有內(nèi)部振蕩電路,但要形成時鐘,必須外接元件,所以實際構(gòu)成的是振蕩時鐘電路。外接晶體以及電容cl和c2構(gòu)成并聯(lián)諧振電路接在放大器的反饋回路中。對接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會影響振蕩器頻率的高低、振蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。晶體頻率可在12mhz-12mhz之間任選,電容cl和c2的典型值在20pf-100pf之間選擇,考慮到本系統(tǒng)對于外接晶體的頻率穩(wěn)定性要求不高,所以采取比較廉價的陶瓷諧振器。由于本系統(tǒng)應(yīng)用的機器周期為lms,所以晶振選擇為12mhz,根據(jù)調(diào)試電容選擇30pf3.1.4 復(fù)位電路m
30、cs-51的復(fù)位輸入引腳rst為mcs-51提供了初始化的手段。有了它可以使程序從指定處開始執(zhí)行,即從0000h地址單元開始執(zhí)行程序。在mcs-51的時鐘電路工作后,只要rst引腳上出現(xiàn)10ms以上的高電平時,單片機內(nèi)部則出示復(fù)位。只要rst保持高電平,則mcs-51循環(huán)復(fù)位。只有當(dāng)rst由高電平變低電平以后,mcs-5l才從0000h地址開始執(zhí)行程序。mcs-51的復(fù)位是由外部的復(fù)位電路來實現(xiàn)的。復(fù)位引腳通過施密特觸發(fā)器與復(fù)位電路相連。施密特觸發(fā)器用來抑制噪聲,它的輸出在每個機器周期的s5p2,由復(fù)位電路采樣一次。復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式。本系統(tǒng)采用兩種方式的復(fù)合方式即
31、上電位按鈕復(fù)位式。3.1.5 電源電路 由于單片機工作時需要的+5v電壓,所以在設(shè)計電源電路時,需要一個電子元件能提供+5v電壓,由于7805能夠提供5v電壓的三端穩(wěn)壓電源,在實際的電路控制中應(yīng)用其作為電源電路較為廣泛,在普通的電子元器件商場都有銷售易于購買,并且技術(shù)相對成熟。7805一腳為電源輸入段,二腳為公共接地段,三腳即為我們所需要的+5v電壓輸出端。本文采用最典型的7805提供電壓的電路,即在7805的l腳和公共接地端(即2腳)之間接入03mf的電容,在公共接地端和三腳+5v電壓輸出端之間接人0.1mf的電容。3.2 硬件原理圖本系統(tǒng)利用89c52芯片對12個led進行控制,實現(xiàn)交通信
32、號燈的控制。同時,每個led串接 一個阻值為330的電阻,以保證系統(tǒng)上電后通過led的電流不會過大,防止其燒毀。圖3.5 硬件原理圖3.3 本章小結(jié) 本章主要是關(guān)于本系統(tǒng)用到的硬件設(shè)計的介紹。文中對mcs-51單片機進行了介紹,系統(tǒng)闡述了本設(shè)計用到的89c52芯片各管腳功能,并且對時鐘脈沖電路、復(fù)位電路和電源電路進行了一一解釋。重點介紹了本系統(tǒng)的硬件原理圖,對其進行了較為細致的說明。第4章 軟件設(shè)計4.1 主程序設(shè)計設(shè)計出程序的流程圖以及初始、延時程序及源程序。4.1.1 主程序流程圖本系統(tǒng)在一般情況下循環(huán)執(zhí)行信號燈狀態(tài)流程,流程圖如圖4.1所示。圖4.1 信號燈狀態(tài)流程圖主、支干道交替通行,
33、主干道每次放行20秒,支干道每次放行12秒;每次綠燈變紅燈前,黃燈先亮4秒,此時另一干道上的紅燈亮并閃爍。它們的工作方式,有些必須是同時進行的:主干道綠燈亮、支干道紅燈亮;主干道黃燈亮、支干道紅燈亮并閃爍;主干道紅燈亮、支干道綠燈亮;主干道紅燈亮并閃爍、支干道黃燈亮。4.2 初始化程序單片機上電時i/o口默認(rèn)為高點平,需要在進入主函數(shù)時對p1進行附初值。因本系統(tǒng)中l(wèi)ed低電平時點亮,故給p1都賦值0xff,使led全滅。程序中用到外部中斷0和外部中斷1,需要初始化,開總中斷、開外部中斷0和外部中斷1,還需要選擇觸發(fā)方式,本系統(tǒng)中斷中選擇下降沿觸發(fā)。4.3 延時程序延時可有兩種途徑實現(xiàn):軟件延時
34、和單片機內(nèi)部的定時/計數(shù)器延時。軟件延時不占用硬件資源,但占用了cpu時間,降低了cpu的利用率。定時/計數(shù)器延時不占用cpu時間,但占用了硬件資源。本系統(tǒng)采用定時器延時,單次延時時間為50ms,晶振12mhz。4.4 源程序源程序參考附錄一。4.5 本章小結(jié)本章主要介紹本論文中的軟件設(shè)計部分。文中詳細介紹了本系統(tǒng)的主程序設(shè)計、初始化程序、外部中斷及延時程序,并附有程序中的各種流程圖,使讀者對本系統(tǒng)的設(shè)計有了進一步了解。第5章 調(diào)試分析5.1 keil51軟件簡介單片機開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)閏pu可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機
35、器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于mcs-51單片機的匯編軟件有早期的a51,隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,keil軟件是目前最流行開發(fā)mcs-51系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持keil即可看出。keil提供了包括c編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(mvision)將這些部份組合在一起。運行keil軟件需要pentium或以上的cpu,16mb或更多ram、20m以上空閑的硬盤空間
36、、win98、nt、win2000、winxp等操作系統(tǒng)。掌握這一軟件的使用對于使用51系列單片機的愛好者來說是十分必要的,如果你使用c語言編程,那么keil幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用c語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。5.1.1 系統(tǒng)概述keil c51是美國keil software公司出品的51系列兼容單片機c語言軟件開發(fā)系統(tǒng),與匯編相比,c語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用c來開發(fā),體會更加深刻。keil51的
37、編譯環(huán)境如圖5-1所示。圖中:標(biāo)題欄:顯示當(dāng)前編譯的文件菜單條:有十項菜單可供選擇,相應(yīng)的所有操作命令均可在此菜單中查找;工具欄:常用命令的快捷圖標(biāo)按鈕;管理窗口:顯示工程文件的項目、各個寄存器值的變化、參考資料等;信息窗口:顯示當(dāng)前文件編譯、運行等相關(guān)信息;工作窗口:各種文件的顯示窗口。圖5.1 keil51的編譯環(huán)境keil c51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到keil c51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。下面詳細
38、介紹keil c51開發(fā)系統(tǒng)各部分功能和使用。5.1.2 keilc51單片機軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu)c51工具包的整體結(jié)構(gòu),其中mvision與ishell分別是c51 for windows和for dos的集成開發(fā)環(huán)境(ide),可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用ide本身或其它編輯器編輯c或匯編源文件。然后分別由c51及a51編譯器編譯生成目標(biāo)文件(.obj)。目標(biāo)文件可由lib51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)l51連接定位生成絕對目標(biāo)文件(.abs)。abs文件由oh51轉(zhuǎn)換成標(biāo)準(zhǔn)的hex文件,以供調(diào)試器dscope51或tscope51使用進行源
39、代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進行調(diào)試,也可以直接寫入程序存貯器如eprom中。使用獨立的keil仿真器時,注意事項* 仿真器標(biāo)配11.0592mhz的晶振,但用戶可以在仿真器上的晶振插孔中換插其他頻率的晶振。 * 仿真器上的復(fù)位按鈕只復(fù)位仿真芯片,不復(fù)位目標(biāo)系統(tǒng)。 * 仿真芯片的31腳(/ea)已接至高電平,所以仿真時只能使用片內(nèi)rom,不能使用片外rom;但仿真器外引插針中的31腳并不與仿真芯片的31腳相連,故該仿真器仍可插入到擴展有外部rom(其cpu的/ea引腳接至低電平)的目標(biāo)系統(tǒng)中使用。5.2 調(diào)試步驟進行邏輯調(diào)試、模擬電路的調(diào)試,還有解決在調(diào)試中出現(xiàn)的問題5.2.1 邏
40、輯的調(diào)試keil 51 編譯指南:第1步: 打開keil51軟件,首先彈出一個開機啟動畫面。第2步: 然后進入keil51的開發(fā)界面。下面簡要介紹一下keil51開發(fā)環(huán)境中各個區(qū)域的功能。keil51開發(fā)環(huán)境可以分為四個區(qū)域,分別為:菜單條、項目文件管理窗口、代碼編譯窗口和代碼編譯信息窗口四個部分。菜單條分為十項,所有的命令都可以在這里找到。下面的命令是一些常用的菜單命令,如文件的打開、關(guān)閉及保存。其中編譯命令最為常用。中間靠左是項目文件管理窗口,這里可以看到當(dāng)前項目中所包含的所有帶編譯的文件。項目文件管理窗口的右側(cè)是代碼編譯窗口,這事我們最主要的工作區(qū)域。最底層顯示了代碼編譯的信息。當(dāng)代碼有
41、語法錯誤時,可以在這里輕松的找到問題的所在。第3步:下面以建立一個簡單的項目為例,來說明keil51開發(fā)項目的一般方法。單擊project菜單項,選擇new project項。第4步:此時彈出create new project對話框,選擇合適的路徑口,在文件名一欄中填入新工程的名字。單擊保存。第5步: 根據(jù)所用的器件,選擇cpu的型號,單擊確定。第6步:keil51詢問是否生成默認(rèn)的配置文件,這個可選可不選,這里選定。單擊yes,觀察項目文件管理窗口的變化。第7步:在file菜單下單擊new選項,新建文件。此時在代碼窗口出現(xiàn)一“text1”空白文檔。第8步: 在“text1”中編輯完代碼后,
42、單擊file菜單中的保存項,彈出保存對話框。保存名寫為text.c。單擊保存。注意在對文件命名時必須加擴展名。第9步: 在項目導(dǎo)航欄中source group 上單擊右鍵,選add file to group source group 1。第10步: 此時彈出add file 對話框。選中剛才保存的text.c文件。單擊add。此時在項目文件管理窗口中就會出現(xiàn)剛才所添加的文件text.c。 第11步: 單擊快捷菜單欄中的編譯按鈕,可以編譯程序。第12步: 單擊project菜單項,選擇option for target target 1選項。在彈出的對話框中可以對project進行總體配置。第
43、13步: 選擇output 選項卡,單擊create hex file ,代碼輸出格式應(yīng)為hex-80 。第14步: 單擊確定后,并重新編譯??梢钥吹骄幾g成功之后,build 選項卡里又多了一項。這是生成的hex 文件。第15步: 單擊debug 菜單項中的start/stop debug session 命令或工具欄中的進入調(diào)試界面。第16步: 單擊調(diào)試界面debug 菜單項中的go命令或工具欄中的運行程序,單擊stop running 命令或來結(jié)束程序。觀察運行結(jié)果,若結(jié)果正確,便可通過下載軟件將它燒寫到目標(biāo)板上去。這樣,一個簡單的keil 51下的項目就完成了。注:keil 51 對匯編
44、語言文件的編譯調(diào)試步驟和對c語言的編譯調(diào)試基本上是一樣的,只是在第八步中用匯編語言進行代碼的編寫,并在保存文件時將擴展名加成 . asm。本系統(tǒng)中,最初采用把9個狀態(tài)分別設(shè)置成一個子函數(shù)的方法。在每個子函數(shù)中對在此狀態(tài)中需要點亮的led單獨賦值,延時程序采用定時器延時,在主函數(shù)中設(shè)置調(diào)用子函數(shù)。但是在調(diào)試過程中遇到很多問題,比如,led并未按照理想的方式點亮或熄滅,也沒有狀態(tài)變化。在經(jīng)過分析后,采用了另一種更為簡單的方法,即給p1口和p2口整體賦值,如p1=0xff、p2=0xff即表示所有l(wèi)ed不點亮。每個狀態(tài)只需賦一個或兩個值,需要延時時只需調(diào)用延時程序。此外,對延時程序也進行了修改,把原
45、有方案改為用cpu延時,這樣,程序變得較為簡單易行。5.2.2 模擬電路板的調(diào)試通過查找資料選擇了合適的led和電阻,合適阻值的電阻和led串聯(lián)能保證在通上電后led的內(nèi)部電流在允許范圍內(nèi),防止led因內(nèi)部電流過大而被燒毀。調(diào)試過程中,因不慎短路造成一個led燒毀,相應(yīng)的面包板的孔也燒毀。經(jīng)過分析發(fā)現(xiàn),led和電阻兩端的引線都過長,在調(diào)試過程中如果不慎碰一下會造成led被燒毀。所以,剪短陰線后重新安插面包板,消除了隱患。5.3調(diào)試中的問題及解決方案調(diào)試過程中遇到不少問題問題一:上文邏輯調(diào)試中提到的問題,即led并未按照預(yù)期的流程點亮,而且也沒有狀態(tài)變化。解決方案:經(jīng)過進一步分析后,發(fā)現(xiàn)把每個狀
46、態(tài)設(shè)置成一個獨立的子函數(shù)然后在主函數(shù)中調(diào)用的方法并不能很好的按照理想狀態(tài)執(zhí)行。所以,對程序進行了整體修改,在主函數(shù)中直接給p1口賦值,如p1=0xff即表示所有l(wèi)ed不點亮。這樣,程序變得精簡而且易行,不用調(diào)用太多子函數(shù),減少出錯。問題二:個別狀態(tài)led的點亮狀態(tài)和理想的狀態(tài)并不相符。個別不該點亮的卻點亮了,而該點亮的卻未亮。解決方案:參考表2-1仔細檢查p1口賦值情況,發(fā)現(xiàn)有賦值錯誤的情況,及時改正,最終實現(xiàn)了使led按照理想狀態(tài)點亮。問題三:在調(diào)試過程中經(jīng)過觀察發(fā)現(xiàn),本系統(tǒng)設(shè)置的交通燈點亮規(guī)律有漏洞,比如最初在狀態(tài)4時只設(shè)置東西左轉(zhuǎn)綠燈和所有右轉(zhuǎn)綠燈以及南北紅燈亮,沒有考慮到對東西方向直行
47、車輛和行人的指示。狀態(tài)8也有類似的問題。解決方案:在有漏洞的地方修復(fù)漏洞。比如,給狀態(tài)4重新賦值,使其在原有基礎(chǔ)上再點亮東西直行方向紅燈和人行道紅燈。5.4 本章小結(jié)本章主要介紹本論文的調(diào)試分析。文中除較為詳細地介紹keil51軟件系統(tǒng)外,重點介紹了關(guān)于本設(shè)計的調(diào)試過程和在調(diào)試過程中遇到的問題以及最終的解決方案。通過本章,使我對keil51軟件有了更深入的了解和學(xué)習(xí),使我熟練了調(diào)試程序的方法,更重要的是,深刻體會到如何發(fā)現(xiàn)問題和解決問題。下圖為本系統(tǒng)的運算結(jié)果:圖5.3 仿真運算結(jié)果圖結(jié)論與展望 結(jié)論本論文在深入探討分析交通控制原理的基礎(chǔ)上設(shè)計出了一套基于單片機控制之下的交通控制系統(tǒng),通過閱讀
48、大量相關(guān)文獻,對當(dāng)前交通控制技術(shù)有了比較深入的了解,并在此基礎(chǔ)上進行了硬件選型和軟件系統(tǒng)的設(shè)計,經(jīng)過在實驗室調(diào)試,分析及驗證了設(shè)計方案的可行性。在開發(fā)過程中,運用了protel開發(fā)軟件、keil51開發(fā)軟件,在編程方面使用了c語言。課題完成的主要工作與結(jié)論如下:(1)閱讀了大量資料,對交通控制系統(tǒng)進行了綜合分析,明確了論文的方向,確定了基于80c51單片機的研究與設(shè)計的總體設(shè)計方案;(2)分析了具體要求,題注硬件總體設(shè)計方案,對硬件進行了選型。(3)深入分析、總結(jié)了系統(tǒng)軟件部分的原理,基于keil51進行了軟件系統(tǒng)的設(shè)計。(4)經(jīng)過實驗驗證,本系統(tǒng)準(zhǔn)確達到了本次設(shè)計的要求,進而驗證了系統(tǒng)的可行
49、性。不足之處:因設(shè)計要求中沒有對倒計時顯示時間進行要求,也因個人能力有限,沒有將倒計時顯示時間實現(xiàn)在系統(tǒng)中,所做外接電路也比較粗糙,希望將來能夠改進!展望本次設(shè)計經(jīng)歷讓我對交通控制系統(tǒng)有了更深入的認(rèn)識,也了解到現(xiàn)有交通控制系統(tǒng)存在的不足。希望通過努力,最終能將本系統(tǒng)修改為可以指揮交通的應(yīng)用型系統(tǒng),彌補現(xiàn)有交通控制系統(tǒng)的不足。致謝首先誠摯的感謝我的指導(dǎo)老師,老師悉心的教導(dǎo)使我學(xué)到很多關(guān)于單片機的知識,不時的討論并指點我正確的方向,使我在這段時間中獲益匪淺。老師對學(xué)問的嚴(yán)謹(jǐn)更是我學(xué)習(xí)的典范。感謝各位老師對我的指導(dǎo),不厭其煩的指出我學(xué)習(xí)中的缺失,且總能在我迷惘時為我解惑,他們細心指導(dǎo)我的學(xué)習(xí)與研究,
50、才能讓我在有限時間內(nèi)完成了設(shè)計。參考文獻1楊栓科,徐正紅等.模擬電子技術(shù)基礎(chǔ)m.北京:高等教育出版社,2007.5.2張克農(nóng),段軍政等.數(shù)字電子技術(shù)基礎(chǔ)m.北京:高等教育出版社,2008.1.3申忠如, 申淼 ,譚亞麗. mcs-51單片機原理及系統(tǒng)設(shè)計m.西安:西安交通大學(xué)出版社,2008.3.4戴仙金.51單片機及其c語言程序開發(fā)實例m.北京:北京大學(xué)出版社,2006.1.5范立南,謝子殿.單片機原理及應(yīng)用教程 m.北京:北京大學(xué)出版社,2008.2.6胡漢才.單片機原理及接口技術(shù)m.北京:清華大學(xué)出版社,1996.7.7薛鈞義,張彥斌.mcs-51/96系列單片微型計算機及其應(yīng)用m.西安
51、:西安交通大學(xué)出版社,1997.8.8高濤等.c語言程序設(shè)計m.西安:西安交通大學(xué)出版社,2007.2.9david conger. 軟件開發(fā):編程與設(shè)計(c語言版).朱劍平.北京:清華大學(xué)出版社,2006.8.10h.m.deitel,p.j.deitel.c程序設(shè)計教程.薛萬鵬譯.北京:機械工業(yè)出版社,2000.7.employment tribunals sort out disagreements between employers and employees.you may need to make a claim to an employment tribunal if: you
52、dont agree with the disciplinary action your employer has taken against you your employer dismisses you and you think that you have been dismissed unfairly.for more information about dismissal and unfair dismissal, seedismissal.you can make a claim to an employment tribunal, even if you haventappeal
53、edagainst the disciplinary action your employer has taken against you. however, if you win your case, the tribunal may reduce any compensation awarded to you as a result of your failure to appeal.remember that in most cases you must make an application to an employment tribunal within three months o
54、f the date when the event you are complaining about happened. if your application is received after this time limit, the tribunal will not usually accept i.if you are worried about how the time limits apply to you, take advice from one of the organisations listed underfurther help.employment tribuna
55、ls are less formal than some other courts, but it is still a legal process and you will need to give evidence under an oath or affirmation.most people find making a claim to an employment tribunal challenging. if you are thinking about making a claim to an employment tribunal, you should get help st
56、raight away from one of the organisations listed underfurther help.if you are being represented by a solicitor at the tribunal, they may ask you to sign an agreement where you pay their fee out of your compensation if you win the case. this is known as adamages-based agreement. in england and wales, your solicitor cant charge you more than 35% of your compensation if you win the case.if you are thi
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度教育機構(gòu)課程策劃委托合同范文3篇
- 2024軟件著作權(quán)轉(zhuǎn)讓與授權(quán)合同
- 2024年政府投資項目代理采購合同書3篇
- 二零二五年度滑雪場教練團隊承包合作協(xié)議3篇
- 2024年網(wǎng)絡(luò)安全企業(yè)人力資源外包及網(wǎng)絡(luò)安全服務(wù)合同3篇
- 二零二五年度婚前協(xié)議合同模板下載:婚后財產(chǎn)分配2篇
- 2024新型農(nóng)業(yè)植保無人機租賃合同
- 2025年度景區(qū)旅游開發(fā)合同2篇
- 2024建筑工程三方付款合同
- 2025年度綠色物業(yè)入伙協(xié)議合同2篇
- 應(yīng)收帳款管理辦法
- 食品安全分享
- 跨境代運營合同范例
- 水利水電工程驗收實施細則模版(3篇)
- 四川雅安文化旅游集團有限責(zé)任公司招聘筆試沖刺題2024
- 造價框架協(xié)議合同范例
- 2024-2025學(xué)年 語文二年級上冊 部編版期末測試卷 (含答案)
- 無人機飛行安全協(xié)議書
- 山西省晉中市2023-2024學(xué)年高一上學(xué)期期末考試 生物 含解析
- DB34T4912-2024二手新能源汽車鑒定評估規(guī)范
- 《商務(wù)溝通(第二版)》 課件全套 第1-4章 商務(wù)溝通概論 -商務(wù)溝通實務(wù)
評論
0/150
提交評論