亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版
標題:
能不能幫我分析一下這個單片機匯編程序,謝謝
[打印本頁]
作者:
Elvis
時間:
2017-6-28 22:06
標題:
能不能幫我分析一下這個單片機匯編程序,謝謝
才開始學匯編語言,不是很懂。大神們幫我分析一下這個程序,能配合流程圖講解最好。謝謝大佬們了。
COUNT EQU 30H ;T0中斷計數
SNLEDDATA EQU 31H ;存儲南北數碼管顯示的數據
SNCOLORFLAG EQU 32H ;=1時南北綠燈亮,=2時南北黃燈亮,=3時南北紅燈亮
SNLEDDATAINIT EQU 33H ;存儲南北各顏色燈的初始時間
EWLEDDATA EQU 34H ;存儲東西數碼管顯示的數據
EWCOLORFLAG EQU 35H ;=1時東西紅燈亮,=2時東西綠燈亮,=3時東西黃燈亮
EWLEDDATAINIT EQU 36H ;存儲東西各顏色燈的初始時間
org 0000h
lJMP MAIN
org 0003h
lJMP INT00
org 000Bh
lJMP T00
org 0100h
;主函數***************************************
MAIN: MOV SP,#60H
MOV TMOD,#01H
MOV TH0,#0eCH
MOV TL0,#078H
MOV COUNT,#00H
SETB TR0 ;開定時器0
SETB ET0 ;允許定時器0中斷
SETB EX0 ;允許外部0中斷
SETB EA ;開總中斷
MOV SNLEDDATAINIT,#15
MOV EWLEDDATAINIT,#18
MOV SNLEDDATA,SNLEDDATAINIT
MOV EWLEDDATA,EWLEDDATAINIT
MOV P2,#0feH
MOV SNCOLORFLAG,#01
MOV EWCOLORFLAG,#01
;初始化結束***********************************
START:
MOV A,COUNT
CJNE A,#200,NOT1S ;沒到1秒跳轉
MOV COUNT,#00 ;1秒時間到
DEC SNLEDDATA
MOV A,SNLEDDATA
JNZ checkewleddata
MOV SNLEDDATA,SNLEDDATAINIT
INC SNCOLORFLAG
MOV A,SNCOLORFLAG
CJNE A,#04,checkewleddata
MOV SNCOLORFLAG,#01
checkewleddata:
DEC EWLEDDATA
MOV A,EWLEDDATA
JNZ NOT1S
MOV EWLEDDATA,EWLEDDATAINIT
INC EWCOLORFLAG
MOV A,EWCOLORFLAG
CJNE A,#04,NOT1S
MOV EWCOLORFLAG,#01
NOT1S:
LCALL snCOLORCHECK
LCALL ewCOLORCHECK
LCALL DISPLAY
SJMP START
;****************************************
;南北紅綠黃燈控制**************************
snCOLORCHECK:
PUSH ACC
PUSH B
PUSH PSW
sngreen:
MOV A,SNCOLORFLAG
CJNE A,#01,snYELLOW
MOV SNLEDDATAINIT,#03 ;設置南北黃燈閃爍時間
CLR P1.2
CLR P1.1
SETB P1.0 ;南北綠燈亮
SETB P1.7
CLR P1.6
JMP snCOLORCHECKOUT
snYELLOW:
MOV A,SNCOLORFLAG
CJNE A,#02,snred
MOV SNLEDDATAINIT,#18 ;設置南北紅燈亮時間
MOV A,COUNT
MOV B,#50
DIV AB
MOV A,B
CJNE A,#00H,snNOTFLASH
CPL P1.1 ;南北黃燈閃爍
CLR P1.0
CLR P1.2
snNOTFLASH:
JMP snCOLORCHECKOUT
snred:
MOV SNLEDDATAINIT,#15 ;設置南北綠燈亮時間
CLR P1.0
CLR P1.1
SETB P1.2 ;南北紅燈亮
SETB P1.6
CLR P1.7
snCOLORCHECKOUT:
POP PSW
POP B
POP ACC
RET
;******************************************************
;東西紅綠黃燈控制**************************************
ewCOLORCHECK:
PUSH ACC
PUSH B
PUSH PSW
ewred:
MOV A,ewCOLORFLAG
CJNE A,#01,ewyellow
MOV ewLEDDATAINIT,#15 ;設置東西綠燈亮時間
CLR P1.3
CLR P1.4
SETB P1.5 ;東西紅燈亮
JMP ewCOLORCHECKOUT
ewyellow:
MOV A,ewCOLORFLAG
CJNE A,#03,ewgreen
MOV ewLEDDATAINIT,#18 ;設置東西紅燈亮時間
MOV A,COUNT
MOV B,#50
DIV AB
MOV A,B
CJNE A,#00H,ewNOTFLASH
CPL P1.4 ;東西黃燈閃爍
CLR P1.3
CLR P1.5
ewNOTFLASH:
JMP ewCOLORCHECKOUT
ewgreen:
MOV ewLEDDATAINIT,#03 ;設置東西黃燈閃爍時間
CLR P1.4
CLR P1.5
SETB P1.3 ;東西綠燈亮
ewCOLORCHECKOUT:
POP PSW
POP B
POP ACC
RET
;************************************************************
;數碼管顯示**************************************************
DISPLAY:
PUSH ACC
PUSH PSW
PUSH B
MOV A,SNLEDDATA
MOV B,#10
DIV AB
MOV R0,B
MOV R1,A
MOV A,EWLEDDATA
MOV B,#10
DIV AB
MOV R2,B
MOV R3,A
MOV DPTR,#TABLE
MOV A,P2
DISPSNH:
CJNE A,#0feH,DISPSNL
MOV A,R1
MOVC A,@A+DPTR
MOV P0,A
JMP DISPOUT
DISPSNL:
CJNE A,#0fdH,DISPEWH
MOV A,R0
MOVC A,@A+DPTR
MOV P0,A
JMP DISPOUT
DISPEWH:
CJNE A,#0fbH,DISPEWL
MOV A,R3
MOVC A,@A+DPTR
MOV P0,A
JMP DISPOUT
DISPEWL:
CJNE A,#0f7H,DISPOUT
MOV A,R2
MOVC A,@A+DPTR
MOV P0,A
DISPOUT:
POP B
POP PSW
POP ACC
RET
;*****************************************
TABLE:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
; 0 1 2 3 4 5 6 7 8 9
;T0中斷函數*******************************
T00: PUSH ACC
PUSH PSW
MOV TH0,#0ecH
MOV TL0,#078H
MOV A,P2
RL A
CJNE A,#11101111B,NOT5
MOV A,#0feH ;p2.0=0,南北數碼管十位亮,p2.1=0,南北數碼管個位亮
NOT5: MOV P2,A ;p2.2=0,東西數碼管十位亮,p2.3=0,東西數碼管個位亮
INC COUNT
POP PSW
POP ACC
RETI
;外部中斷0***********************************
INT00: push acc
push psw
mov a,p0
push acc
mov a,p1
push acc
mov a,p2
push acc
INT10: jnb p3.6,INT11
jnb p3.7,INT12
SJMP INT13
INT11: LCALL INT01
SJMP INT13
INT12: LCALL INT02
INT13: mov p1,#0C0h
mov p2,#0ffh
jnb p3.2,INT10
pop acc
mov p2,a
pop acc
mov p1,a
pop acc
mov p0,a
pop psw
pop acc
reti
INT01: mov p2,#0ffh
mov p1,#01001100B
jnb p3.6,[ DISCUZ_CODE_1 ]nbsp;
ret
INT02: mov p2,#0ffh
mov p1,#10100001B
jnb p3.7,[ DISCUZ_CODE_1 ]nbsp;
ret
;*****************************************
END
復制代碼
作者:
dfmc110
時間:
2017-6-29 08:42
慢慢看書逐條標注吧
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1