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

📄 lcd_g7.asm

📁 国产变频器键盘源程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:

  FUN1:         JNB     FLAG6,FUN1_0  
                MOV     A,66H
                CJNE    A,#01H,FUN1_7
                MOV     66H,#00H
                CLR     FLAG2
  FUN1_7:       MOV     BUFF7,#31H
                MOV     A,BUFF5                
                CJNE    A,#31H,FUN1_5
                JNB     FLAG2,FUN1_5
                SETB    FLAG3
  FUN1_5:       SETB    FLAG1 
                CLR     FLAG6
                CLR     FLAG9
                AJMP    FUN1_END
  FUN1_0:       MOV     A,BUFF5             
                ANL     A,#0FH
                CJNE    A,#01H,FUN1_1
                JB      FLAG2,FUN1_2
                JB      FLAG15,FUN1_END
                MOV     BUFF7,#33H        
                AJMP    FUN1_4
  FUN1_2:       MOV     BUFF7,#35H                 
                SETB    FLAG3
                SETB    FLAG15
                CLR     FLAG16
                AJMP    FUN1_4
  FUN1_1:       CJNE    A,#02H,FUN1_3                                                        
                MOV     BUFF7,#33H
                JB      FLAG2,FUN1_6
                INC     66H                 
                SETB    FLAG2
  FUN1_6:       AJMP    FUN1_4
  FUN1_3:       CJNE    A,#04H,FUN1_8
                JB      FLAG2,FUN1_END
                MOV     BUFF7,#33H
                AJMP    FUN1_4
  FUN1_8:       CJNE    A,#05H,FUN1_9
                MOV     A,BUFF9
                CJNE    A,#31H,FUN1_11
                JNB     FLAG2,FUN1_11
                MOV     44H,#0A1H
                MOV     43H,#0A3H
                AJMP    FUN1_END
  FUN1_11:      JB      FLAG2,FUN1_10
                MOV     BUFF7,#33H
                AJMP    FUN1_4
  FUN1_10:      MOV     BUFF7,#35H
                AJMP    FUN1_4   
  FUN1_9:       CJNE    A,#06,FUN1_END
                JB      FLAG2,FUN1_END
                MOV     BUFF7,#33H
  FUN1_4:       SETB    FLAG1
                SETB    FLAG6
                SETB    FLAG9                
  FUN1_END:     RETI

  FUN2:         JNB     FLAG46,FUN2_START
                MOV     A,BUFF9
                CJNE    A,#31H,FUN2_START          ;TEST
                JNB     FLAG2,FUN2_START
                MOV     44H,#92H
                MOV     43H,#89H               
  FUN2_START:   JNB     FLAG11,FUN2_1
                MOV     A,66H
                CJNE    A,#01H,FUN2_2
                MOV     66H,#00H                 
                SETB    FLAG3
  FUN2_2:       CLR     FLAG9
                CLR     FLAG11     
                AJMP    FUN2_END
  FUN2_1:       JNB     FLAG3,FUN2_3
                INC     66H
                JNB     FLAG16,FUN2_3
                MOV     A,BUFF5
                CJNE    A,#31H,FUN2_3    
                CLR     FLAG16
                CLR     FLAG3
                MOV     66H,#00H     
  FUN2_3:       JNB     FLAG17,FUN2_4     ;A
                SETB    FLAG24            ;A
                MOV     5AH,#02H
                AJMP    FUN2_7             ;A
  FUN2_4:       JNB     FLAG18,FUN2_5      ;A 
                SETB    FLAG26             ;A
                MOV     5AH,#03H
                AJMP    FUN2_7
  FUN2_5:       JNB     FLAG27,FUN2_6
                MOV     5AH,#00H 
                AJMP    FUN2_7
  FUN2_6:       JNB     FLAG28,FUN2_7
                MOV     5AH,#01H   
  FUN2_7:       SETB    FLAG9
                SETB    FLAG11
                CPL     FLAG2                                
  FUN2_END:     RETI

  FUN3:         JNB     FLAG14,FUN3_1             
                MOV     BUFF5,#32H        
                MOV     BUFF7,#36H 
                SETB    FLAG1
;                MOV     A,42H
;                JB      ACC.6,FUN3_NEXT0
                SETB    FLAG2                 
