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

📄 lcd_g7.asm

📁 国产变频器键盘源程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:
ADD_NEXT44:     AJMP    LCD_LOOP0
LCD_NEXT51:     CJNE    A,#33H,LCD_NEXT52
                JNB     FLAG2,ADD_NEXT45
                JNB     FLAG17,LCD_NEXT72
LCD_LOOP3:      SETB    FLAG32
                MOV     DAT,#7FH
                LCALL   PRG4
                MOV     COM,#0BBH
                LCALL   PRG0
                MOV     COM,#13H
                LCALL   PRG0
                INC     LCDPC
                AJMP    LCD_END
LCD_NEXT72:     JNB     FLAG18,ADD_NEXT45
                AJMP    LCD_LOOP3    
ADD_NEXT45:     AJMP    LCD_LOOP0
LCD_NEXT52:     CJNE    A,#34H,LCD_NEXT53 
                JNB     FLAG2,ADD_NEXT46
                JNB     FLAG17,LCD_NEXT74
LCD_LOOP4:      LCALL   DRAW2
                CLR     FLAG32
                INC     LCDPC
                AJMP    LCD_END
LCD_NEXT74:     JNB     FLAG18,ADD_NEXT46
                AJMP    LCD_LOOP4 
ADD_NEXT46:     AJMP    LCD_LOOP0
LCD_NEXT53:     CJNE    A,#35H,LCD_NEXT54
                JNB     FLAG2,LCD_NEXT77
                JNB     FLAG17,LCD_NEXT76
                AJMP    LCD_LOOP4
LCD_NEXT76:     JNB     FLAG18,LCD_NEXT77
                AJMP    LCD_LOOP4 
LCD_NEXT77:     MOV     COLUMN,#16H               
                AJMP    LCD_LOOP1
LCD_NEXT54:     CJNE    A,#36H,LCD_NEXT55
                JNB     FLAG2,ADD_NEXT48
                JNB     FLAG17,LCD_NEXT78
                AJMP    LCD_LOOP4
LCD_NEXT78:     JNB     FLAG18,ADD_NEXT48                
                AJMP    LCD_LOOP4      
ADD_NEXT48:     AJMP    LCD_LOOP1
LCD_NEXT55:     CJNE    A,#37H,LCD_NEXT56
                JNB     FLAG2,ADD_NEXT49
                JNB     FLAG17,LCD_NEXT80
                AJMP    LCD_LOOP4
LCD_NEXT80:     JNB     FLAG18,ADD_NEXT49                
                AJMP    LCD_LOOP4   
ADD_NEXT49:     AJMP    LCD_LOOP1
LCD_NEXT56:     CJNE    A,#38H,LCD_NEXT57
                JNB     FLAG2,ADD_NEXT50
                JNB     FLAG17,LCD_NEXT82
LCD_LOOP5:      MOV     COM,#39H
                LCALL   PRG0
                MOV     DAT,#7FH 
                LCALL   PRG1
                INC     LCDPC
                AJMP    LCD_END     
LCD_NEXT82:     JNB     FLAG18,ADD_NEXT50              
                AJMP    LCD_LOOP5 
ADD_NEXT50:     AJMP    LCD_LOOP1
LCD_NEXT57:     CJNE    A,#39H,LCD_NEXT58
                JNB     FLAG2,ADD_NEXT51
                JNB     FLAG17,LCD_NEXT84
LCD_LOOP6:      MOV     PAGE1,#0BBH
                MOV     COLUMN,#3AH
                MOV     R1,#0E9H
                AJMP    ADD_NEXT51
LCD_NEXT84:     JNB     FLAG18,ADD_NEXT51
                AJMP    LCD_LOOP6 
ADD_NEXT51:     AJMP    LCD_LOOP1
LCD_NEXT58:     CJNE    A,#3AH,LCD_NEXT59
                JNB     FLAG2,ADD_NEXT52
                JNB     FLAG17,LCD_NEXT86
                MOV     COLUMN,#41H
                AJMP    ADD_NEXT52
LCD_NEXT86:     JNB     FLAG18,ADD_NEXT52
                MOV     COLUMN,#41H
ADD_NEXT52:     AJMP    LCD_LOOP1
LCD_NEXT59:     CJNE    A,#3BH,LCD_END
                JNB     FLAG2,ADD_NEXT53
                JNB     FLAG17,LCD_NEXT88
                MOV     A,@R1
                CJNE    A,#26H,LCD_NEXT90
                MOV     COLUMN,#49H
                AJMP    ADD_NEXT53
LCD_NEXT90:     MOV     COLUMN,#47H
                AJMP    ADD_NEXT53
LCD_NEXT88:     JNB     FLAG18,ADD_NEXT53
                MOV     A,@R1
                CJNE    A,#26H,LCD_NEXT91
                MOV     COLUMN,#49H
                AJMP    ADD_NEXT53
