




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上微機(jī)原理與接口技術(shù)實(shí)驗(yàn)報(bào)告綜合實(shí)驗(yàn) 紅綠燈仿真及實(shí)現(xiàn) 專業(yè): 電力系 班級(jí): 電氣1409 學(xué)號(hào): * 姓名: WAY 預(yù)習(xí)報(bào)告成績 實(shí)驗(yàn)成績: 實(shí)驗(yàn)日期及時(shí)間:(1) 2017/5/13 機(jī)位號(hào): (2) 2017/5/20 機(jī)位號(hào): B11 指導(dǎo)教師: 秦金磊 專心-專注-專業(yè)綜合實(shí)驗(yàn)項(xiàng)目基本要求(任務(wù)書):設(shè)計(jì)實(shí)現(xiàn)交通信號(hào)燈系統(tǒng)。設(shè)A車道與B車道交叉組成十字路口,A是主道,B是支道,直接對(duì)車輛進(jìn)行交通管理,基本要求如下:(1)用發(fā)光二極管模擬交通信號(hào)燈;(2)正常情況下,A、B兩車道輪流放行,A車道放行綠燈亮,其中3秒用于警告(黃燈亮);B車道放行綠燈亮,其中3
2、秒用于警告(黃燈亮);A、B車道放行、禁止通行時(shí)間自己定義;(3)有緊急車輛通過時(shí),按下某開關(guān)使A、B車道均為紅燈,緊急情況解除后,恢復(fù)正??刂?。注意:除上述基本要求外,其它各種功能,可以自由發(fā)揮。一 實(shí)驗(yàn)一: 在Proteus仿真實(shí)現(xiàn)交通信號(hào)燈系統(tǒng)。(1) 交通信號(hào)燈系統(tǒng)設(shè)計(jì)描述(實(shí)現(xiàn)內(nèi)容)用發(fā)光二極管模擬交通信號(hào)燈;正常情況下,A、B兩車道輪流放行。A車道綠燈放行,直行箭頭亮,人行道紅燈亮,B道紅燈亮,直行紅箭頭亮,人行道綠燈亮延時(shí)10秒;A車道綠燈閃爍兩次B車道紅燈禁止放行,然后A車道延時(shí)3秒用于警告(黃燈亮);A車道紅燈亮,A車道左轉(zhuǎn)箭頭亮,延時(shí)5秒;B車道綠燈,直行箭頭亮,人行道紅燈
3、亮,A車道禁止放行紅燈亮直行紅箭頭亮,人行道綠燈亮延時(shí)10秒,B車道綠燈閃爍2次,A車道禁止放行紅燈亮,然后3秒用于警告(黃燈亮); B車道紅燈亮,B車道左轉(zhuǎn)箭頭亮,延時(shí)5秒;恢復(fù)到初始狀態(tài).有緊急車輛通過時(shí),按下某開關(guān)使A、B車道均為紅燈,緊急情況延時(shí)5秒;A道有特種車輛通過時(shí),按下某開關(guān)使A車道為綠燈B車道為紅燈,延時(shí)5秒;用數(shù)碼管顯示綠燈通行、黃燈等待時(shí)間;(2) Proteus中實(shí)現(xiàn)原理圖下圖為矢量圖可以放大看(3) 源程序清單;8253的端口地址A1_PORT EQU220H ;0#B1_PORT EQU222H ;1#C1_PORT EQU224H ;2#CT1_PORT EQU2
4、26H ;CONTROL;8255#1端口地址A_PORT EQU 200HB_PORT EQU 202HC_PORT EQU 204HCT_PORT EQU 206H;8255#2(A道LED)端口地址A2_PORT EQU 230HB2_PORT EQU 232HC2_PORT EQU 234HCT2_PORT EQU 236H;8255#3(B道LED)端口地址A3_PORT EQU 228HB3_PORT EQU 22AHC3_PORT EQU 22CHCT3_PORT EQU 22EH;8255#4(A、B道左轉(zhuǎn)LED)端口地址A4_PORT EQU 238HB4_PORT EQU
5、23AHC4_PORT EQU 23CHCT4_PORT EQU 23EH;8259A的端口地址O_ADREQU212H;奇地址E_ADREQU210H;偶地址DATAS SEGMENT;七段碼ORG 0F0000HTAB DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H,10H,11H,12H,13H,14H,15HAB_FLAG DB 0;0表示A道,1表示B道ORG 6000H;人行道段碼表ROW1 DB 01H,02H,04H,08H,10H,20H,40H,80HCEL1 DB 0F7H,0F7H,0F7H,0F7H,0E7H,0DBH,0BDH,
6、7EH;箭頭段碼表CEL2 DB 0E7H,0C3H,0A5H,66H,0E7H,0E7H,0E7H,0E7HUNABLE DB 7EH,0BDH,0DBH,0E7H,0E7H,0DBH,0BDH,7EHALFT DB 0F3H,0F9H,0H,79H,73H,7FH,7FH,7FHDATAS ENDSCODE SEGMENT PUBLIC 'CODE' ASSUME CS:CODE,DS:DATASORG 2000HSTART: ; Write your code herePUSH DS CLI ;8253計(jì)數(shù)器0的初始化MOV AL,36H;控制字00 11 011 0 B
7、,計(jì)數(shù)器0,方式3,二進(jìn)制MOV DX,CT1_PORTOUT DX,AL;送控制端口;8253計(jì)數(shù)器1的初始化MOV AL,70H;控制字01 11 000 0 B,計(jì)數(shù)器1,方式0,二進(jìn)制MOV DX,CT1_PORTOUT DX,AL;送控制端口;8259A的初始化;0001 0011,ICW1,邊沿觸發(fā),無從片,寫ICW4MOV AL,13HMOV DX,E_ADR;偶地址OUT DX,AL;ICW2,IR0中斷向量碼為08HMOV AL,08HMOV DX,O_ADR;奇地址OUT DX,ALMOV AL,0FHMOV DX,O_ADR;奇地址OUT DX,AL;ICW4,CPU為8
8、0X86系列,非自動(dòng)結(jié)束,無緩沖,全嵌套方式MOV AL,01HOUT DX,ALMOV AL,7EHOUT DX,AL;OCW1,只允許IR0開放;中斷向量表的初始化MOV AX,0000HMOV DS,AX MOV SI,08H*4MOV AX,OFFSET IR0MOV BX,SEG IR0MOV SI,AXMOV SI+2,BX;IR7中斷向量MOV SI,0FH*4MOV AX,OFFSET IR7MOV BX,SEG IR7MOV SI,AXMOV SI+2,BX;8255#1初始化MOV AL,88H ;正定控制字1000,1000,方式0,A口輸出 ,C口輸入MOV DX,CT
9、_PORT OUT DX,AL;8255#2初始化MOV AL,80H ;正定控制字1000,1000,方式0,A口、B、C輸出MOV DX,CT2_PORT OUT DX,AL;8255#3初始化MOV AL,80H ;正定控制字1000,1000,方式0,A口、B、C輸出MOV DX,CT3_PORT OUT DX,AL;8255#4初始化MOV AL,80H ;正定控制字1000,1000,方式0,A口、B、C輸出MOV DX,CT4_PORT OUT DX,AL;A道綠燈,B道紅燈,延時(shí)10s,默認(rèn)是A道,即AB_FLAG=0LP: PUSH DS CLI STI;開中斷 POP DS
10、 MOV AL,0F3HMOV DX,A_PORT ;A道綠燈,B道紅燈 OUT DX,AL ;延時(shí)10SMOV CX,10YS1: CALL NORMALDELAY1S LOOP YS1;A道綠燈閃爍,B道紅燈禁止,閃兩次MOV AL,0F7HMOV DX,A_PORT ;A道綠燈滅,B道紅燈禁止,第一次 OUT DX,ALCALL NORMALDELAY1SMOV AL,0F3HMOV DX,A_PORT ;A道綠燈亮,B道紅燈禁止,第一次 OUT DX,ALCALL NORMALDELAY1SMOV AL,0F7HMOV DX,A_PORT ;A道綠燈滅,B道紅燈禁止,第二次 OUT D
11、X,ALCALL NORMALDELAY1SMOV AL,0F3HMOV DX,A_PORT ;A道綠燈亮,B道紅燈禁止,第二次 OUT DX,ALCALL NORMALDELAY1S;A道黃燈亮,B道紅燈禁止,延時(shí)3sMOV AL,0F5HMOV DX,A_PORT ;A道黃燈亮,B道紅燈禁止 OUT DX,AL;延時(shí)3S MOV CX,3YS2: CALL NORMALDELAY1S LOOP YS2;A道直行紅燈亮,左轉(zhuǎn)綠燈,人行道紅燈亮,B道紅燈,延時(shí)5秒 MOV CX,5AZZYS1: CALL AZZDELAY1SLOOP AZZYS1;B道綠燈放行,A道紅燈禁止,延時(shí)10s,修改
12、標(biāo)志為B道MOV AL,AB_FLAGINC ALMOV AB_FLAG,ALMOV AL,0DEHMOV DX,A_PORT ;B道綠燈放行,A道紅燈禁止 OUT DX,AL;延時(shí)10S程序 MOV CX,10YS3: CALL NORMALDELAY1SS LOOP YS3;B道綠燈閃爍,A道紅燈禁止,閃兩次MOV AL,0FEHMOV DX,A_PORT ;B道綠燈滅,A道紅燈禁止,第一次 OUT DX,ALCALL NORMALDELAY1SSMOV AL,0DEHMOV DX,A_PORT ;B道綠燈亮,A道紅燈禁止,第一次 OUT DX,ALCALL NORMALDELAY1SSM
13、OV AL,0FEHMOV DX,A_PORT ;B道綠燈滅,A道紅燈禁止,第二次 OUT DX,ALCALL NORMALDELAY1SSMOV AL,0DEHMOV DX,A_PORT ;B道綠燈亮,A道紅燈禁止,第二次 OUT DX,ALCALL NORMALDELAY1SS;B道黃燈亮,A道紅燈禁止,延時(shí)3sMOV AL,0EEHMOV DX,A_PORT ;B道黃燈亮,A道紅燈禁止 OUT DX,AL;延時(shí)3S程序MOV CX,3YS4: CALL NORMALDELAY1SS LOOP YS4;B道直行紅燈亮,左轉(zhuǎn)綠燈,A道紅燈,延時(shí)5秒MOV CX,5BZZYS1: CALL B
14、ZZDELAY1S LOOP BZZYS1;修改標(biāo)志為A道MOV AL,AB_FLAGDEC ALMOV AB_FLAG,ALJMP LPIR0 PROCCLIPUSH CXMOV AL,0F6H ;A道B道紅燈禁止MOV DX,A_PORTOUT DX,ALMOV CX,6ZDYS1: CALL UNNORMALDELAY1S LOOP ZDYS1POP CXMOV AL,20HMOV DX,E_ADROUT DX,AL;OCW2發(fā)結(jié)束命令EOI=1TEST AB_FLAG,1JZ LIAJMP LIBLIA:MOV AL,0F3HMOV DX,A_PORT ;A道綠燈,B道紅燈 OUT D
15、X,ALJMP DONELIB: MOV AL,0DEHMOV DX,A_PORT ;B道綠燈放行,A道紅燈禁止 OUT DX,ALDONE:STIIRETIR0 ENDPIR7 PROC CLI PUSH CXMOV AL,0F3H ;A道綠燈,B道紅燈禁止MOV DX,A_PORTOUT DX,ALMOV CX,5ZDYS2: CALL NORMALDELAY1S LOOP ZDYS2POP CXMOV AL,20HMOV DX,E_ADR;偶地址OUT DX,AL;OCW2發(fā)結(jié)束命令EOI=1 TEST AB_FLAG,1JZ LIAJMP LIBLIA:MOV AL,0F3HMOV D
16、X,A_PORT ;A道綠燈,B道紅燈 OUT DX,ALJMP DONELIB: MOV AL,0DEHMOV DX,A_PORT ;B道綠燈放行,A道紅燈禁止 OUT DX,ALDONE:STIIRETIR7 ENDP;1s精確延時(shí)NORMALDELAY1S PROC MOV AL,AB_FLAGCMP AL,0JZ APATH;設(shè)置PC0為高M(jìn)OV AL,1MOV DX,C_PORTOUT DX,ALJMP SEC_DISAPATH:;設(shè)置PC0為低MOV AL,0MOV DX,C_PORTOUT DX,ALSEC_DIS:;保存所余秒數(shù)MOV BX,CX;從PB口輸出剩余秒數(shù)到LEDL
17、EA SI,TABADC BX,SIMOV AX,DS:BXMOV DX,B_PORTOUT DX,AL ;設(shè)置計(jì)數(shù)器0的初值MOV AX,1000MOV DX,A1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;設(shè)置計(jì)數(shù)器1的初值MOV AX,1000MOV DX,B1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;判斷計(jì)數(shù)時(shí)間是否達(dá)到1s PUSH SIPUSH DIPUSH BXPUSH CX N: MOV CX,8 LEA SI,ROW1LEA DI,CEL1LEA BX,CEL2LOOP2: MOV AL,SIMOV DX,A2_PORTOUT D
18、X,ALMOV AL,BXMOV DX,C2_PORTOUT DX,AL MOV AL,SIMOV DX,A2_PORTOUT DX,ALMOV AL,DIMOV DX,B2_PORTOUT DX,ALINC SIINC DIINC BXPUSH CXMOV CX,150LOOP $ POP CXLOOP LOOP2 MOV DX,C_PORT IN AL,DXAND AL,80HCMP AL,80HJNZ NDONE1:POP CXPOP BXPOP DIPOP SIRETNORMALDELAY1S ENDPNORMALDELAY1SS PROC MOV AL,AB_FLAGCMP AL,0
19、JZ APATH;設(shè)置PC0為高M(jìn)OV AL,1MOV DX,C_PORTOUT DX,ALJMP SEC_DISAPATH:;設(shè)置PC0為低MOV AL,0MOV DX,C_PORTOUT DX,ALSEC_DIS:;保存所余秒數(shù)MOV BX,CX;從PB口輸出剩余秒數(shù)到LEDLEA SI,TABADC BX,SIMOV AX,DS:BXMOV DX,B_PORTOUT DX,AL ;設(shè)置計(jì)數(shù)器0的初值MOV AX,1000MOV DX,A1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;設(shè)置計(jì)數(shù)器1的初值MOV AX,1000MOV DX,B1_PORTOUT DX,AL
20、MOV AL,AHOUT DX,AL;判斷計(jì)數(shù)時(shí)間是否達(dá)到1s PUSH SIPUSH DIPUSH BXPUSH CX N: MOV CX,8 LEA SI,ROW1LEA DI,CEL1LEA BX,CEL2LOOP2: MOV AL,SIMOV DX,A3_PORTOUT DX,ALMOV AL,BXMOV DX,C3_PORTOUT DX,AL MOV AL,SIMOV DX,A3_PORTOUT DX,ALMOV AL,DIMOV DX,B3_PORTOUT DX,ALINC SIINC DIINC BXPUSH CXMOV CX,150LOOP $ POP CXLOOP LOOP2
21、 MOV DX,C_PORT IN AL,DXAND AL,80HCMP AL,80HJNZ NPOP CXPOP BXPOP DIPOP SIRET NORMALDELAY1SS ENDP ;中斷1調(diào)用延時(shí)UNNORMALDELAY1S PROC MOV AL,AB_FLAGCMP AL,0JZ APATH;設(shè)置PC0為高M(jìn)OV AL,1MOV DX,C_PORTOUT DX,ALJMP SEC_DISAPATH:;設(shè)置PC0為低MOV AL,0MOV DX,C_PORTOUT DX,ALSEC_DIS:;保存所余秒數(shù)MOV BX,CX;從PB口輸出剩余秒數(shù)到LEDLEA SI,TABADC
22、 BX,SIMOV AX,DS:BXMOV DX,B_PORTOUT DX,AL ;設(shè)置計(jì)數(shù)器0的初值MOV AX,1000MOV DX,A1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;設(shè)置計(jì)數(shù)器1的初值MOV AX,1000MOV DX,B1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;判斷計(jì)數(shù)時(shí)間是否達(dá)到1s PUSH SIPUSH DIPUSH BXPUSH CX N: MOV CX,8 LEA SI,ROW1LEA DI,UNABLELEA BX,UNABLELOOP2: MOV AL,SIMOV DX,A3_PORTOUT DX,ALMOV
23、AL,BXMOV DX,C3_PORTOUT DX,AL MOV AL,SIMOV DX,A3_PORTOUT DX,ALMOV AL,DIMOV DX,B3_PORTOUT DX,ALINC SIINC DIINC BXPUSH CXMOV CX,150LOOP $ POP CXLOOP LOOP2 MOV DX,C_PORT IN AL,DXAND AL,80HCMP AL,80HJNZ NPOP CXPOP BXPOP DIPOP SIRETUNNORMALDELAY1S ENDPAZZDELAY1S PROC MOV AL,0DEHMOV DX,A_PORT ;B道綠燈放行,A道紅燈禁
24、止 OUT DX,AL MOV AL,AB_FLAGCMP AL,0JZ APATH;設(shè)置PC0為高M(jìn)OV AL,1MOV DX,C_PORTOUT DX,ALJMP SEC_DISAPATH:;設(shè)置PC0為低MOV AL,0MOV DX,C_PORTOUT DX,ALSEC_DIS:;保存所余秒數(shù)MOV BX,CX;從PB口輸出剩余秒數(shù)到LEDLEA SI,TABADC BX,SIMOV AX,DS:BXMOV DX,B_PORTOUT DX,AL ;設(shè)置計(jì)數(shù)器0的初值MOV AX,1000MOV DX,A1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;設(shè)置計(jì)數(shù)器1的初值
25、MOV AX,1000MOV DX,B1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;判斷計(jì)數(shù)時(shí)間是否達(dá)到1s PUSH SIPUSH DIPUSH BXPUSH CX N: MOV CX,8 LEA SI,ROW1LEA DI,ALFTLEA BX,UNABLELOOP2: MOV AL,SIMOV DX,A4_PORTOUT DX,ALMOV AL,BXMOV DX,C4_PORTOUT DX,AL MOV AL,SIMOV DX,A4_PORTOUT DX,ALMOV AL,DIMOV DX,B4_PORTOUT DX,AL INC SIINC DIINC BXPUS
26、H CXMOV CX,150LOOP $ POP CXLOOP LOOP2 MOV DX,C_PORT IN AL,DXAND AL,80HCMP AL,80HJNZ NPOP CXPOP BXPOP DIPOP SIRETAZZDELAY1S ENDPBZZDELAY1S PROC MOV AL,0F3HMOV DX,A_PORT ;A道綠燈,B道紅燈 OUT DX,AL MOV AL,AB_FLAGCMP AL,0JZ APATH;設(shè)置PC0為高M(jìn)OV AL,1MOV DX,C_PORTOUT DX,ALJMP SEC_DISAPATH:;設(shè)置PC0為低MOV AL,0MOV DX,C_P
27、ORTOUT DX,ALSEC_DIS:;保存所余秒數(shù)MOV BX,CX;從PB口輸出剩余秒數(shù)到LEDLEA SI,TABADC BX,SIMOV AX,DS:BXMOV DX,B_PORTOUT DX,AL ;設(shè)置計(jì)數(shù)器0的初值MOV AX,1000MOV DX,A1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;設(shè)置計(jì)數(shù)器1的初值MOV AX,1000MOV DX,B1_PORTOUT DX,ALMOV AL,AHOUT DX,AL;判斷計(jì)數(shù)時(shí)間是否達(dá)到1s PUSH SIPUSH DIPUSH BXPUSH CX N: MOV CX,8 LEA SI,ROW1LEA D
28、I,UNABLELEA BX,ALFTLOOP2: MOV AL,SIMOV DX,A4_PORTOUT DX,ALMOV AL,BXMOV DX,C4_PORTOUT DX,AL MOV AL,SIMOV DX,A4_PORTOUT DX,ALMOV AL,DIMOV DX,B4_PORTOUT DX,ALINC SIINC DIINC BXPUSH CXMOV CX,150LOOP $ POP CXLOOP LOOP2 MOV DX,C_PORT IN AL,DXAND AL,80HCMP AL,80HJNZ NDONE1:POP CXPOP BXPOP DIPOP SIRETBZZDEL
29、AY1S ENDP JMP $;ENDLESS: ;JMP ENDLESSCODE ENDS END START(4) 仿真實(shí)現(xiàn)結(jié)果描述用發(fā)光二極管模擬交通信號(hào)燈;正常情況下,A、B兩車道輪流放行。A車道綠燈放行,直行箭頭亮,人行道紅燈亮,B道紅燈亮,直行紅箭頭亮,人行道綠燈亮延時(shí)10秒;A車道綠燈閃爍兩次B車道紅燈禁止放行,然后A車道延時(shí)3秒用于警告(黃燈亮);A車道紅燈亮,A車道左轉(zhuǎn)箭頭亮,延時(shí)5秒;B車道綠燈,直行箭頭亮,人行道紅燈亮,A車道禁止放行紅燈亮直行紅箭頭亮,人行道綠燈亮延時(shí)10秒,B車道綠燈閃爍2次,A車道禁止放行紅燈亮,然后3秒用于警告(黃燈亮); B車道紅燈亮,B車道左轉(zhuǎn)
30、箭頭亮,延時(shí)5秒;恢復(fù)到初始狀態(tài).有緊急車輛通過時(shí),按下某開關(guān)使A、B車道均為紅燈,緊急情況延時(shí)5秒;A道有特種車輛通過時(shí),按下某開關(guān)使A車道為綠燈B車道為紅燈,延時(shí)5秒;用數(shù)碼管顯示綠燈通行、黃燈等待時(shí)間;(5) 遇到的問題及解決方法問題:點(diǎn)陣的掃描與紅綠燈的延時(shí)相矛盾解決辦法:將掃描程序放在延時(shí)子程序里,通過調(diào)用不同的延時(shí)子程序來點(diǎn)亮不同的LED點(diǎn)陣二 實(shí)驗(yàn)二:在實(shí)驗(yàn)室實(shí)驗(yàn)箱上仿真實(shí)現(xiàn)交通信號(hào)燈系統(tǒng)。(1) 交通信號(hào)燈系統(tǒng)設(shè)計(jì)描述(實(shí)驗(yàn)內(nèi)容)用發(fā)光二極管模擬交通信號(hào)燈;正常情況下,A、B兩車道輪流放行,A車道綠燈放行B道紅燈亮延時(shí)9秒,A車道綠燈閃爍兩次B車道紅燈禁止放行, 然后B車道延時(shí)
31、3秒用于警告(黃燈亮);B車道綠燈A車道禁止放行紅燈燈亮,B車道綠燈閃爍A車道禁止放行紅燈亮,然后3秒用于警告(黃燈亮);恢復(fù)到初始狀態(tài);有緊急車輛通過時(shí),按下某開關(guān)使A、B車道均為紅燈,緊急情況延時(shí)6秒;A道有特種車輛通過時(shí),按下某開關(guān)使A車道為綠燈B車道為紅燈,延時(shí)6秒;用數(shù)碼管顯示綠燈通行、黃燈等待時(shí)間;(2) 實(shí)驗(yàn)接線圖(3) 實(shí)驗(yàn)程序清單;8253的端口地址A1_PORT EQU06C0H ;0#B1_PORT EQU06C2H ;1#C1_PORT EQU06C4H ;2#CT1_PORT EQU06C6H ;CONTROL;8255端口地址A_PORT EQU 0640HB_PO
32、RT EQU 0642HC_PORT EQU 0644HCT_PORT EQU 0646H;8259A的端口地址O_ADREQU21H;奇地址E_ADREQU20H;偶地址DATAS SEGMENT;七段碼ORG 0001HTAB DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H,77H,7CH,39H,5EH,79H,71HAB_FLAG DB 0DATAS ENDSCODE SEGMENT PUBLIC 'CODE' ASSUME CS:CODE,DS:DATASORG 0800H START: MOV AX,DATAS MOV DS,A
33、X ; Write your code herePUSH DS CLI ;8253計(jì)數(shù)器0的初始化MOV AL,36H;控制字00 11 011 0 B,計(jì)數(shù)器0,方式3,二進(jìn)制MOV DX,CT1_PORTOUT DX,AL;送控制端口;8253計(jì)數(shù)器1的初始化MOV AL,70H;控制字01 11 000 0 B,計(jì)數(shù)器1,方式0,二進(jìn)制MOV DX,CT1_PORTOUT DX,AL;送控制端口;8259A的初始化;0001 0011,ICW1,邊沿觸發(fā),無從片,寫ICW4MOV AL,13HMOV DX,E_ADR;偶地址OUT DX,AL;ICW2,IR0中斷向量碼為08HMOV A
34、L,08HMOV DX,O_ADR;奇地址OUT DX,ALMOV AL,0FHMOV DX,O_ADR;奇地址OUT DX,AL;ICW4,CPU為80X86系列,非自動(dòng)結(jié)束,無緩沖,全嵌套方式MOV AL,01HOUT DX,ALMOV AL,0HOUT DX,AL;OCW1;中斷向量表的初始化MOV AX,0000HMOV DS,AX MOV SI,003BHMOV AX,OFFSET IR0MOV BX,SEG IR0MOV SI,AXMOV SI+2,BX;IR7中斷向量MOV SI,003CHMOV AX,OFFSET IR7MOV BX,SEG IR7MOV SI,AX MOV
35、SI+2,BX;8255初始化MOV AL,88H ;正定控制字1000,1000,方式0,A口輸出 ,C口輸入MOV DX,CT_PORT OUT DX,AL pop ds ;MOV AX,DATAS ; MOV DS,AX;A道綠燈,B道紅燈,延時(shí)10s,默認(rèn)是A道,即AB_FLAG=0LP: PUSH DS CLI STI;開中斷 POP DSMOV AB_FLAG,01H MOV AL,0CBHNOT ALMOV DI,AXMOV DX,A_PORT ;A道綠燈,B道紅燈 OUT DX,AL ;延時(shí)9SMOV CX,9YS1: CALL DELAY1S LOOP YS1;A道綠燈閃爍,
36、B道紅燈禁止,閃兩次MOV AB_FLAG,0HMOV AL,0EBHNOT ALMOV DI,AXMOV DX,A_PORT ;A道綠燈滅,B道紅燈禁止,第一次 OUT DX,ALMOV CX,4CALL DELAY1SMOV AL,0CBHNOT ALMOV DI,AXMOV DX,A_PORT ;A道綠燈亮,B道紅燈禁止,第一次 OUT DX,ALDEC CXCALL DELAY1SMOV AL,0EBHNOT ALMOV DI,AXMOV DX,A_PORT ;A道綠燈滅,B道紅燈禁止,第二次 OUT DX,ALDEC CXCALL DELAY1SMOV AL,0CBHNOT ALMO
37、V DI,AXMOV DX,A_PORT ;A道綠燈亮,B道紅燈禁止,第二次 OUT DX,ALDEC CXCALL DELAY1S;A道黃燈亮,B道紅燈禁止,延時(shí)3sMOV AL,0BDHNOT ALMOV DI,AXMOV DX,A_PORT ;A道黃燈亮,B道紅燈禁止 OUT DX,AL;延時(shí)3S MOV CX,3YS2: CALL DELAY1S LOOP YS2MOV AB_FLAG,01HMOV AL,76HNOT ALMOV DI,AXMOV DX,A_PORT ;B道綠燈放行,A道紅燈禁止 OUT DX,AL;延時(shí)9S程序 MOV CX,9YS3: CALL DELAY1S L
38、OOP YS3;B道綠燈閃爍,A道紅燈禁止,閃兩次MOV AB_FLAG,00HMOV AL,77HNOT ALMOV DI,AXMOV DX,A_PORT ;B道綠燈滅,A道紅燈禁止,第一次 OUT DX,ALMOV CX,4CALL DELAY1SMOV AL,76HNOT ALMOV DI,AXMOV DX,A_PORT ;B道綠燈亮,A道紅燈禁止,第一次 OUT DX,ALDEC CXCALL DELAY1SMOV AL,77HNOT ALMOV DI,AXMOV DX,A_PORT ;B道綠燈滅,A道紅燈禁止,第二次 OUT DX,ALDEC CXCALL DELAY1SMOV AL
39、,76HNOT ALMOV DI,AXMOV DX,A_PORT ;B道綠燈亮,A道紅燈禁止,第二次 OUT DX,ALDEC CXCALL DELAY1S;B道黃燈亮,A道紅燈禁止,延時(shí)3sMOV AL,0BDHNOT ALMOV DI,AXMOV DX,A_PORT ;B道黃燈亮,A道紅燈禁止 OUT DX,AL;延時(shí)3S程序MOV CX,3YS4: CALL DELAY1S LOOP YS4JMP LPIR0 PROCCLIMOV AL,AB_FLAGCMP AL,00HJZ NEXT3 MOV AB_FLAG,00HMOV AL,7BH NOT AL ;A道B道紅燈禁止MOV DX,A
40、_PORTOUT DX,ALPUSH CXMOV CX,6JJZ: CALL DELAY1S LOOP JJZPOP CXMOV AL,20HMOV DX,E_ADROUT DX,AL;OCW2發(fā)結(jié)束命令EOI=1MOV AB_FLAG,01HJMP NEXT2NEXT3: MOV AL,7BH ;A道B道紅燈禁止 NOT ALMOV DX,A_PORTOUT DX,ALPUSH CXMOV CX,6JJZ1: CALL DELAY1S LOOP JJZ1POP CXMOV AL,20HMOV DX,E_ADROUT DX,AL;OCW2發(fā)結(jié)束命令EOI=1NEXT2:MOV AX,DIMOV DX,A_PORT OUT DX,ALSTIIRETIR0 ENDPIR7 PROC CLIMOV AL,AB_FLAGCMP AL,00HJZ NEXT2 MO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZHHX 004-2024 粉苞酸腳桿盆花生產(chǎn)技術(shù)規(guī)范
- 二零二五年度員工宿舍入住與退宿手續(xù)協(xié)議
- 2025年度水利工程監(jiān)理工程師合同管理與可持續(xù)發(fā)展
- 二零二五年度商鋪經(jīng)營權(quán)放棄及轉(zhuǎn)讓協(xié)議書
- 二零二五年度酒吧租賃合同書
- 2025年度潤滑油行業(yè)年度銷售排行榜合作合同
- 2025年度機(jī)關(guān)單位食堂餐飲培訓(xùn)與咨詢服務(wù)合同
- 二零二五年度夫妻婚內(nèi)財(cái)產(chǎn)約定及家庭財(cái)務(wù)顧問服務(wù)協(xié)議
- 二零二五年度智慧城市項(xiàng)目實(shí)施團(tuán)隊(duì)勞動(dòng)合同
- 二零二五年度企業(yè)稅收籌劃與稅務(wù)籌劃培訓(xùn)與實(shí)施合同
- 反假幣測試附有答案
- 怎樣調(diào)動(dòng)員工積極性
- 2024年內(nèi)科護(hù)理學(xué)(第七版)期末考試復(fù)習(xí)題庫(含答案)
- 【上市公司的財(cái)務(wù)風(fēng)險(xiǎn)的分析和防范:以三只松鼠為例10000字(論文)】
- 急診科培訓(xùn)急診科與其他科室的協(xié)作與溝通
- JCT414-2017 硅藻土的標(biāo)準(zhǔn)
- 肌肉注射評(píng)分標(biāo)準(zhǔn)
- 鋼結(jié)構(gòu)主要技術(shù)標(biāo)準(zhǔn)和要求
- 臘八粥 第一課時(shí)自學(xué)導(dǎo)學(xué)單
- 摻合料講義課件
- 中美關(guān)系新時(shí)代52張課件
評(píng)論
0/150
提交評(píng)論