⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ckcl_b.asm

📁 本资源包含了单片机键盘、a/d、频率测试等源代码
💻 ASM
📖 第 1 页 / 共 2 页
字号:
         MOV DPTR,#TAB1
  DL0:   MOV A,R0
         MOVC A,@A+DPTR
         LCALL AA
         INC R0
         DJNZ R7,DL0
         clr p3.3

         LCALL CON1      ;CLEAR DISP RAM
         LCALL DISP_M
         MOV DISPD,#06H
         LCALL DISP_M
         MOV DISPD,#01H
         LCALL DISP
         LCALL B_DISPD
         LCALL CON1
         RET

DISP_1:  CLR AVSET1
         SETB P3.3
         mov scon,#00h
         MOV R7,#05H
         MOV R0,#00H
         MOV DPTR,#TAB2
  DL00:  MOV A,R0
         MOVC A,@A+DPTR
         LCALL AA
         INC R0
         DJNZ R7,DL00
         MOV R0,#0
         clr p3.3     ; DISP 00001

         MOV AVI, #00H
         MOV AVL,#01H

         LCALL DISP_M
         MOV DISPD,#01H
         LCALL DISP
         LCALL B_DISPD
         LCALL CON1
         RET



CON1:   MOV R3,#06H     ;CLEAR DISPLAY RAM(30---35H)
        MOV R0,#DISPD
SJD:    MOV @R0,#00H
        INC R0
        DJNZ R3,SJD
        MOV R0,#00H
        MOV R3,#00H
           RET


DISP_M:  MOV R3,#05H
         MOV R1,#DISPD
         INC R1
         INC R1
         INC R1
         INC R1
DISPDM:  MOV A,@R1
         INC R1
         MOV @R1,A
         DEC R1
         DEC R1
         DJNZ R3,DISPDM
         MOV R1,#00H
         MOV R3,#00H
           RET

AVTB_AVT: MOV R3,#3
          MOV R0,#AVTB
          MOV R1,#AVT
AAL:      MOV A,@R0
          MOV @R1,A
          INC R0
          INC R1
          DJNZ R3, AAL
          MOV R0, #0
          MOV R1, #0
          MOV R3,#0
          RET

READ_D:   MOV R0,#DISPD
          MOV A,@R0
          MOV R1,A
          INC R0
          MOV A,@R0
          SWAP A
          ADD A,R1
          MOV AVL,A
          INC R0
          MOV A,@R0
          MOV R1,A
          INC R0
          MOV A,@R0
          SWAP A
          ADD A,R1
          MOV AVI,A
          MOV A,AVI
          JZ  RD1
          MOV R0,#0
          MOV R1,#0
          LJMP RDND
RD1:      MOV A,AVL
          JNZ  RDND
          LCALL READ_D2
RDND:      RET

READ_D2:   MOV R0,#DISPD2
          MOV A,@R0
          MOV R1,A
          INC R0
          MOV A,@R0
          SWAP A
          ADD A,R1
          MOV AVL,A
          INC R0
          MOV A,@R0
          MOV R1,A
          INC R0
          MOV A,@R0
          SWAP A
          ADD A,R1
          MOV AVI,A
          MOV R0,#0
          MOV R1,#0
          RET

BHDIV:  MOV R3,60H
        MOV R2,61H
        CLR 3CH
        MOV R1,#53H
        LCALL INTF
        MOV R0,#50H
        LCALL FDIV
        MOV 50H,R4
        MOV 51H,R2
        MOV 52H,R3
        LCALL FINT
        MOV 5AH,R3
        MOV 5BH,R2
        RET
         
FADD:CLR      3AH
     LCALL    FMLD
     LCALL    FABP
     RET

FSUB:SETB       3AH
     LCALL      FMLD
     LCALL      FABP
     RET