FUN3_NEXT0:     SETB    FLAG20
                CLR     FLAG21
                MOV     46H,#0FFH
                MOV     45H,#0FFH
                MOV     44H,#0FFH
                MOV     43H,#0FFH
                CLR     FLAG3
                CLR     FLAG9
                CLR     FLAG14
                AJMP    FUN3_END
  FUN3_1:       MOV     A,BUFF5                                                                 
                CJNE    A,#31H,FUN3_4
                JB      FLAG15,FUN3_END
                JNB     FLAG16,FUN3_3
                CLR     FLAG16
                CLR     FLAG3                 
  FUN3_3:       SETB    FLAG9            
 ;               SETB    FLAG16
                SETB    FLAG14
                AJMP    FUN3_END
  FUN3_4:       CJNE    A,#33H,FUN3_5
                SETB    FLAG9
                SETB    FLAG14
                AJMP    FUN3_END
  FUN3_5:       CJNE    A,#35H,FUN3_END
                JNB     FLAG2,FUN3_END           ;TEST
                MOV     A,BUFF9
                CJNE    A,#31H,FUN3_END
                MOV     44H,#0CEH
                MOV     43H,#0C1H
  FUN3_END:     RETI

  FUN4:         JNB     FLAG7,FUN4_0 
                MOV     A,66H
                CJNE    A,#01H,FUN4_7
                MOV     66H,#00H
                CLR     FLAG2 
 FUN4_7:        MOV     BUFF7,#31H
                MOV     A,BUFF5
                CJNE    A,#31H,FUN4_5
                JNB     FLAG2,FUN4_5
                SETB    FLAG3 
 FUN4_5:        SETB    FLAG1 
                CLR     FLAG7
                CLR     FLAG9
                AJMP    FUN4_END
 FUN4_0:        MOV     A,BUFF5           
                ANL     A,#0FH
                CJNE    A,#01H,FUN4_1
                JB      FLAG2,FUN4_2
                JB      FLAG15,FUN4_END
                MOV     BUFF7,#32H        
                AJMP    FUN4_4
  FUN4_2:       MOV     BUFF7,#34H        
                SETB    FLAG3
                SETB    FLAG15 
                CLR     FLAG16
                AJMP    FUN4_4 
  FUN4_1:       CJNE    A,#02H,FUN4_3               
                MOV     BUFF7,#32H
                JB      FLAG2,FUN4_6
                INC     66H
                SETB    FLAG2
  FUN4_6:       AJMP    FUN4_4
  FUN4_3:       CJNE    A,#04H,FUN4_8
                JB      FLAG2,FUN4_END
                MOV     BUFF7,#32H
                AJMP    FUN4_4
  FUN4_8:       CJNE    A,#05H,FUN4_9       ;TEST
                MOV     A,BUFF9
                CJNE    A,#31H,FUN4_11
                JNB     FLAG2,FUN4_11
                MOV     44H,#0C1H
                MOV     43H,#8CH
                AJMP    FUN4_END
  FUN4_11:      JB      FLAG2,FUN4_10
                MOV     BUFF7,#32H
                AJMP    FUN4_4
  FUN4_10:      MOV     BUFF7,#34H
                AJMP    FUN4_4
  FUN4_9:       CJNE    A,#06H,FUN4_END
                JB      FLAG2,FUN4_END
                MOV     BUFF7,#32H  
  FUN4_4:       SETB    FLAG1
                SETB    FLAG7
                SETB    FLAG9                
  FUN4_END:     RETI

  FUN5:         JNB     FLAG8,FUN5_0
                MOV     BUFF7,#31H
                CLR     FLAG8
                CLR     FLAG9
                SETB    FLAG1
                AJMP    FUN5_END
  FUN5_0:       MOV     A,BUFF5         
                CJNE    A,#31H,FUN5_1
                JNB     FLAG16,FUN5_4
                CLR     FLAG16
                CLR     FLAG3                
  FUN5_4:       JNB     FLAG2,FUN5_END
                JNB     FLAG3,FUN5_END
                JNB     FLAG15,FUN5_END
                MOV     BUFF7,#36H                   
                CLR     FLAG3
                CLR     FLAG15
                AJMP    FUN5_3
  FUN5_1:       CJNE    A,#32H,FUN5_2
                JB      FLAG2,FUN5_END
                MOV     BUFF7,#34H              
                AJMP    FUN5_3
  FUN5_2:       CJNE    A,#33H,FUN5_5
                JB      FLAG2,FUN5_END
                MOV     BUFF7,#34H
                AJMP    FUN5_3
  FUN5_5:       CJNE    A,#35H,FUN5_END                 
                JNB     FLAG2,FUN5_END    ;TEST
                MOV     A,BUFF9
                CJNE    A,#31H,FUN5_6
                MOV     44H,#92H
                MOV     43H,#86H
                AJMP    FUN5_END
  FUN5_6:       CJNE    A,#33H,FUN5_7
                JNB     FLAG2,FUN5_END
                MOV     BUFF7,#36H
                AJMP    FUN5_3
  FUN5_7:       CJNE    A,#35H,FUN5_END
                JNB     FLAG2,FUN5_END
                MOV     BUFF7,#36H
  FUN5_3:       SETB    FLAG1
                SETB    FLAG8
                SETB    FLAG9
  FUN5_END:     RETI  
                              
  KEY_NUM:      JB      FLAG10,C_NUM_NEXT1 
                SETB    FLAG10
                CLR     P1.7
                SETB    P1.6
                SETB    P1.5
                MOV     R4,#00H
                MOV     R6,#03H              ;12ms tipm-laps
 C_NUM_NEXT1:   INC     R0                   
                CJNE    R0,#06H,C_NUM_NEXT5 
                ACALL   C_NUM
                MOV     A,59H
                CJNE    A,#06H,C_NUM_NEXT2  
                DJNZ    R6,C_NUM_NEXT3
                SETB    P1.5
                AJMP    C_NUM_NEXT2
 C_NUM_NEXT3:   CJNE    R6,#02H,C_NUM_NEXT4
                SETB    P1.7
                CLR     P1.6
                AJMP    C_NUM_NEXT5
 C_NUM_NEXT4:   SETB    P1.6
                CLR     P1.5
                AJMP    C_NUM_NEXT5                                     
 C_NUM_NEXT2:   CLR     FLAG10                
 C_NUM_NEXT5:   RET
                     
 C_NUM:         MOV     A,P3                                       
                JB      ACC.2,LONE
                MOV     A,#00H
                INC     65H
                AJMP    KNU                               
  LONE:         JB      ACC.3,CLONE
                MOV     A,#03H              
                AJMP    KNU                  
  CLONE:        INC     R4
                MOV     R0,#00H
                MOV     59H,#06H
                AJMP    C_NUM_END 
  KNU:          ADD     A,R4                 
                MOV     5DH,A
                JB      FLAG9,KNU_NEXT0
                MOV     65H,#00H
                MOV     59H,A
                AJMP    KNU_NEXT1
  KNU_NEXT0:    MOV     A,65H
                CJNE    A,#01H,KNU_NEXT4
                MOV     65H,#00H
                MOV     A,5BH
                CJNE    A,5DH,LONE
                MOV     59H,A
                AJMP    KNU_NEXT2  
  KNU_NEXT4:    MOV     A,5BH
                CJNE    A,5DH,CLONE
                MOV     59H,A
                AJMP    KNU_NEXT2  
  KNU_NEXT1:    MOV     5BH,A 
  KNU_NEXT2:    MOV     R0,#00H                 
  C_NUM_END:    RET
                                                                                                          
 DISPLAY:       JNB     FLAG4,DIS_NEXT14
                AJMP    DIS_NEXT6
 DIS_NEXT14:    INC     R3                
                CJNE    R3,#01H,DIS_NEXT9
                SETB    P1.0
                SETB    P1.1
                SETB    P1.2
                SETB    P1.3
                SETB    P1.4 
                AJMP    DIS_NEXT0
 DIS_NEXT9:     CJNE    R3,#05H,DIS_NEXT11
                AJMP    DIS_NEXT10                
 DIS_NEXT0:     JNB     FLAG3,DIS_NEXT4 
                JNB     FLAG4,DIS_NEXT18
                AJMP    DIS_NEXT6
 DIS_NEXT18:    INC     Counter 
 DIS_NEXT4:     JB      FLAG2,DIS_NEXT1
                MOV     R1,#4AH 
                AJMP    DIS_NEXT2  
 DIS_NEXT1:     MOV     R1,#46H 
 DIS_NEXT2:     MOV     A,#0FFH
                MOV     P0,A              
                CLR     P1.0
 DIS_LOOP1:     MOV     A,@R1
                JB      FLAG2,DIS_NEXT16 
                MOV     R7,A
                CJNE    R1,#4AH,DIS_NEXT16
                MOV     A,BUFF5
                CJNE    A,#34H,DIS_NEXT15
DIS_LOOP2:      MOV     A,R7
                CLR     ACC.3
                AJMP    DIS_NEXT16
DIS_NEXT15:     CJNE    A,#36H,DIS_NEXT17
                AJMP    DIS_LOOP2
DIS_NEXT17:     CJNE    A,#32H,DIS_NEXT19
DIS_LOOP3:      MOV     A,#0C6H
                AJMP    DIS_NEXT16
DIS_NEXT19:     CJNE    A,#33H,DIS_NEXT20
                AJMP    DIS_LOOP3
DIS_NEXT20:     MOV     A,R7
DIS_NEXT16:     MOV     P0,A                
                DEC     R1
                AJMP    DIS_NEXT3
 DIS_NEXT11:    CJNE    R3,#02H,DIS_NEXT12
                MOV     A,#0FFH
                MOV     P0,A
                SETB    P1.0

⌨️ 快捷键说明

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