LCD_NEXT91:     MOV     COLUMN,#47H 
ADD_NEXT53:     MOV     A,@R1
                MOV     CODE1,A
                LCALL   WRITE_E2                
                MOV     DAT,#00H
                LCALL   PRG1
                LCALL   PRG1
                MOV     LCDPC,#00H
                CLR     FLAG34
                CLR     FLAG23
                CLR     FLAG31 
                CLR     FLAG39                            
                CLR     FLAG49
                CLR     FLAG50
                CLR     FLAG51
LCD_END:        POP     PSW
                RET

                    
LCM_FUNC_CONT:  MOV     FCODE,50H                
                MOV     A,FCODE                 
                MOV     R1,#0B0H
                LCALL   FUNC
                JNB     FLAG33,CONTENT_NEXT14
                ACALL   CHANA_LINE1
                LCALL   CHANA1_TOG
                LCALL   CHANA_LINE2
                LCALL   CONTENT_SEL
                JNB     FLAG39,CONTENT_NEXT15
CONTENT_NEXT17: AJMP    CONTENT_NEXT16
CONTENT_NEXT15: JB      FLAG23,CONTENT_NEXT17
                MOV     R1,#0CEH
                MOV     R7,#05H
                MOV     A,#26H                
                AJMP    CONTENT_LOOP0 
CONTENT_NEXT14: MOV     R7,#14H
                MOV     A,#26H
                MOV     R1,#0BFH
CONTENT_LOOP0:  MOV     @R1,A
                INC     R1
                DJNZ    R7,CONTENT_LOOP0                              
                JNB     FLAG15,CONTENT_NEXT0
                MOV     A,#27H
                MOV     @R1,A               
                AJMP    CONTENT_NEXT1
CONTENT_NEXT0:  MOV     @R1,A               
CONTENT_NEXT1:  INC     R1
                MOV     R0,#9BH
                MOV     R2,#02H              ;ADD   
CONTENT_LOOP2:  MOV     A,@R0
                CJNE    A,#20H,CONTENT_NEXT2
                MOV     A,#26H                
                MOV     @R1,A                
                AJMP    CONTENT_NEXT3
CONTENT_NEXT2:  MOV     R7,A
                ANL     A,#0FH
                MOV     @R1,A
                MOV     A,R7                   ;ADD
                JNB     ACC.7,CONTENT_NEXT3    ;ADD
                SETB    FLAG30                 ;
                INC     R1                     ;
                MOV     A,#34H                 ;
                MOV     @R1,A                  ;                              
CONTENT_NEXT3:  INC     R0
                INC     R1
                DJNZ    R2,CONTENT_LOOP2
                DEC     R1                     ;
                MOV     A,@R0
                MOV     R7,A 
                CJNE    A,#20H,CONTENT_NEXT6
                INC     R1
                MOV     A,#26H
                MOV     @R1,A                 
                AJMP    CONTENT_NEXT8 
CONTENT_NEXT6:  JNB     ACC.7,CONTENT_NEXT7
                SETB    FLAG30
                INC     R1
                ANL     A,#0FH
                MOV     @R1,A
                INC     R1
                MOV     A,#34H
                MOV     @R1,A
                AJMP    CONTENT_NEXT8 
CONTENT_NEXT7:  ANL     A,#0F0H
                INC     R1
                CJNE    A,#30H,CONTENT_NEXT9
                MOV     A,R7
                ANL     A,#0FH                 
                MOV     @R1,A                 
                AJMP    CONTENT_NEXT8
CONTENT_NEXT9:  CJNE    A,#40H,CONTENT_NEXT10                
                MOV     A,#0FH
                MOV     @R1,A
                AJMP    CONTENT_NEXT8
CONTENT_NEXT10: CJNE    A,#50H,CONTENT_NEXT8                 
                MOV     A,#1BH
                MOV     @R1,A 
CONTENT_NEXT8:  INC     R0
                MOV     A,@R0 
                MOV     R7,A
                INC     R1
                JNB     ACC.7,CONTENT_NEXT11
                SETB    FLAG30
                ANL     A,#0FH                  
                MOV     @R1,A
                INC     R1
                MOV     A,#00H
                MOV     @R1,A
                AJMP    CONTENT_NEXT12
CONTENT_NEXT11: ANL     A,#0FH
                MOV     @R1,A
CONTENT_NEXT12: JB      FLAG30,CONTENT_NEXT13
                INC     R1
                MOV     A,#26H
                MOV     @R1,A 
CONTENT_NEXT13: CLR     FLAG30
                MOV     R7,#04H
                MOV     A,#26H
CONTENT_LOOP1:  INC     R1                            
                MOV     @R1,A
                DJNZ    R7,CONTENT_LOOP1