FMLD:MOV      A,@R0
     MOV      R6,A
     INC      R0
     MOV      A,@R0
     MOV      R2,A
     INC      R0
     MOV      A,@R0
     MOV      R3,A
     DEC      R0
     DEC      R0
     MOV      A,@R1
     MOV      R7,A
     INC      R1
     MOV      A,@R1
     MOV      R4,A
     INC      R1
     MOV      A,@R1
     MOV      R5,A
     DEC      R1
     DEC      R1
     RET

FABP:MOV      A,R6
     MOV      C,ACC.7
     MOV      38H,C
     XRL      A,R7
     JNB      ACC.7,FA1
     CPL      3AH
FA1: MOV      A,R6
     MOV      C,ACC.6
     MOV      ACC.7,C
     MOV      R6,A
     MOV      A,R7
     MOV      C,ACC.6
     MOV      ACC.7,C
     MOV      R7,A
     CLR      C
     MOV      A,R6
     SUBB     A,R7
     JZ       FA2
     CLR      PSW.5
     CLR      39H
     JB       ACC.7,FA5
     CJNE     R4,#0,FA6
     CJNE     R5,#0,FA6
FA2: JB       3AH,FA8
     MOV      A,R3
     ADD      A,R5
     MOV      R3,A
     MOV      A,R2
     ADDC     A,R4
     MOV      R2,A
     JNC      FA4
     SETB     39H
     CLR      C
FA3: CLR      PSW.5
     LCALL    FSDT
FA4: CJNE     R2,#0,FAA
     CJNE     R3,#0,FAA
     MOV      R4,#41H
     RET
FAA: MOV      A,R6
     MOV      C,38H
     MOV      ACC.7,C
     XCH      A,R4
     MOV      R6,A
     RET
FA5: CJNE     R2,#0,FA7
     CJNE     R3,#0,FA7
     MOV      A,R7
     MOV      R6,A
     SJMP     FA2
FA6: CPL      PSW.5
FA7: CLR      C
     LCALL    FSDT
     SJMP     FA1
FA8: MOV      A,R3
     CLR      C
     SUBB     A,R5
     MOV      R3,A
     MOV      A,R2
     SUBB     A,R4
     MOV      R2,A
     JNC      FA9
     CLR      A
     CLR      C
     SUBB     A,R3
     MOV      R3,A
     CLR      A
     SUBB     A,R2
     MOV      R2,A
     CPL      38H
FA9: SETB     C
     SJMP     FA3

FSDT:JC       FS2               
     MOV      C,39H
     JB       PSW.5,FS1
     MOV      A,R2
     RRC      A
     MOV      R2,A
     MOV      A,R3
     RRC      A
     MOV      R3,A
     INC      R6
     RET
FS1: MOV      A,R4
     RRC      A
     MOV      R4,A
     MOV      A,R5
     RRC      A
     MOV      R5,A
     INC      R7
     RET
FS2: MOV      A,R2
     JNZ      FS4
     CJNE     R3,#0,FS5
     MOV      R6,#41H
FS3: RET
FS4: JB       ACC.7,FS3
FS5: MOV      C,PSW.5
     MOV      A,R3
     RLC      A
     MOV      R3,A
     MOV      A,R2
     RLC      A
     MOV      R2,A
     CLR      PSW.5
     DEC      R6
     SJMP     FS2

INTF:   MOV R6,#10H      
        SETB C
        CLR PSW.5
        LCALL FSDT
        MOV A,R6
        MOV C,3CH
        MOV ACC.7,C
        MOV R4,A
        LCALL FSTR
        RET

