畢業(yè)設計(論文)基于單片機的交通燈控制系統(tǒng)設計1_第1頁
畢業(yè)設計(論文)基于單片機的交通燈控制系統(tǒng)設計1_第2頁
畢業(yè)設計(論文)基于單片機的交通燈控制系統(tǒng)設計1_第3頁
畢業(yè)設計(論文)基于單片機的交通燈控制系統(tǒng)設計1_第4頁
畢業(yè)設計(論文)基于單片機的交通燈控制系統(tǒng)設計1_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、天津天獅學院畢業(yè)實踐報告 題目:基于單片機的交通燈控制系統(tǒng)設計二級學院 電子與計算機學院 專 業(yè) 08級電子信息工程技術 學生姓名 指導教師 2011年5月24日26摘 要隨著社會經濟的發(fā)展,城市交通問題越來越引起人們的關注,人、車、路三者關系得和諧已成為交通治理部分必需要解決的主要問題之一,本交通燈設計系統(tǒng)用于對于疏導交通流量、提高道路通行能力、減少交通事故有明顯效果。本設計主要為實現(xiàn)一款帶時間自主修改功能的多功能交通燈。本文選定了采用單片機技術實現(xiàn)交通燈功能,本設計應用at89c51芯片作為核心,cd4511芯片作為顯示芯片驅動,詳細介紹了atmel公司的at89c51單片機的性能和特點,

2、以及cd4511原理和特性,指出了交通燈設計系統(tǒng)的思路和所需考慮的問題,詳細描述了交通燈系統(tǒng)的硬件、軟件設計以及系統(tǒng)仿真調試過程等。該設計的優(yōu)點是電路簡單、性能可靠、實時性好、時間精度高,操作簡單,可廣泛應用于各個交通要道。關鍵詞:單片機,交通燈,控制器 abstractthis design is mainly for realizing a paragraph of time the independent modify functions with multi-function traffic. this paper adopts single-chip microcomputer se

3、lected technologies to realize this design, lights function at89c51 chip as the core, cd4511 chip as display chip drive, introduces in detail the at89c51 atmel company performance and characteristics of cd4511 principle and characteristics, and lights design system, points out the idea and the probl

4、ems needed to consider the advantages of this method is reliable in performance, simple circuit, good real-time, high precision time, simple operation. and widely used in various hubs.when entering adjustment function can add, subtract function operation, in order to achieve timing function, thus ca

5、n undertake traffic lights countdown system. when the timing settings, system through the at89c51 control things, sn of traffic light real-time status. eight led digital tube will show countdown time, time display format for: ten - bytes; and have real-time display current countdown time functionske

6、ywords: a single-chip microcomputer, the lights, controller, design, realization目錄一、緒論2二、系統(tǒng)設計22.1 功能22.2交通燈硬件組成32.2.1單片機最小系統(tǒng)32.2.2 數(shù)碼管及顯示驅動電路72.2.3交通燈電路82.2.4鍵盤電路82.2.5電路原理圖設計92.3 軟件設計102.3.1 主程序流程圖102.3.2 鍵盤子程序設計112.4 主程序設計11三、系統(tǒng)調試與仿真123.1 keilc51進行程序調試123.1.1 keilc51軟件介紹123.2 proteus軟件簡介133.3 prot

7、eus 電路圖設計143.4 proteus中仿真過程14四、結論16參考文獻18附錄19一、緒論十字路口車輛穿梭,行人熙攘,車行車道,人行人道,有條不紊。那么靠什么來實現(xiàn)這井然秩序呢?靠的是交通信號燈的自動指揮系統(tǒng)。交通信號燈控制方式很多。本設計是根據我所學習的單片機課程,按照大綱要求對我進行的一次課程檢驗,是進行單片機課程訓練的必要任務,也對我們掌握單片機應用有很大的幫助。掌握單片機技術是一門不可或缺的技術,對我將來的工作以及生活和學習都有很密切的聯(lián)系。當今世界的發(fā)展是以科學技術為基礎的,微控技術在生產中所占的比重也越來越大。單片機的出現(xiàn)是近代計算機技術發(fā)展史上的一個重要里程碑。近年來,隨

