交通燈實驗報告_第1頁
交通燈實驗報告_第2頁
交通燈實驗報告_第3頁
交通燈實驗報告_第4頁
交通燈實驗報告_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

微機原理課程設計報告新疆農業(yè)大學計算機與信息工程學院課程題目:微機原理與幾口技術班級:電科112指導老師:張婧婧姓名:劉建國學號:114633222基于8086的交通信號控制器的設計PAGE15 基于8086的交通信號控制器的設計報告摘要:這次課程設計,我們的任務是:基于8086的交通信號控制器的設計。8086系統(tǒng)是我們這個學期學習的主線方向,我們將在8086系統(tǒng)的基礎上完成交通信號控制器的設計,其具體功能是:1.顯示十字路口東西、南北2個方向的紅、黃、綠的指示狀態(tài)。2.實現正常的倒計時功能。用2組數碼管作為東西和南北方向的倒計時顯示,顯示時間為紅燈30s,綠燈50s,黃燈5s。3.按S1鍵能實現特殊的功能,顯示倒計時的2組數碼管閃爍,計數器停止計數并保持在原來的狀態(tài);東西、南北路口均顯示紅燈狀態(tài);特殊狀態(tài)解除后能繼續(xù)計數。4.按S2鍵實現總體清零功能。計數器由初始狀態(tài)計數,對應的指示燈亮。關鍵詞:8086系統(tǒng)7415474HC3738255ALED交通燈(一)1)設計目的交通信號控制燈是日常交通不可缺少的工具,涉及到人們的人生和財產安全,在道路行駛上起了相當關鍵的作用,因而設計交通信號控制燈是非常有意義的。同時我們這次設計的課題就是“基于8086交通信號控制器的設計”,基于以上目的,我利用一周時間精心設計出課題要求的交通燈。2)設計思想在此次設計過程中,我們選擇了數碼管、發(fā)光二極管、74LS138、74LS373、8255A和8086來控制實現交通燈按設計要求工作。3)硬件部分1、LED設計說明:用LED作為倒計時時間的顯示器,LED在亮度、功耗、可視角度和刷新速率等方面,都更具優(yōu)勢。LED與LCD的功耗比大約為10:1,利用LED技術,可以制造出比LCD更薄、更亮、更清晰的顯示器,LED是發(fā)光二極管屬于二極管的一種,LCD是液晶顯示器,兩者相差太多.但是用LED的點陣也能組成顯示器,適用于戶外大屏幕顯示,分辨率較低,LED與LCD具體比較如下圖表1-1:LCD與LED的比較LCD液晶顯示器,通過液晶和彩色過濾器過濾光源,在平面面板上產生圖象,具有零輻射,低耗能,散熱小,纖薄輕巧,精確還原圖象,顯示字符銳利,屏幕調節(jié)方便,可視角度小,響應時間過慢,亮度可對比度低等特點LED發(fā)光二極管,是由發(fā)光二極管排列組成的顯示器件,它采用低電壓掃描技術,具有耗電少,使用壽命長,成本低,亮度高,故障少,視角大,視角大,可視距離遠的特點通過分析和對比,LED顯示器要較優(yōu)于LCD顯示器,因此本實驗選擇LED2、8255設計說明:用8255A可編程并行接口芯片的A、B、C三口作為紅、綠、黃交通燈的控制輸入口。8255有三個并行輸入輸出口,可以方便的對三種顏色的交通燈進行很好的控制。解決方案是:PB0~PB7接模擬燈二極管,PA0~PA7接7段二極管的段選,PC0~PC3接7段二極管的位選,PC4~PC7與開關相連,處理器芯片集成芯片卡PCI卡連接,用于完成硬件方面的實驗正常通信。其芯片比較說明:如下表:表1-2:8255A與8251芯片的比較比較內容8255A芯片8251A芯片通信方式并行串行數據傳送方式數據的各位同時傳送,數據一位一位地順序傳送,,內部組成8155內有256字節(jié)RAM和一個定時計數器。8255沒有特點通信線路較8251復雜通信線路簡單,利用電話或電報線路就可實現通信輸入/輸出編程較為靈活編程較8255不夠靈活應用范圍使用十分方便,傳輸距離近,成本較高傳輸距離遠,使用不方便,但傳輸速度慢,降低成本,初始化特點8255A直接位清0/置1功能簡化了接口控制8251在初始化時,必須重新設置模式寄存器的格式.4)、軟件部分根據硬件需求采用8255A芯片,為實現對通信的控制,采用匯編語言,分別編程控制8255的工作方式,在編程時應考慮到狀態(tài)的轉換采用查詢方式控制,根據需求分析可采用8255的方式0下工作,具體設置如下:硬件連接說明:8255A芯片的PA、PB、PC三口的工作方式為方式0,將8255的PB0~PB5接紅綠燈用以模擬交通燈的變化,PA0~PA7接7段LED燈的段選碼,,完成LED顯示器的段選,PC0~PC3接LED顯示器的位選碼用以完成位選,PC4-PC7接開關,以完成初值接收。初始化8255后。利用匯編語言編寫訪問控制程序,控制綠燈的顯示倒記時間,它與紅燈的顯示時間是相同的,編寫控制程序控制黃燈的閃爍時間,當綠燈的顯示時間結束后切換到黃燈,再切換到紅燈,如此循環(huán)下去。(二)、選擇芯片8255A1)、8255A在本實驗中的作用:通過8255A的三個I/O端口A口、B口、C口與紅、綠、黃二極管連接起來控制交通燈的規(guī)律性變化。2)、8255A的功能分析:PA、PB、PC三口均工作在方式0狀態(tài)。:PB0~PB1接紅燈,PB2~PB3接黃燈,PB4~PB5接綠燈;PA0~PA7作為段選碼;PC0~PC3作為位選碼。我們采用的是將PC口分成兩部分使用,PC0-PC3作為位選碼,PC4-PC7作為輸入口,接收開關輸入的初值信息。將在用8255A前首先要對它進行初始化,設置它的方式選擇控制字。3)、8255A工作方式0說明:方式0的工作特點:這種方式通常不用聯絡信號,不使用中斷,三個通道中的每一個都有可以由程序選定作為輸入或輸出。其功能為:(1)兩個8位通道:通道A、B。兩個四位通道:通道C高4位和低四位;(2)任何一個通道可以作輸入/輸出;(3)輸出是鎖存的;(4)輸入是不鎖存的;(5)在方式0時各個通道的輸入/輸出可有16種不同的組合。方式0的使用場合:同步傳送是在外設控制過程的各種動作時間為固定,且已知的條件下使用的。因此,傳送中不要應答信號。輸入時,執(zhí)行程序只要給出IN指令;而輸出時,也只給出OUT指令,就能實現數據的輸入或輸出。優(yōu)點是程序簡單,接口的硬件開銷小。查詢式傳輸時,要先查詢一個外設的狀態(tài),當該狀態(tài)表示外設已準備好時,方能開始查詢傳輸,否則CPU將繼續(xù)查詢。但在方式0,沒有規(guī)定固定的應答信號,所以,這時將通道A、B作為數據通道,把通道C的4個位(高4位或低4位)規(guī)定為輸出口,用來輸出一些控制信號,而把通道C的另外4個位規(guī)定為輸入口,用來輸入外設的狀態(tài)。這樣利用通道C來配合通道A和B的輸入/輸出操作。4)、8255A方式選擇控制字說明:控制字格式如圖1-2:圖1-2:8255A芯片的控制字格式參數說明:D7=1工作方式控制標志。D6D5組合設定A口工作方式:00~方式0、01~方式1、10/11~方式2。D4設定A口的輸入/輸出,D4=1輸入D4=0輸出。D3C口高位輸入/輸出選擇,D3=1輸入D3=0輸出。D2B口工作方式選擇,D2=1方式1;D2=0方式0。D1B口輸入/輸出選擇D1=1輸入D1=0輸出。D0設定C口低位輸入/輸出D0=1輸入D0=0輸出。5)、8255A技術參數:主要參數說明:8255A工作最大電流為120MA,VCC=-5V~+5V,I(DAR)工作電流最大為4MA。8255的輸出電壓不高,連接到LED時,最好加入一個驅動器起到電流放大的作用,其具體參數值說明如表3-1。表1-3:8255A技術參數說明8255A技術參數測試條件規(guī)范值單位大小輸入低電平電壓VIL0.8-0.5V輸入高電平電壓VIHVCC2.0V輸出低電平電壓VOL(數據端口)IOL=2.5MA0.45V輸出低電平電壓VOL(外圍端口)IOL=1.7MA0.45V輸出高電平電壓VOH(數據端口)IOR=-400MA2.4V輸出高電平電壓VOH(外圍端口)IOH=-200MA2.4V達林頓驅動電流IOAR-4.0-1.0mA電源電流ICC120mA輸入負載電流IILIIN=0~VCCI/OmA輸出浮動電流IOFVOR=0.45~VCCI/OmA6)、8255A的邏輯圖圖1-3:8255A內部邏輯圖0110110156dH0111110167dH00000111707H0111111187fH0110111196fH(三)、硬件總邏輯圖及其說明1)、硬件原理說明:本設計以PROTUES實驗仿真軟件提供的最實用、新穎的實驗系統(tǒng)和EMU8086提供的匯編環(huán)境進行課程軟件設計的,在課程設計中主要利用了PROTUES軟件提供的8255A芯片、74LS138、74LS373、7段LED顯示器以及紅綠燈LED顯示二極管,課程設計時完成編程調試的是emu8086環(huán)境。2)、硬件連接說明:8255A芯片的PA、PB、PC三口的工作方式為方式0,將8255的PB0~PB7接紅綠燈用以模擬交通燈的變化,PA0~PA7接7段LED燈的段選碼完成LED顯示器的段選,P74LC0~PC3接LED顯示器的位選碼用以完成位選。將8255A芯片的片選信號CS與74LS138的CS1相連接來決定各端口的初始地址。8255A芯片的PB口中PB0~PB7與紅綠黃燈相連接,用來實現控制交通燈的變化規(guī)律;8255A的PC口中的PC0~PC3與7段LED燈的位選碼相連接,用來實現選擇綠燈倒計時時的7段LED燈的位置選擇,8255A芯片的PA口中的PA0~PA7與7段LED燈的段選碼相連接,用來實現7段LED燈的段選碼選擇。LED燈管的a、b、c、d、e、f、g、dp做為段選來顯示倒計時數據。圖1-5:硬件總連接圖(四)、控制程序設計1)控制程序設計思路說明:首先,明確交通燈的變化規(guī)律,假設在一個十字路口,其中東西方向,南北方向,工作方式如下:將紅黃綠燈按照紅燈停,綠等行,黃燈閃爍為緩沖時間的原則進行通車。倒計時將可以由用戶自由設定,用8255的PB,PC口來連接紅黃綠燈電路板,而PA口連接LED顯示管來計數倒計時。開始時初始化東西南北方向全為紅燈,然后東西方向綠燈亮,進入倒計時默認值50秒,結束后東西方向綠燈閃爍5次,變黃燈亮5秒,然后紅燈亮;南北方向綠燈亮,此時南北方向進入倒計時,倒計時時間可以在開關口提前設定本次倒計時時間。結束后綠燈閃爍5秒后,變黃燈亮5秒,然后紅燈亮,東西方向綠燈亮,如此循環(huán)下去。其次,主程序的設計思路:首先初始化8255A的芯片的控制字格式和狀態(tài)字格式,其次設置交通燈開始運行的初始狀態(tài)并做相應的延時便于觀察,再次調用子程序對東西綠燈的倒計時時間,調用子程序顯示綠燈的倒計時,后進行查表選擇相應的LED燈的段選碼,使相應的燈亮,顯示東西綠燈交通燈變化,然后設置綠燈的閃爍,以及黃燈的亮持續(xù),再次就是查表設置轉換成南北綠燈的亮,同時調用子程序設置南北綠燈的倒計時時間,后進行查表選擇相應的LED燈的段選碼,使相應的燈亮,顯示南北綠燈交通燈變化,然后做南北綠燈的閃爍,和黃燈的亮持續(xù),最后做主程序的循環(huán),利用無條件跳轉指令。開始2)、程序流程圖開始程序初始化 程序初始化東西紅南北綠路口紅燈全亮 東西紅南北綠路口紅燈全亮倒計時開始東西綠南北紅開始倒計時倒計時開始東西綠南北紅開始倒計時Cx=5 Cx=5Cx=5 Cx=5南北綠燈滅東西綠燈,南北紅燈南北綠燈滅東西綠燈,南北紅燈 延時500ms延時500ms延時500ms延時500ms南北綠燈亮cx自減1東西綠燈滅,cx自減1 南北綠燈亮cx自減1東西綠燈滅,cx自減1 Cx=0Cx=0 Cx=0Cx=0南北黃燈亮延時5s 南北黃燈亮延時5s東西黃燈亮延時5s 東西黃燈亮延時5s 圖1-6:主控制程序再次,也設計了一個到計時顯示子程序,用來顯示綠燈的到計時時間,設計思路:首先要保存進入到計時子程序時的斷點保存,以保證能夠子程序結束能夠正常返回主程序,其次設置LED燈的秒數跳的快慢,使其運行結果便于觀察,再次設置程序分別顯示到計時LED燈的秒數的個位與十位,在顯示秒數的個位與十位時要做秒數的個位與十位計數是否到零的判斷,與此同時也要做秒數的個位與十位的斷選碼指示器的移動,最后做恢復斷點和子程序的返回。其控制流程圖:進入進入顯示個位延時顯示十位延時個位減一十位減一個位賦9返回CX=0個位等于表外第一個地址十位等于表外第一個地址 N N圖1-7:倒計時顯示程序最后,還設計了兩個延時程序,一個是綠燈閃爍3次時間的延時DL500子程序,一個是延時黃燈亮的時間DELAY子程序;DL500子程序的設計思路利用了設備提供的軟中斷實現的延時,其控制流程如(流程圖:1-7);DELAY子程序的設計利用的是多次循環(huán)空操作實現,思路首先保存斷點設置空操作的次數,做判斷循環(huán)是否該結束,然后恢復斷點,返回主程序,其控制流程如下保存斷點保存斷點MOVAH,0FFHINT21H星研公司提供的軟中斷實現延時恢復保存中斷返回圖1-8:500ms延時程保存斷電保存斷電置空操作循環(huán)次數置空操作循環(huán)次數循環(huán)計數器是否為0循環(huán)計數器是否為0 N恢復斷點恢復斷點7段LED燈顯示清07段LED燈顯示清0返回返回圖1-9:DELAY延時程序3)、控制程序IO2EQU20HCODESEGMENT'CODE' ASSUMECS:CODE,DS:CODESTART: MOVAX,CODE MOVDS,AX MOVAL,10000000B MOVDX,IO2+6 OUTDX,AL MOVDX,IO2+2 MOVAL,00100100B;黃燈亮 OUTDX,AL MOVBX,100WAIT1:MOVCX,882 LOOP$ DECBX JNZWAIT1 MOVAL,00000000B;黃燈滅 OUTDX,AL MOVBX,100WAIT2:MOVCX,882 LOOP$ DECBX JNZWAIT2 MOVAL,00100100B;黃燈亮 OUTDX,AL MOVBX,200WAIT3:MOVCX,882 LOOP$ DECBX JNZWAIT3L: MOVAL,00010001B;紅燈,綠燈亮 OUTDX,AL MOVBX,400WAIT4:MOVCX,882 LOOP$ DECBX JNZWAIT4 MOVAL,00010100B;紅燈,黃燈亮 OUTDX,AL MOVBX,100WAIT5:MOVCX,882 LOOP$ DECBX JNZWAIT5MOVAL,00010000B;紅燈亮 OUTDX,AL MOVBX,100WAIT6:MOVCX,882 LOOP$ DECBX JNZWAIT6 MOVAL,00001010B;紅燈、綠燈亮 OUTDX,AL MOVBX,100WAIT7:MOVCX,882 LOOP$ DECBX JNZWAIT7 MOVAL,00100010B;綠燈、黃燈亮 OUTDX,AL MOVBX,400WAIT8:MOVCX,882 LOOP$ DECBX JNZWAIT8 MOVAL,00000010B;紅燈亮 OUTDX,AL MOVBX,100WAIT9:MOVCX,882 LOOP$ DECBX JNZWAIT9 JMPLCODEENDS ENDSTART (五)、心得體會:通過此次模擬實驗設計,加深了對芯片、8086以及8255A的理解,對8255A芯片的PA口、PB口、PC口的初始化設計有了更好的了解,同時在對8255A芯片的工作方式選擇,有了更好的認識。通過實驗的硬件連接,使我認識到實驗時獨自動手能力的重要性,也使我們意識到我們的動手能力的欠缺,使我們認識到在以后的學習和其他工作時應對獨自動手能力的培養(yǎng)。在課本上學得都是些理論知識,通過本次的實際操作,更加鍛煉了我們對所學知識的認知應用能力,對8

溫馨提示

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

評論

0/150

提交評論