CONTENT_NEXT16: LCALL   RANGE
                RET                 

LCM_FUNC_CODE:  MOV     R1,#0B0H              
                MOV     A,50H                               
                MOV     FCODE,A
                LCALL   FUNC                 
                JNB     FLAG33,CODE_NEXT3
                ACALL   CHANA_LINE1
                ACALL   CHANA1_TOG
                ACALL   CHANA_LINE2
                MOV     R7,#01H
                MOV     R1,#0CEH
                AJMP    CODE_LOOP0
CODE_NEXT3:     MOV     R7,#03H 
CODE_LOOP0:     MOV     A,FCODE             
                CJNE    A,#01H,CODE_NEXT0
                MOV     FCODE,#09H
                AJMP    CODE_NEXT1
CODE_NEXT0:     JNB     FLAG56,CODE_NEXT5
                CJNE    A,#67H,CODE_NEXT2
                MOV     FCODE,#01H
                AJMP    CODE_NEXT1
CODE_NEXT5:     CJNE    A,#61H,CODE_NEXT2
                MOV     FCODE,#01H                                 
                AJMP    CODE_NEXT1                 
CODE_NEXT2:     INC     FCODE
CODE_NEXT1:     LCALL   FUNC
                JNB     FLAG33,CODE_NEXT4
                ACALL   CHANA_LINE3
                ACALL   CHANA1_TOG
                ACALL   CHANA_LINE4 
CODE_NEXT4:     DJNZ    R7,CODE_LOOP0                                                
                RET


CHANA_LINE1:    MOV     R1,#0B3H
                MOV     R0,#0ECH 
                MOV     A,@R1             
                CJNE    A,#26H,CHANA1_NEXT0     ;6 bit
                MOV     @R0,#00H
                INC     R0
                MOV     R1,#0BDH
                MOV     A,@R1
                CJNE    A,#26H,CHANA1_NEXT1     ;5 bit
                MOV     R2,#04H                 ;4 bit
                MOV     R1,#0B5H
                MOV     A,@R1
                SETB    FLAG35
                CLR     FLAG36
                AJMP    CHANA1_END
CHANA1_NEXT1:   SETB    FLAG36
                CLR     FLAG35
                MOV     R2,#05H
                MOV     R1,#0B5H
                MOV     A,@R1
                AJMP    CHANA1_END 
CHANA1_NEXT0:   CLR     FLAG35
                CLR     FLAG36
                MOV     R2,#06H
CHANA1_END:     RET

CHANA1_TOG:     MOV     @R0,A
                INC     R1
                MOV     A,@R1
                DEC     R1
                MOV     @R1,A                 
                ADD     A,#01H
                INC     R1
                MOV     @R1,A              
                INC     R1 
                INC     R0
                MOV     A,@R1                
                DJNZ    R2,CHANA1_TOG             
TOG_END:        RET

CHANA_LINE2:    MOV     R1,#0BFH
                MOV     R0,#0B3H
                MOV     A,#26H
                MOV     R2,#03H
CHANA2_LOOP0:   MOV     @R1,A
                INC     R1
                DJNZ    R2,CHANA2_LOOP0 
                MOV     R2,#0CH
CHANA2_LOOP1:   MOV     A,@R0
                MOV     @R1,A
                INC     R0
                INC     R1
                DJNZ    R2,CHANA2_LOOP1
                JNB     FLAG35,CHANA2_NEXT0
                MOV     R1,#0C4H
                MOV     R2,#08H
                AJMP    CHANA2_LOOP2               ;2K byte
CHANA2_NEXT0:   JNB     FLAG36,CHANA2_NEXT1
                MOV     R1,#0C4H
                MOV     R2,#0AH
                AJMP    CHANA2_LOOP2
CHANA2_NEXT1:   MOV     R1,#0C2H
                MOV     R2,#0CH
CHANA2_LOOP2:   MOV     A,@R1
                ADD     A,#02H
                MOV     @R1,A
                INC     R1
                DJNZ    R2,CHANA2_LOOP2
                JB      FLAG35,CHANA2_NEXT3                
                AJMP    CHANA2_END
CHANA2_NEXT3:   MOV     R0,#0F1H
                MOV     A,#00H
                MOV     @R0,A
CHANA2_END:     RET

CHANA_LINE3:    MOV     R1,#0D1H
                MOV     R0,#0F2H 
                MOV     A,@R1
                CJNE    A,#26H,CHANA3_NEXT0   ;6 bit
                MOV     @R0,#00H
                INC     R0
                MOV     R1,#0DBH
                MOV     A,@R1
                CJNE    A,#26H,CHANA3_NEXT1    ;5 bit
                MOV     R2,#04H                ;4 bit
                MOV     R1,#0D3H
                MOV     A,@R1
                SETB    FLAG37
                CLR     FL

⌨️ 快捷键说明

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