版權(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><b> 目錄</b></p><p> 1 設(shè)計(jì)任務(wù)和性能指標(biāo)3</p><p><b> 1.1設(shè)計(jì)任務(wù)4</b></p><p><b> 1.2性能指標(biāo)4</b>
2、</p><p><b> 2 設(shè)計(jì)方案4</b></p><p><b> 2.1任務(wù)分析4</b></p><p><b> 2.2方案設(shè)計(jì)4</b></p><p> 2.2.1硬件方案4</p><p> 2.2.2軟件方案4
3、</p><p> 3 系統(tǒng)硬件設(shè)計(jì)6</p><p> 3.1單片機(jī)的最小系統(tǒng)6</p><p><b> 3.2電源電路6</b></p><p> 3.3數(shù)碼管顯示時(shí)間電路6</p><p> 3.4系統(tǒng)原理圖7</p><p><b>
4、 3.5系統(tǒng)元件8</b></p><p> 4 系統(tǒng)軟件設(shè)計(jì)8</p><p> 4.1 主程序設(shè)計(jì)9</p><p><b> 4.2系統(tǒng)程序9</b></p><p> 5 調(diào)試及性能分析9</p><p><b> 5.1調(diào)試分析9</b
5、></p><p> 5.1.1軟件調(diào)試9</p><p> 5.1.2硬件調(diào)試9</p><p> 5.1.3系統(tǒng)功能調(diào)試9</p><p><b> 6心得體會(huì)9</b></p><p><b> 附錄一10</b></p><
6、;p><b> 參考文獻(xiàn)18</b></p><p><b> 摘要</b></p><p> 交通在人們的日常生活中占有重要的地位,隨著人們社會(huì)活動(dòng)的日益頻繁,這點(diǎn)更是體現(xiàn)的淋漓盡致。交通信號(hào)燈的出現(xiàn),使交通得以有效管制,對(duì)于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。近年來(lái)隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷深入
7、,同時(shí)帶動(dòng)傳統(tǒng)控制檢測(cè)技術(shù)日益更新。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往作為一個(gè)核心部件來(lái)使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu)軟硬件結(jié)合,加以完善。</p><p> 本系統(tǒng)采用單片機(jī)80C51為中心器件來(lái)設(shè)計(jì)交通燈控制器,系統(tǒng)實(shí)用性強(qiáng)、操作簡(jiǎn)單、擴(kuò)展性強(qiáng)。本設(shè)計(jì)就是采用單片機(jī)模擬十字路口交通燈的各種狀態(tài)顯示以及倒計(jì)時(shí)時(shí)間。</p><p> 本設(shè)計(jì)系統(tǒng)由
8、單片機(jī)I/O口擴(kuò)展系統(tǒng)、交通燈狀態(tài)顯示系統(tǒng)、LED數(shù)碼顯示系統(tǒng)、復(fù)位電路等幾大部分組成。系統(tǒng)除基本的交通燈功能外,還具有倒計(jì)時(shí)等功能,較好的模擬實(shí)現(xiàn)了十字路口可能出現(xiàn)的狀況。</p><p> 軟件上采用C52編程,主要編寫(xiě)了主程序,LED數(shù)碼管顯示程序,中斷程序延時(shí)程序等。經(jīng)過(guò)整機(jī)調(diào)試,實(shí)現(xiàn)了對(duì)十字路口交通燈的模擬。</p><p> 關(guān)鍵字:電子線路 ;80C51;LED;交通燈。
9、</p><p> 1 設(shè)計(jì)任務(wù)和性能指標(biāo)</p><p><b> 1.1設(shè)計(jì)任務(wù) </b></p><p><b> 模擬圖</b></p><p> 利用單片機(jī)完成交通信號(hào)燈控制器的設(shè)計(jì),該交通信號(hào)燈控制器由一條主干道和一條支干道匯合成十字路口,在每個(gè)入口處設(shè)置紅、綠、黃三色信號(hào)燈,紅
10、燈亮禁止通行,綠燈亮允許通行,黃燈亮則給行駛中的車(chē)輛有時(shí)間停在禁行線外。用紅、綠、黃發(fā)光二極管作信號(hào)燈。如圖上圖所示。</p><p><b> 1.2性能指標(biāo)</b></p><p> ?。?)兩路口是同等的。處于允許通行的狀態(tài),有車(chē)來(lái)時(shí)允許通行。東西道亮綠燈時(shí),南北道亮紅燈;南北道亮綠燈時(shí),東西道亮紅燈。綠紅燈之間以黃燈間隔。</p><p&
11、gt; ?。?)兩個(gè)方向均有車(chē)時(shí),兩者交替允許通行,均每次放行15秒,設(shè)立15秒計(jì)時(shí)、顯示電路。紅燈10秒。</p><p> ?。?)通行時(shí)間及黃燈亮的時(shí)間均可在0~99秒內(nèi)任意設(shè)置。</p><p><b> 2 設(shè)計(jì)方案</b></p><p><b> 2.1任務(wù)分析</b></p><p&
12、gt; 模擬交通燈控制器就是使用單片機(jī)來(lái)控制一些LED 和數(shù)碼管,模擬真實(shí)交通燈的功能。紅、黃、綠交替點(diǎn)亮,利用數(shù)碼管倒計(jì)數(shù)顯示間隔等,用于管理十字路口的車(chē)輛及行人交通,計(jì)時(shí)牌顯示路口通行轉(zhuǎn)換剩余時(shí)間等。</p><p><b> 2.2方案設(shè)計(jì)</b></p><p><b> 2.2.1硬件方</b></p><p&
13、gt; 案根據(jù)設(shè)計(jì)的要求可知,系統(tǒng)的硬件原理框圖如下圖所示</p><p><b> 系統(tǒng)硬件框圖</b></p><p> 單片機(jī)可選用80C51,它與8051系列單片機(jī)全兼容,但其內(nèi)部帶有8KB的FLASH ROM,設(shè)計(jì)時(shí)無(wú)需外接程序存儲(chǔ)器,為設(shè)計(jì)和調(diào)試帶來(lái)極大的方便。南北向和東西向各采用2個(gè)數(shù)碼管計(jì)時(shí),同時(shí)需要對(duì)該方向的指示燈的點(diǎn)亮?xí)r間進(jìn)行倒計(jì)時(shí)。按鍵可以
14、根據(jù)系統(tǒng)的需要進(jìn)行復(fù)位。用三極管驅(qū)動(dòng)數(shù)碼管顯示,三極管控制共陽(yáng)位選端,控制數(shù)碼管的顯示。</p><p> 2.2.2 軟件方案</p><p> 首先南北方向紅燈、東西方向綠燈亮,南北方向紅燈15秒、東西方向綠燈10秒,相應(yīng)的數(shù)碼管顯示對(duì)應(yīng)的數(shù)字并讀秒,同時(shí)南北方向紅色的二極管和東西方向的綠色二極管接通點(diǎn)亮顯示,當(dāng)東西方向的綠燈時(shí)間到,則東西方向的綠燈轉(zhuǎn)為黃燈,同時(shí)數(shù)碼管顯示黃燈的時(shí)
15、間5秒,東西方向的黃色二極管接通點(diǎn)亮,此時(shí)南北方向的紅燈不變。南北方向的紅燈和東西方向的黃燈時(shí)間同時(shí)到,此時(shí)南北方向的紅燈跳轉(zhuǎn)為綠燈,時(shí)間同樣為10秒,東西方向有黃燈跳轉(zhuǎn)為紅燈,時(shí)間為15秒。當(dāng)南北方向的綠燈時(shí)間到,南北綠燈跳轉(zhuǎn)為黃燈,東西方向的紅燈不變,當(dāng)南北方向的黃燈和東西方向的紅燈時(shí)間到,南北方向的黃燈跳轉(zhuǎn)為紅燈,東西方向的紅燈跳轉(zhuǎn)為綠燈。進(jìn)入開(kāi)始的狀態(tài),循環(huán)執(zhí)行。</p><p> 根據(jù)設(shè)計(jì)要求,程序框
16、圖如圖所示。軟件可由匯編語(yǔ)言完成,也可由C語(yǔ)言完成。軟件設(shè)計(jì)可以分為以下幾個(gè)功能模塊:</p><p><b> 數(shù)碼管顯示模塊</b></p><p> 動(dòng)態(tài)顯示方式:動(dòng)態(tài)顯示方式是指一位一位地輪流點(diǎn)亮每位顯示器(稱(chēng)為掃描),即每個(gè)數(shù)碼管的位選被輪流選中,多個(gè)數(shù)碼管公用一組段選,段選數(shù)據(jù)僅對(duì)位選選中的數(shù)碼管有效。對(duì)于每一位顯示器來(lái)說(shuō),每隔一段時(shí)間點(diǎn)亮一次。顯示器
17、的亮度既與導(dǎo)通電流有關(guān),也與點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān)。通過(guò)調(diào)整電流和時(shí)間參數(shù),可以既保證亮度,又保證顯示。若顯示器的位數(shù)不大于8位,則顯示器的公共端只需一個(gè)8位I/O口進(jìn)行動(dòng)態(tài)掃描(稱(chēng)為掃描口),控制每位顯示器所顯示的字形也需一個(gè)8位口(稱(chēng)為段碼輸出)。</p><p> LED紅綠燈顯示模塊</p><p> 狀態(tài)1, 東西綠燈亮,南北紅燈亮</p><p&g
18、t; 狀態(tài)2, 東西黃燈亮,南北紅燈亮</p><p> 狀態(tài)3, 東西紅燈亮,南北綠燈亮</p><p> 狀態(tài)4, 東西紅燈亮,南北黃燈亮</p><p><b> 結(jié)構(gòu)框圖</b></p><p><b> 3 系統(tǒng)硬件設(shè)計(jì)</b></p><p> 3.1
19、單片機(jī)的最小系統(tǒng) </p><p> STC公司生產(chǎn)的80C51單片機(jī)它是硬件電路的核心部分,時(shí)鐘電路晶振使用12MHz,復(fù)位電路采取按鍵復(fù)位方式。</p><p> 單片機(jī)系統(tǒng)的時(shí)鐘電路</p><p> 單片機(jī)系統(tǒng)的復(fù)位電路及顯示單元</p><p> 3.2電源電路設(shè)計(jì)電源用5V直流變壓器直接供電,usb接口供電。</p&
20、gt;<p> 3.3數(shù)碼管顯示電路</p><p> 顯示電路采用4個(gè)共陽(yáng)數(shù)碼管,用74HC244做驅(qū)動(dòng)器,P0口作為數(shù)碼管的輸入,ULN2803作為控制位選端,P2.0,P2.1,P2.2, P2.3分別作為東西,南北四路數(shù)碼管的位選端。數(shù)碼管顯示電路圖</p><p><b> 3.4系統(tǒng)原理圖</b></p><p>
21、;<b> 系統(tǒng)原理圖</b></p><p><b> 3.5指示單元</b></p><p><b> 3.6系統(tǒng)元件</b></p><p> 去電子市場(chǎng)按原件清單購(gòu)買(mǎi)所需原件,檢測(cè)所購(gòu)元件的性能是否達(dá)到所需標(biāo)準(zhǔn),然后按照系統(tǒng)原理圖接好硬件圖,檢查接線是否正確,是否有漏接,短接等。并用測(cè)
22、試程序檢查元器件是否能正常工作,以便修改,一切就緒后,就將寫(xiě)好的程序下載進(jìn)單片機(jī)。以下是元器件清單列表。</p><p> 4 系統(tǒng)軟件設(shè)計(jì)4.1 主程序設(shè)計(jì)系統(tǒng)程序流程圖</p><p><b> 4.2系統(tǒng)程序</b></p><p> 根據(jù)設(shè)計(jì)方案,設(shè)計(jì)滿足要求的程序,并將程序燒寫(xiě)進(jìn)單片機(jī),運(yùn)行程序,觀察現(xiàn)象是否符合要求,若不符合要
23、求繼續(xù)修改程序。直至能達(dá)到要求。程序清單見(jiàn)附錄一。 </p><p><b> 5 調(diào)試及性能分析</b></p><p><b> 5.1 調(diào)試分析</b></p><p><b> 5.1.1軟件調(diào)試</b></p><p> 軟件調(diào)試主要是利用protus仿真軟
24、件完成電路的搭建,運(yùn)行以發(fā)現(xiàn)設(shè)計(jì)中的錯(cuò)誤及時(shí)改正。</p><p><b> 5.1.2硬件調(diào)試</b></p><p> 硬件調(diào)試主要是檢測(cè)硬件電路是否有短路、斷路、虛焊等。具體步驟及測(cè)試結(jié)果如下:</p><p> ?。?)檢查電源與地線是否全部連接上,用萬(wàn)用表對(duì)照電路原理圖測(cè)試各導(dǎo)線是否完全連接,對(duì)未連接的進(jìn)行修復(fù)。(2)參照原理圖,
25、檢查各個(gè)器件之間的連接是否連接正確,是否存在虛焊,經(jīng)測(cè)試,各連接不存在問(wèn)題。(3)以上兩項(xiàng)檢查并修復(fù)完后,給該硬件電路上電,電源指示燈點(diǎn)亮。</p><p> 5.1.3系統(tǒng)功能調(diào)試</p><p> 通過(guò)通電調(diào)試系統(tǒng)的功能,觀察系統(tǒng)是否正常運(yùn)行,是否達(dá)到設(shè)計(jì)指標(biāo),通過(guò)修改軟件完成系統(tǒng)的系能指標(biāo),也可以通過(guò)仿真軟件進(jìn)行仿真運(yùn)行,調(diào)試并修改系統(tǒng),以便達(dá)到最佳水準(zhǔn)。讓系統(tǒng)最大限度的發(fā)揮其功
26、效。</p><p><b> 6 心得體會(huì)</b></p><p> 這次單片機(jī)課程設(shè)計(jì)歷時(shí)三個(gè)星期的時(shí)間,在這次設(shè)計(jì)過(guò)程里我們體驗(yàn)了從總體方案設(shè)計(jì)、畫(huà)原理圖、設(shè)計(jì)程序、焊電路板到調(diào)試完善的整個(gè)過(guò)程。</p><p> 我學(xué)會(huì)了用更多的工具去查閱資料,獲取所需的知識(shí),解決了很多我在之前的學(xué)習(xí)中沒(méi)有弄懂的問(wèn)題。了解了很多元件的作用和用法。
27、熟悉了單片機(jī)的使用,熟悉了單片機(jī)的各個(gè)管腳的功能。這可以說(shuō)是給我上了深刻的復(fù)習(xí)課,在我即將忘記單片機(jī)知識(shí)的時(shí)候,又讓我加深了我對(duì)它的認(rèn)識(shí),而且了解了更多以前沒(méi)有注意的問(wèn)題。</p><p> 通過(guò)這次課程設(shè)計(jì),使我得到了一次用專(zhuān)業(yè)知識(shí)、專(zhuān)業(yè)技能分析和解決問(wèn)題全面系統(tǒng)的鍛煉。使我在單片機(jī)的基本原理、單片機(jī)應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程,以及在常用編程設(shè)計(jì)思路技巧(特別是匯編語(yǔ)言)的掌握方面都能向前邁了一大步。本次課程設(shè)計(jì)的過(guò)程
28、是艱辛的,不過(guò)收獲卻是很大的。</p><p> 在設(shè)計(jì)過(guò)程中,會(huì)出現(xiàn)了一些問(wèn)題,但都是常見(jiàn)的小問(wèn)題,如:代碼中雙引號(hào)的使用并不是在英語(yǔ)書(shū)寫(xiě)狀態(tài)下,輸入字母出錯(cuò)等,在調(diào)試時(shí)出現(xiàn)異常,不過(guò)這些都是經(jīng)常性錯(cuò)誤,經(jīng)過(guò)調(diào)試修改都一一解決,程序順利完成,并實(shí)現(xiàn)了其功能。</p><p> 綜合課程設(shè)計(jì)讓我把以前學(xué)習(xí)到的知識(shí)得到鞏固和進(jìn)一步的提高認(rèn)識(shí),對(duì)已有知識(shí)有了更進(jìn)一步的理解和認(rèn)識(shí)。在此,由于
29、自身能力有限,在課程設(shè)計(jì)中碰到了很多的問(wèn)題,我通過(guò)查閱相關(guān)書(shū)籍、資料以及和周?chē)瑢W(xué)交流。</p><p> 由于使用的是單片機(jī)作為核心的控制元件,使得電路的可靠性比較高,功能也比較強(qiáng)大,而且可以隨時(shí)的更新系統(tǒng),進(jìn)行不同狀態(tài)的組合。但是在我們?cè)O(shè)計(jì)和調(diào)試的過(guò)程中,也發(fā)現(xiàn)了一些問(wèn)題,譬如紅燈和綠燈的切換還不夠迅速,紅綠燈規(guī)則不完善效率還不是很高等等,這需要在實(shí)踐中進(jìn)一步完善。當(dāng)然,通過(guò)這次課程設(shè)計(jì),我也發(fā)現(xiàn)了自身的很
30、多不足之處,在以后的學(xué)習(xí)中,我會(huì)不斷的完善自我。</p><p> 通過(guò)這次課程設(shè)計(jì),對(duì)以前學(xué)過(guò)的知識(shí)進(jìn)行了鞏固,加深了理解,提高了應(yīng)用的能力,而且提高了我們的發(fā)現(xiàn)、分析、解決問(wèn)題的能力。經(jīng)歷了從最初的設(shè)計(jì)到最后做出產(chǎn)品的開(kāi)發(fā)過(guò)程,提高了對(duì)專(zhuān)業(yè)的認(rèn)識(shí)及興趣,對(duì)于我們工科來(lái)說(shuō),對(duì)以后就業(yè)有及其重大的影響。</p><p><b> 附錄一</b></p>
31、<p> SECOND1EQU30H;東西路口計(jì)時(shí)寄存器</p><p> SECOND2EQU31H;南北路口計(jì)時(shí)寄存器 </p><p> DBUFEQU40H;顯示碼緩沖區(qū)1</p><p> TEMPEQU44H;顯示碼緩沖區(qū)2</p><p>
32、LED_G1BITP2.1;東西路口綠燈</p><p> LED_Y1BITP2.2;東西路口黃燈</p><p> LED_R1BITP2.3;東西路口紅燈</p><p> LED_G2BITP2.4;南北路口綠燈</p><p> LED_Y2BITP2.5
33、;南北路口黃燈</p><p> LED_R2BITP2.6;南北路口紅燈</p><p> ORG0000H</p><p> LJMPSTART</p><p> ORG0100H</p><p> START:MOVTMOD,#01H;置T0為工作方式1</p&
34、gt;<p> MOVTH0,#3CH;置T0定時(shí)初值50ms</p><p> MOVTL0,#0B0H</p><p><b> CLRTF0</b></p><p> SETBTR0;啟動(dòng)T0</p><p><b> CLRA</b
35、></p><p> MOVP1,A;關(guān)閉不相關(guān)的LED</p><p> ;***************************************************</p><p> LOOP:MOVR2,#20;置1s計(jì)數(shù)初值,50ms*20=1s</p><p> MOVR3,#
36、20;紅燈亮20s</p><p> MOVSECOND1,#25;東西路口計(jì)時(shí)顯示初值25s</p><p> MOVSECOND2,#25;南北路口計(jì)時(shí)顯示初值25s</p><p> LCALLDISPLAY</p><p> LCALLSTATE1;調(diào)用狀態(tài)1</p>&l
37、t;p> WAIT1:JNBTF0,WAIT1;查詢50ms到否</p><p> CLRTF0</p><p> MOVTH0,#3CH;恢復(fù)T0定時(shí)初值50ms</p><p> MOVTL0,#0B0H</p><p> DJNZR2,WAIT1;判斷1s到否?未到繼續(xù)狀態(tài)1&
38、lt;/p><p> MOVR2,#20;置50ms計(jì)數(shù)初值 </p><p> DECSECOND1;東西路口顯示時(shí)間減1s</p><p> DECSECOND2;南北路口顯示時(shí)間減1s</p><p> LCALLDISPLAY</p><p> DJNZR3,WAI
39、T1;狀態(tài)1維持20s</p><p> ;*******************************************</p><p> MOVR2,#5;置50ms計(jì)數(shù)初值5*4=20</p><p> MOVR3,#3;綠燈閃3s</p><p> MOVR4,#4;閃爍間隔
40、200ms</p><p> MOVSECOND1,#5;東西路口計(jì)時(shí)顯示初值5s</p><p> MOVSECOND2,#5;南北路口計(jì)時(shí)顯示初值5s</p><p> LCALLDISPLAY</p><p> WAIT2:LCALLSTATE2;調(diào)用狀態(tài)2</p><p&g
41、t; JNBTF0,WAIT2;查詢50ms到否</p><p><b> CLRTF0</b></p><p> MOVTH0,#3CH;恢復(fù)T0定時(shí)初值50ms</p><p> MOVTL0,#0B0H</p><p> DJNZR4,WAIT2;判斷200ms到否?未
42、到繼續(xù)狀態(tài)2</p><p> CPLLED_G1;東西綠燈閃</p><p> MOVR4,#4;閃爍間隔200ms</p><p> DJNZR2,WAIT2;判1s到否?未到繼續(xù)狀態(tài)2</p><p> MOVR2,#5;置50ms計(jì)數(shù)初值</p><p>
43、DECSECOND1;東西路口顯示時(shí)間減1s</p><p> DECSECOND2;南北路口顯示時(shí)間減1s</p><p> LCALLDISPLAY</p><p> DJNZR3,WAIT2;狀態(tài)2維持3s</p><p> ;**********************************
44、******</p><p> MOVR2,#20;置50ms計(jì)數(shù)初值</p><p> MOVR3,#2;黃燈閃2s</p><p> MOVSECOND1,#2;東西路口計(jì)時(shí)顯示初值2s</p><p> MOVSECOND2,#2;南北路口計(jì)時(shí)顯示初值2s</p><
45、;p> LCALLDISPLAY</p><p> WAIT3:LCALLSTATE3;調(diào)用狀態(tài)3</p><p> JNBTF0,WAIT3;查詢100ms到否</p><p><b> CLRTF0</b></p><p> MOVTH0,#3CH;恢復(fù)T0定時(shí)初
46、值100ms</p><p> MOVTL0,#0B0H</p><p> DJNZR2,WAIT3;判斷1s到否?未到繼續(xù)狀態(tài)3</p><p> MOVR2,#20;置100ms計(jì)數(shù)初值</p><p> DECSECOND1;東西路口顯示時(shí)間減1s</p><p>
47、DECSECOND2;南北路口顯示時(shí)間減1s</p><p> LCALLDISPLAY</p><p> DJNZR3,WAIT3;狀態(tài)3維持2s</p><p> ;*******************************************</p><p> MOVR2,#20;置50
48、ms計(jì)數(shù)初值</p><p> MOVR3,#20;紅燈閃20s</p><p> MOVSECOND1,#25;東西路口計(jì)時(shí)顯示初值25s</p><p> MOVSECOND2,#25;南北路口計(jì)時(shí)顯示初值25s</p><p> LCALLDISPLAY</p><p>
49、 WAIT4:LCALLSTATE4;調(diào)用狀態(tài)4</p><p> JNBTF0,WAIT4;查詢100ms到否</p><p><b> CLRTF0</b></p><p> MOVTH0,#3CH;恢復(fù)T0定時(shí)初值100ms</p><p> MOVTL0,#0B0
50、H</p><p> DJNZR2,WAIT4;判斷1s到否?未到繼續(xù)狀態(tài)4</p><p> MOVR2,#20;置100ms計(jì)數(shù)初值</p><p> DECSECOND1;東西路口顯示時(shí)間減1s</p><p> DECSECOND2;南北路口顯示時(shí)間減1s</p>&l
51、t;p> LCALLDISPLAY</p><p> DJNZR3,WAIT4;狀態(tài)4維持20s</p><p> ;*******************************************</p><p> MOVR2,#5;置50ms計(jì)數(shù)初值</p><p> MOVR4,#4
52、;紅燈閃20ms</p><p> MOVR3,#3;綠燈閃3s</p><p> MOVSECOND1,#5;東西路口計(jì)時(shí)顯示初值5s</p><p> MOVSECOND2,#5;南北路口計(jì)時(shí)顯示初值5s</p><p> LCALLDISPLAY</p><p> W
53、AIT5:LCALLSTATE5;調(diào)用狀態(tài)5</p><p> JNBTF0,WAIT5;查詢100ms到否</p><p><b> CLRTF0</b></p><p> MOVTH0,#3CH;恢復(fù)T0定時(shí)初值100ms</p><p> MOVTL0,#0B0H
54、</p><p> DJNZR4,WAIT5;判斷200ms到否?未到繼續(xù)狀態(tài)5</p><p> CPLLED_G2;南北綠燈閃</p><p> MOVR4,#4;閃爍200ms</p><p> DJNZR2,WAIT5;判斷1s到否?未到繼續(xù)狀態(tài)5</p><p&
55、gt; MOVR2,#5;置100ms計(jì)數(shù)初值</p><p> DECSECOND1;東西路口顯示時(shí)間減1s</p><p> DECSECOND2;南北路口顯示時(shí)間減1s</p><p> LCALLDISPLAY</p><p> DJNZR3,WAIT5;狀態(tài)5維持3s</
56、p><p> ;****************************************</p><p> MOVR2,#20;置50ms計(jì)數(shù)初值</p><p> MOVR3,#2;紅燈閃2s</p><p> MOVSECOND1,#2;東西路口計(jì)時(shí)顯示初值2s</p><
57、p> MOVSECOND2,#2;南北路口計(jì)時(shí)顯示初值2s</p><p> LCALLDISPLAY</p><p> WAIT6:LCALLSTATE6;調(diào)用狀態(tài)6</p><p> JNBTF0,WAIT6;查詢100ms到否</p><p><b> CLRTF0</
58、b></p><p> MOVTH0,#3CH;恢復(fù)T0定時(shí)初值100ms</p><p> MOVTL0,#0B0H</p><p> DJNZR2,WAIT6;判斷1s到否?未到繼續(xù)狀態(tài)6</p><p> MOVR2,#20;置100ms計(jì)數(shù)初值</p><p>
59、 DECSECOND1;東西路口顯示時(shí)間減1s</p><p> DECSECOND2;南北路口顯示時(shí)間減1s</p><p> LCALLDISPLAY</p><p> DJNZR3,WAIT6;狀態(tài)6維持2s</p><p> LJMPLOOP;大循環(huán)</p><p
60、> ;**********************************************</p><p> STATE1:;狀態(tài)1</p><p> SETBLED_G1;東西路口綠燈亮</p><p> CLRLED_Y1</p><p> CLRLED_R1</p>
61、<p> CLRLED_G2</p><p> CLRLED_Y2</p><p> SETBLED_R2;南北路口紅燈亮</p><p><b> RET</b></p><p> STATE2:;狀態(tài)2</p><p> CLRLE
62、D_Y1</p><p> CLRLED_R1</p><p> CLRLED_G2</p><p> CLRLED_Y2</p><p> SETBLED_R2;南北路口紅燈亮</p><p><b> RET</b></p><p>
63、STATE3:;狀態(tài)3</p><p> CLRLED_G1</p><p> CLRLED_R1</p><p> CLRLED_G2</p><p> CLRLED_Y2</p><p> SETBLED_R2;南北路口紅燈亮</p><p&g
64、t; SETBLED_Y1;東西路口綠燈亮</p><p><b> RET</b></p><p> STATE4:;狀態(tài)4</p><p> CLRLED_G1</p><p> CLRLED_Y1</p><p> SETBLED_R1
65、;東西路口紅燈亮</p><p> SETBLED_G2;南北路口綠燈亮</p><p> CLRLED_Y2</p><p> CLRLED_R2</p><p><b> RET</b></p><p> STATE5:;狀態(tài)5</p>
66、<p> CLRLED_G1</p><p> CLRLED_Y1</p><p> SETBLED_R1;東西路口紅燈亮</p><p> CLRLED_Y2</p><p> CLRLED_R2</p><p><b> RET</b><
67、/p><p> STATE6:;狀態(tài)6</p><p> CLRLED_G1</p><p> CLRLED_Y1</p><p> SETBLED_R1;東西路口紅燈亮</p><p> CLRLED_G2</p><p> CLRLED_R2
68、</p><p> SETBLED_Y2;南北路口紅燈亮</p><p><b> RET</b></p><p> DISPLAY:;數(shù)碼顯示</p><p> MOVA,SECOND1;東西路口計(jì)時(shí)寄存器</p><p> MOVB,#10
69、;16進(jìn)制數(shù)拆成兩個(gè)10進(jìn)制數(shù)</p><p><b> DIVAB</b></p><p> MOVDBUF+3,A</p><p><b> MOVA,B</b></p><p> MOVDBUF+2,A</p><p> MOVA,SEC
70、OND2;南北路口計(jì)時(shí)寄存器</p><p> MOVB,#10;16進(jìn)制數(shù)拆成兩個(gè)10進(jìn)制數(shù)</p><p><b> DIVAB</b></p><p> MOVDBUF+1,A</p><p><b> MOVA,B</b></p><
71、p> MOVDBUF,A</p><p> MOVR0,#DBUF</p><p> MOVR1,#TEMP</p><p> MOVR7,#4</p><p> DP10:MOVDPTR,#LEDMAP</p><p> MOVA,@R0</p><p&
72、gt; MOVCA,@A+DPTR</p><p> MOV@R1,A</p><p><b> INCR0</b></p><p><b> INCR1</b></p><p> DJNZR7,DP10</p><p> MOVR0,#TEM
73、P</p><p> MOVR1,#4</p><p> DP12:MOVR7,#8</p><p> MOVA,@R0</p><p> DP13:RLCA</p><p> MOVP3.0,C</p><p><b> CLRP3.1<
74、/b></p><p><b> SETBP3.1</b></p><p> DJNZR7,DP13</p><p><b> INCR0</b></p><p> DJNZR1,DP12</p><p><b> RET</b>
75、;</p><p><b> LEDMAP:</b></p><p> DB3FH,06H,5BH,4FH,66H,6DH;0,1,2,3,4,5</p><p> DB7DH,07H,7FH,6FH,77H,7CH;6,7,8,9,A,B</p><p> DB58H,5EH,7BH,71H,0,
76、40H;C,D,E,F(xiàn), ,-</p><p><b> END</b></p><p><b> 參考文獻(xiàn)</b></p><p> [1] 徐維祥.單片微型機(jī)原理及應(yīng)用 大連理工大學(xué)出版社,2006.12</p><p> [2] 胡漢才.單片機(jī)原理與接口技術(shù)[M].北京: 清華大學(xué)
77、大學(xué)出版社,2004.1-505.</p><p> [3] 閆勝利.Altium Designer 6.X中文版使用教程 電子工業(yè)出版社 2007.6</p><p> [4] 朝青.單片機(jī)原理及接口技術(shù)(第3版).2005年10月</p><p> [5] 張迎新.單片微型計(jì)算機(jī)原理、應(yīng)用及接口技術(shù)(修訂版)北京:國(guó)防工業(yè)出版社,2004.1.</p
溫馨提示
- 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ì)報(bào)告
- 交通燈單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)交通燈課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)-交通燈報(bào)告
- 交通燈單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)交通燈課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告---交通燈
- 單片機(jī)課程設(shè)計(jì)-交通燈報(bào)告
- 單片機(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ì)
- 單片機(jī)交通燈課程設(shè)計(jì)報(bào)告 (2)
- 單片機(jī)交通燈課程設(shè)計(jì)報(bào)告1
評(píng)論
0/150
提交評(píng)論