《單片機原理及應用》課程設計急救車優(yōu)先的交通燈控制系統(tǒng)設計
《《單片機原理及應用》課程設計急救車優(yōu)先的交通燈控制系統(tǒng)設計》由會員分享,可在線閱讀,更多相關《《單片機原理及應用》課程設計急救車優(yōu)先的交通燈控制系統(tǒng)設計(32頁珍藏版)》請在裝配圖網上搜索。
1、 《單片機原理及應用》課程設計 ——急救車優(yōu)先的交通燈控制系統(tǒng)設計 班級: 測控071 學號: 姓名: 完成日期:2010 年 6 月 目錄 一、課程設計目的和基本要求........................................3 1、課程設計目的................................................3 2、課程設計基本要求.............
2、..............................3 二、題目描述及要求................................................3 1、題目要求....................................................3 2、設計方案選擇與論證..........................................4 三、LED燈簡介.....................................................5 1、 LED 的結構及發(fā)光原理...........
3、............................5 2、 LED 光源的特點.............................................5 3、單色光 LED 的種類及其發(fā)展歷史...............................6 四、芯片的選擇與簡介...............................................6 1、核心芯片AT89C51單片機的說明.................................6 2、中央處理器(CPU).............................
4、...............9 3、存儲器.......................................................10 4、定時器/計數器...............................................11 5、中斷系統(tǒng)....................................................11 6、內部總線....................................................11 7 、AT89C51單片機工作方式.................
5、.....................12 五、系統(tǒng)設計.......................................................13 1、系統(tǒng)方框圖..................................................13 2、工作原理....................................................14 3、交通燈狀態(tài)分析...............................................14 六、電路原理圖....................
6、................................16 1、 單片機最小系統(tǒng)............................................16 2、交通燈電路圖...............................................17 3、總的電路圖.................................................18 4、救護車來時處理.............................................19 七、程序流程圖......................
7、..............................19 八、程序源代碼....................................................21 九、程序仿真......................................................24 十、課程設計總結..................................................28 十一、參考文獻....................................................29
8、 急救車優(yōu)先的交通燈控制系統(tǒng)設計 一、 課程設計目的和基本要求: 1、課程設計目的 大學本科學生動手能力的培養(yǎng)和提高是大學本科教育的一個重要內容,《單片機原理及應用》是一門應用性較強的課程。如何讓學生在學好基礎知識的同時,迅速掌握應用技術,實驗與課程設計環(huán)節(jié)起著非常重要的作用。本課程設計的目的,是讓學生通過課程設計,首先建立起單片機應用系統(tǒng)的概念,根據實際的系統(tǒng)設計要求,掌握初步的單片機系統(tǒng)設計方法,從硬件系統(tǒng)和軟件系統(tǒng)設計兩個方面得到實際的提高,為今后的畢業(yè)設計打下良好的基礎。 2、課程設計基本要求: 1) 在課程設計過程中,運用89S51單片機,根據設計
9、要求繪制系統(tǒng)電路圖、編制系統(tǒng)程序流程圖、根據系統(tǒng)程序流程圖編制匯編源程序(或C51程序),進行運行調試(運用仿真軟件proteus或在單片機實驗平臺上)進行調試運行,最后提供課程設計報告。在此過程中,學生必須學會手冊的使用及相應繪圖軟件的使用方法,使各方面的實際能力上得到一定的提高。 2) 課程設計應由學生本人獨立完成完成,嚴禁抄襲(對自己的設計不熟悉,讀不懂設計中的關鍵功能部分,對設計的結構不清楚,對設計的功能不了解等),一經驗收教師認定其抄襲行為,成績即為不及格。 3) 認真編寫課程設計報告,課程設計報告的書寫格式見附錄2 二、題目描述及要求 1、題目要求 請設計一個交通燈控
10、制電路,并且編寫相應的軟件,完成交通燈的管理任務。該控制任務應該完成下列功能: 1) 控制LED燈,完成交通燈的管理任務; 2) 允許急救車優(yōu)先通過的要求。有急救車到達時,所有的交通信號燈為紅燈,以便讓急救車通過。假定急救車通過路口時間為20秒,急救車通過后交通燈恢復中斷前狀態(tài); 3) 按照分析、設計、調試和測試的軟、硬件開發(fā)過程完成這個控制任務。 4) 根據交通燈控制變化規(guī)律。假設一個十字路口為東西南北走向。初始狀態(tài)0為東西紅燈,南北紅燈。然后轉狀態(tài)1南北綠燈通車,東西紅燈。過20秒鐘轉狀態(tài)2,南北綠燈閃幾次轉亮黃燈,延時幾秒,東西仍然紅燈。再轉狀態(tài)3,東西綠燈通車,南北紅燈。
11、過20秒鐘轉狀態(tài)4,東西綠燈閃幾次轉亮黃燈,延時幾秒,南北仍然紅燈。最后循環(huán)至狀態(tài)1; 5)以按鍵為中斷申請,表示有急救車通過,所有的交通信號燈全紅20秒鐘。 2、設計方案選擇與論證: 交通燈控制系統(tǒng),可由多種電路來構成,我們這里提供三種方案供選擇: 方案一:由普通的數字電路集成芯片組成 這種方案的特點是:硬件設計思路簡單,但用元器件多,電路比較復雜,焊接調試容易出錯,而且不利于智能控制,調時電路復雜。 方案二:用VHDL語言編程控制 這種方案的特點是:硬件設計簡單,電路結構清晰,電路比較復雜 ,VHDL語言編程控制硬件,可方便的進行仿真,調試。 方案三:單片機控制 采用單片
12、機控制,可提高電路的可靠性與穩(wěn)定性,硬件電路比較簡單,主要用軟件來控制,控制方式靈活多樣,能滿足不同情況的控制,可利用中斷等方式通過程序來方便的實現調時。 綜合以上三種方案的特點,結合我們自身的知識結構,我們采用方案三,選擇常用的51系列單片機構成。 三、LED燈簡介 1、 LED 的結構及發(fā)光原理 50 年前人們已經了解半導體材料可產生光線的基本知識 ,第一個商用二極管產生于 1960 年。 發(fā)光二極管的核心部分是由 p 型半導體和 n 型半導體組成的晶片,在 p 型半導體和 n 型半導體之間有一個過渡層,稱為 圖1發(fā)光二極管的構造圖 p-n 結。在某些半導體材料的 PN 結
13、中,注入的少數載流子與多數載流子復合時會把多余的能量以光的形式釋放出來,從而把電能直接轉換為光能。 PN 結加反向電壓,少數載流子難以注入,故不發(fā)光。這種利用注入式電致發(fā)光原理制作的二極管叫發(fā)光二極管,通稱 LED 。當它處于正向工作狀態(tài)時(即兩端加上正向電壓),電流從 LED 陽極流向陰極時,半導體晶體就發(fā)出從紫外到紅外不同顏色的光線,光的強弱與電流有關。 2、 LED 光源的特點 1). 電壓: LED 使用低壓電源,供電電壓在 6-24V 之間,根據產品不同而異,所以它是一個比使用高壓電源更安全的電源,特別適用于公共場所。 2). 效能:消耗能量較同光效的白熾燈減少 8
14、0% 3). 適用性:很小,每個單元 LED 小片是 3-5mm 的正方形,所以可以制備成各種形狀的器件,并且適合于易 變的環(huán)境 4). 穩(wěn)定性: 10 萬小時,光衰為初始的 50% 5). 響應時間:其白熾燈的響應時間為毫秒級, LED 燈的響應時間為納秒級 6). 對環(huán)境污染:無有害金屬汞 7). 顏色:改變電流可以變色,發(fā)光二極管方便地通過化學修飾方法,調整材料的能帶結構和帶隙,實現紅黃 綠蘭橙多色發(fā)光。如小電流時為紅色的 LED ,隨著電流的增加,可以依次變?yōu)槌壬?,黃色,最后為綠色 8). 價格: LED 的價格比較昂貴,較之
15、 于白熾燈,幾只 白熾燈 的價格就可以與一只LED燈的價格相當,而通 常每組信號燈需由上 300 ~ 500 只二極管構成。 圖2 LED燈 3、單色光 LED 的種類及其發(fā)展歷史 最早應用半導體 P-N 結發(fā)光原理制成的 LED 光源問世于 20 世紀 60 年代初。當時所用的材料是 GaAsP ,發(fā)紅光( λ p =650nm ),在驅動電流為 20 毫安時,光通量只有千分之幾個流明,相應的發(fā)光效率約 0.1 流明 / 瓦。70 年代中期,引入元素 In 和 N ,使 LED 產生綠光( λ p =555nm ),黃光( λ p =590nm )和橙光( λ
16、 p =610nm ),光效也提高到 1 流明 / 瓦。到了 80 年代初,出現了 GaAlAs 的 LED 光源,使得紅色 LED 的光效達到 10 流明 / 瓦。90 年代初,發(fā)紅光、黃光的 GaAlInP 和發(fā)綠、藍光的 GaInN 兩種新材料的開發(fā)成功,使 LED 的光效得到大幅度的提高。在 2000 年,前者做成的 LED 在紅、橙區(qū)( λ p =615nm )的光效達到 100 流明 / 瓦,而后者制成的 LED 在綠色區(qū)域( λ p =530nm )的光效可以達到 50 流明 / 瓦 四、芯片的選擇與簡介 1、核心芯片AT89C51單片機的說明 (1).主要特性:
17、 與MCS-51 兼容 4K字節(jié)可編程閃爍存儲器 壽命:1000寫/擦循環(huán) 數據保留時間:10年 全靜態(tài)工作:0Hz-24Hz 三級程序存儲器鎖定 128*8位內部RAM 32可編程I/O線 兩個16位定時器/計數器 5個中斷源 可編程串行通道 低功耗的閑置和掉電模式 片內振蕩器和時鐘電路 (2).管腳說明: VCC:供電電壓。 G
18、ND:接地。 AT89C51 圖3 P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數據存儲器,它可以被定義為數據/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時
19、,P0輸出原碼,此時P0外部必須被拉高。 P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P
20、1口管腳寫入1 后,被內部 上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。 P2口:P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數據存儲器進行讀寫時,P2口輸出其特殊
21、功能寄存器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。 P3口:P3口管腳是8個帶內部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下表所示: 口管腳 備選功能 P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中
22、斷1) P3.4 T0(記時器0外部輸入) P3.5 T1(記時器1外部輸入) P3.6 /WR(外部數據存儲器寫選通) P3.7 /RD(外部數據存儲器讀選通) P3口同時為閃爍編程和編程校驗接收一些控制信號。 圖4 RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。 ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以
23、不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數據存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數據存儲器時,這兩次有效的/PSEN信號將不出現。 /EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲
24、器(0000H-FFFFH),不管是否有內部程序存儲器。注意加密方式1時,/EA將內部鎖定為RESET;當/EA端保持高電平時,此間內部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 (3).振蕩器特性: XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的
25、脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 (4).芯片擦除: 整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。 此外,AT89C51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計數器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內容并且凍結振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。 2、中央處理器(CPU) CPU是
26、單片機內部的核心部件,是一個8位二進制數的中央處理單元,主要由運算器、控制器和寄存器陣列構成。 2.1運算器 運算器用來完成算術運算和邏輯運算功能,它是AT89C51內部處理各種信息的主要部件。運算器主要由算術邏輯單元(ALU)、累加器(ACC)、暫存寄存器(TMP1、TMP2)和狀態(tài)寄存器(PSW)組成。 (1)算術邏輯單元(ALU):AT89C51中的ALU由加法器和一個布爾處理器組成。 (2)累加器(ACC):用來存放參與算術運算和邏輯運算的一個操作數或運算結果。 (3)暫存寄存器(TMP1、TMP2):用來存放參與算術運算和邏輯運算的另一個操作數,它對用戶不開放。 (4)狀
27、態(tài)寄存器(PSW):PSW是一個8位標志寄存器,用來存放ALU操作結果的有關狀態(tài)。 2.2控制器 控制器是單片機內部按一定時序協(xié)調工作的控制核心,是分析和執(zhí)行指令的部件。控制器主要由程序計數器PC、指令寄存器IR、指令譯碼器ID和定時控制電路等構成。 程序計數器PC是專門用于存放現行指令的16位地址的。CPU就是根據PC中的地址到ROM中去讀取程序指令碼和數據,并送給指令寄存器IR進行分析。指令寄存器IR用于存放CPU根據PC地址從ROM中讀出的指令操作碼。 指令譯碼器ID是用于分析指令操作的部件,指令操作碼經譯碼后產生相應于某一特定操作的信號。 定時控制邏輯中定時部件用來產生脈沖序
28、列和多種節(jié)拍脈沖。 2.3寄存器 寄存器陣列是單片機內部的臨時存放單元或固定用途單元,包括通用寄存器組和專用寄存器組。 通用寄存器組用來存放過渡性的數據和地址,提高CPU的運行速度。 專用寄存器組主要用來指示當前要執(zhí)行指令的內存地址,存放特定的操作數,指示指令運行的狀態(tài)。 3、存儲器 AT89C51單片機內部有256個字節(jié)的RAM數據存儲器和4Kb的閃存程序存儲器(Flash),當不夠使用時,可分別擴展為64Kb外部存儲器和64Kb外部程序存儲器,它們的邏輯單元是分開的,并有各自的尋址機構和尋址方式。這種結構的單片機稱為哈弗型結構的單片機。 程序存儲器是可讀不可寫的,用于存放編好
29、的程序和表格常數。 數據存儲器是即可讀也可寫的,用于存放運算的中間結果,進行數據暫存和數據緩沖等。AT89C51單片機對外部電路進行控制或交換信息都是通過I/O端口進行的。單片機的I/O端口分為并行I/O端口和串行I/O端口,它們的結構和作用并不相同。 (1)并行I/O端口 AT89C51有四個8位并行I/O端口,分別命名為P0口、P1口、P2口和P3口,它們都是8位準雙向口,每次可以并行輸入或輸出8位二進制信息。 (2)串行I/O端口 AT89C51有一個全雙工的可編程串行I/O端口,它利用了P3口的第二功能,即將P3.1引腳作為串行數據的發(fā)送線TXD,將P3.0引腳作為串行數據
30、的接收線RXD。 4、定時器/計數器 AT89C51內部有兩個16位可編程定時器/計數器,簡稱為定時器0(T0)和定時器1(T1),T0和T1分別由兩個8位寄存器構成,其中T0由THO(高8位)和TL0(低8位)構成,T1由TH1(高8位)和TL1()低8位構成。TH0、TL0、TH1、TL1都是SFR中的特殊功能寄存器。 T0和T1在TCON和TMOD的控制下可工作在定時器模式下或計數器模式下,每種模式下又有不同的工作方式。當定時或計數益處時可申請中斷。 5、中斷系統(tǒng) 單片機中的中斷系統(tǒng)指CPU暫停在正在執(zhí)行的程序轉而為中斷源服務(執(zhí)行中斷服務程序),在執(zhí)行完終端服務程序后再回到原
31、程序繼續(xù)執(zhí)行。中斷系統(tǒng)是指能夠處理上述中斷過程所需要的部分電路。 AT89C51的中斷系統(tǒng)由中斷源、中斷允許控制器IE、中斷優(yōu)先控制器IP、定時器控制器TCON(中斷標志寄存器)等構成,IE、IP、TCON均為SFR特殊功能寄存器。 6、內部總線 總線是用于傳送信息的公共途徑,總線可分為數據總線、地址總線和控制總線。單片機內的CPU、存儲器、I、O接口等單元部件都通過總線連接到一起。采用總線結構可以減少信息傳輸線的根據,提高系統(tǒng)可靠性,增強系統(tǒng)靈活性。 AT89C51單片機內部總線是單總線結構,即數據總線和地址總線是公用的。 7 、AT89C51單片機工作方式 復位方式
32、 單片機在開機時或在工作中因干擾而使程序失控或工作中程序處于某種死循環(huán)狀態(tài)等情況下都需要復位。復位的作用是使中央處理器CPU以及其他功能部件都恢復到一個確定的初始狀態(tài),從這個狀態(tài)開始工作。 (1) 復位原理 AT89C51單片機的復位靠外部電路實現,信號由RESET(RST)引腳輸入,高電平有效,在振蕩器工作時,只要保持RST引腳高電平兩個機器周期,單片機即復位。復位后,PC程序計數器的內容為0000H。片內RAM中內容不變。 (2) 常用復位電路 一般有上電復位、手動開關復位和自動復位電路三種,如圖所示。 圖5單片機復位電路 (3) AT89C51時鐘電路 振蕩
33、器于時鐘電路 單片機內各部件之間有條不紊的協(xié)調工作,其控制信號是在一種基本節(jié)拍的指揮下按一定時間順序發(fā)出的,這些控制信號在時間上的相互關系就是CPU時序。而產生這種基本節(jié)拍的電路就是振蕩器和時鐘電路。 AT89C51單片機內部有一個用于構成振蕩器的單級反向放大器,如圖所示: 圖6 AT89C51內部振蕩電路圖 引腳XTAL1為反相器輸入端,XTAL2為反相器輸出端。當在放大器兩個引腳上外接一個晶體和電容組成的并聯(lián)諧振電路作為反饋元件時,便構成一個自激振蕩器,如下圖所示: 圖7 內部振蕩器等效電路圖 五、系統(tǒng)設計 1、系統(tǒng)方框圖 電 源 信號燈
34、 AT89C51 震 蕩 部 分 復 位 電 路 圖8 2、工作原理 交通燈的亮、滅由P0口引腳P0.0、P0.4、P0.2、P0.3、P0.4、P0.5 的高、低電平控制,高電平時亮,低電平時滅。即 東西紅燈亮 P0.0=1 東西紅燈滅 P0.0=0 東西綠燈亮 P0.2=1 東西綠燈滅 P0.2=0 東西黃燈亮 P0.1=1 東西黃燈滅 P0.1=0 南北紅燈亮
35、 P0.3 =1 南北紅燈滅 P0.3=0 南北綠燈亮 P3.5 =1 南北綠燈滅 P3.5=0 南北黃燈亮 P3.4 =1 南北黃燈亮 P3.4=0 3、交通燈狀態(tài)分析 十字路口交通燈如下圖所示,將12個交通燈進行編號 圖9 這12個交通燈共有四個狀態(tài): 狀態(tài)1(S1):東西紅燈(4、10)亮,南北綠燈(3、9)亮。 狀態(tài)2(S2):南北綠燈(3、9)滅,黃燈(2、8)亮,東西仍為紅燈(4、10)亮。 狀態(tài)3(S3):南北紅燈(1、7)亮,東
36、西綠燈(6、12)亮。 狀態(tài)4(S4):東西綠燈(6、12)滅,黃燈(5、11)亮,南北仍為紅燈(1、7)亮。 具體的延時程序: mov tmod,#01h ;定時器T0工作方式 mov th0,#03ch mov tl0,#0b0h ;延時ms setb tr0 ;啟動T0工作 loop1:jbc tf0,loop2;100ms到,即TF0=1,轉到loop2,并清TF0 sjmp loop1 ;未到ms,再檢查TF0 loop2: 以上程序延時100毫秒,用軟件循環(huán)的方法,循環(huán)幾次就是幾百毫秒,如下 loop0: mov tmod,#0
37、1h ;定時器T0工作方式 mov th0,#03ch mov tl0,#0b0h ;延時ms setb tr0 ;啟動T0工作 loop1:jbc tf0,loop2;100ms到,即TF0=1,轉到loop2,并清TF0 sjmp loop1 ;未到ms,再檢查TF0 loop2: djnz r1,loop0;r1=r1-1,r1不為時,轉到loop0,繼續(xù)循環(huán),r1=0,退出循環(huán) 以上程序,r1=100時為10秒,r1=300為30秒,所以具體延時時間由r1決定。 把它放在函數delay中。供以后調用, 六、電路原理圖 1、 單片機最小系統(tǒng)
38、 圖10 單片機最小系統(tǒng) 單片機最小系統(tǒng)以AT89C51為核心,外加時鐘電路,電路結構簡單,抗干擾能力強,成本相對較低,非常符合本設計的所有要求.89c51單片機系列是在MCS-51系列的基礎上發(fā)展起來的,是當前8位單片機的典型代表,采用CHMOS工藝,即互補金屬氧化物的HMOS工藝, CHMOS是CMOS和HMOS的結合,具有HMOS高速度和高密度的特點,還具有CMOS低功耗的特點. 時鐘電路在單片機的外部通過XTAL1,XTAL2這兩個引腳跨接晶體振蕩器和微調電容,構成穩(wěn)定的自激振蕩器.本系統(tǒng)采用的為12MHz的晶振,一個機器周期為1us,C1,C2為30pF
39、。 復位電路分為上電自動復位和按鍵手動復位,RST引腳是復位信號的輸入端,復位信號是高電平有效.上電自動復位通過電容C3和電阻R2來實現,按鍵手動復位是圖中復位鍵來實現的。 上拉電阻 P0口是一個三態(tài)雙向口,可作為地址/數據分時復用口,也可作為通用的I/O接口。它包括一個輸出鎖存器、兩個三態(tài)緩沖器、輸出驅動電路和輸出控制電路組成 在輸出數據時,由于輸出級是漏極開路電路,要使“1”信號正常輸出,必須外接上拉電阻。電路圖如下 圖11 外接上拉電阻 2、交通燈電路圖 3、總的電路圖 4、救護車來時處理 ;中斷程序 ;I
40、NT0有信號時中斷 wbi: push p0;保存中斷時交通燈狀態(tài) mov a,r1;保存剩余的時間 mov p0,#09h; mov r1,#0c8h; lcall delay; mov r1,a pop p0 reti INT0信號有下降沿時,產生中斷,保存中斷時交通燈狀態(tài),并保存剩余的時間,以便20秒后恢復 七、程序流程圖 開 始 初始化時鐘程序 東西綠南北紅 剩余時間20S? 東西黃南北紅 東西方向 剩余時間3S? 南北綠東西紅 南北方向 剩余間20S? 南北黃東西紅 南北方向 剩余時間
41、3S? 否 否否 否 否 開始 外部中斷初始化 延時20秒 東南西北紅燈亮 5秒倒計時顯示 保存燈亮狀態(tài)及延時 八、程序源代碼 ORG 0000H ;起始地址為H ajmp main org 0003h ;中斷向量 ajmp wbi ;INT0有信號時中斷 org 0030h;主程序入口地址 main: setb it0 setb ex0 setb ea ;東西南北都紅燈 mov p0,#09h mov r1,#0ah;延時s lcall delay ;調用延時子程序 loop: ;東西紅燈,南北綠
42、燈 mov p0,#021h mov r1,#0c8h;延時s lcall delay;調用延時子程序 ;東西紅燈,南北黃燈 mov p0,#011h mov r1,#01eh;延時s lcall delay;調用延時子程序 ;東西綠燈,南北紅燈 mov p0,#0ch mov r1,#0c8h;延時s lcall delay;調用延時子程序 ;東西黃燈,南北紅燈 mov p0,#0ah mov r1,#01eh;延時s lcall delay;調用延時子程序 sjmp loop ;開始下一輪循環(huán) ;延時子程序 ;入口參數r1:延時時間單
43、位:ms delay: ;子程序入口 loop0: mov tmod,#01h ;定時器T0工作方式 mov th0,#03ch mov tl0,#0b0h ;延時ms setb tr0 ;啟動T0工作 loop1:jbc tf0,loop2;100ms到,即TF0=1,轉到loop2,并清TF0 sjmp loop1 ;未到ms,再檢查TF0 loop2: djnz r1,loop0;r1=r1-1,r1不為時,轉到loop0,繼續(xù)循環(huán),r1=0,退出循環(huán) ret;返回主程序 ;中斷程序 ;INT0有信號時中斷 wbi
44、: push p0;保存中斷時交通燈狀態(tài) mov a,r1;保存剩余的時間 mov p0,#09h; mov r1,#0c8h; lcall delay; mov r1,a pop p0 reti end end; 九、程序仿真 1.0秒——1秒 2、1秒——21秒 3、21秒——24秒 4、24秒——44秒 5、44秒——47秒 6、47秒——67秒 7、救護車來了 8、20秒后恢復原狀態(tài) 十、課程設計總結 此次單片機設計是根據AT89C51單片機的特點及交通燈在實際控制中的特點,做出一種用單片機
45、自動控制交通燈顯示的方法。同時給出了軟硬件設計方法,設計過程包括硬件電路設計和程序設計兩大步驟。這個設計對十字路口狀態(tài)預設為兩種,一種是正常狀態(tài),另一種是緊急狀態(tài),并分別用黃、紅、綠色燈的不同組合來表示。在設計中寫出了控制基本原理以及控制的表現,同時也介紹了城市交通信息系統(tǒng)的設計目標,開發(fā)途徑及其系統(tǒng)結構與功能和數據地理編碼,介紹了用于城市交叉路口的三色程控交通信號控制方案,對其電源供電、發(fā)光二極管構成的負載結構、燈色時間檢測都給出了詳細分析和設計 通過兩個多星期的單片機課程設計,我對單片機有了更深的體會。我了解和掌握了一些編程思想和對I/O口的使用。這次實訓通過單片機的I/O口來控制交通燈
46、。在編程的過程中,可以說是比較順利,只是摸仿其他的編程思路,再加上一些自己的思想來滿足這次實訓的任務。 通過本次設計實驗的操作,了解了交通燈的發(fā)展歷史及其工作原理,并在此基礎上設計硬件電路原理圖,編寫了相應的軟件應用程序,并調試運行成功,使理論與實際有機的結合起來,在鞏固理論知識的同時鍛煉了自己的動手實踐能力。而且,在本次實驗中,掌握了中斷處理程序和延時程序的應用,本程序用到的延時程序是采用定時器和計數器相結合的方法,充分利用了單片機的硬件資源,提高了執(zhí)行效率。還知道了如何保護進入中斷前的狀態(tài),使得中斷程序執(zhí)行完畢后能回到交通燈中斷前的狀態(tài)。 通過這次的實訓,對單片機的I/O口的使用的條件
47、有更深的理解,對單片機的各個管腳功能的理解也加深了,以及在常用編程設計思路技巧(特別是匯編語言)的掌握方面都能向前邁了一大步。這兩周的實習真的有點郁悶,程序里面的好多內容不懂,自我感覺是單片機我們所學的內容還不足以編出這兩個程序,但是只好硬著頭皮去看去理解。但在學習過程中也充滿了樂趣,當看懂了程序的一些語句,畫出了要求的設計圖,那我喜悅那種成就感油然而生。 這次實習讓我受益匪淺,無論從知識上還是其他的各個方面。上課的時候的學習從來沒有見過真正的單片機,只是從理論的角度去理解枯燥乏味。但在實習中見過甚至使用了單片機及其系統(tǒng),能夠理論聯(lián)系實際的學習,開闊了眼界,提高了單片機知識的理解和水平。在
48、這次課程設計中又讓我體會到了合作與團結的力量,當遇到不會或是設計不出來的地方,我們就會在QQ群里討論或者是同學之間相互幫助。團結就是力量,無論在現在的學習中還是在以后的工作中,團結都是至關重要的,有了團結會有更多的理念、更多的思維、更多的情感。 單片機是很重要的一門課程,老師和一些工作的朋友都曾說過,如果學好一門單片機,就憑這個技術這門手藝找一個好工作也不成問題。盡管我們在課堂學到的內容很有限,但在以后的學習中單片機還需要好好的深入研究和學習,學好了單片機也就多了一項生存的本錢。最后感謝老師對我們的精心指導和幫助,感謝同學們對我的幫助。 來源:( - 單片機課程設計心得_逆流的風_新浪博
49、客 十一、參考文獻 [1]胡漢才.單片機原理及其接口技術 [M]. 北京:清華大學出版,1996 [2]付家才. 單片機控制工程實踐技術[M]. 北京:化學工業(yè)出版社,2004.5 [3]余錫存 曹國華.單片機原理及接口技術[M].陜西:西安電子科技大學出版社,2000.7 [4]雷麗文 等.微機原理與接口技術[M].北京:電子工業(yè)出版社,1997.2 [5]蔣萬君 .在論循環(huán)時序電路的簡便設計[J] .機電一體化,2005 第5期 [6]李朝青.單片機原理及接口技術[M].北京:北京航空航天大學出版社,1999 [7]李廣第等.單片機基礎[M].北京:北京航空航天大學出版社,2001 31
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。