8、著電子技術和微機計算機的迅速發(fā)展,單片機的檔次不斷提高,其應用領域也在不斷的擴大,已在工業(yè)控制、尖端科學、智能儀器儀表、日用家電、汽車電子系統(tǒng)、辦公自動化設備、個人信息終端及通信產品中得到了廣泛的應用,成為現(xiàn)代電子系統(tǒng)中最重要的智能化的核心部件。在今天,紅綠燈安裝在各個道口上,已經成為疏導交通車輛最常見和最有效的手段。這一技術在19世紀就已出現(xiàn)了。近年來交通事故情況日趨嚴重,如果將每個交通十字路口的多余交通警察撤回,安排在最不利于管理和事故高發(fā)的地方,不但可以大大的降低交通事故的發(fā)生率,而且可以節(jié)省大量的人力財力。在本次研究實踐中,我采用單片機和匯編語言編程來自動控制交通燈通燈有現(xiàn)實的社會意義

9、。二、系統(tǒng)設計2.1 功能本交通燈設計系統(tǒng)不僅具有普通十字路口交通燈的基本功能,而且還具有自主設定時間的功能以及倒計時顯示時間功能,時間自主設定功能可以根據各種不同的路況而自主設定時間從而適應各種交通情況的路口,倒計時顯示時間功能顯示范圍為0至99,該功能可以大大降低過路行人危險性,使人們可以在過馬路時注意紅燈時間以免引發(fā)危險,使該設計具有更高的普及性,采用了大量的已有技術的微電子器件和集成電路,大大的降低了成本,提高了性能價格比例。綜上所述,開發(fā)一款具有倒計時自主設定功能的交通燈在設計上是可行的,在市場上也是需要的。2.2交通燈硬件組成由晶振電路傳給單片機達到產生脈沖信號的作用,通過單片機復

10、位電路對系統(tǒng)進行系統(tǒng)復位從而使系統(tǒng)初始化,單片機傳出信號控制紅、黃、綠3種顏色的交通燈電路使其發(fā)光,鍵盤電路輸入信號給單片機實現(xiàn)加、減、換擋、確定計時功能控,單片機輸出信號給數(shù)碼管驅動顯示電路,經數(shù)碼管驅動顯示電路編譯傳給8段數(shù)碼管顯示電路。 如圖 2-1單片機3種顏色的交通燈電路8段數(shù)碼管顯示電路數(shù)碼管驅動顯示電路鍵盤電路晶振電路復位電路 圖 2-1交通燈系統(tǒng)設計流程圖2.2.1單片機最小系統(tǒng)單片機最小系統(tǒng)包括單片機、晶振電路和復位電路,如圖 2-2所示。晶振電路有兩個電容和一個石英諧振器組成。 圖2-2 單片機最小系統(tǒng)at89c51簡介:at89c51單片機是一款低功耗,低電壓,高性能cm

11、os 8位單片機,片內含4kb(可經受1000次擦寫周期)的flash可編程可反復擦寫的只讀程序存儲器(eprom),器件采用cmos工藝和atmei公司的高密度、非易失性存儲器(nuram)技術制造,其輸出引腳和指令系統(tǒng)都與mcs-51兼容。片內的flash存儲器允許在系統(tǒng)內可改編程序或用常規(guī)的非易失性存儲器編程器來編程。因此,at89c51是一種功能強,靈活性高且價格合理的單片機,可方便的應用在各個控制領域。如圖2-3at89c51具有與8031 cpu與mcs-51 兼容、4k字節(jié)可編程flash存儲器(壽命:1000寫/擦循環(huán))、全靜態(tài)工作:0hz-24khz、128*8位內部ram、

