交通燈控制系統(tǒng)設(shè)計(jì)_第1頁(yè)
交通燈控制系統(tǒng)設(shè)計(jì)_第2頁(yè)
交通燈控制系統(tǒng)設(shè)計(jì)_第3頁(yè)
交通燈控制系統(tǒng)設(shè)計(jì)_第4頁(yè)
交通燈控制系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩19頁(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)介

1、單片機(jī)課程設(shè)計(jì)報(bào)告單片機(jī)控制的交通燈控制系統(tǒng)設(shè)計(jì)摘要本設(shè)計(jì)是根據(jù)我們所學(xué)習(xí)的單片機(jī)課程,按照大綱要求對(duì)我們進(jìn)行的一次課程檢驗(yàn),是進(jìn)行單片機(jī)課程訓(xùn)練的必要任務(wù),也對(duì)我們掌握單片機(jī)應(yīng)用有很大的幫助。掌握單片機(jī)技術(shù)是一門不可或缺的技術(shù),對(duì)我們將來(lái)的工作以及生活和學(xué)習(xí)都有很密切的聯(lián)系。當(dāng)今世界的發(fā)展是以科學(xué)技術(shù)為基礎(chǔ)的,微控技術(shù)在生產(chǎn)中所占的比重也越來(lái)越大。單片機(jī)的出現(xiàn)是近代計(jì)算機(jī)技術(shù)發(fā)展史上的一個(gè)重要里程碑。近年來(lái),隨著電子技術(shù)和微機(jī)計(jì)算機(jī)的迅速發(fā)展,單片機(jī)的檔次不斷提高,其應(yīng)用領(lǐng)域也在不斷的擴(kuò)大,已在工業(yè)控制、尖端科學(xué)、智能儀器儀表、日用家電、汽車電子系統(tǒng)、辦公自動(dòng)化設(shè)備、個(gè)人信息終端及通信產(chǎn)品中

2、得到了廣泛的應(yīng)用,成為現(xiàn)代電子系統(tǒng)中最重要的智能化的核心部件。我的這次單片機(jī)課程設(shè)計(jì)就是利用單片機(jī)的基本特點(diǎn),使用C語(yǔ)言實(shí)現(xiàn)一個(gè)簡(jiǎn)易的交通燈電路,但由于能力的有限,編出的程序只能實(shí)現(xiàn)課程設(shè)計(jì)的最基本的要求,沒(méi)有對(duì)其進(jìn)行更多的擴(kuò)展,以后有能力的時(shí)候再去完善它?,F(xiàn)就我這次課程設(shè)計(jì)的主要內(nèi)容及主要方法概括一下。本設(shè)計(jì)設(shè)計(jì)的是一個(gè)交通燈控制系統(tǒng),以單片機(jī)為核心,采用目前比較流行的AT89C51單片機(jī),對(duì)十字路口交通燈電路進(jìn)行了仿真制作,主要完成十字路口交通燈的紅、綠、黃燈的點(diǎn)亮?xí)r間控制,并模擬了兩道均有車輛要求通過(guò)時(shí)、一道有車輛要求通過(guò)時(shí)、以及在緊急情況下三種狀態(tài)下交通燈的時(shí)間控制方式。在模擬系統(tǒng)中,

3、采用了多組紅、黃、綠三種發(fā)光二極管分別代表各車道上的紅綠燈,采用了數(shù)碼管顯示每種燈點(diǎn)亮的時(shí)間;并采用了個(gè)按鈕開關(guān)來(lái)模擬系統(tǒng)要求的各種狀態(tài)。在本次設(shè)計(jì)中,程序并沒(méi)有采用原來(lái)學(xué)習(xí)書本上的C語(yǔ)言編寫, 程序仿真采用流行的PROTEUS軟件,和keil聯(lián)合仿真,方便調(diào)試程序和修改硬件,結(jié)果證明方案的硬件設(shè)計(jì)正確,程序也符合要求。關(guān)鍵詞:?jiǎn)纹瑱C(jī);數(shù)碼管;LED 目錄1 概述- 4 -1.1單片機(jī)認(rèn)識(shí)- 4 -1.2 單片機(jī)的應(yīng)用- 4 -1.3設(shè)計(jì)任務(wù)- 5 -2 系統(tǒng)總體方案及硬件設(shè)計(jì)- 6 -2.1交通管理的方案- 6 -2.2總體硬件設(shè)計(jì)- 6 -2.3系統(tǒng)時(shí)鐘電路- 7 -2.4系統(tǒng)復(fù)位電路-

