久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
能不能幫我分析一下這個單片機匯編程序,謝謝
[打印本頁]
作者:
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.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
欧美亚洲另类在线
|
www312aⅴ欧美在线看
|
日韩视频在线播放
|
午夜精品一区二区三区在线观看
|
国家一级黄色片
|
99热碰
|
真人女人一级毛片免费播放
|
欧美视频在线播放
|
精品亚洲一区二区三区四区五区
|
天天操天天舔
|
久久综合婷婷
|
一级看片免费视频囗交动图
|
色av一区
|
九色国产
|
久久国产精品一区二区三区
|
婷婷中文字幕
|
亚洲人成在线观看
|
久久亚洲一区二区三区四区
|
日韩中文在线观看
|
999精品在线
|
av一二三区
|
99精品久久久
|
国产在线一区二区
|
精品av
|
亚洲网在线
|
中文字幕久久精品
|
欧美精品一区在线发布
|
一区二区三区av
|
欧美黑人一级爽快片淫片高清
|
www.久久久.com
|
亚洲91视频
|
中文字幕在线观看精品
|
国产激情在线观看视频
|
免费在线观看一级毛片
|
亚洲福利
|
中文字幕在线观看一区
|
久久69精品久久久久久久电影好
|
www.一区二区三区
|
欧美黄在线观看
|
日韩中文字幕在线观看
|
精品乱码一区二区三四区
|