12、32條可編程i/o線、兩個16位定時器/計數(shù)器、6個中斷源、可編程串行通道、低功耗的閑置和掉電模式和片內振蕩器和時鐘電路等主要性能。at89c51管腳說明:1)vcc:at89c51電源正極輸入,接+5v電壓。 2)gnd :電源接地端。3)xtal1:接外部晶振的一個引腳。在單片機內部它是一反相放大器輸入端,這個放大器構成了片內振蕩器。它采用外部振蕩器時,些引腳應接地。4)xtal2:接外部晶振的一個引腳。是接至振蕩器的反相放大器輸出端和內部時鐘發(fā)生器輸入端。當采用外部振蕩器時,則此引腳接外部振蕩信號的輸入。 5)rst:at89c51的復位信號輸入引腳,高電位工作,當要對芯片又時,只要將此

13、引腳電位提升到高電位,并持續(xù)兩個機器周期以上的時間,at89c51便能完成系統(tǒng)復位的各項工作,使得內部特殊功能寄存器的內容均被設成已知狀態(tài)。 6) p0口(p0.0p0.7)是一個8位漏極開路雙向輸入輸出端口,當訪問外部數(shù)據時,它是地址總線(低8位)和數(shù)據總線復用。外部不擴展而單片應用時,則作一般雙向io口用。7) p1口(p1.0p1.7)口是具有內部提升電路的雙向i/0端口(準雙向并行i/o口)。僅供用戶作為輸入輸出用的端口。8)p2口(p2.0p2.7)口是具有內部提升電路的雙向i/0端口(準雙向并行i/o口),當訪問外部程序存儲器時,它是高8位地址。外部不擴展而單片應用時,則作一般雙向

14、io口用。9)p3口(p3.0p3.7)口是具有內部提升電路的雙向i/0端口(準雙向并行i/o口),它還提供特殊功能,包括串行通信、外部中斷控制、計時計數(shù)控制及外部隨機存儲器內容的讀取或寫入控制等功能。其特殊功能引腳分配如下: p3.0:rxd串行通信輸入。 p3.1:txd串行通信輸出。 p3.2:外部中斷0輸入,低電平有效。 p3.3:外部中斷1輸入,低電平有效。 p3.4:t0計數(shù)器0外部事件計數(shù)輸入端。 p3.5:t1計數(shù)器1外部事件計數(shù)輸入端。 p3.6:外部隨機存儲器的寫選通,低電平有效p3.7:外部隨機存儲器的讀選通,低電平有效10):外部程序存儲器的選通信號。在由外部程序存儲器

15、取指期間,每個機器周期兩次有效。但在訪問外部數(shù)據存儲器時,這兩次有效的信號將不出現(xiàn)。11)/vpp:當保持低電平時,則在此期間外部程序存儲器(0000h-ffffh),不管是否有內部程序存儲器。注意加密方式1時,將內部鎖定為reset;當端保持高電平時,此間內部程序存儲器。在flash編程期間,此引腳也用于施加12v編程電源(vpp)。12)ale/prog:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在flash編程期間,此引腳用于輸入編程脈沖。在平時,ale端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要

16、注意的是:每當用作外部數(shù)據存儲器時,將跳過一個ale脈沖。如想禁止ale的輸出可在sfr8eh地址上置0。此時,ale只有在執(zhí)行movx,movc指令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ale禁止,置位無效。圖2-3 at89c51各管腳圖2.2.2 數(shù)碼管及顯示驅動電路cd4511簡介:cd4511數(shù)碼管顯示驅動(如圖2-5)是bcd鎖存/7段譯碼器/驅動器,常用的顯示譯碼器件,cd4511引腳功能: bi:4腳是消隱輸入控制端,當bi=0 時,不管其它輸入端狀態(tài)是怎么樣的,七段數(shù)碼管都會處于消隱也就是不顯示的狀態(tài)。 le:鎖定控制端,當le=0時,允許譯碼輸

