




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、成績 南京工程學(xué)院通信工程學(xué)院課程設(shè)計(jì)說明書(論文)題 目 交通信號(hào)燈模擬控制系統(tǒng)的設(shè)計(jì) 課 程 名 稱 微機(jī)原理與接口技術(shù) 專 業(yè) 班 級(jí) 學(xué) 生 姓 名 學(xué) 號(hào) 設(shè) 計(jì) 地 點(diǎn) 指 導(dǎo) 教 師 設(shè)計(jì)起止時(shí)間:2013年12月23日至2013年12月27日目錄1、設(shè)計(jì)目的.22、設(shè)計(jì)內(nèi)容及要求.23、設(shè)計(jì)原理.23.1、電路接線方案.23.2、定時(shí)問題.33.3、工作狀態(tài).34、實(shí)驗(yàn)元件解釋.34.1、 可編程并行通信接口8255A. .34.2、可編程計(jì)數(shù)器/定時(shí)器8253.45、程序流程圖及說明.55.1、基本和中級(jí)要求的流程圖.55.2、高級(jí)要求的流程圖.65.3、流程圖說明.76、實(shí)
2、驗(yàn)源代碼及解釋.77、實(shí)際接線圖.138、運(yùn)行結(jié)果.139、設(shè)計(jì)心得與體會(huì).1610、主要參考文獻(xiàn).161、設(shè)計(jì)目的通過課程設(shè)計(jì)加深理解課堂教學(xué)內(nèi)容,掌握微機(jī)原理的基本應(yīng)用方法。通過實(shí)驗(yàn)熟悉微機(jī)基本接口芯片的外型、引腳、編程結(jié)構(gòu),掌握匯編語言程序設(shè)計(jì)和微機(jī)基本接口電路的設(shè)計(jì)、應(yīng)用方法,做到理論聯(lián)系實(shí)際。2、設(shè)計(jì)內(nèi)容及要求2.2.1功能要求:1) 假設(shè)在一個(gè)A道(東西方向)和B道(南北方向)交叉的十字路口安裝有自動(dòng)信號(hào)燈。當(dāng)A道和B道均有車輛要求通過時(shí),A道和B道輪流放行。A道放行7秒鐘,B道再放行5秒鐘,依次輪流。綠燈轉(zhuǎn)換紅燈時(shí)黃燈亮1秒鐘。2) 一道有車,另一道無車時(shí)(實(shí)驗(yàn)時(shí)用開關(guān)K5和K6
3、控制),交通控制系統(tǒng)能立即讓有車道放行。3) 有緊急車輛要求通過時(shí),系統(tǒng)要能禁止普通車輛通過,A、B道均為紅燈,緊急車由K7開關(guān)模擬,有緊急車時(shí)另有一紅燈閃爍。2.2.2難度要求:4) 基本要求:采用8255輸出控制信號(hào)燈,8255輸入K5、K6、K7控制開關(guān)信號(hào),用循環(huán)程序軟件定時(shí)實(shí)現(xiàn)功能要求;(60分)5) 中級(jí)要求:采用8255輸出控制信號(hào)燈,8255輸入K5、K6、K7控制開關(guān)信號(hào),用8253硬件定時(shí),軟件查詢方式實(shí)現(xiàn)功能要求;(80分)6) 高級(jí)要求:在中級(jí)要求的基礎(chǔ)上,增加用8255輸出驅(qū)動(dòng)LED數(shù)碼顯示器顯示綠燈倒計(jì)時(shí)秒數(shù),黃燈時(shí)不顯示時(shí)間。(100分)3、設(shè)計(jì)原理設(shè)計(jì)任務(wù)中的A
4、道代表東西方向,B道代表南北方向。3.1、電路接線方案: 交通信號(hào)燈由實(shí)驗(yàn)儀的LED發(fā)光二極管模擬,由8255-PA輸出控制:見下表。帶時(shí)間顯示的交通信號(hào)燈模擬控制系統(tǒng) 8255A輸入/輸出信號(hào)一覽表(供參考)8255-PB輸出方式PCH輸入方式8255-PA輸出方式PCL輸出方式引腳輸出信號(hào)引腳輸入信號(hào)引腳輸出信號(hào)引腳輸出信號(hào)PB7驅(qū)動(dòng)數(shù)碼管字型PC7K7PA7緊急車輛閃光PB6PC6K6PA6東西紅燈PB5PC5K5PA5東西黃燈PB4PC48253-OUT2PA4東西綠燈PB3PA3PC3PB2PA2南北紅燈PC2PB1PA1南北黃燈PC1PB0PA0南北綠燈PC0數(shù)碼管的位碼選擇注:1
5、)、8255-PA輸出方式可根據(jù)實(shí)驗(yàn)設(shè)備紅綠黃燈具體位置改變 2)、采用軟件延時(shí),則8255的PC4不用接8253-OUT2。數(shù)碼管的位碼選擇 3.2、定時(shí)問題用8253#2工作方式0進(jìn)行500ms定時(shí),CLK2接125kHz時(shí)鐘信號(hào),GATE2接高電平,OUT2接8255-PC4。主程序通過查詢8255-PC4的狀態(tài),獲知準(zhǔn)確的定時(shí)信息。也可以采用軟件延時(shí),500ms延時(shí)子程序參見實(shí)驗(yàn)一。3.3、工作狀態(tài)根據(jù)設(shè)計(jì)任務(wù)功能要求,依K5、K6、K7的狀態(tài)分為四種工作狀態(tài):狀態(tài)0:K5、K6、K7均斷開(1電平)或K5、K6均閉合K7斷開,A、B道交替通行;狀態(tài)1:僅K5閉合,A道有車、B道無車;
6、狀態(tài)2:僅K6閉合,A道無車,B道有車;K5和K6均閉合,A、B道都有車,A、B道交替通行;狀態(tài)3:K7閉合,有緊急車輛通行。4、實(shí)驗(yàn)元件及解釋4.1、 可編程并行通信接口8255A8255A的端口地址設(shè)為A口0F000H,B口0F001H,C口0F002H,寄存器端口0F003H將LED 燈的D0D7分別與8255A的PC0PC7相連,具體連接如下:D01路口綠燈,D41路口紅燈。D12路口綠燈,D52路口紅燈。D23路口綠燈,D63路口紅燈。D34路口綠燈,D74路口紅燈。其中:1、3路口魏東西方向,2,4路口為南北方向。系統(tǒng)中的8255A電路如圖(B4區(qū):8255A電路)4.2、可編程計(jì)
7、數(shù)器/定時(shí)器8253用LED(發(fā)光二極管)模擬信號(hào)燈,8255A實(shí)現(xiàn)對信號(hào)燈的控制(PC0PC6分別接D0D6),8253的計(jì)數(shù)器2實(shí)現(xiàn)基本單位定時(shí)(如10ms)信號(hào)的輸出;再用8255A的PA口查詢定時(shí)信號(hào)的變化,并統(tǒng)計(jì)脈沖數(shù),以實(shí)現(xiàn)3min、5s和1s的定時(shí)實(shí)驗(yàn)系統(tǒng)中8253計(jì)數(shù)器2的CLK2可接OPCLK,頻率為1.19318MHz,GATE2接+VCC,OUT2接8255A的PA0。定時(shí)可采用軟硬件香結(jié)合的方式實(shí)現(xiàn)。系統(tǒng)中8253電路如圖(C5區(qū):8253電路)8253端口地址:0#計(jì)數(shù)器0B000H,1#計(jì)數(shù)器0B001H,2#計(jì)數(shù)器0B002H,控制寄存器0B003H。5、程序流程
8、圖及說明5.1、基本和中級(jí)要求的流程圖:5.2、高級(jí)要求的流程圖5.3、流程圖說明流程圖1設(shè)計(jì)思想:1、 主程序每0.5秒循環(huán)一次,每次查詢?nèi)齻€(gè)開關(guān)狀態(tài),及時(shí)響應(yīng)開關(guān)狀態(tài)的變化。其中CNT0和CNT3分別用于記錄狀態(tài)0和狀態(tài)3工作進(jìn)程的進(jìn)程計(jì)數(shù)器,可以用寄存器或內(nèi)存變量實(shí)現(xiàn)。2、 常用的工作狀態(tài)0是A、B道交替通行,一個(gè)周期用時(shí)14秒。用CNT0以0.5秒為單位進(jìn)行加1計(jì)數(shù),從0到27循環(huán)計(jì)數(shù),CNT0/2就可知本周期進(jìn)行到第幾秒了。根據(jù)設(shè)計(jì)任務(wù)功能要求,第0秒,A道紅燈、B道黃燈;第17秒,A道綠燈、B道紅燈;第8秒,A道黃燈、B道紅燈;第913秒,A道紅燈、B道綠燈。3、 工作狀態(tài)3中,C
9、NT3只有2種狀態(tài)(0和0FFH),用于控制緊急車輛的燈光閃爍。4、 時(shí)間顯示采用實(shí)驗(yàn)儀的數(shù)碼管顯示。只用一個(gè)數(shù)碼顯示器顯示綠燈通行倒計(jì)時(shí),A道顯示數(shù)=8-CNT0/2,B道顯示數(shù)=14-CNT0/2。參考流程圖2。如果用2個(gè)數(shù)碼顯示器分別顯示A道、B道的倒計(jì)時(shí),則需要用到動(dòng)態(tài)顯示掃描技術(shù),難度較大,定為加分項(xiàng)目。在500ms延時(shí)子程序中循環(huán)調(diào)用動(dòng)態(tài)顯示掃描子程序,定時(shí)器的定時(shí)周期應(yīng)縮短到5ms。參考流程圖3。此功能難度較大,定為加分項(xiàng)目。2個(gè)數(shù)碼管的位碼選擇(低電平有效)有8255的PC3、PC0來確定,接線到數(shù)碼管選擇腳接口JP41(注意JP41的接插方法:JP41只接插一半,用PCL接J
10、P41的1-4引腳。如果PCL與JP41完全連接,PC4對應(yīng)位會(huì)顯示倒計(jì)時(shí)數(shù)碼)。顯示內(nèi)容由8255的B口接線到數(shù)碼管段碼接口JP42。6、實(shí)驗(yàn)源代碼及解釋源程序如下: .MODEL TINYCOM_ADDR EQU 0B003H ;8253控制寄存器端口地址T0_ADDR EQU 0B000H ;計(jì)數(shù)器0T1_ADDR EQU 0B001H ;計(jì)數(shù)器1T2_ADDR EQU 0B002H ;計(jì)數(shù)器2COM_ADD EQU 0F003H ;8255控制寄存器端口地址PA_ADD EQU 0F000H ;PA口PB_ADD EQU 0F001H ;PB口PC_ADD EQU 0F002H ;PC
11、口.STACK 300.DATALED_DATA DB 10111101B ;東西紅燈,南北黃燈 DB 11101011B ;東西綠燈,南北紅燈 DB 11011011B ;東西黃燈,南北紅燈 DB 10111110B ;東西紅燈,南北綠燈 DB 00111011B ;東西紅燈,南北黃燈,緊急車輛閃光亮 DB 10111011B ;東西紅燈,南北黃燈,緊急車輛閃光滅SHUMA DB 01111111B ;0 DB 00000110B ;1 DB 01011011B ;2 DB 01001111B ;3 DB 01100110B ;4 DB 01101101B ;5 DB 01111101B ;
12、6 DB 00000111B ;7 DB 01111111B ;8CNT0 DB ? ;定義一個(gè)字節(jié)變量,初始值不定CNT3 DB ?.CODESTART: MOV AX,DATA ;AX=0040H MOV DS,AX MOV DX,COM_ADD ;8255初始化 MOV AL,88H ;AL=1000 1000,A口方式0輸出,B口方式0輸出,C口高四位輸入,低四位輸出 OUT DX,AL ;把AL中的內(nèi)容送入DX端口 MOV DX,COM_ADDR ;8253初始化 MOV AL,0B0H ;AL=1011 0000,通道2,先讀/寫寄存器低字節(jié),后讀/寫高字節(jié) OUT DX,AL ;
13、把AL中的內(nèi)容送入DX端口 MOV DX,PC_ADD ;位碼選擇 IN AL,DX ;把DX端口的數(shù)據(jù)送入AL AND AL,0FEH ;邏輯與指令,使最低位清零 OR AL,01H ;邏輯或指令,使 最低位置1 OUT DX,AL ;把AL中的內(nèi)容送入DX端口 MOV CNT0,0 ;CNT0=0 MOV CNT3,0 ;CNT3=0LP: CALL DL500ms ;調(diào)用DL500ms的指令 MOV DX,PC_ADD ;將PC端口地址送給DX IN AL,DX ;把DX端口的數(shù)據(jù)送入AL TEST AL,80H ;1000 0000 PC7 檢查AL的D7=1? JZ K7 ;ZF=1
14、,轉(zhuǎn)移 JMP JMP1 ;無條件轉(zhuǎn)JMP1K7: MOVCH,CNT3 ;緊急情況 CMPCH,0 ;比較CH-0 JZRRS ;ZF=1則轉(zhuǎn)移RRM: MOVAL,5 ;AL=0005H XLAT ;AX=BBH ;Red Red Dark MOVDX,PA_ADD ;DX=0F000H OUTDX,AL ;將AL的值寫入DX端口 JMPLAST0 ;跳轉(zhuǎn)到JMP1RRS: MOVAL,4 ;AL=0004H XLAT ;AX=3BH ;Red Red Light MOVDX,PA_ADD ;DX=0F000H OUTDX,AL ;將AL的值送入DX端口 CALLDL500ms ;調(diào)用DL
15、500ms指令 MOVAL,5 ;AL=0005H XLAT ;AX=BBH ;Red Red Dark MOVDX,PA_ADD ;DX=0F000H OUTDX,AL ;將AL的值送入DX端口LAST0: MOVDX,PB_ADD ;DX=0F001H MOVAL,00H ;AL=00H OUTDX,AL ;將AL的值寫入DX端口 XORCH,0FFH ;異或指令,使操作數(shù)的某些位保留(與“0異或”)使某些位取反(與“1異或”) MOVCNT3,CH ;CH=0FFH MOVCNT0,0 ;CNT0=0 JMPLP ;跳轉(zhuǎn)到LP指令JMP1: MOVDX,PC_ADD ;DX=0F002H
16、 INAL,DX ;將DX端口的內(nèi)容賦值給AL TESTAL,20H ;檢測(0010 0000) PC5 JNZJMP2 ;ZF=0,轉(zhuǎn)移 MOVDX,PC_ADD ;DX=0F002H INAL,DX ;將DX端口的內(nèi)容賦值給AL TESTAL,40H ;檢測(0100 0000) PC6 JNZK5 ;ZF=0,轉(zhuǎn)移 JMPJMP3 ;無條件跳轉(zhuǎn)JMP3指令K5: MOVAL,1 ;AL=0001XLAT ;00EBH MOVDX,PA_ADD ;DX=0F000H OUTDX,AL ;將AL的值送入DX端口 MOVDX,PB_ADD ;DX=0F001H MOVAL,00H ;AL=0
17、0H OUTDX,AL ;將AL的值送入DX端口 MOVCNT0,0 ;CNT0=0 MOVCNT3,0 ;CNT3=0 JMPLP ;無條件跳轉(zhuǎn)LPJMP2: MOVDX,PC_ADD ;DX=0F002H INAL,DX ;將DX端口中的內(nèi)容賦值給AL TESTAL,40H ;檢測(0100 0000) PC6 JZK6 ;ZF=1,則轉(zhuǎn)移 JMPJMP3 ;無條件轉(zhuǎn)移JMP3K6: MOVAL,3 ;AL=0003 XLAT ;DBH MOVDX,PA_ADD ;DX=0F000H OUTDX,AL ;將AL的值送入DX端口 MOVDX,PB_ADD ;DX=0F001H MOVAL,0
18、0H ;AL=00H OUTDX,AL ;將AL的值送入DX端口 MOVCNT0,0 ;CNT0=0 MOVCNT3,0 ;CNT3=0 JMPLP ;無條件跳轉(zhuǎn)LP指令LP1: JMPLP ;無條件跳轉(zhuǎn)LP指令JMP3: MOVCNT3,0 ;CNT3=0 MOVCH,CNT0 ;CH=CNT0 SHRCH,1 ;CH=CNT0/2 ,CH右移一位 LEABX,LED_Data ;取源操作地址的偏移量,并把它送到目的操作數(shù)所在單元 CMPCH,0 ;比較CH-0 JZRY ;ZF=1,相等則轉(zhuǎn)移 CMPCH,8 ;定時(shí)8s JBGR ;CF=1,低于則轉(zhuǎn)移 CMPCH,8 ;定時(shí)8s JZY
19、R ;ZF=1,相等則轉(zhuǎn)移 JMPRG ;無條件轉(zhuǎn)移RGRG: MOV AL,3 ;AL=0003 Red Green XLAT ;BEH MOV DX,PA_ADD ;DX=0F000H OUT DX,AL ;將AL的值送入DX端口 PUSH BX ;51S倒計(jì)時(shí) LEA BX,SHUMA ;轉(zhuǎn)換字形碼 MOV AL,14 SUB AL,CH ;AL=AL-CH/2 XLAT ;表轉(zhuǎn)換 MOV DX,PB_ADD OUT DX,AL POP BX ;顯示倒計(jì)時(shí)LAST: INC CNT0 ;指向下一個(gè)元素 CMP CNT0,28 ;一個(gè)計(jì)時(shí)周期28s JNZ LP1 ;ZF=0,則轉(zhuǎn)移 MO
20、V CNT0,0 ;CNT0=0 JMP LP1 ;無條件轉(zhuǎn)移LP1RY: MOV AL,0 ;AL=0000 Red Yellow XLAT ;表轉(zhuǎn)換 MOV DX,PA_ADD ;DX=0F000H OUT DX,AL ;將AL的值送入DX端口 MOV DX,PB_ADD ;DX=0F001H MOV AL,00H ;AL=00H OUT DX,AL ;將AL的值送入DX端口 JMP LAST ;無條件轉(zhuǎn)LAST指令GR: MOV AL,1 ;AL=0001 Green Red XLAT ;表轉(zhuǎn)換 MOV DX,PA_ADD ;AX=0F000H OUT DX,AL ;將AL的值送入DX端
21、口 PUSH BX ;71s倒計(jì)時(shí) LEA BX,SHUMA ;轉(zhuǎn)換字形碼 MOV DX,PB_ADD ;DX=OF001H MOV AL,8 ;AL=0008 SUB AL,CH ;AL=AL-CH/2 XLAT ;表轉(zhuǎn)換 BDH MOV DX,PB_ADD ;DX=0F001H OUT DX,AL ;將AL的值送入DX端口 POP BX ;顯示計(jì)時(shí) JMP LAST ;無條件轉(zhuǎn)移LAST指令YR: MOV AL,2 ;AL=0002 XLAT ;表轉(zhuǎn)換 EBH Yello Red MOV DX,PA_ADD ;DX=0F000H OUT DX,AL ;將AL的值送入DX端口 MOV DX,PB_ADD ;DX=0F001H MOV AL,00H ;AL=0000 OUT DX,AL ;將AL的值送入DX端口 JMP LAST ;無條件轉(zhuǎn)移LAST指令DL500ms: PROC NEAR MOV DX,T2_ADDR MOV AL,24H ;62500=F424H OUT DX,AL ;將AL的值送入DX端口 MOV AL,0F4H ;AL=0F4H OUT DX,AL ;將AL的值送入DX端口DEL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)產(chǎn)品銷售與供應(yīng)鏈優(yōu)化合作協(xié)議
- 2025閑置土地承包合同模板
- 行政管理的現(xiàn)代化趨勢試題及答案
- 2025年版北京租房合同范本
- 行政管理中的人際溝通障礙分析試題及答案
- 行政管理學(xué)與社會(huì)發(fā)展結(jié)合試題及答案
- 建筑工程的戰(zhàn)略投資分析試題及答案
- 現(xiàn)代管理學(xué)的道德困境試題及答案
- 2025關(guān)于汽車維修保養(yǎng)合同的樣本模板
- 行政管理中的非正式溝通試題及答案
- 2025江蘇中考:物理高頻考點(diǎn)
- 餐飲抽成合同協(xié)議書
- 2025年江西省安??h事業(yè)單位公開招聘輔警36名筆試題帶答案
- 大神心理測試題及答案
- 2025初級(jí)《銀行業(yè)法律法規(guī)與綜合能力》高分必會(huì)試題庫1000題-單選500題
- 低值易耗品試題及答案
- 2025春季學(xué)期國開河南電大本科《行政管理理論與實(shí)踐專題講座》一平臺(tái)無紙化考試(作業(yè)練習(xí)+我要考試)試題及答案
- 2025年新高考地區(qū)數(shù)學(xué)名校地市選填壓軸題好題匯編(八)(解析版)
- 全球汽車產(chǎn)業(yè)發(fā)展現(xiàn)狀與趨勢
- 機(jī)械制造質(zhì)量整改報(bào)告范文
- 2025年春人教版英語七年級(jí)下冊 Unit 7 A Day to Remember(教學(xué)設(shè)計(jì))
評論
0/150
提交評論