4、7 -2.5數(shù)碼管顯示電路- 8 -2.6路燈指示電路- 8 -2.7按鍵電路設(shè)計(jì)- 9 -3 軟件系統(tǒng)設(shè)計(jì)- 11 -3.1設(shè)計(jì)思路及關(guān)鍵技術(shù)- 11 -3.2 軟件流程- 11 -3.3交通燈的設(shè)計(jì)程序說(shuō)明- 12 -3.4 延時(shí)函數(shù)- 12 -3.5 延時(shí)函數(shù)- 13 -3.6 顯示函數(shù)- 13 -3.7定時(shí)器0中斷函數(shù)- 13 -4 Proteus軟件仿真- 15 -4.1 Proteus軟件仿真- 15 -4.2 南北路燈切換時(shí)仿真- 15 -4.3 緊急情況下的仿真- 16 -4.4東西緊急情況下的仿真- 16 -5 心得體會(huì)- 17 -參考文獻(xiàn)- 17 -附1 源程序代碼- 18

5、 -附2 系統(tǒng)原理圖- 23 - 24 -1 概述1.1單片機(jī)認(rèn)識(shí)MCS-51單片機(jī)是Intel公司在1980年繼MCS-48系列8位單片機(jī)之后推出的高檔8位單片機(jī)。MCS-51單片機(jī)在性能和片內(nèi)功能方面大大優(yōu)于MCS-48系列單片機(jī)。MCS-51的典型產(chǎn)品有:8051、8031、8751、80C51、80C31、87C51等,8051內(nèi)部有4kB ROM,8751內(nèi)部有4kB EPROM,8031片內(nèi)無(wú)ROM。除此之外,三者的內(nèi)部結(jié)構(gòu)及引腳完全相同。89S51是一種低功耗、高性能CMOS8位微控制器,具有4K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel 公司高密度非易失性存儲(chǔ)器技術(shù)制造,

6、與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,AT89S51為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。1.2 單片機(jī)的應(yīng)用單片機(jī)是應(yīng)工業(yè)測(cè)控需要而產(chǎn)生的,最能反映其功能及形態(tài)的名稱是在一個(gè)應(yīng)用系統(tǒng)中,Single-chip Micro-controller。按照測(cè)控系統(tǒng)的特點(diǎn)和要求,單片機(jī)的應(yīng)用可分為單機(jī)應(yīng)用和多機(jī)應(yīng)用兩大類。我們這次要完成的單片機(jī)課程設(shè)計(jì)就是它的單機(jī)應(yīng)用,下面在介紹一下單片機(jī)在單機(jī)應(yīng)用領(lǐng)域內(nèi)的主要內(nèi)容。(1)智能產(chǎn)品單片機(jī)與傳統(tǒng)機(jī)械產(chǎn)品相結(jié)合,使傳