17、出。 le=1時譯碼器是鎖定保持狀態(tài),譯碼器輸出被保持在le=0時的數(shù)值。lt:3腳是測試信號的輸入端,當bi=1,lt=0 時,譯碼輸出全為1,不管輸入 dcba 狀態(tài)如何,七段均發(fā)亮全部顯示。它主要用來檢測數(shù)7段碼管是否有物理損壞。a1、a2、a3、a4、為8421bcd碼輸入端。 a、b、c、d、e、f、g:為譯碼輸出端,輸出為高電平1有效。圖2-5 cd4511圖數(shù)碼管及顯示驅動電路原理結構如圖 2-4所示,其中上拉電阻為cd4511增加加電壓使其正常工作,lt、bi接口接高電平,cd4511顯示驅動模塊a接數(shù)碼管a,b接數(shù)碼管b,c接數(shù)碼管c,d接數(shù)碼管d,e接數(shù)碼管e,f接數(shù)碼管f

18、,g接數(shù)碼管g,段選給數(shù)碼管使其顯示數(shù)字,數(shù)碼管共陰極接地端接三極管,使其高電位接地,低電位傳回單片機。圖2-4 數(shù)碼管及顯示驅動電路2.2.3交通燈電路交通燈電路由led和電阻組成,led燈順序為南北向紅燈、南北向黃燈、南北向綠燈、東西向紅燈、東西向黃燈、東西向綠燈。如圖 2-6 圖2-6 at89s51來控制交通燈led電路2.2.4鍵盤電路鍵盤分別控制確定鍵、換擋鍵、減1鍵、加1鍵輸入單片機p2.4至p2.7管腳,上拉電阻使鍵盤處于高電平狀態(tài)。 如圖 2-7 圖2-7 鍵盤電路2.2.5電路原理圖設計,單片機管腳p0.0、p0.1、p0.2、p0.3分別接cd4511數(shù)碼管驅動顯示芯片的

19、a、b、c、d,單片機管腳p0.4、p0.5、p0.6、p0.7、分別接第二個cd4511的a、b、c、d接口,單片機p2.4、p2.5、p2.6、p2.7分別接鍵盤電路確定鍵、換擋鍵、減1鍵、加1鍵,單片機從管腳p1.0、p1.1、p1.2、p1.3、p1.4、p1.5輸出信號給交通燈led電路,rst 是at89c51的復位信號輸入引腳,xtal1和xtal2是分別接晶振電路。 如圖 2-8圖2-8 電路原理總圖2.3 軟件設計2.3.1 主程序流程圖首先對系統(tǒng)進行初始化,然后進行中斷延時,定義鍵盤控制后進行顯示。如圖 2-9main初始化延時中斷顯示鍵盤控制圖2-9 主程序流程圖2.3.

20、2 鍵盤子程序設計首先對系統(tǒng)進行初始化,然后定義鍵盤控制,如過按下k1鍵則加1如果沒按則進入k2鍵,k2鍵如果按下則減1如果沒按下則進入k3鍵,如果按下k3鍵則移位,沒按下則進入k4鍵,如果按下k4鍵則退出。如圖 2-10鍵盤初始化定義鍵盤控制字+1k1鍵 n y n-1k2鍵 y n 移位k3鍵 y n退出k4鍵 y圖2-10 鍵盤子程序設計圖2.4 主程序設計*main 函數(shù)*初始化部分count20equr7 ;計時次數(shù)20次=1scount50 equ r6;50次=2.5scount15 equ r5;15次=0.75sbuffequ30h;數(shù)碼管顯示緩存buflequ31h;數(shù)碼管

21、顯示低位緩存bufhequ32h;數(shù)碼管顯示高位緩存temp1equ 33h;delay時間參數(shù)temp2equ 34h;buftime equ40h;紅綠燈設置時間flaghbit 10h;高標志位flaglbit 11h;低標志位 1有效org0000hljmpmainorg 000bhljmptt0;t0中斷,紅綠燈計時org 001bhljmp tt1;t1中斷,閃爍控制org 0030hmain:mov sp,#60hsetb lehsetb lel;4511數(shù)據鎖存控制端,0有效clr ledhclr ledl;數(shù)碼管,1有效clr flaghclr flagl;標志位,1有效三、

