單片機控制紅綠燈系統(tǒng)_第1頁
單片機控制紅綠燈系統(tǒng)_第2頁
單片機控制紅綠燈系統(tǒng)_第3頁
單片機控制紅綠燈系統(tǒng)_第4頁
單片機控制紅綠燈系統(tǒng)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

關(guān)鍵詞:AT89C51;7448,LED2方案論證2.1設(shè)計任務(wù)設(shè)計基于單片機的智能交通紅綠燈控制系統(tǒng),要求能通過按鍵或遙控器設(shè)置系統(tǒng)參數(shù),系統(tǒng)運行時,“倒計時等信息"能通過數(shù)碼管或點陣發(fā)光管顯示,設(shè)計時應(yīng)考慮交通紅綠燈控制的易操作性及智能性。以單片機的最小系統(tǒng)為基礎(chǔ)設(shè)計硬件,用匯編語言、或C語言設(shè)計軟件。通過本設(shè)計可以培養(yǎng)學(xué)生分析問題和解決問題的能力,掌握Mcs51單片機的硬件與軟件設(shè)計方法,從而將學(xué)到的理論知識應(yīng)用于實踐中,為將來走向社會奠定良好的基礎(chǔ).東西(A)、南北(B)兩干道交于一個十字路口,各干道有一組紅、黃、綠三個指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行,黃燈亮?xí)r車輛及行人小心通過。紅燈的設(shè)計時間為45秒,綠燈為40秒,黃燈為5秒。2.2方案介紹方案1設(shè)計思想:采用分模塊設(shè)計的思想,程序設(shè)計實現(xiàn)的基本思想是一個計數(shù)器,選擇一個單片機,其內(nèi)部為一個計數(shù),是十六進制計數(shù)器,模塊化后,通過設(shè)置或程序清除來實現(xiàn)狀態(tài)的轉(zhuǎn)換,由于每一個模塊的計數(shù)多不是相同,這里的各模塊是以預(yù)置數(shù)和計數(shù)器計數(shù)共同來實現(xiàn)的,所以要考慮增加一個置數(shù)模塊,其主要功能細(xì)分為,對不同的狀態(tài)輸入要產(chǎn)生相應(yīng)狀態(tài)的下一個狀態(tài)的預(yù)置數(shù),如圖中A道和B道,分別為次干道的置數(shù)選擇和主干道的置數(shù)選擇。方案2設(shè)計思想:由兩個傳感器監(jiān)視南北方向即A道與東西方向即B道的車輛來往情況,設(shè)開關(guān)K=1為有車通過,K=0為沒有車通過。則有以下四種情況:Ka=1時:Kb=0,表示A有車B沒有車,則僅通行B道:Kb=1,表示A有車B有車,則優(yōu)先通行A道;Ka=0時:Kb=0表示A沒有車B也沒有車,同樣優(yōu)先通行A道;Kb=1表示A沒有車B有車,則僅通行B道。方案比較:方案1用了模塊設(shè)計,而方案2采用邏輯設(shè)計,相比之下1有較強的可讀性和較強的可修改性,而2則在設(shè)計上顯得較簡單,設(shè)計純樸,便于測試,它的優(yōu)勢則在于提供了一條較為便捷的解決方案。2首先將許多邏輯關(guān)系簡化到極點,而后將其一起集成用較少的芯片去完成所需功能。我們最終的設(shè)計應(yīng)該盡量使用模塊化設(shè)計。對工程設(shè)計人員來說,將來的產(chǎn)品無論從修改還是升級考慮對有好處,但另外我們又需將設(shè)計簡單化,因此我覺得在設(shè)計初期盡可能的簡單化設(shè)計,而一旦設(shè)計的各項測試通過了,在有可能的條件下將設(shè)計模塊化,所以本設(shè)計以第一方案為主進行.我們最終的設(shè)計應(yīng)該盡量使用模塊化設(shè)計.對工程設(shè)計人員來說,將來的產(chǎn)品無論從修改還是升級考慮對有好處,但另外我們又需將設(shè)計簡單化,因此我覺得在設(shè)計初期盡可能的簡單化設(shè)計,而一旦設(shè)計的各項測試通過了,在有可能的條件下將設(shè)計模塊化,所以本設(shè)計以第一方案為主進行。3交通燈系統(tǒng)硬件設(shè)計3.1單片機概述單片機是由運算器、控制器、存儲器、輸入設(shè)備以及輸出設(shè)備共五個基本部分組成的。單片機是把包括運算器、控制器、少量的存儲器、最基本的輸入輸出口電路、串行口電路、中斷和定時電路等都集成在一個尺寸有限的芯片上。通常,單片機由單個集成電路芯片構(gòu)成,內(nèi)部包含有計算機的基本功能部件:中央處理器、存儲器和I/O接口電路等.因此,單片機只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個單片機控制系統(tǒng)。3.2系統(tǒng)構(gòu)成電路板一塊,AT89S51單片機一片,7448芯片2片,七段數(shù)碼管八個。發(fā)光二極管20個(8個綠的,8個紅的,4個黃的用于交通控制),100歐姆電阻20個,2個按鍵,2個開關(guān),51K歐姆電阻2個,5V穩(wěn)定電源1個,3個電容2個單刀單擲開關(guān)等。系統(tǒng)結(jié)構(gòu)框圖:圖3—1系統(tǒng)結(jié)構(gòu)框圖系統(tǒng)工作流程:(1)程序初始,通過兩個傳感器來判斷南北與東西方向車輛通行情況。(2)情況判定后由AT89S51單片機p1口及部分p2口輸出二進制信號控制紅綠黃燈亮的情況。(3)確定那些燈亮后,由對應(yīng)的七段數(shù)碼管來進行到計時顯示。由p0口輸出來控制七段數(shù)碼管的顯示,而p2口的高四位則用來控制數(shù)碼管顯示時的個位和十位(4)系統(tǒng)是否需要緊急工作狀態(tài),而此任務(wù)由外部中斷來實現(xiàn).(5)LED采用5V的直流電來驅(qū)動,低電平。3.3芯片選擇與介紹3.3.1AT89S51芯片選用的AT89S51與同系列的AT89C51在功能上有明顯的提高,最突出是的可以實現(xiàn)在線的編程.用于實現(xiàn)系統(tǒng)的總的控制.其主要功能列舉如下:1)為一般控制應(yīng)用的8位單片機2)晶片內(nèi)部具有時鐘振蕩器(傳統(tǒng)最高工作頻率可至33MHz)3)內(nèi)部程式存儲器(ROM)為4KB4)內(nèi)部數(shù)據(jù)存儲器(RAM)為128B5)外部程序存儲器可擴充至64KB6)外部數(shù)據(jù)存儲器可擴充至64KB7)32條雙向輸入輸出線,且每條均可以單獨做I/O的控制8)6個中斷向量源9)2組獨立的16位定時器10)1個全雙工串行通信端口11)8751及8752單芯片具有數(shù)據(jù)保密的功能12)單芯片提供位邏輯運算指令圖3-1AT89C51芯片3。3.27448芯片介紹7448七段顯示譯碼器輸出高電平有效,用以驅(qū)動共陰極顯示器.該集成顯示譯碼器設(shè)有多個輔助控制端,以增強器件的功能,可將單片機輸出的四位二進制數(shù)轉(zhuǎn)換成10進制數(shù)與七段數(shù)碼管顯示對應(yīng),用于顯示0-9的數(shù)字.圖3—27448芯片其中LT為測試輸入。3.3.3紅綠LED信號顯示燈及七段數(shù)碼顯示管LED燈的顯示原理:通過同名管腳上所加電平的高低來控制發(fā)光二極管是否點亮.如下圖:圖3-3紅綠LED信號顯示燈而七段數(shù)碼管的顯示不同的字形如SP,g,f,e,d,c,b,a管角上加上OFEH所以SP上為0伏,不亮其余為TTL高電平,全亮則顯示為8。采用共陰極連接:表3-4七段數(shù)碼管的顯示顯示數(shù)值abcdefgdop驅(qū)動代碼(16進制)0111111110FCH10000011060H2110110100DAH3111100100F2H40110011066H5101101100B6H6101111100BEH7111000000E0H8111111100FEH9111101100F6H3.3.4交通燈控制線路圖圖3-5原理圖4交通燈軟件設(shè)計4。1程序設(shè)計流程圖程序設(shè)計框圖圖4-1程序設(shè)計框圖4。2延時的設(shè)定延時方法可以有兩種一種是利用AT89S51內(nèi)部定時器的溢出中斷來確定1秒的時間,另一種是采用軟件延時的方法。實現(xiàn)1ms秒的方法:我們采用在主程序中設(shè)定一個初值為0的軟件計數(shù)器和使T1定時1毫秒相應(yīng)程序代碼:D1MS:MOVR7,#250;1MS延時程序DJNZR7,$RET4.3子程序的實現(xiàn)A道通車情況:START1:MOVTEMP,#25MOVP1,#0F3HLOOP1:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1.6,START3JNBP1.7,START11CJNEA,#0,NEXT1LJMPSTART2NEXT1:LJMPLOOP1START11:MOVTEMP,#65MOVP1,#0F3HLOOP11:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1。6,START33JNBP1.7,START1CJNEA,#0,NEXT11LJMPSTART11NEXT11:LJMPLOOP11START2:MOVP1,#0F5HMOVTEMN,#05LOOP2:ACALLDELAY1DECTEMNMOVA,TEMNCJNEA,#0,NEXT2LJMPSTART3NEXT2:LJMPLOOP2B道通車情況:START3:MOVTEMP,#25MOVP1,#0DEHLOOP3:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1.6,START1JNBP1。7,START33CJNEA,#0,NEXT3LJMPSTART4NEXT3:LJMPLOOP3START33:MOVTEMP,#65MOVP1,#0DEHLOOP33:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1.6,START11JNBP1。7,START3CJNEA,#0,NEXT33LJMPSTART4NEXT33:LJMPLOOP33START4:MOVP1,#0EEHMOVTEMN,#05LOOP4:ACALLDELAY1中斷情況即緊急情況:ORG0000HTEMPEQU24HTEMNEQU25HLJMPMAINORG0003HLJMPT0_INTO(shè)RG0013HLJMPTI_INTT0_INT:MOVA,P1PUSHACCMOVP1,#0FFHMOVP1,#0F3HMOVP0,#00HJNBP3。2,$POPACCMOVP1,ACCRETITI_INT:MOVA,P1PUSHACCMOVP1,#0FFHMOVP1,#0DEHMOVP0,#00HJNBP3。3,$POPACCMOVP1,ARETI5實驗仿真5。1仿真圖根據(jù)對稱性選用部分對稱元件仿真,?圖5—1仿真圖5。2實驗步驟5.2.1編寫程序代碼程序代碼分為幾個模塊:中斷模塊,循環(huán)模塊,延時模塊。原程序?qū)崿F(xiàn):ORG0000HTEMPEQU24HTEMNEQU25HLJMPMAINORG0003HLJMPT0_INTORG0013HLJMPTI_INTT0_INT:MOVA,P1PUSHACCMOVP1,#0FFHMOVP1,#0F3HMOVP0,#00HJNBP3.2,$POPACCMOVP1,ACCRETITI_INT:MOVA,P1PUSHACCMOVP1,#0FFHMOVP1,#0DEHMOVP0,#00HJNBP3.3,$POPACCMOVP1,ARETIMAIN:SETBEASETBEX0SETBEX1CLRF0START1:MOVTEMP,#25MOVP1,#0F3HLOOP1:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1。6,START3JNBP1。7,START11CJNEA,#0,NEXT1LJMPSTART2NEXT1:LJMPLOOP1START11:MOVTEMP,#65MOVP1,#0F3HLOOP11:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1.6,START33JNBP1.7,START1CJNEA,#0,NEXT11LJMPSTART11NEXT11:LJMPLOOP11START2:MOVP1,#0F5HMOVTEMN,#05LOOP2:ACALLDELAY1DECTEMNMOVA,TEMNCJNEA,#0,NEXT2LJMPSTART3NEXT2:LJMPLOOP2START3:MOVTEMP,#25MOVP1,#0DEHLOOP3:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1.6,START1JNBP1.7,START33CJNEA,#0,NEXT3LJMPSTART4NEXT3:LJMPLOOP3START33:MOVTEMP,#65MOVP1,#0DEHLOOP33:ACALLDELAYDECTEMPMOVA,TEMPMOVP0,TEMPJNBP1。6,START11JNBP1.7,START3CJNEA,#0,NEXT33LJMPSTART4NEXT33:LJMPLOOP33START4:MOVP1,#0EEHMOVTEMN,#05LOOP4:ACALLDELAY1DECTEMNMOVA,TEMNCJNEA,#0,NEXT4LJMPSTART1NEXT4:LJMPLOOP4RETIDELAY:MOVA,TEMPMOVB,#10DIVABMOVR5,AMOVR6,BMOVR0,#10L0:MOVR1,#250L1:MOVA,R5MOVP0,ACLRP2.4ACALLDIMSSETBP2.4MOVA,R6MOVP0,R6CLRP2.5ACALLDIMSSETBP2。5DECR1DJNZR1,L1DECR0DJNZR0,L0RETIDELAY1:MOVA,TEMNMOVB,#10DIVABMOVR5,AMOVR6,BMOVR2,#10L2:MOVR3,#250L3:MOVA,R5MOVP0,ACLRP2。4ACALLDIMSSETBP2.4MOVA,R6MOVP0,R6CLRP2.5ACALLDIMSSETBP2.5DECR3DJNZR3,L3DECR2DJNZR2,L2RETIDELAY11:MOVA,TEMPMOVB,#10DIVABMOVR5,AMOVR6,BMOVR0,#10Y0:MOVR1,#250Y1:MOVA,R5MOVP2,ACLRP2。6ACALLDIMSSETBP2.6MOVA,R6MOVP2,R6CLRP2.7ACALLDIMSSETBP2。7DECR1DJNZR1,Y1DECR0DJNZR0,Y0RETIDIMS:MOVR7,#250DJNZR7,$RETEND5.2.2按照系統(tǒng)硬件連線圖連接好系統(tǒng)并調(diào)試1)調(diào)試程序=1\*GB2\*MERGEFORMAT⑴打開仿真軟件,新建文件;=2\*GB2\*MERGEFORMAT⑵選擇芯片;=3\*GB2\*MERGEFORMAT⑶新建文檔,把編寫好代碼寫入文檔并保存了ASM文件;

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論