7、統(tǒng)機(jī)械產(chǎn)品結(jié)構(gòu)簡(jiǎn)化,控制智能化,購(gòu)成新一代機(jī)電一體化產(chǎn)品。目前,利用單片機(jī)構(gòu)成的智能產(chǎn)品已廣泛應(yīng)用于家用電器、辦公設(shè)備、數(shù)控機(jī)床、紡織機(jī)械、工業(yè)設(shè)備等行業(yè)。(2)智能儀表目前,各種傳感器、變送器、控制儀表已普遍采用單片機(jī)應(yīng)用系統(tǒng)。它集測(cè)量、處理、控制功能于一體,具有各種智能化功能,如存儲(chǔ)、數(shù)據(jù)處理、查找、判斷、聯(lián)網(wǎng)和語(yǔ)音等功能。單片機(jī)構(gòu)成的智能儀表,能使儀表具有數(shù)字化、智能化、多功能化、綜合化、柔性化等優(yōu)點(diǎn),賦予測(cè)量?jī)x表以嶄新的面貌,使傳統(tǒng)的儀器、儀表發(fā)生根本性的變革,它代表了儀器儀表的發(fā)展趨勢(shì)。 (3)測(cè)控技術(shù)用單片機(jī)構(gòu)成的各種工業(yè)控制系統(tǒng)中的數(shù)據(jù)采集系統(tǒng)具有工作穩(wěn)定可靠、抗干擾能力強(qiáng)的優(yōu)點(diǎn)

8、,如爐溫恒溫控制系統(tǒng)、電鍍生產(chǎn)自動(dòng)控制系統(tǒng)等。(4)智能接口 在計(jì)算機(jī)系統(tǒng),特別是較大型的工業(yè)測(cè)控系統(tǒng)中,除通用外部設(shè)備外,還由許多外部通信、采集、多路分配管理、驅(qū)動(dòng)控制等接口。這些外部設(shè)備與接口如果完全由主機(jī)進(jìn)行管理,勢(shì)必會(huì)造成主機(jī)負(fù)擔(dān)過(guò)重,運(yùn)行速度降低,接口的管理水平也不可能提高。如果用單片機(jī)進(jìn)行接口的控制與管理,單片機(jī)與主機(jī)可并行加工處理,可以大量降低接口的通信密度,極大的提高了接口控制管理水平。在一些通用計(jì)算機(jī)外部設(shè)備上,已實(shí)現(xiàn)了單片機(jī)的鍵盤管理、打印機(jī)控制、繪圖儀控制、硬盤驅(qū)動(dòng)控制等。1.3設(shè)計(jì)任務(wù)(1) 當(dāng)東西方向?yàn)榧t燈,此道車輛禁止通行,東西道行人可通過(guò);南北道為綠燈,此道車輛通

9、過(guò),行人禁止通行。通行時(shí)間為60秒(2)黃燈閃爍2秒,警示車輛和行人紅、綠燈狀態(tài)即將切換。(3)當(dāng)東西方向?yàn)榫G燈,此道車輛通行;南北方向?yàn)榧t燈,南北道車輛禁止通行,行人通行。時(shí)間為90秒。東西方向車輛打通行時(shí)間長(zhǎng)。(4)這樣如上表的時(shí)間和紅、綠、黃出現(xiàn)的順序依次處出現(xiàn)這樣行人和車輛就能安全暢通的通行。(5)此表可根據(jù)車輛動(dòng)態(tài)設(shè)定紅綠燈初始值。2 系統(tǒng)總體方案及硬件設(shè)計(jì)2.1交通管理的方案A、B兩干道交于一個(gè)十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為A、B兩干道的公共停車時(shí)間。設(shè)

10、A道比B道的車流量大,指示燈燃亮的方案如表2-1-1。141514A道黃燈亮紅燈亮黃燈亮綠燈亮黃燈亮紅燈亮B道黃燈亮綠燈亮黃燈亮紅燈亮黃燈亮綠燈亮表2-1-1說(shuō)明:(1)當(dāng)為黃燈時(shí) A、B兩道同時(shí)為黃燈;以提示行人或車輛下一個(gè)燈色即將到來(lái) 時(shí)間 1秒。 (2)當(dāng)A到為紅燈,A 道車輛禁止通行,A 道行人可通過(guò);B 道為綠燈,B 道車輛通過(guò),行人禁止通行。時(shí)間為4秒。(3)當(dāng)A道綠燈,A 道車輛通行;B 道為紅燈,B 道車輛禁止通過(guò),行人通行。時(shí)間為5秒。 A道車流大 通行時(shí)間長(zhǎng)(4)這樣如上表的時(shí)間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能安全暢通的通行。(5)此表可根據(jù)車流量動(dòng)態(tài)設(shè)定在