22、系統(tǒng)調試與仿真系統(tǒng)調試仿真步驟:先做proteus仿真圖,然后用keilc51編譯程序,編譯后生成.hex文件,最后使用proteus仿真圖加載.hex文件,完成仿真,若仿真有錯,需對軟硬件進行進一步修改。3.1 keilc51進行程序調試3.1.1 keilc51軟件介紹keil c51是美國keil software公司出品的51系列兼容單片機c語言軟件開發(fā)系統(tǒng),與匯編相比,c語言在功能上、結構性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。用過匯編語言后再使用c來開發(fā),體會更加深刻。keil c51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調試工具,全windows界面。另外重要的一點,

23、只要看一下編譯后生成的匯編代碼,就能體會到keil c51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。利用keilc51對程序進行編譯,編譯結果如圖 3-1所示。圖3-1 keil編譯圖3.2 proteus軟件簡介proteus軟件是英國labcenter electronics公司出版的eda工具軟件(該軟件中國總代理為廣州風標電子技術有限公司)。它不僅具有其它eda工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于

24、單片機開發(fā)應用的科技工作者的青睞。proteus是世界上著名的eda工具(仿真軟件),從原理圖布圖、代碼調試到單片機與外圍電路協(xié)同仿真,一鍵切換到pcb設計,真正實現(xiàn)了從概念到產品的完整設計。是目前世界上唯一將電路仿真軟件、pcb設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、hc11、pic10/12/16/18/24/30/dspic33、avr、arm、8086和msp430等,2010年即將增加cortex和dsp系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持iar、keil和mplab等多種編譯器。3.3 proteus 電路圖設計圖3-2 pr

25、oteus 電路圖設計3.4 proteus中仿真過程生成.hex步驟:點擊“project-new project”菜單,出現(xiàn)一個對話框,要求給將要建立的工程起一個名字,你可以在編緝框中輸入一個名字,不需要擴展名。點擊“保存”按鈕,出現(xiàn)一個對話框,這個對話框要求選擇目標cpu(即你所用芯片的型號),我們選擇atmel公司的89c51芯片。點擊atmel前面的“+”號,展開該層,點擊其中的89c51,然后再點擊“確定”按鈕,回到主界面,此時,在工程窗口的文件頁中,出現(xiàn)了“target 1”,前面有“+”號,點擊“+”號展開,可以看到下一層的“source group1”,這時的工程還是一個空的

26、工程,里面什么文件也沒有,需要手動把剛才編寫好的源程序加入,點擊“source group1”使其反白顯示,然后,點擊鼠標右鍵,出現(xiàn)一個下拉菜單。選中其中的“add file to group”source group1”,出現(xiàn)一個對話框,要求尋找源文件,注意,該對話框下面的“文件類型”默認為c source file(*.c),也就是以c為擴展名的文件,而我們的文件是以asm為擴展名的,所以在列表框中找不到xxx.asm,要將文件類型改掉,點擊對話框中“文件類型”后的下拉列表,找到并選中“asm source file(*.a51,*.asm),這樣,在列表框中就可以找到exam1.asm文

27、件了。 雙擊exam1.asm文件,將文件加入選擇目標cpu,在文件加入項目后,該對話框并不消失,等待繼續(xù)加入其它文件。 工程建立好以后,還要對工程進行進一步的設置,以滿足要求。首先點擊左邊project窗口的target 1,然后使用菜單“project-option for target target1”好在絕大部份設置項取默認值就行了。在設置好工程后,即可進行編譯、連接。選擇菜單project-build target,對當前工程進行連接,如果當前文件已修改,軟件會先對該文件進行編譯,然后再連接以產生目標代碼;如果選擇rebuild all target files將會對當前工程中的所有

28、文件重新進行編譯然后再連接,確保最終生產的目標代碼是最新的,而translate .項則僅對該文件進行編譯,不進行連接。 以上操作也可以通過工具欄按鈕直接進行。 編譯過程中的信息將出現(xiàn)在輸出窗口中的build頁中有有關編譯、連接、項目設置的工具條,正確編譯、連接之后的結后,最終會得到提示獲得了名為exam1.hex的文件,該文件即可被編程器讀取。打開proteus軟件,在proteus軟件中進行畫圖,在devices中選擇p字母搜索元器件,在畫完圖之后在debug中選擇use remote debug monitor 來支持遠程調試。之后右鍵單擊at89c51選中元此元器件,然后再左鍵單擊,之

