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

📄 1.asm

📁 基于单片机的数字电压表设计程序
💻 ASM
字号:
ORG 0000H
LJMP START
START:CLR A
      MOV P2,A
      MOV R0,#70H
      MOV R2,#0BH
LOOPLEM:MOV @R0,A
        INC R0
        DJNZ R2,LOOPLEM
        MOV 78H,#00H
        MOV A,#0FFH
        MOV P0,A
        MOV P1,A
        MOV P3,A
MAIN:LCALL TEST
     LCALL DISPLAY
     AJMP MAIN
     NOP 
     NOP
     NOP
     LJMP START
DISPLAY:JB 00H,DISP11
         MOV R3,#08H
         MOV R0,#70H
         MOV 7BH,#00H
DISLOOP1:LCALL TUNBCD
          MOV R2,#0FFH
DISLOOP2:LCALL DISP
          LCALL KEYWORK1
          DJNZ R2,DISLOOP2
          INC R0
          INC 7BH
          DJNZ R3,DISLOOP1
          RET
DISP11:MOV R3,#08H
        MOV A,7BH
        SUBB A,#01H
        MOV 7BH,A
        ADD A,#70H
        MOV R0,A
DISLOOP11:LCALL TUNBCD
           MOV R2,#0FFH
DISLOOP22:LCALL DISP
           LCALL KEYWORK2
           DJNZ R3,DISLOOP22
           INC 7BH
           RET
TUNBCD:MOV A,@R0
        MOV B,#51
        DIV AB
        MOV 7AH,A
        MOV A,B
        CLR F0
        SUBB A,#1AH
        MOV F0,C
        MOV A,#10
        MUL AB
        MOV B,#51
        DIV AB
        JB F0,LOOP2
        ADD A,#5
 LOOP2:MOV 79H,A
       MOV A,B
       CLR F0
       SUBB A,#10H
       MOV F0,C
       MOV A,#10H
       MUL AB
       MOV B,#51
       DIV AB
       JB F0,LOOP3
       ADD A,#5
 LOOP3:MOV 78H,A
       RET 
 DISP: MOV R1,#7BH
       MOV R5,#0FEH
 DLAY: MOV P1,#0FFH
       MOV A,R5
       ANL P3,A
       MOV A,@R1
       CJNE A,#03,PLAY2
PLAY0: MOV DPTR,#TAB
       MOVC A,@A+DPTR
       MOV P1,A
       JB P3.1,DLAY1
       CLR P1.7
PLAY1:LCALL DL1MS
       DEC R1
       MOV A,P3
       JNB ACC.3,ENDOUT
       RL A
       MOV R5,A
       MOV P3,#0FFH
       AJMP DLAY 
 PLAY2:MOV DPTR,#TAB
       
 ENDOUT: MOV P3,#0FFH
         MOV P1,#0FFH
         RET
 TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
 DL10MS: MOV R6,#0D0H
 DL1:MOV R7,#10H
 DL2:DJNZ R7,DL2
     DJNZ R6,DL1
     RET
 DL1MS:MOV R4,#0FFH
 DL3:DJNZ R4,DL3
     MOV R4,#0FFH
 DL4:DJNZ R4,DL4
     RET
 TEST:CLR A
      MOV P2,A
      MOV R0,#70H
      MOV R7,#08H
      LCALL TESTART
WAIT: JB P3.7,MOVD
      AJMP WAIT
TESTART:SETB P2.3
        NOP
        NOP
        CLR P2.3
        SETB P2.4
        NOP
        NOP 
        CLR P2.4
        NOP
        NOP
        NOP
        NOP
        RET
 MOVD:SETB P2.5
      MOV A,P0
      MOV @R0,A
      CLR P2.5
      INC R0
      MOV A,P2
      INC A
      MOV P2,A
      CJNE A,#08H,TESTEND
 TESTEND:JC TESTCON
         CLR A
         MOV P2,A
         MOV A,#0FFH
         MOV P0,A
         MOV P1,A
         MOV P3,A
         RET
TESTCON:LCALL TESTART
        LJMP WAIT
KEYWORK1:JNB P3.5,KEY1
KEYOUT: RET
KEY1:LCALL DISP
     JB P3.5,KEYOUT
WAIT11:JNB P3.5,WAIT12
       CPL 00H
       MOV R2,#0AH
       MOV R3,#01H
       RET
WAIT12:LCALL DISP
       AJMP WAIT11                        
KEYWORK2:JNB P3.5,KEY1
         JNB P3.6,KEY2
         RET
KEY2: LCALL DISP
      JB P3.6,KEYOUT
WAIT22:JNB P3.6,WAIT21
       INC 7BH
       MOV A ,7BH
       CJNE A,#08H,KEYOUT11
KEYOUT11:JC KEYOUT1
         MOV 7BH,#00H 
KEYOUT1:RET
WAIT21: LCALL DISP
        AJMP WAIT22
        END                       
       
        

⌨️ 快捷键说明

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