11、沒(méi)有特殊情況下,即在兩道均有車輛要求通過(guò)時(shí),交通燈按常規(guī)運(yùn)行。通過(guò)控制開關(guān)可以輸入要模擬的其它狀態(tài),交通燈將按照其輸入狀態(tài)的情況進(jìn)行運(yùn)行。2.2總體硬件設(shè)計(jì)交通燈控制系統(tǒng)的結(jié)構(gòu)框圖如圖2-2-1所示??傮w設(shè)計(jì)方案共有五個(gè)部分組成,分別是:?jiǎn)纹瑱C(jī)AT89C51、紅、綠、黃燈顯示電路、LED數(shù)顯時(shí)間電路、晶振及復(fù)位控制電路、控制與調(diào)時(shí)開關(guān)電路。在進(jìn)行仿真調(diào)試過(guò)程中,程序運(yùn)行正確,五個(gè)部分就同時(shí)工作,從而實(shí)現(xiàn)了交通燈的基本功能及調(diào)時(shí)功能。系統(tǒng)的總的原理框圖如圖2-1所示。圖2-2-1 硬件設(shè)計(jì)方案 2.3系統(tǒng)時(shí)鐘電路 晶振采用了內(nèi)部時(shí)鐘信號(hào)源的方式。對(duì)于時(shí)間要求不是很高的系統(tǒng),只要按圖進(jìn)行設(shè)計(jì)就能使

12、系統(tǒng)可靠起振并穩(wěn)定運(yùn)行。但由于圖中的C1、C2電容起著系統(tǒng)時(shí)鐘頻率微調(diào)和穩(wěn)定的作用,因此,在本系統(tǒng)的實(shí)際應(yīng)用中一定要注意正確選擇參數(shù)(3010 PF),并保證對(duì)稱性(盡可能匹配)。圖2-3-1 系統(tǒng)時(shí)鐘電路 2.4系統(tǒng)復(fù)位電路復(fù)位電路我采用上電+按鈕復(fù)位的方式。當(dāng)開關(guān)打開時(shí),RST通過(guò)電阻接地,當(dāng)有開關(guān)閉合時(shí)由于電容的作用使電源VCC通過(guò)電阻施加在單片機(jī)復(fù)位端RST上,實(shí)現(xiàn)單片機(jī)復(fù)位。只是可惜,在進(jìn)行仿真器調(diào)試過(guò)程中,該復(fù)位電路是不起作用的。具體電路如圖2-4-1所示。 圖2-4-1 系統(tǒng)復(fù)位電路 2.5數(shù)碼管顯示電路數(shù)碼管工作原理 這里我們介紹8段數(shù)碼管的工作原理。8段數(shù)碼管又稱為8字型數(shù)碼

13、管,分為8段:A、B、C、D、E、F、G、DP。其中,DP為小數(shù)點(diǎn)。數(shù)碼管常用的有10根管腳,每一段有一根管腳,另外兩根管腳為一個(gè)數(shù)碼管的公共段,兩根之間相互連通。 發(fā)光二極管的發(fā)光原理,我們已經(jīng)介紹過(guò)了,同理,8段LED數(shù)碼管,則是在一定形狀的絕緣材料上,利用不同形狀點(diǎn)劃的發(fā)光二極管組合,排列成“8”字型的數(shù)碼管,分別引出它們的電極,點(diǎn)亮相應(yīng)的點(diǎn)劃來(lái)顯示0-9的數(shù)字。 從電路上,按數(shù)碼管的接法不同又分為共陰和共陽(yáng)兩種。圖2-5-1是共陰和共陽(yáng)極數(shù)碼管的內(nèi)部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。圖2-5-1 數(shù)碼管的內(nèi)部電路接法在設(shè)計(jì)時(shí),為了系統(tǒng)圖的美觀,我采用了6個(gè)數(shù)碼管

