<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于8051單片機的雙機通信設計

基于8051單片機的雙機通信設計

作者: 時(shí)間:2011-09-20 來(lái)源:網(wǎng)絡(luò ) 收藏

一、 系統功能要求:
1. 設計任務(wù)在一十字路口設置交通燈,并用單片機對其進(jìn)行合理的控制。
時(shí)間方向 控制要求
白天 東西 綠燈 黃燈 紅燈 南北 紅燈 綠燈 黃燈
晚上 東西 黃燈 南北 紅燈
2.總體設計方案現在流行的一種設計為兩主干線(xiàn)相交的十字路。本設計采用一主干道(南北方向),一從干道(東西方向)的路口,即主干道的通行時(shí)間為從干道的2倍。在正常情況下,兩干道的交通燈按圖1進(jìn)行轉換,并以倒計數的方式將剩余時(shí)間顯示在每個(gè)干道對應的兩位LED上;另發(fā)揮部分為當出現緊急情況時(shí),路口的交通燈全為紅燈,緊急情況解除時(shí),恢復到原來(lái)的狀態(tài)。
二、 總體設計方案提示:
1.假設一個(gè)十字路口為東西南北走向。初始狀態(tài)0為東西紅燈,南北紅燈。然后轉狀態(tài)1東西綠燈通車(chē),南北紅燈。過(guò)一段時(shí)間轉狀態(tài)。
2.東西綠燈滅,黃燈閃爍幾次,南北仍然紅燈。再轉狀態(tài)。
3.南北綠燈通車(chē),東西紅燈。過(guò)一段時(shí)間轉狀態(tài)。
4.南北綠燈滅,閃幾次黃燈,延時(shí)幾秒,東西仍然紅燈。最后循環(huán)至狀態(tài)1。
三.硬件設計
電路原理圖如下:


 

四、軟件設計
1、 流程圖



2、程序設計
ORG 0000H
MOV P0,#00H ;確保P0為低電位
lJMP MAIN0
ORG 0030H
MAIN0: MOV 30H,#08H
MOV R6,#00H
MOV R7,#00H
MOV DPTR,#TABLE ;取數碼管的譯碼
MOV TMOD,#01H ;設計定時(shí)方式及時(shí)間
MOV TL0,#0CDH
MOV TH0,#0BH
SETB TR0
MOV IE,#00H
MAIN: MOV P1,#0F3H ;南北綠燈,東西紅燈
MOV R6,#1EH ;紅燈30s倒計時(shí)
MOV R7,#19H ;綠燈25s倒計時(shí)
MAIN1:CALL DELAY ;1S延時(shí)子程序
JB P0.1,REL1 ;判斷是否有東西方向按鈕按下
CJNE R7,#00H,MAIN1 ;判斷綠燈25s是否倒計完
MOV P1,#0F5H ;南北黃燈,東西紅燈
MAIN2:CALL DELAY
MOV R7,#00H ;紅燈繼續倒計時(shí),黃燈閃爍,保持0s
CPL P1.1 ;黃燈閃爍
CJNE R6,#00H,MAIN2 ;判斷紅燈是否倒計時(shí)完
MOV P1,#0DEH ;南北紅燈,東西綠燈
MOV R7,#1EH
MOV R6,#19H
MAIN3:CALL DELAY
JB P0.0,REL2
CJNE R6,#00H,MAIN3
MOV P1,#0EEH
MAIN4:CALL DELAY
MOV R6,#00H
CPL P1.4
CJNE R7,#00H,MAIN4
JMP MAIN
REL1:MOV P1,#0F5H ;東西方向按鈕按下,南北方向強制由綠燈變成黃燈警告
MOV R6,#05H
MOV R7,#00H
JMP MAIN2
REL2:MOV P1,#0EEH ;南北方向按鈕按下,東西方向強制由綠燈變成黃燈警告
MOV R7,#05H
MOV R6,#00H
JMP MAIN4
;1s延時(shí)子程序
DELAY:MOV A,R6 ;進(jìn)行南北方向倒計時(shí)時(shí)間的十進(jìn)制調整
MOV B,#0AH
DIV AB
MOVC A,@A+DPTR ;找尋相應的數碼管代碼
MOV P2,#01H
MOV P3,A ;輸出個(gè)位
MOV R4,#4 ;降低動(dòng)態(tài)顯示頻率
LOOP2:MOV R3,#125
LOOP3:DJNZ R3,LOOP3
DJNZ R4,LOOP2
MOV A,B
MOVC A,@A+DPTR
MOV P2,#02H ;輸出十位
MOV P3,A
MOV R4,#4
LOOP4:MOV R3,#125
LOOP5:DJNZ R3,LOOP5
DJNZ R4,LOOP4
MOV A,R7 ;進(jìn)行東西方向倒計時(shí)時(shí)間的十進(jìn)制調整
MOV B,#0AH
DIV AB
MOVC A,@A+DPTR
MOV P2,#04H
MOV P3,A
MOV R4,#4
LOOP6:MOV R3,#125
LOOP7:DJNZ R3,LOOP7
DJNZ R4,LOOP6
MOV A,B
MOVC A,@A+DPTR
MOV P2,#08H
MOV P3,A
MOV R4,#4
LOOP8:MOV R3,#125
LOOP9:DJNZ R3,LOOP9
DJNZ R4,LOOP8
JBC TF0,LOOP ;判斷是否計滿(mǎn)125ms
AJMP DELAY
LOOP:MOV TL0,#0CDH ;計滿(mǎn)125ms重新給定時(shí)器賦值
MOV TH0,#0BH
MOV A,30H
DEC A
MOV 30H,A
JNZ DELAY ;判斷是否計滿(mǎn)8次125ms,即1s
DEC R6 ;計滿(mǎn)1s,東西倒計時(shí)減1,南北倒計時(shí)減1
DEC R7
MOV 30H,#08H ;重新1s次數,重新計時(shí)
RET
TABLE:DB 0C0H,0F9H,0A4H,0B0H,99H ;相應數值的數碼管代碼
DB 92H,82H,0F8H,80H,90H
END



關(guān)鍵詞: 8051 雙機通信

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>