29、后出現(xiàn)在對話框。在對話框program file欄中加載程序的.hex文件,然后關閉對話框后進行仿真。 如圖 3-3圖4-2加載.hex文件圖圖3-3 proteus加載.hex圖3.5 proteus進行交通燈系統(tǒng)仿真圖3-4 proteus仿真圖四、結論本次設計設計的是一個交通燈控制系統(tǒng),以單片機為核心,采用目前比較流行的at89s51單片機,對十字路口交通燈電路進行了仿真制作,主要完成十字路口交通燈的紅、綠、黃燈的點亮時間控制,在模擬系統(tǒng)中,采用了兩組紅、黃、綠三種發(fā)光二極管分別代表兩道上的交通燈,采用了數(shù)碼管顯示每種燈點亮的時間;并采用了四個按鈕開關來實現(xiàn)計時功能。在本次設計中,程序采

30、用了原來學習書本上的匯編語言, 程序仿真采用流行的proteus軟件,和keil聯(lián)合仿真,方便調試程序和修改硬件,結果證明方案的硬件設計正確,程序也符合要求。通過這次畢業(yè)設計,使我得到了一次用專業(yè)知識、專業(yè)技能分析和解決問題全面系統(tǒng)的鍛煉。使我在單片機的基本原理、單片機應用系統(tǒng)開發(fā)過程,以及在常用編程設計思路技巧(特別是匯編語言)的掌握方面都能向前邁了一大步,為日后成為合格的應用型人才打下良好的基礎。參考文獻1 王曉薇、王 慧.基于ga 的交叉路口自適應模糊控制器設計j. 吉林大學學報(信息科學版),第22卷第4期2004.72 付家才. 單片機控制工程實踐技術m. 北京: 化學工業(yè)出版社,

31、2004.3 劉麗莎、黃輝先、湯紅忠.單交叉口模糊交通控制器的研究 j.電機與控制學報,20034 陳小忠、黃寧、趙小俠.單片機接口技術實用子程序m.北京:人民郵電出版社,2005.9 5 沙占友、孟志永、王彥朋.單片機外圍電路設計(第2版)m.北京:電子工業(yè)出版社,2006.66 何立民. 單片機應用技術選編m . 北京航空航天大學出版社. 2004.7 張化光、孟祥萍.智能控制基礎理論及應用m. 北京:機械工業(yè)出版社,20058 張秀珍、戴伏生、毛興鵬.熱釋電紅外傳感器在車輛計數(shù)系統(tǒng)中的應用j.傳感器技術,2000 年,第19 卷,第2 期9 沈紅衛(wèi). 單片機應用系統(tǒng)設計實例與分析m .

32、北京:航空航天大學出版社,2003.附錄;端口定義部分dat equp0d1equp0.0d2equ p0.1d3equp0.2d4equ p0.3;低位4511數(shù)碼管數(shù)據端d5equ p0.4d6equ p0.5d7equ p0.6d8equ p0.7;高位lehequ p2.0lel equ p2.1;4511數(shù)碼管控制端0有效ledhequp2.2;上數(shù)碼管顯示控制 ;1有效ledlequp2.3;下數(shù)碼管顯示控制;1有效k1equp2.4;k1,增1鍵|k2equp2.5;k2,減1鍵 | 按鍵k3equp2.6;k3,移位鍵 |p2.47低電平k4equp2.7;k4,確認并退出鍵