14、組成的數(shù)碼管組,采用共陰極接法。如圖2-5-2。圖2-5-2 系統(tǒng)數(shù)碼管電路2.6路燈指示電路在設(shè)計(jì)路燈時(shí),采用了發(fā)光二極管代替路燈。先介紹一下二極管,見圖 2-6-1。二極管工作原理是單向?qū)?,即只有正極電壓高于負(fù)極電壓某特定值時(shí)才會(huì)導(dǎo)通,而負(fù)極電壓高于正極電壓是不導(dǎo)通的。圖 2-6-1 發(fā)光二極管示意圖發(fā)光二極管是一種特殊的二極管,導(dǎo)通時(shí)會(huì)發(fā)光(發(fā)光二極管導(dǎo)通壓降一般為1.7V1.9V)。此外,工作電流要滿足該二極管的工作電流。 發(fā)光二極管的正負(fù)極可以用萬(wàn)用表進(jìn)行判斷,把萬(wàn)用表?yè)苤炼O管檔或電阻擋,用兩個(gè)表筆分別接觸二極管的兩個(gè)引出腳。若發(fā)光二極管被點(diǎn)亮,則與紅表筆相接的引出腳為正極。從外

15、觀上看,發(fā)光二極管的正極引腳的長(zhǎng)度也比較長(zhǎng)。 一般發(fā)光二極管與I/O端口之間都會(huì)再連接一個(gè)電阻,其作用在于限制通過(guò)二極管的電流,從而達(dá)到減少功耗或者滿足端口對(duì)最大電流的限制。一般發(fā)光二極管的點(diǎn)亮電流為5mA至10mA。 路燈設(shè)計(jì)時(shí)我采用了紅、黃、綠三種發(fā)光二級(jí)管。如圖2-6-2所示。圖2-6-2 路燈設(shè)計(jì)電路2.7按鍵電路設(shè)計(jì)按鍵工作方式可以是中斷方式也可以是掃描方式,對(duì)掃描方式來(lái)說(shuō),掃描是一直調(diào)用按鍵掃描程序,也可以用定時(shí)調(diào)用按鍵掃描程序,不管哪一種,都需要占用系統(tǒng)寶貴的時(shí)間資源,相比較而言中斷就有優(yōu)勢(shì),中斷鍵盤只有在有按鍵按下時(shí)才去執(zhí)行鍵盤程序,在沒(méi)有按鍵按下的情況下,可以處理其他的事務(wù),

16、使資源得到充分的利用,故中斷鍵盤有占用資源少,響應(yīng)速度快的優(yōu)點(diǎn),但在有按鍵按下時(shí)有數(shù)碼管閃爍的缺點(diǎn),這是因?yàn)樘幚碇袛鄷r(shí),數(shù)碼管停止了掃描,對(duì)顯示要求不高的場(chǎng)合下,這也是完全可以滿足要求的。但實(shí)際應(yīng)用中,為了保證安全查詢鍵值和響應(yīng),通常還要進(jìn)行按鍵去抖和等待鍵釋放(查詢按鍵是否抬起)的動(dòng)作, 由于按鍵本身是機(jī)械開關(guān),所以在觸點(diǎn)閉合或斷開的瞬間會(huì)出現(xiàn)電壓抖動(dòng)的現(xiàn)象。按鍵設(shè)計(jì)如圖2-7-1所示。圖2-7-1 按鍵電路3 軟件系統(tǒng)設(shè)計(jì)3.1設(shè)計(jì)思路及關(guān)鍵技術(shù) 一個(gè)完整的交通燈相當(dāng)于一個(gè)簡(jiǎn)單的單片機(jī)系統(tǒng),該系統(tǒng)有交通燈設(shè)置電路、單片機(jī)、顯示電路等構(gòu)成。單片機(jī)是集成的IC芯片,只需根據(jù)實(shí)際設(shè)計(jì)要求選型。其

17、他部分都需要根據(jù)應(yīng)用要求和性能指標(biāo)自行設(shè)計(jì)。首先了解實(shí)際交通燈的變化規(guī)律。假設(shè)一個(gè)十字路口為東西南北走向。初始狀態(tài)0為東西紅燈,南北紅燈。然后轉(zhuǎn)狀態(tài)1南北綠燈通車,東西紅燈。過(guò)一段時(shí)間轉(zhuǎn)狀態(tài)2,南北綠燈閃幾次轉(zhuǎn)亮黃燈,延時(shí)幾秒,東西仍然紅燈。再轉(zhuǎn)狀態(tài)3,東西綠燈通車,南北紅燈。過(guò)一段時(shí)間轉(zhuǎn)狀態(tài)4,東西綠燈閃幾次轉(zhuǎn)亮黃燈,延時(shí)幾秒,南北仍然紅燈。最后循環(huán)至狀態(tài)1。 3.2 軟件流程系統(tǒng)總體流程圖如圖3-2-1所示: 圖3-2-1整體軟件設(shè)計(jì)流程圖3.3交通燈的設(shè)計(jì)程序說(shuō)明這部分中定義了一些全局變量的數(shù)組和變量以及位標(biāo)志,只是些定義的東西不需要畫流程圖了。這部分程序如下:#include#defi

18、ne uchar unsigned char#define uint unsigned intsbit nom=P37;uchar code led_table10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/顯示數(shù)碼表uchar code light_state=0x21,0x12,0x0c,0x12;/交通燈狀態(tài)存儲(chǔ)表uchar code em_state3=0x24,0x21,0x0c;/緊急燈狀態(tài)顯示表uchar light_time2=0,4,0,1,0,5,0,1;/顯示時(shí)間存儲(chǔ)表uchar statebef,time1s=

19、100,state=0;/存儲(chǔ)緊急燈狀態(tài),定時(shí)基數(shù),狀態(tài)基數(shù)uint time;/顯示時(shí)間變量bit md_flag,state_flag=1,red;/顯示時(shí)間更改狀態(tài),狀態(tài)切換標(biāo)志位,紅綠切換標(biāo)志位定義局部變量i,ji-j-j100i=100j=100i0;i-) for(j=100;j0;j-); /循環(huán)10000次 圖3-4-1 延時(shí)函數(shù)的流程圖3.5 延時(shí)函數(shù)讀狀態(tài)函數(shù)的流程圖如圖3-5-1。 定義局部變量value讀P3口狀態(tài)value右移4位取value低三位狀態(tài)改變?return 0return 1YNstatebef=value讀狀態(tài)函數(shù)如下:/*-讀狀態(tài)函數(shù):判斷是否有緊急

20、燈狀況出現(xiàn)-*/uchar rd_emstate(void) uchar value; value=P3; value=4; value&=0x07; if(value!=statebef)statebef=value;return 1;/判斷是否有緊急燈狀況發(fā)生,/保存按鍵值,置返回標(biāo)志為1 else return 0; 3.6 顯示函數(shù)顯示函數(shù)如下:void display(void) if(md_flag=1)/顯示更改時(shí)間狀態(tài) if(1=red) / 南北方向紅燈時(shí)間顯示 P2=0xf6; P0=led_tablelight_time00;delay();/分鐘 P2=0xed; P0

21、=led_tablelight_time01/10;delay();/秒的十位 P2=0xdb; P0=led_tablelight_time01%10;delay();/秒的個(gè)位 else /正常狀態(tài),顯示時(shí)間 P2=0xf6; P0=led_tabletime/100; delay();/分鐘 P2=0xed; P0=led_tabletime/10%10;delay();/ 秒的十位 P2=0xdb; P0=led_tabletime%10; delay();/秒的個(gè)位 3.7定時(shí)器0中斷函數(shù)定時(shí)器0中斷函數(shù)如下:void Time0int(void) interrupt 1 EA=0;