FINT:   CLR PSW.5
        INC R0
        MOV A,@R0
        MOV R2,A
        INC R0
        MOV A,@R0
        MOV R3,A
        DEC R0
        DEC R0
        MOV A,@R0
        MOV C,ACC.7
        MOV 3CH,C
        CLR ACC.7
        JNB ACC.6,FIN1
        MOV R2,#00H
        MOV R3,#00H
        RET
 FIN1:  CJNE A,#11H,FIN5
 FIN2:  SETB PSW.5
        MOV R2,#0FFH
        MOV R3,#0FFH
        RET
 FIN5:  JC FIN3
        SJMP FIN2
 FIN3:  CJNE A,#10H,FIN4
        RET
 FIN4:  CLR C
        XCH A,R2
        RRC A
        XCH A,R2
        XCH A,R3
        RRC A
        XCH A,R3
        INC A
        SJMP FIN3


FSTR:   MOV A,R4
        MOV @R1,A
        INC R1
        MOV A,R2
        MOV @R1,A
        INC R1
        MOV A,R3
        MOV @R1,A
        DEC R1
        DEC R1
        RET


FDIV:LCALL      FMLD
     MOV        A,R6
     XRL        A,R7
     MOV        C,ACC.7
     MOV        38H,C
     CLR        A
     MOV        R6,A
     MOV        R7,A
     CJNE       R4,#0,FD1
     CJNE       R5,#0,FD1
     SETB       C
     RET
FD1: MOV        A,R3
     SUBB       A,R5
     MOV        A,R2
     SUBB       A,R4
     JC         FD2
     CLR        PSW.5
     CLR        39H
     LCALL      FSDT
     MOV        A,R7
     RRC        A
     MOV        R7,A
     CLR        C
     SJMP       FD1
FD2: CLR        A
     XCH        A,R6
     PUSH       ACC
     LCALL      WDDIV
     POP        ACC
     ADD        A,@R0
     CLR        C
     SUBB       A,@R1
     MOV        C,38H
     MOV        ACC.7,C
     MOV        R4,A
     CLR        C
     RET

WDDIV: MOV      A,R1
       PUSH     ACC
       MOV      B,#10H
DV1:   CLR      C
       MOV      A,R6
       RLC      A
       MOV      R6,A
       MOV      A,R7
       RLC      A
       MOV      R7,A
       MOV      A,R3
       RLC      A
       MOV      R3,A
       XCH      A,R2
       RLC      A
       XCH      A,R2
       MOV      PSW.5,C
       CLR      C
       SUBB     A,R5
       MOV      R1,A
       MOV      A,R2
       SUBB     A,R4
       JB       PSW.5,DV2
       JC       DV3
DV2:   MOV      R2,A
       MOV      A,R1
       MOV      R3,A
       INC      R6
DV3:   DJNZ     B,DV1
       POP      ACC
       MOV      R1,A
       MOV      A,R7
       MOV      R2,A
       MOV      A,R6
       MOV      R3,A
       RET

OUTH8L4:MOV A,5BH
        ANL A,#0FH
        MOV 5BH,A
        MOV A,5AH
        ANL A,#0F0H
        ADD A,5BH
        SWAP A
        MOV HI8,A
        MOV A,5AH
        ANL A,#0FH
        MOV LOW4,A
        RET

B_DISPD: MOV R0,#DISPD
         MOV R1,#DISPD2
         MOV R3,#5
B_DL:    MOV A,@R0
         MOV @R1,A
         INC R0
         INC R1
         DJNZ R3,B_DL
         MOV R0,#0
         MOV R1,#0
         RET

B_DISPD1: MOV R0,#DISPD
          MOV R1,#DISPD2
          MOV R3,#5
B_DL1:    MOV A,@R1
          MOV @R0,A
          INC R0
          INC R1
          DJNZ R3,B_DL1
          MOV R0,#0
          MOV R1,#0
          RET



desg: db 0fch,60h,0dah,0f2h,66h,0b6h,0beh,0e0h,0feh,0f6h,0eeh,0feh,9ch,0fch,9eh,8eh
TAB1: DB 06H,0BEH,0FCH,0FCH,0FCH
TAB2: DB 06H,0FCH,0FCH,0FCH,0FCH

          END

 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -