微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 为什么用这段程序,1302的秒位计时特别快

为什么用这段程序,1302的秒位计时特别快

时间:10-02 整理:3721RD 点击:
ORG    0000H       ;
RST    BIT P3.5    ;
DSIO   BIT P3.4    ;
SCLK   BIT P3.6    ;
AJMP   START       ;
ORG    30H         ;
START:
MOV    R0,#00H     ;
MOV    R1,#00H     ;
MOV    DPTR,#TAB   ;
CLR    RST         ;
LCALL  L0          ;
CLR    SCLK        ;
NOP                ;
SETB   RST         ;
L1:
MOV    A,R0        ;
MOVC   A,@A+DPTR   ;
L2:
MOV    C,ACC.7     ;
MOV    DSIO,C      ;
NOP                ;
SETB   SCLK        ;
NOP                ;
CLR    SCLK        ;
INC    R1          ;
RL     A           ;
CJNE   R1,#08H,L2  ;
MOV    R1,#00H     ;
INC    R0          ;
CJNE   R0,#02H,L1  ;
CLR    RST         ;
TAB:
DB     8EH,00H     ;
MOV    R0,#00H     ;
MOV    R1,#00H     ;
MOV    DPTR,#TAB2  ;
LCALL  L0          ;
CLR    SCLK        ;
NOP                ;
SETB   RST         ;
L3:
MOV    A,R0        ;
MOVC   A,@A+DPTR   ;
L4:
MOV    C,ACC.7     ;
MOV    DSIO,C      ;
NOP                ;
SETB   SCLK        ;
NOP                ;
CLR    SCLK        ;
INC    R1          ;
RL     A           ;
CJNE   R1,#08H,L4  ;
MOV    R1,#00H     ;
INC    R0          ;
CJNE   R0,#02H,L3  ;
CLR    RST         ;
TAB2:
DB     80H,00H     ;
MOV    R0,#00H     ;
MOV    R1,#00H     ;
MOV    DPTR,#TAB3  ;
LCALL  L0          ;
CLR    SCLK        ;
NOP                ;
SETB   RST         ;
L5:
MOV    A,R0        ;
MOVC   A,@A+DPTR   ;
L6:
MOV    C,ACC.7     ;
MOV    DSIO,C      ;
NOP                ;
SETB   SCLK        ;
NOP                ;
CLR    SCLK        ;
INC    R1          ;
RL     A           ;
CJNE   R1,#08H,L6  ;
MOV    R1,#00H     ;
INC    R0          ;
CJNE   R0,#02H,L5  ;
CLR    RST         ;
TAB3:
DB     8EH,80H     ;
LL1:
MOV    R1,#00H     ;
MOV    A,#81H      ;
LCALL  L0          ;
CLR    SCLK        ;
NOP                ;
SETB   RST         ;
L7:
MOV    C,ACC.7     ;
MOV    DSIO,C      ;
NOP                ;
SETB   SCLK        ;
NOP                ;
CLR    SCLK        ;
INC    R1          ;
RL     A           ;
CJNE   R1,#08H,L7  ;
MOV    R1,#00H     ;
L8:
RR     A           ;
MOV    C,DSIO      ;
MOV    ACC.7,C     ;
SETB   SCLK        ;
NOP                ;
CLR    SCLK        ;
INC    R1          ;
CJNE   R1,#08H,L8  ;
CLR    RST         ;
MOV    20H,A       ;
MOV    DPTR,#TAB4  ;
MOV    21H,#00H    ;
MOV    A,20H       ;
MOV    C,ACC.0     ;
MOV    21H.0,C     ;
MOV    C,ACC.1     ;
MOV    21H.1,C     ;
MOV    C,ACC.2     ;
MOV    21H.2,C     ;
MOV    C,ACC.3     ;
MOV    21H.3,C     ;
MOV    A,21H       ;
MOVC   A,@A+DPTR   ;
MOV    P0,A        ;
LCALL  DELAY       ;
AJMP   LL1         ;
TAB4:
DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;
L0:
NOP                ;
SETB   SCLK        ;
NOP                ;
CLR    DSIO        ;
NOP                ;
SETB   DSIO        ;
NOP                ;
RET                ;
DELAY:
    MOV  R3,#50    ;
D4: MOV  R4,#10    ;
D5: DJNZ R4,D5     ;
    DJNZ R3,D4     ;
        RET            ;
END.

1302 RTC芯片么?跟你的程序无关,与1302的晶振有关

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top