22、 TH0=-10000/256; TL0=-10000%256; time1s-; if(time1s=0)/一秒中到,重新置數(shù) time1s=100;time-;/顯示時(shí)間自減if(time=0)/顯示時(shí)間減到0時(shí)切換顯示時(shí)間狀態(tài) state+;/四個(gè)狀態(tài)輪流切換 if(state=4) state=0; state_flag=1;/置狀態(tài)切換標(biāo)志位 EA=1; 4 Proteus軟件仿真4.1 Proteus軟件仿真Proteus軟件用于系統(tǒng)的仿真,編譯軟件采用keil UV3。程序的仿真用英國(guó)的labcenter公司的Protens V7.13。其果如下:加電后的結(jié)果如圖4-3-1。此時(shí)

23、時(shí)間已經(jīng)走過(guò)一秒,南北是紅燈,東西是綠燈。圖4-3-1 加電后仿真4.2 南北路燈切換時(shí)仿真切換時(shí),轉(zhuǎn)為黃燈亮,時(shí)間為一秒鐘。如圖4-2-1。圖4-2-1 黃燈亮?xí)r4.3 緊急情況下的仿真此時(shí),全部為紅燈,所用車輛禁行,時(shí)間被鎖定,此時(shí)允許特殊車輛經(jīng)過(guò)。如圖4-3-1。圖4-3-1 緊急情況下的路燈顯示4.4東西緊急情況下的仿真此時(shí),南北為紅燈,東西為綠燈,南北車輛禁行,東西可以通過(guò)。時(shí)間被鎖定,此時(shí)允許東西車輛經(jīng)過(guò)。如圖4-4-1。圖4-4-1 東西緊急情況下的路燈顯示5 心得體會(huì)通過(guò)此次課程設(shè)計(jì)讓我能夠親身參與電子產(chǎn)品的設(shè)計(jì)使我更加深深地體會(huì)到:現(xiàn)代的社會(huì)是信息的社會(huì),很多與人們生活緊密相

24、關(guān)的產(chǎn)品都是電子產(chǎn)品。要熟練地掌握單片機(jī)的基本知識(shí),這樣才能對(duì)試驗(yàn)中出現(xiàn)的問(wèn)題進(jìn)行分析解決。通過(guò)這次對(duì)交通燈系統(tǒng)的設(shè)計(jì),我們掌握了設(shè)計(jì)一個(gè)實(shí)用裝置電路的基本方法和基本步驟,掌握了實(shí)用裝置工作的基本原理,實(shí)際解決了設(shè)計(jì)中出現(xiàn)的問(wèn)題,增強(qiáng)了尋找問(wèn)題,解決問(wèn)題的能力。此次電子設(shè)計(jì)的成功不僅幫助我們更好地掌握書本知識(shí),尤其重要的是增強(qiáng)了我們的自信,培養(yǎng)了我們獨(dú)立思考的能力!通過(guò)這周緊張而充實(shí)的課程設(shè)計(jì),我學(xué)到了很多東西,讓我重新認(rèn)識(shí)自己,收益匪淺,并對(duì)我以后所要做的畢業(yè)設(shè)計(jì)有了一個(gè)初步的了解。做好一個(gè)課程設(shè)計(jì)或畢業(yè)設(shè)計(jì)不僅要具備扎實(shí)的書本知識(shí)并會(huì)善于應(yīng)用,還要學(xué)會(huì)查閱資料,對(duì)以前學(xué)過(guò)的知識(shí)不清楚的地方

