資源描述:
《protues仿真單片機模擬交通燈.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、下載可編輯主電路圖(圖一)StaticDisplay子圖(圖二).專業(yè).整理.下載可編輯仿真效果(圖三)仿真效果(圖四).專業(yè).整理.下載可編輯仿真效果(圖五)仿真效果(圖六)匯編語言程序:SECOND1EQU30H.專業(yè).整理.下載可編輯SECOND2EQU31HDBUFEQU40HTEMPEQU44HLED_G1BITP2.1;東西路口綠燈LED_Y1BITP2.2;東西路口黃燈LED_R1BITP2.3;東西路口紅燈LED_G2BITP2.4;南北路口綠燈LED_Y2BITP2.5;南北路口黃燈LED_R2BITP2.6;南北路口紅燈ORG0000HLJMPSTAR
2、TORG0100HSTART:MOVTMOD,#01H;置T0為工作方式1MOVTH0,#3CH;置T0定時初值50msMOVTL0,#0B0HCLRTF0SETBTR0;啟動T0CLRAMOVP1,A;關(guān)閉不相關(guān)的LED;***************************************************LOOP:MOVR2,#20;置1s計數(shù)初值,50ms*20=1sMOVR3,#20;紅燈亮20s.專業(yè).整理.下載可編輯MOVSECOND1,#25;東西路口計時顯示初值25sMOVSECOND2,#25;南北路口計時顯示初值25sLCALLDISP
3、LAYLCALLSTATE1;調(diào)用狀態(tài)1WAIT1:JNBTF0,WAIT1;查詢50ms到否CLRTF0MOVTH0,#3CH;恢復(fù)T0定時初值50msMOVTL0,#0B0HDJNZR2,WAIT1;判斷1s到否?未到繼續(xù)狀態(tài)1MOVR2,#20;置50ms計數(shù)初值DECSECOND1;東西路口顯示時間減1sDECSECOND2;南北路口顯示時間減1sLCALLDISPLAYDJNZR3,WAIT1;狀態(tài)1維持20s;*******************************************MOVR2,#5;置50ms計數(shù)初值5*4=20MOVR3,#3;
4、綠燈閃3sMOVR4,#4;閃爍間隔200msMOVSECOND1,#5;東西路口計時顯示初值5sMOVSECOND2,#5;南北路口計時顯示初值5sLCALLDISPLAYWAIT2:LCALLSTATE2;調(diào)用狀態(tài)2.專業(yè).整理.下載可編輯JNBTF0,WAIT2;查詢50ms到否CLRTF0MOVTH0,#3CH;恢復(fù)T0定時初值50msMOVTL0,#0B0HDJNZR4,WAIT2;判斷200ms到否?未到繼續(xù)狀態(tài)2CPLLED_G1;東西綠燈閃MOVR4,#4;閃爍間隔200msDJNZR2,WAIT2;判1s到否?未到繼續(xù)狀態(tài)2MOVR2,#5;置50ms計
5、數(shù)初值DECSECOND1;東西路口顯示時間減1sDECSECOND2;南北路口顯示時間減1sLCALLDISPLAYDJNZR3,WAIT2;狀態(tài)2維持3s;****************************************MOVR2,#20;置50ms計數(shù)初值MOVR3,#2;黃燈閃2sMOVSECOND1,#2;東西路口計時顯示初值2sMOVSECOND2,#2;南北路口計時顯示初值2sLCALLDISPLAYWAIT3:LCALLSTATE3;調(diào)用狀態(tài)3JNBTF0,WAIT3;查詢100ms到否CLRTF0.專業(yè).整理.下載可編輯MOVTH0,#3
6、CH;恢復(fù)T0定時初值100msMOVTL0,#0B0HDJNZR2,WAIT3;判斷1s到否?未到繼續(xù)狀態(tài)3MOVR2,#20;置100ms計數(shù)初值DECSECOND1;東西路口顯示時間減1sDECSECOND2;南北路口顯示時間減1sLCALLDISPLAYDJNZR3,WAIT3;狀態(tài)3維持2s;*******************************************MOVR2,#20;置50ms計數(shù)初值MOVR3,#20;紅燈閃20sMOVSECOND1,#25;東西路口計時顯示初值25sMOVSECOND2,#25;南北路口計時顯示初值25sLCA
7、LLDISPLAYWAIT4:LCALLSTATE4;調(diào)用狀態(tài)4JNBTF0,WAIT4;查詢100ms到否CLRTF0MOVTH0,#3CH;恢復(fù)T0定時初值100msMOVTL0,#0B0HDJNZR2,WAIT4;判斷1s到否?未到繼續(xù)狀態(tài)4MOVR2,#20;置100ms計數(shù)初值DECSECOND1;東西路口顯示時間減1s.專業(yè).整理.下載可編輯DECSECOND2;南北路口顯示時間減1sLCALLDISPLAYDJNZR3,WAIT4;狀態(tài)4維持20s;********************************