33、|nrequp1.0;nsred控制;南北紅燈 0有效nyequp1.1;nsyellow;0有效ngequp1.2;nsgreen;0有效erequp1.3;wered;東西紅燈 0有效eyequp1.4;weyellow;0有效egequp1.5;wegreen;0有效*main 函數(shù)*;初始化部分count20equr7 ;計時次數(shù)20次=1scount50 equ r6;50次=2.5scount15 equ r5;15次=0.75sbuffequ30h;數(shù)碼管顯示緩存buflequ31h;數(shù)碼管顯示低位緩存bufhequ32h;數(shù)碼管顯示高位緩存temp1equ 33h;delay時

34、間參數(shù)temp2equ 34h;buftime equ40h;紅綠燈設置時間flaghbit 10h;高標志位flaglbit 11h;低標志位 1有效org0000hljmpmainorg 000bhljmptt0;t0中斷,紅綠燈計時org 001bhljmp tt1;t1中斷,閃爍控制org 0030hmain:mov sp,#60hsetb lehsetb lel;4511數(shù)據鎖存控制端,0有效clr ledhclr ledl;數(shù)碼管,1有效clr flaghclr flagl;標志位,1有效;*計時器初始化*mov tmod,#11h;t0,t1,計時方式1mov th0,#3chm

35、ov tl0,#0b0h;t0初始地址,單次50ms;mov th1,#0fch;mov tl1,#18h;t1初始地址,單次1ms;mov th1,#0d8h;mov tl1,#0f0h;t1初始地址,單次10msmov th1,#3chmov tl1,#0b0h;t1初始地址,單次50msmov count20,#00hmov count50,#00hsetb et1;t1中斷允許setb et0;t0中斷允許setb pt0;t0優(yōu)先級1setb ea;中斷開放 ;初始部分,顯示00mov buff,#00hsetb flaghsetb flagllcall load;裝載setb le

36、dhsetb ledl;開數(shù)碼管lcall part;拆數(shù);鍵盤部分,設置初始時間clr flaghsetb flagl;初始高位亮,低位閃setb tr1;t1中斷開啟,閃爍開始kk1:lcall delay50msjb k1,kk2lcall add1;+1鍵lcall loadkk2:lcall delay50msjb k2,kk3lcall sub1;-1鍵lcall loadkk3:lcall delay50msjb k3,kk4cpl flagl;位移鍵cpl flaghkk4:lcall delay50msjb k4,kk1;退出鍵mov buftime,buff;保存設置時間i

37、nc buftime;+1方便使用clr tr1;設置結束,t1中斷關閉,閃爍停止clr et1;t1中斷允許關nop;紅綠燈部分,計時變燈setb tr0;t0中斷開啟clr eg;初始東西綠clr nr;南北紅setb ersetb eysetb nysetb ngsjmp $nopljmp cut;part,拆數(shù)函數(shù);入口參數(shù):buff,顯示緩存出口參數(shù):bufl,bufh,顯示緩存高低位part:mov a,buffanl a,#0fh;屏蔽高位mov bufl,amov a,buff;anl a,#0f0h;屏蔽低位rr arr arr arr amov bufh,a;ret;loa

38、d,數(shù)據裝載函數(shù);入口參數(shù):buff,顯示緩存load:mov dat,buffclr lelclr leh;寫入nopsetb lelsetb lehloadr:ret;add1,加1函數(shù)add1:jnbflagh,addl ;高位inc bufhmov a,bufhcjne a,#0ah,addrmov bufh,#00hljmpaddraddl:jnb flagl,addr;低位inc buflmov a,buflcjne a,#0ah,addrmov bufl,#00haddr:mov a,bufhrl arl arl arl aadd a,bufl;高低位和起來mov buff,a;

39、更改buffret;sub1,減1函數(shù)sub1:jnbflagh,subl;flagh=1,轉高位dec bufhmov a,bufhcjne a,#0ffh,subrmov bufh,#09hljmpsubrsubl:jnb flagl,subrdec buflmov a,buflcjne a,#0ffh,addrmov bufl,#09hsubr:mov a,bufhrl arl arl arl aadd a,bufl;高低位和起來mov buff,a;更改buffret; tt0,定時函數(shù)1s,紅綠燈控,t0中斷計時tt0:clrtr0inc count20mov th0,#3chmov tl0,#0b0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論