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

📄 bjdj2.asm

📁 常用子程序-61个-4.2M.zip
💻 ASM
字号:
       ORG 0000H
       AJMP MAIN
       ORG 0030H
  MAIN:MOV      DPTR,#0FF82H
       MOV      A,#0D1H
       MOVX     @DPTR,A
  WAIT:MOVX     A,@DPTR
       JB       ACC.7,WAIT
       MOV      A,#00H
       MOVX     @DPTR,A
       MOV      A,#2CH
       MOVX     @DPTR,A
       
MAIN1:MOV TMOD ,#01H
       CLR 00H 
       CLR 01H
       CLR 02H
       CLR 03H
       
       MOV 50H,#10H
       MOV 51H,#02H
       MOV 52H,#04H
       MOV 53H,#08H  
       
       MOV  30H,#01H
       
       MOV  32H,#200
      
          
       MOV  31H,#01H
       
CHAXUN:LCALL SEACH 
       JBC 00H,MAIN2 
       SJMP CHAXUN 
       
 MAIN2:LCALL HB2 
       LCALL TRANS
       LCALL LED 
       MOV  R0,#50H
       MOV  R7,#04H  
            
 START:MOV  A,@R0
       MOV  DPTR,#8300H
       MOVX   @DPTR,A 
       MOV 72H,32H
       LCALL  DELAY 
              
      MOV  A,#00H
      MOV   DPTR,#8300H
      MOVX   @DPTR,A 
      MOV  72H,32H
      LCALL  DELAY 
      
NEXT4:LCALL SEACH
      JBC 01H,MAIN1 
      JBC  02H,MMM1
      JBC  03H,MMM1
      JBC  04H,MMM1
      INC  R0 
      DJNZ   R7,START
      MOV   R0,#50H
      MOV   R7,#04H
      AJMP  START 
      
MMM1:MOV  R0,#50H
     MOV  R7,#04H
     AJMP   START             
 
 SEACH:MOV      DPTR,#0FF82H   
       MOVX     A,@DPTR
       ANL A,#07H
       JZ  RETUN4
       LJMP KEY
RETUN4:RET
   KEY:MOV  DPTR ,#0FF82H
       MOV  A,#40H
	   MOVX @DPTR,A
	   MOV DPTR,#0FF80H
	   MOVX A,@DPTR
	   ANL A,#3FH

       CJNE A,#0AH,KEY1             
       SETB 00H
       AJMP RETUN    
      
  KEY1:CJNE A,#0BH,KEY2
       SETB 01H 
       AJMP RETUN 
 KEY2:CJNE A,#0CH,KEY3
       
       MOV 50H,#08H
       MOV 51H,#04H
       MOV 52H,#02H
       MOV 53H,#10H
       SETB 02H 
       AJMP RETUN 
 KEY3:CJNE A,#0DH,KEY4
      MOV 50H,#10H
      MOV 51H,#02H
      MOV 52H,#04H
      MOV 53H,#08H 
      SETB  03H  
      AJMP RETUN    
KEY4:CJNE A,#0EH,KEY5
     MOV A,30H
     CJNE A,#14H,PTF0
     AJMP  PTFK0
PTF0:CLR C 
     INC      30H
     MOV  A,32H
     CLR  C 
     SUBB A,#10
     MOV 32H,A
     SETB 04H
          
     
PTFK0: AJMP RETUN 
KEY5:CJNE A,#0FH,RETUN 
     MOV A,30H
     CJNE A,#01H,PTF1
     AJMP  RETUN  
PTF1: DEC  30H
      MOV A,32H
      CLR C
      ADD A,#10
      MOV 32H,A 
      SETB  04H                   
 RETUN: 
       LCALL HB2 
       LCALL TRANS
       LCALL LED   
       RET          
 
 
  DELAY1:MOV     R7,#14H

        MOV     TMOD,#01H
        MOV     TL0,#00H
        MOV     TH0,#4CH
        SETB    TR0
   HERE2:JBC     TF0,NEXT7
        SJMP    HERE2
  NEXT7:MOV     TL0,#00H
        MOV     TH0,#4CH
        DJNZ    R7,HERE2
        CLR     TR0
       
        RET
 
       
    
      
 

   
TRANS: MOV R0,#39H
       MOV R1,#40H
       MOV R6,#01H
  LAST:MOV      A,@R0
       ANL      A,#0FH
       MOV      @R1,A
       MOV      A,@R0
       ANL      A,#0F0H
       SWAP     A
       INC  R1
       MOV      @R1,A
       INC  R1
       DEC R0
       DJNZ R6,LAST
       RET  

  
  
 

  
 
 ;    (17)  标号: HB2   功能:双字节十六进制整数转换成双字节BCD码整数

;入口条件:待转换的双字节十六进制整数在R6、R7中。
;出口信息:转换后的三字节BCD码整数在R3、R4、R5中。
;;影响资源:PSW、A、R2~R7    堆栈需求:  2字节

HB2:MOV R6,#00H
    MOV R7,30H
    CLR	A	    ;;BCD码初始化
	MOV	R3,A
	MOV	R4,A
	MOV	R5,A
	MOV	R2,#10H	       ;;转换双字节十六进制整数
HB3:	MOV	A,R7                   ;	;从高端移出待转换数的一位到CY中
	RLC	A
	MOV	R7,A
	MOV	A,R6
	RLC	A
	MOV	R6,A
	MOV	A,R5	               ;;BCD码带进位自身相加,相当于乘2
	ADDC	A,R5
	DA	A	                  ;;;;;;十进制调整
	MOV	R5,A
	MOV	A,R4
	ADDC	A,R4
	DA	A
	MOV	R4,A
	MOV	A,R3
	ADDC	A,R3
	MOV	R3,A	                    ;;双字节十六进制数的万位数不超过6,不用调整
	DJNZ	R2,HB3  
	
	MOV 39H,R5                     ;	;处理完16bit
	RET 	
	
	;;晶振12MHZ,延时0.25秒



DELAY:
LOOP3:MOV 71H,#50
LOOP1:MOV 70H,#02
LOOP0:DJNZ 70H,LOOP0
      DJNZ 71H,LOOP1
      ;MOV 70H,#46
     ;LOOP2:DJNZ 70H,LOOP2
      NOP
      DJNZ 72H,LOOP3
  
      RET 
   
 
   LED:MOV      DPTR,#0FF82H
       MOV      A,#90H
       MOVX      @DPTR,A
       MOV      R1,#40H
       MOV      R7,#02H
       MOV      DPTR,#0FF80H
  LOOP:MOV      A,@R1
       ADD      A,#05H
       MOVC     A,@A+PC
       MOVX     @DPTR,A
       INC      R1
       DJNZ     R7,LOOP
       RET
       DB       3FH,06H,5BH,4FH,66H,6DH
       DB       7DH,07H,7FH,6FH  

END        
                      

















    

⌨️ 快捷键说明

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