?? 1.sdi
字號:
,,, ORG 0000H
0000,02 00 30,, JMP BEGIN
,,, ORG 0030H
0030,53 89 F0,BEGIN,BEGIN: ANL TMOD, #0F0H
0033,43 89 00,, ORL TMOD, #00H ;由軟件控制的MODE0模式下的定時(shí)器0
0036,C3,, CLR C ;C=0
0037,75 30 08,, MOV 30H, #8 ;設(shè)置右移次數(shù)
003A,74 FF,, MOV A, #0FFH ;A=FFH,設(shè)定A中的初始值
003C,13,NEXT1,NEXT1: RRC A ;循環(huán)右移一位
003D,F5 90,, MOV P1, A ;輸出至P1
003F,75 20 FA,, MOV 20H, #250 ;延時(shí)程序執(zhí)行250次
0042,12 00 59,, CALL DELAY ;調(diào)用延時(shí)程序
0045,D5 30 F4,, DJNZ 30H, NEXT1
0048,75 31 07,, MOV 31H, #7 ;設(shè)置右移次數(shù)
004B,F5 90,NEXT2,NEXT2: MOV P1, A ;輸出至P1
004D,33,, RLC A ;循環(huán)左移一位
004E,75 20 FA,, MOV 20H, #250 ;延時(shí)程序執(zhí)行250次
0051,12 00 59,, CALL DELAY ;調(diào)用延時(shí)程序
0054,D5 31 F4,, DJNZ 31H, NEXT2 ;左移7次
0057,80 D7,, JMP BEGIN
0059,D2 8C,DELAY,DELAY: SETB TR0 ;啟動計(jì)時(shí)器0,開始計(jì)時(shí)
005B,75 8C A0,MORE,MORE: MOV TH0 , #0A0H ; 初始計(jì)時(shí)值高8位設(shè)定
005E,75 8A 00,, MOV TL0 , #00 ;初始計(jì)時(shí)值低5位設(shè)定
0061,10 8D 02,NEXT3,NEXT3: JBC TF0 , NEXT4 ;TF0是否為1,是則跳轉(zhuǎn)到NEXT3,并將TF0清0;否則執(zhí)行下一條指令
0064,80 FB,, JMP NEXT3 ;等待即使時(shí)間結(jié)束
0066,D5 20 F2,NEXT4,NEXT4: DJNZ 20H , MORE ;延時(shí)時(shí)間是否結(jié)束,
0069,C2 8C,, CLR TR0 ;停止計(jì)時(shí)器0計(jì)時(shí)
006B,22,, RET
000E,,, END
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -