版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 單片機(jī)課程設(shè)計(jì)</b></p><p> 交通燈控制系統(tǒng)10級(jí)電氣工程一班</p><p><b> 課程設(shè)計(jì)任務(wù)書(shū)</b></p><p> 題 目: 交通燈控制系統(tǒng) </p><p> 專(zhuān) 業(yè): 電氣工程及其自動(dòng)化 <
2、/p><p> 姓 名: </p><p> 學(xué) 號(hào): </p><p> 班 級(jí): </p><p> 完 成 期 限: 2013年1月5日 </p><p>
3、 指導(dǎo)教師簽名: </p><p> 課程負(fù)責(zé)人簽名: </p><p> 2012年11月20日</p><p><b> 主要任務(wù):</b></p><p> 基于單片機(jī)的應(yīng)用技術(shù),利用中斷系統(tǒng)來(lái)控制定時(shí)器的時(shí)間,實(shí)現(xiàn)交通燈控制,了解單片機(jī)中斷
4、系統(tǒng),掌握中斷系統(tǒng)的編寫(xiě)方式。</p><p><b> 基本要求:</b></p><p> 在通常情在一個(gè)十字路口的兩條主干道上,分別裝上一套紅、黃、綠 3 種信號(hào)燈。</p><p> 況下,一條主干道為綠燈,另一條主干道為紅燈。</p><p> 采用定時(shí)器中斷方式控制南北向、東西向交通燈,指示時(shí)間為25
5、s,當(dāng)時(shí)間為5s時(shí)綠燈亮,為3s時(shí)黃燈點(diǎn)亮,25s時(shí)間到,交通燈換向。</p><p> 亮燈規(guī)律:南北紅燈亮20s,東西綠燈亮20s</p><p> 南北紅燈亮3s,東西綠燈閃3s</p><p> 南北紅燈閃2s,東西黃燈亮2s</p><p> 南北綠燈亮20s,東西紅燈亮20s</p><p> 南
6、北綠燈閃3s,東西紅燈亮3s</p><p> 南北黃燈亮2s,東西紅燈閃2s</p><p><b> 課程設(shè)計(jì)說(shuō)明書(shū)</b></p><p> 題 目:交通燈控制系統(tǒng) </p><p> 姓 名: </p><p> 院 (系):
7、 機(jī)電工程學(xué)院 </p><p> 專(zhuān)業(yè)班級(jí): 電氣工程一班 </p><p> 學(xué) 號(hào): </p><p> 指導(dǎo)教師: </p><p> 成 績(jī): </p><p&
8、gt; 時(shí)間: 2012 年 11 月 17 日至 2012 年 12 月 22 日</p><p><b> 主要任務(wù):</b></p><p> 基于單片機(jī)的應(yīng)用技術(shù),利用中斷系統(tǒng)來(lái)控制定時(shí)器的時(shí)間,實(shí)現(xiàn)交通燈控制,了解單片機(jī)中斷系統(tǒng),掌握中斷系統(tǒng)的編寫(xiě)方式。</p><p><b> 基本要求:</b>&l
9、t;/p><p> 在通常情在一個(gè)十字路口的兩條主干道上,分別裝上一套紅、黃、綠 3 種信號(hào)燈。</p><p> 況下,一條主干道為綠燈,另一條主干道為紅燈。</p><p> 采用定時(shí)器中斷方式控制南北向、東西向交通燈,指示時(shí)間為25s,當(dāng)時(shí)間為5s時(shí)綠燈亮,為3s時(shí)黃燈點(diǎn)亮,25s時(shí)間到,交通燈換向。</p><p> 亮燈規(guī)律:南
10、北紅燈亮20s,東西綠燈亮20s</p><p> 南北紅燈亮3s,東西綠燈閃3s</p><p> 南北紅燈閃2s,東西黃燈亮2s</p><p> 南北綠燈亮20s,東西紅燈亮20s</p><p> 南北綠燈閃3s,東西紅燈亮3s</p><p> 南北黃燈亮2s,東西紅燈閃2s</p>
11、<p><b> 目錄 </b></p><p><b> 交通燈控制系統(tǒng)1</b></p><p> 10級(jí)電氣工程一班1</p><p><b> 1 引言3</b></p><p><b> 1.1 背景3</b>&
12、lt;/p><p> 1.2 交通燈的意義3</p><p><b> 2 設(shè)計(jì)方案4</b></p><p> 2.1 設(shè)計(jì)思路4</p><p> 2.2 總體設(shè)計(jì)框圖4</p><p> 3 總體設(shè)計(jì)及核心部件簡(jiǎn)介5</p><p> 3.1總體設(shè)計(jì)
13、圖5</p><p><b> 3.2硬件設(shè)計(jì)6</b></p><p> 3.2.1 89cs51單片機(jī)概述6</p><p> 3.2.2 80C51單片機(jī)的時(shí)鐘8</p><p> 3.2.3硬件電路設(shè)計(jì)及描述10</p><p> 3.3軟件設(shè)計(jì)11</p&
14、gt;<p> 3.3.1 程序流程圖:11</p><p> 3.3.2 LED紅綠燈顯示13</p><p> 4 仿真與調(diào)試13</p><p> 4.1軟件調(diào)試13</p><p> 4.2硬件調(diào)試13</p><p> 5 設(shè)計(jì)體會(huì)與總結(jié)14</p><
15、;p><b> 6參考文獻(xiàn)15</b></p><p><b> 附錄一:程序15</b></p><p> 附錄二:實(shí)驗(yàn)整體電路圖20</p><p> 附錄三:元器件表20</p><p><b> 1 引言 </b></p>&
16、lt;p><b> 1.1 背景</b></p><p> 當(dāng)今,紅綠燈安裝在個(gè)個(gè)道口上,已經(jīng)成為疏導(dǎo)交通車(chē)輛最常見(jiàn)和最有效的手段。但這個(gè)技術(shù)在19世紀(jì)就已經(jīng)出現(xiàn)了。</p><p> 1858年,在英國(guó)倫敦主要街頭安裝了以燃煤氣為光源的紅、藍(lán)兩色的機(jī)械般手勢(shì)信號(hào)燈,用以指揮馬車(chē)通行。這是世界上最早的交通信號(hào)燈。1868年,英國(guó)機(jī)械工程師納伊特在倫敦威斯敏
17、斯特區(qū)的會(huì)議大廈前的廣場(chǎng)上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩以旋轉(zhuǎn)方式玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869年1月2日,煤氣燈爆炸,是警察受傷,遂被取消!</p><p> 電氣啟動(dòng)的紅綠燈出現(xiàn)在美國(guó),這種紅綠燈由紅黃綠三色圓形的投光器組成,1914年始裝于紐約市5號(hào)大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。</p><p> 信號(hào)燈的出現(xiàn),
18、使得交通得以有效的管理,對(duì)于疏導(dǎo)交通流量、提高道路通行能力、減少交通事故有明顯效果。1968年,聯(lián)合國(guó)《道路交通和道路標(biāo)志信號(hào)協(xié)定》對(duì)各種信號(hào)燈的含義作了規(guī)定。綠燈時(shí)通行信號(hào)燈,面對(duì)綠燈的車(chē)輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非兩一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車(chē)輛必需讓合法的正在路口內(nèi)行駛的車(chē)輛和過(guò)人行橫線的行人優(yōu)先通行。紅燈是禁行信號(hào)燈,面對(duì)紅燈的車(chē)輛必需在交叉路口的停車(chē)線后停車(chē)。黃燈是警告信號(hào),面對(duì)黃燈的車(chē)輛不能越過(guò)停車(chē)線,但車(chē)輛已經(jīng)十
19、分接近停車(chē)線而不能安全停車(chē)的可以進(jìn)入交叉路口!</p><p> 1.2 交通燈的意義</p><p> 隨著社會(huì)的進(jìn)步發(fā)展,人來(lái)的消費(fèi)水平的不斷的提高。小車(chē)也不斷的增多,但是道路少,所以車(chē)輛行駛變得復(fù)雜。為了使車(chē)輛行駛變得方便,使交通更安全,采用單片機(jī)控制交通燈實(shí)現(xiàn),而且便于管理,對(duì)人類(lèi)社會(huì)有重大意義。</p><p><b> 2 設(shè)計(jì)方案<
20、;/b></p><p><b> 2.1 設(shè)計(jì)思路</b></p><p> 利用單片機(jī)實(shí)現(xiàn)交通燈的控制,該任務(wù)分以下幾個(gè)方面:</p><p> a 實(shí)現(xiàn)紅、綠、黃燈的循環(huán)控制。要實(shí)現(xiàn)此功能需要表示三種不同顏色的LED燈分別接在P1個(gè)管腳,用軟件實(shí)現(xiàn)。</p><p> b 用數(shù)碼管顯示倒計(jì)時(shí)。可以利
21、用動(dòng)態(tài)顯示或靜態(tài)顯示,串行并出或者并行并出實(shí)現(xiàn)。</p><p> C 實(shí)現(xiàn)急通車(chē)。這需要人工實(shí)現(xiàn),編程時(shí)利用到中斷才能帶到目的,只要有按鈕按下,那么四個(gè)方向全部顯示紅燈,禁止以誒車(chē)輛通行。當(dāng)情況解除,讓時(shí)間回到只能隔斷處繼續(xù)進(jìn)行。</p><p> 2.2 總體設(shè)計(jì)框圖</p><p><b> 見(jiàn)圖2-1:</b></p>
22、<p> 3 總體設(shè)計(jì)及核心部件簡(jiǎn)介</p><p><b> 3.1總體設(shè)計(jì)圖</b></p><p><b> 3.2硬件設(shè)計(jì)</b></p><p> 3.2.1 89cs51單片機(jī)概述</p><p> MCS-51單片機(jī)內(nèi)部結(jié)構(gòu):</p><p
23、> 89CS51是MCS-51系列單片機(jī)的典型產(chǎn)品,我們以這一代表性的機(jī) 型進(jìn)行系統(tǒng)的講解。下圖是80C51的基本結(jié)構(gòu):</p><p> 89CS51單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等極大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在分別加以說(shuō)明。</p><p><b> *中央處理器:&
24、lt;/b></p><p> 8位CPU,含布爾處理器;時(shí)鐘電路;總線控制邏輯。中央處理器(CPU)是整個(gè)單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)的工作,完成運(yùn)算和控制輸入輸出等操控。</p><p> *數(shù)據(jù)存儲(chǔ)器(RAM):</p><p> 128KB數(shù)據(jù)存儲(chǔ)器(RAM,可再擴(kuò)6
25、4KB);特殊功能寄存器SFR。 89CS51內(nèi)部有128個(gè)8位用戶數(shù)及存儲(chǔ)單元和128個(gè)寄存器單元,他們是統(tǒng)一編址的,專(zhuān)營(yíng)寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問(wèn),,而不能</p><p> 用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個(gè),可存放讀寫(xiě)的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶自定義的字型表。</p><p> *程序存儲(chǔ)器(ROM):</p&g
26、t;<p> 4KB的程序存儲(chǔ)器(ROM/EPROM/Flash,可擴(kuò)至64KB); 89CS51共有4096個(gè)8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格。 </p><p> *定時(shí)/計(jì)數(shù)器(ROM):</p><p> 89CS51有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,一時(shí)想定時(shí)或計(jì)數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。</p><p> *并行輸
27、入輸出(I/O)口:</p><p> 89CS51共有4組8位I/O口(P0、P1、P2或P3),用于對(duì)外數(shù)據(jù)傳輸。</p><p><b> *全雙工串行號(hào):</b></p><p> 89CS51內(nèi)置一個(gè)全雙行串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳輸,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。</p>
28、<p><b> *中斷系統(tǒng):</b></p><p> 89CS51具備較完善的中斷功能,有兩個(gè)外中斷、兩個(gè)定時(shí)/計(jì)數(shù)器中斷和一個(gè)串行中斷,客滿著不同的控制要求,并具有2級(jí)優(yōu)先級(jí)別選擇。</p><p><b> *時(shí)鐘電路:</b></p><p> 89CS51內(nèi)置最高頻率高達(dá)12Hz的時(shí)鐘電路,
29、用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序,但89CS51單片繼續(xù)外置震蕩電容。</p><p> 單片機(jī)的結(jié)構(gòu)有兩種類(lèi)型,一種是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi)的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計(jì)算機(jī)廣泛使用的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。</p><p> 3.2.2 80C51單片機(jī)的時(shí)鐘</p><p>
30、; (1)振蕩器和時(shí)鐘電路 </p><p> 80C51內(nèi)部有一個(gè)高增益反相放大器,用于構(gòu)成振蕩器,但要形成時(shí)鐘脈沖,外部還需附加電路。80C51的時(shí)鐘產(chǎn)生方法有以下兩種。</p><p><b> a 內(nèi)部時(shí)鐘方式 </b></p><p> 利用芯片內(nèi)部的振蕩器,然后在引腳XTALl和XTAL2兩端跨接晶體振蕩器(簡(jiǎn)稱(chēng)晶振),就構(gòu)
31、成了穩(wěn)定的自激振蕩器,發(fā)出的脈沖直接送入內(nèi)部時(shí)鐘電路。外接晶振時(shí),Cl和C2的值通常選擇為30pF左右;Cl、C2對(duì)頻率有微調(diào)作用,晶振或陶瓷諧振器的頻率范圍可在1.2MHz~12MHz之間選擇。為了減小寄生電容,更好地保證振蕩器穩(wěn)定、可靠地工作,振蕩器和電容應(yīng)盡可能安裝得與單片機(jī)引腳XTALl和XTAL2靠近。</p><p> 80C51時(shí)鐘電路接線方法</p><p><b&
32、gt; b 外部時(shí)鐘方式 </b></p><p> 此方式是利用外部振蕩脈沖接入XTALl或XTAL2。HMOS和CHMOS單片機(jī)外時(shí)鐘信號(hào)接入方式不同。</p><p> MCS-51系統(tǒng)的引腳說(shuō)明:</p><p> MCS-51系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),圖二是它們的引腳配置,40個(gè)
33、引腳中,正電源和底線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用。</p><p> 8951的撫慰方式可以自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,見(jiàn)下圖。除此之外,RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可以接上沒(méi)用電源,以保證單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟失。</p><p> 3.2.3硬件電路設(shè)計(jì)及描述</p><p>
34、 基于單片機(jī)設(shè)計(jì)的振蕩電路和復(fù)位電路,加顯示器件構(gòu)成單片機(jī)系統(tǒng),單片機(jī)通過(guò)P2.1~P2.6端口及P3.0P3.1端口的第二功能進(jìn)行數(shù)據(jù)和信息的傳輸交換從而實(shí)現(xiàn)對(duì)外電路的控制 </p><p> 由7405及LED燈構(gòu)成的交通信號(hào)顯示電路,由89C51送來(lái)信號(hào),經(jīng)7405分析處理將信號(hào)送入LED顯示燈</p><p> 由八位移位寄存器74ls164及七段數(shù)碼
35、管構(gòu)成的數(shù)字顯示器件,由單片機(jī)輸出信號(hào)經(jīng)八位移位寄存器譯碼后送入數(shù)碼顯管,從而顯示數(shù)字</p><p><b> 3.3軟件設(shè)計(jì)</b></p><p> 3.3.1 程序流程圖:</p><p><b> 如圖所示。</b></p><p> 3.3.2 LED紅綠燈顯示</p>
36、;<p> 當(dāng)P1端口輸出高電平,即P1各端口=1時(shí),根據(jù)發(fā)光二極管的單向?qū)щ娦钥芍?,這是發(fā)光二極管熄滅;當(dāng)P1個(gè)端口輸出低電平,即P1各端口=0時(shí),發(fā)光二極管亮。我們可以使用SETB指令使P1各端口輸出高電平,使用CLR指令時(shí)P各端口輸出低電平。至于循環(huán)需要軟件控制,程序見(jiàn)附錄。</p><p><b> 4 仿真與調(diào)試</b></p><p>&
37、lt;b> 4.1軟件調(diào)試</b></p><p><b> 4.2硬件調(diào)試</b></p><p> 5 設(shè)計(jì)體會(huì)與總結(jié) </p><p> 在學(xué)習(xí)單片機(jī)理論課時(shí)候就感覺(jué)到內(nèi)容很多,知識(shí)點(diǎn)很雜,十分繁瑣。在老師的講解下,在通過(guò)自己的努力也更進(jìn)一步了解了單片機(jī)的內(nèi)部構(gòu)造和工作原理,以及接外部電路的情況。當(dāng)然光有理論知識(shí)
38、那只是“紙上談兵”,還需要實(shí)際動(dòng)手去實(shí)踐。真正把所學(xué)的用到日常生活中,理論聯(lián)系實(shí)際,做出實(shí)物模型。這次單片機(jī)實(shí)習(xí),我選的是交通燈設(shè)計(jì),通過(guò)這次設(shè)計(jì)我感覺(jué)到要想做成功,必須花時(shí)間多準(zhǔn)備,查閱大量資料,認(rèn)證分析每一步每一個(gè)模塊要實(shí)現(xiàn)的功能,然后分步進(jìn)行,最后正和一個(gè)整體。</p><p> 通過(guò)這次實(shí)習(xí),我們要對(duì)所做的事情有耐性,在編程的時(shí)候會(huì)有困難,也可能變得不一定成功,所以要經(jīng)過(guò)多次調(diào)試,分析,改正,反復(fù)去做。
39、</p><p> 在這次實(shí)習(xí)中,經(jīng)歷了多次失敗的洗禮,我明白在以后學(xué)習(xí)和實(shí)踐中,我要努力掌握知識(shí),多動(dòng)手,多思考,以免在以后的學(xué)習(xí)工作中犯同樣的錯(cuò)誤。</p><p><b> 6參考文獻(xiàn) </b></p><p> 【 1 】李全利 《單片機(jī)原理及接口技術(shù)》 第2版;高等教育出版社</p><p> 【 2
40、 】王文杰 徐文斌 《單片機(jī)應(yīng)用技術(shù)》 ;冶金工業(yè)出版社</p><p> 【 3 】《THDPJ-1-2實(shí)驗(yàn)指導(dǎo)書(shū)》</p><p><b> 附錄一:程序 </b></p><p> SECOND1 EQU 30H ;東西路口計(jì)時(shí)寄存器</p><p> SECOND2 EQU
41、31H ;南北路口計(jì)時(shí)寄存器</p><p> DBUF EQU 40H ;顯示碼緩沖區(qū)1</p><p> TEMP EQU 44H ;顯示碼緩沖區(qū)2</p><p> LED_G1 BIT P2.1 ;東西路口綠燈</p><
42、p> LED_Y1 BIT P2.2 ;東西路口黃燈</p><p> LED_R1 BIT P2.3 ;東西路口紅燈</p><p> LED_G2 BIT P2.4 ;南北路口綠燈</p><p> LED_Y2 BIT P2.5 ;南北
43、路口黃燈</p><p> LED_R2 BIT P2.6 ;南北路口紅燈</p><p> ORG 0000H</p><p> LJMP START</p><p> ORG 0100H</p><p> START: MOV TMOD,#01H ;置T0
44、為工作方式1</p><p> MOV TH0,#3CH ;置T0定時(shí)初值50ms</p><p> MOV TL0,#0B0H </p><p> CLR TF0 </p><p> SETB TR0 ;啟動(dòng)T0</p><p> CLR A
45、 </p><p> MOV P1,A ;關(guān)閉不相關(guān)的LED</p><p> LOOP: MOV R2,#20 ;置1s計(jì)數(shù)初值,50ms*20=1s</p><p> MOV R3,#20 ;紅燈亮20s</p><p> MOV SECOND1,#25
46、 ;東西路口計(jì)時(shí)顯示初值25s</p><p> MOV SECOND2,#25 ;南北路口計(jì)時(shí)顯示初值25s</p><p> LCALL DISPLAY </p><p> LCALL STATE1 ;調(diào)用狀態(tài)1</p><p> WAIT1: JNB TF0,WAIT1
47、 ;查詢50ms到否</p><p> CLR TF0 </p><p> MOV TH0,#3CH ;恢復(fù)T0定時(shí)初值50ms</p><p> MOV TL0,#0B0H </p><p> DJNZ R2,WAIT1 ;判斷1s到否?未到繼續(xù)狀態(tài)1</p><p>
48、; MOV R2,#20 ;置50ms計(jì)數(shù)初值</p><p> DEC SECOND1 ;東西路口顯示時(shí)間減1s</p><p> DEC SECOND2 ;南北路口顯示時(shí)間減1s</p><p> LCALL DISPLAY </p><p> DJNZ R3,WA
49、IT1 ;狀態(tài)1維持20s</p><p> MOV R2,#5 ;置50ms計(jì)數(shù)初值5*4=20</p><p> MOV R3,#3 ;綠燈閃爍3s</p><p> MOV R4,#4 ;閃爍間隔200ms</p><p> MOV SECOND1
50、,#5 ;東西路口計(jì)時(shí)顯示初值5s</p><p> MOV SECOND2,#5 ;南北路口計(jì)時(shí)顯示初值5s</p><p> LCALL DISPLAY </p><p> WAIT2: LCALL STATE2 ;調(diào)用狀態(tài)2</p><p> JNB TF0,WAIT2
51、 ;查詢50ms到否</p><p> CLR TF0 </p><p> MOV TH0,#3CH ;恢復(fù)T0定時(shí)初值50ms</p><p> MOV TL0,#0B0H </p><p> DJNZ R4,WAIT2 ;判斷200ms到否?未到繼續(xù)狀態(tài)2</p>
52、;<p> CPL LED_G1 ;東西綠燈閃</p><p> MOV R4,#4 ;閃爍間隔200ms</p><p> DJNZ R2,WAIT2 ;判1s到否?未到繼續(xù)狀態(tài)2</p><p> MOV R2,#5 ;置50ms計(jì)數(shù)初值</p>&
53、lt;p> DEC SECOND1 ;東西路口顯示時(shí)間減1s</p><p> DEC SECOND2 ;南北路口顯示時(shí)間減1s</p><p> LCALL DISPLAY</p><p> DJNZ R3,WAIT2 ;狀態(tài)2維持3s</p><p> MOV R2,#
54、5 ;置50ms計(jì)數(shù)初值</p><p> MOV R3,#2 ;黃燈閃爍2s</p><p> MOV R4,#4</p><p> MOV SECOND1,#2 ;東西路口計(jì)時(shí)顯示初值2s</p><p> MOV SECOND2,#2 ;南北路口計(jì)時(shí)顯示初值2s&
55、lt;/p><p> LCALL DISPLAY</p><p> WAIT3: LCALL STATE3 ;調(diào)用狀態(tài)3</p><p> JNB TF0,WAIT3 ;查詢100ms到否</p><p> CLR TF0 </p><p> MOV TH0,#3CH
56、 ;恢復(fù)T0定時(shí)初值100ms</p><p> MOV TL0,#0B0H </p><p> DJNZ R4,WAIT3 ;判斷1s到否?未到繼續(xù)狀態(tài)3</p><p> CPL LED_R2</p><p> MOV R4,#4</p><p> DJNZ
57、 R2,WAIT3</p><p> MOV R2,#5 ;置100ms計(jì)數(shù)初值</p><p> DEC SECOND1 ;東西路口顯示時(shí)間減1s</p><p> DEC SECOND2 ;南北路口顯示時(shí)間減1s</p><p> LCALL DISPLAY</p>
58、;<p> DJNZ R3,WAIT3 ;狀態(tài)3維持2s</p><p> MOV R2,#20 ;置50ms計(jì)數(shù)初值</p><p> MOV R3,#20 ;紅燈閃20s</p><p> MOV SECOND1,#25 ;東西路口計(jì)時(shí)顯示初值25s</p>&
59、lt;p> MOV SECOND2,#25 ;南北路口計(jì)時(shí)顯示初值25s</p><p> LCALL DISPLAY</p><p> WAIT4: LCALL STATE4 ;調(diào)用狀態(tài)4</p><p> JNB TF0,WAIT4 ;查詢100ms到否</p><p> CL
60、R TF0 </p><p> MOV TH0,#3CH ;恢復(fù)T0定時(shí)初值100ms</p><p> MOV TL0,#0B0H </p><p> DJNZ R2,WAIT4 ;判斷1s到否?未到繼續(xù)狀態(tài)4</p><p> MOV R2,#20 ;置100ms
61、計(jì)數(shù)初值</p><p> DEC SECOND1 ;東西路口顯示時(shí)間減1s</p><p> DEC SECOND2 ;南北路口顯示時(shí)間減1s</p><p> LCALL DISPLAY</p><p> DJNZ R3,WAIT4 ;狀態(tài)4維持20s</p>&l
62、t;p> MOV R2,#5 ;置50ms計(jì)數(shù)初值</p><p> MOV R4,#4 ;紅燈閃20ms</p><p> MOV R3,#3 ;綠燈閃3s</p><p> MOV SECOND1,#5 ;東西路口計(jì)時(shí)顯示初值5s</p><p>
63、 MOV SECOND2,#5 ;南北路口計(jì)時(shí)顯示初值5s</p><p> LCALL DISPLAY</p><p> WAIT5: LCALL STATE5 ;調(diào)用狀態(tài)5</p><p> JNB TF0,WAIT5 ;查詢100ms到否</p><p> CLR TF0
64、 </p><p> MOV TH0,#3CH ;恢復(fù)T0定時(shí)初值100ms</p><p> MOV TL0,#0B0H </p><p> DJNZ R4,WAIT5 ;判斷200ms到否?未到繼續(xù)狀態(tài)5</p><p> CPL LED_G2 ;南
65、北綠燈閃</p><p> MOV R4,#4 ;閃爍間隔200ms</p><p> DJNZ R2,WAIT5 ;判斷1s到否?未到繼續(xù)狀態(tài)5</p><p> MOV R2,#5 ;置100ms計(jì)數(shù)初值</p><p> DEC SECOND1 ;東西路
66、口顯示時(shí)間減1s</p><p> DEC SECOND2 ;南北路口顯示時(shí)間減1s</p><p> LCALL DISPLAY</p><p> DJNZ R3,WAIT5 ;狀態(tài)5維持3s</p><p> MOV R2,#5 ;置50ms計(jì)數(shù)初值</p>&
67、lt;p> MOV R3,#2 ;紅燈閃2s</p><p> MOV R4,#4</p><p> MOV SECOND1,#2 ;東西路口計(jì)時(shí)顯示2s</p><p> MOV SECOND2,#2 ;南北路口計(jì)時(shí)顯示2s</p><p> LCALL DISPLAY
68、 </p><p> WAIT6: LCALL STATE6 ;調(diào)用狀態(tài)6</p><p> JNB TF0,WAIT6 ;查詢50ms到否</p><p> CLR TF0</p><p> MOV TH0,#3CH ;恢復(fù)T0定時(shí)初值100ms</p><
69、p> MOV TL0,#0B0H </p><p> DJNZ R4,WAIT6 ;判斷1s到否?未到繼續(xù)狀態(tài)6</p><p> CPL LED_R1</p><p> MOV R4,#4</p><p> DJNZ R2,WAIT6</p><p> M
70、OV R2,#5 ;置100ms計(jì)數(shù)初值</p><p> DEC SECOND1 ;東西路口顯示時(shí)間減1s</p><p> DEC SECOND2 ;南北路口顯示時(shí)間減1s</p><p> LCALL DISPLAY </p><p> DJNZ R3,WAIT6
71、 ;狀態(tài)6維持2s</p><p> LJMP LOOP ;大循環(huán)</p><p> STATE1: SETB LED_G1 ;狀態(tài)1</p><p> CLR LED_Y1 ;東西路口綠燈亮</p><p> CLR LED_R1</p><
72、;p> CLR LED_G2</p><p> CLR LED_Y2</p><p> SETB LED_R2 ;南北路口紅燈亮</p><p><b> RET</b></p><p> STATE2: CLR LED_Y1 ;狀態(tài)2</p>
73、;<p> CLR LED_R1</p><p> CLR LED_G2</p><p> CLR LED_Y2</p><p> SETB LED_R2 ;南北路口紅燈亮</p><p><b> RET </b></p><p>
74、 STATE3: CLR LED_G1 ;狀態(tài)3</p><p> CLR LED_R1 </p><p> CLR LED_G2</p><p> CLR LED_Y2</p><p> SETB LED_Y1 ;東西路口綠燈亮</p><p>
75、<b> RET</b></p><p> STATE4: CLR LED_G1 ;狀態(tài)4</p><p> CLR LED_Y1</p><p> SETB LED_R1 ;東西路口紅燈亮</p><p> SETB LED_G2 ;南北路口綠燈
76、亮</p><p> CLR LED_Y2</p><p> CLR LED_R2</p><p><b> RET </b></p><p> STATE5: CLR LED_G1 ;狀態(tài)5</p><p> CLR LED_Y1 &
77、lt;/p><p> SETB LED_R1 ;東西路口紅燈亮</p><p> CLR LED_Y2</p><p> CLR LED_R2</p><p><b> RET</b></p><p> STATE6: CLR LED_G1
78、 ;狀態(tài)6</p><p> CLR LED_Y1 </p><p> CLR LED_G2 </p><p> CLR LED_R2 </p><p> SETB LED_Y2 ;南北路口紅燈亮</p><p> RET
79、 </p><p> DISPLAY: MOV A,SECOND1 ;數(shù)碼顯示,東西路口計(jì)時(shí)寄存器</p><p> MOV B,#10 ;十六進(jìn)制數(shù)拆成兩個(gè)十進(jìn)制數(shù)</p><p><b> DIV AB</b></p><p> MOV DBUF+3,A
80、</p><p> MOV A,B</p><p> MOV DBUF+2,A</p><p> MOV A,SECOND2 ;南北路口計(jì)時(shí)寄存器</p><p> MOV B,#10 ;十六進(jìn)制數(shù)拆成兩個(gè)十進(jìn)制數(shù)</p><p><b> DIV
81、 AB</b></p><p> MOV DBUF+1,A</p><p> MOV A,B</p><p> MOV DBUF,A</p><p> MOV R0,#DBUF</p><p> MOV R1,#TEMP</p><p>
82、 MOV R7,#4</p><p> DP10: MOV DPTR,#LEDMAP</p><p> MOV A,@R0</p><p> MOVC A,@A+DPTR</p><p> MOV @R1,A</p><p><b> INC R0</
83、b></p><p><b> INC R1</b></p><p> DJNZ R7,DP10</p><p> MOV R0,#TEMP</p><p> MOV R1,#4</p><p> DP12: MOV R7,#8</p>
84、<p> MOV A,@R0</p><p> DP13: RLC A</p><p> MOV P3.0,C</p><p> CLR P3.1</p><p> SETB P3.1</p><p> DJNZ R7,DP13</p>&l
85、t;p><b> INC R0</b></p><p> DJNZ R1,DP12</p><p><b> RET</b></p><p> LEDMAP: DB 3FH,06H,5BH,4FH,66H,6DH;0,1,2,3,4,5</p><p> DB
86、 7DH,07H,7FH,6FH,77H,7CH;6,7,8,9,A,B</p><p> DB 58H,5EH,7BH,71H,0,40H ;C,D,E,F, ,-</p><p><b> END</b></p><p> 附錄二:實(shí)驗(yàn)整體電路圖</p><p><b> 附錄三
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)交通燈課程設(shè)計(jì)--基于單片機(jī)的交通燈控制設(shè)計(jì)
- 交通燈單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的交通燈顯示系統(tǒng)
- 交通燈單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的交通燈顯示系統(tǒng)
- 單片機(jī)交通燈課程設(shè)計(jì)--基于單片機(jī)的交通燈系統(tǒng)的設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的交通燈設(shè)計(jì)
- 基于單片機(jī)的交通燈課程設(shè)計(jì)
- 基于單片機(jī)的交通燈課程設(shè)計(jì)
- 基于單片機(jī)的交通燈課程設(shè)計(jì)
- 課程設(shè)計(jì)---基于單片機(jī)的交通燈設(shè)計(jì)
- 基于單片機(jī)的交通燈的課程設(shè)計(jì)
- 單片機(jī)交通燈課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---交通燈
- 單片機(jī)交通燈課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-交通燈
- 單片機(jī)課程設(shè)計(jì)--交通燈
- 單片機(jī)課程設(shè)計(jì)(交通燈)
- 單片機(jī)課程設(shè)計(jì)--基于51單片機(jī)的交通燈
- 單片機(jī)交通燈課程設(shè)計(jì)
- 單片機(jī)交通燈課程設(shè)計(jì)
- 單片機(jī)交通燈課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論