25、還要進(jìn)行復(fù)習(xí),實(shí)在搞不明白的地方要向老師或同學(xué)請(qǐng)教,這樣才可能做出一個(gè)比較不錯(cuò)的課程設(shè)計(jì)。在這里我要感謝我們的指導(dǎo)老師,非常感謝老師的指導(dǎo)和幫助。希望以后還能參加這樣的課程設(shè)計(jì)。我想我會(huì)做的更好的。參考文獻(xiàn)1余發(fā)山.單片機(jī)原理及應(yīng)用技術(shù).中國(guó)礦業(yè)大學(xué).20022李朝青.單片機(jī)原理及接口技術(shù)(修訂版).北京:北京航空航天大學(xué)出版社,19983李廣弟.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,1992附1 源程序代碼#include#define uchar unsigned char#define uint unsigned intsbit nom=P37;uchar code led_tabl

26、e10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/顯示數(shù)碼表uchar code light_state=0x21,0x12,0x0c,0x12;/交通燈狀態(tài)存儲(chǔ)表uchar code em_state3=0x24,0x21,0x0c;/緊急燈狀態(tài)顯示表uchar light_time2=0,4,0,1,0,5,0,1;/顯示時(shí)間存儲(chǔ)表uchar statebef,time1s=100,state=0;/存儲(chǔ)緊急燈狀態(tài),定時(shí)基數(shù),狀態(tài)基數(shù)uint time;/顯示時(shí)間變量bit md_flag,state_flag=1,red;/顯示

27、時(shí)間更改狀態(tài),狀態(tài)切換標(biāo)志位,紅綠切換標(biāo)志位/*-延時(shí)函數(shù)-*/void delay(void) uchar i,j; for(i=100;i0;i-) for(j=100;j0;j-); /*-讀狀態(tài)函數(shù):判斷是否有緊急燈狀況出現(xiàn)-*/uchar rd_emstate(void) uchar value; value=P3; value=4; value&=0x07; if(value!=statebef)statebef=value;return 1;/判斷是否有緊急燈狀況發(fā)生,保存按鍵值,置返回標(biāo)志為1 else return 0; /*-顯示函數(shù)-*/void display(void

28、) if(md_flag=1)/顯示更改時(shí)間狀態(tài) if(1=red) / 南北方向紅燈時(shí)間顯示 P2=0xf6; P0=led_tablelight_time00;delay();/分鐘 P2=0xed; P0=led_tablelight_time01/10;delay();/秒的十位 P2=0xdb; P0=led_tablelight_time01%10;delay();/秒的個(gè)位 else /南北綠燈東西紅燈亮?xí)r間顯示 P2=0xf6;P0=led_tablelight_time20; delay();/分鐘 P2=0xed;P0=led_tablelight_time21/10; d

29、elay();/秒的十位 P2=0xdb;P0=led_tablelight_time21%10; delay();/秒的個(gè)位 else /正常狀態(tài),顯示時(shí)間 P2=0xf6; P0=led_tabletime/100; delay();/分鐘 P2=0xed; P0=led_tabletime/10%10;delay();/ 秒的十位 P2=0xdb; P0=led_tabletime%10; delay();/秒的個(gè)位 /*-主函數(shù)-*/void main()/初始化定時(shí)器0,外部中斷1 EA=1; EX1=1; IT1=1; ET0=1; TMOD=0x01; TH0=-10000/25

30、6; TL0=-10000%256; TR0=1; while(1) if(rd_emstate()/如果有緊急燈按下,進(jìn)行如下緊急處理 switch(statebef) case 0x04:P1=em_state0;TR0=0;break;/緊急燈亮 case 0x02:P1=em_state1;TR0=0;break;/東西應(yīng)急燈亮 case 0x01:P1=em_state2;TR0=0;break;/南北應(yīng)急燈亮 case 0x00:TR0=1;break;default: break; if(state_flag)/正常狀態(tài)下時(shí)間切換,如果狀態(tài)標(biāo)志為1,進(jìn)行如下處理,進(jìn)行狀態(tài)間切換 switch(state) case 0:time=light_time00*60+light_time01; P1=light_state0;break;/南北紅燈亮?xí)r間 case 1:time=

溫馨提示

  • 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)論