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

📄 dis3105_lcd.asm

📁 基于PL3000芯片的单相复费率多功能电表的应用程序。
💻 ASM
字号:
;************************************************************
;文档类型: 原代码 
;项目编号: 
;文档编号: 
;修订版本: v1.0
;生成日期: 2005.6.15
;文档作者: LIHENG
;审    核: 
;************************************************************
;相关文档: LCD显示3105
;文档编号      说明 
;************************************************************
;修订版本: 
;修订版本: 
;数据高位不再做消隐处理		
;************************************************************
$INCLUDE	(RAML128.INC)
$INCLUDE	(RAMH128.INC)
$INCLUDE	(PL3200.INC)
$INCLUDE	(RAM.INC)

CODE_REG	SEGMENT	CODE
RSEG		CODE_REG
PUBLIC          DIS3105_LCD
;PUBLIC          STOP_LCD       ;停电LCD显示
;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
EXTRN    CODE(BYTE4_TO_LCD_DIS)
EXTRN    CODE(DPTR_TO_RD4)
;****************************************
DIS3105_LCD:               
                MOV     R0,#LCD_1
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     H18_BIT,DIS_LCD1    ;显示序号的高字节1
                ADD     A,#01H  
DIS_LCD1:       MOV     EXT_ADR,#0BH;#00H
                MOV     EXT_DAT,A

                MOV     R0,#LCD_2
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     BH_BIT,DIS_LCD2
                ADD     A,#01H  
              
DIS_LCD2:      
                MOV     EXT_ADR,#0AH;#01H
                MOV     EXT_DAT,A
                
                MOV     R0,#LCD_3
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     REV_BIT,DIS_LCD3
                ADD     A,#01H  
               
DIS_LCD3:      
                MOV     EXT_ADR,#09H;#02H
                MOV     EXT_DAT,A
                
                MOV     R0,#LCD_4
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     NOW_BIT,DIS_LCD4
                ADD     A,#01H 
             
DIS_LCD4:      
                MOV     EXT_ADR,#08H;#03H
                MOV     EXT_DAT,A
                
                MOV     R0,#LCD_5
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     COL1_BIT,DIS_LCD5
                ADD     A,#01H 
               
DIS_LCD5:      
                MOV     EXT_ADR,#07H;#04H
                MOV     EXT_DAT,A
                
                MOV     R0,#LCD_6
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     SYDL_BIT,DIS_LCD6
                ADD     A,#01H 
               
DIS_LCD6:     
                MOV     EXT_ADR,#06H;#05H
                MOV     EXT_DAT,A
                
                MOV     R0,#LCD_7
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     DP_BIT,DIS_LCD7
                ADD     A,#01H  
               
DIS_LCD7:       
                MOV     EXT_ADR,#05H
                MOV     EXT_DAT,A
                
                MOV     R0,#LCD_8
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     ZDL_BIT,DIS_LCD8
                ADD     A,#01H 
               
DIS_LCD8:      
                MOV     EXT_ADR,#04H;#07H
                MOV     EXT_DAT,A
                
                MOV     R0,#LCD_9
                MOV     A,@R0
                MOV     DPTR,#DIS_TAB
                MOVC    A,@A+DPTR
                JNB     COL2_BIT,DIS_LCD9
                ADD     A,#01H 
              
DIS_LCD9:      
                MOV     EXT_ADR,#03H;#08H
                MOV     EXT_DAT,A
                
DIS_LCD10:      MOV     A,LCD_B10
                MOV     EXT_ADR,#02H;#09H
                MOV     EXT_DAT,A
                
DIS_LCD11:      MOV     A,LCD_B11
                MOV     EXT_ADR,#01H;#0AH
                MOV     EXT_DAT,A
                
DIS_LCD12:      MOV     A,LCD_B12
                MOV     EXT_ADR,#00H;#0BH
                MOV     EXT_DAT,A
   
                MOV     R0,#LCD_1  ;消隐
                MOV     @R0,#10
                
		MOV	A,LCD_B10
		ANL	A,#11101111B      ;QDL   
		MOV	LCD_B10,A
		
                RET

;****************************************
;停电LCD显示
;第一屏 当前总电量
;STOP_LCD:       MOV     R0,#LCD_1  ;2004.6.26 LCD显示当前有功总  4字节 
;	        MOV     @R0,#10
;                MOV     DPH,#02H
;                MOV     DPL,#PWER_LCD_Z0                
 ;               CALL    DPTR_TO_RD4
;                CALL    BYTE4_TO_LCD_DIS 
         
;                CALL    LCD_1_7   ;修改压缩程序 05-12-06LIHENG

;                MOV     R0,#LCD_8
 ;               MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                ADD     A,#01H            ;LCD----ZDL_BIT
;                MOV     EXT_ADR,#04H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_9
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#03H
;                MOV     EXT_DAT,A
                
;                MOV     EXT_ADR,#02H
;                MOV     EXT_DAT,#01000000B;A
                
;                MOV     EXT_ADR,#01H
;                MOV     EXT_DAT,#00001010B;A

;                MOV     EXT_ADR,#0H
;               MOV     EXT_DAT,#00H;A

;第二屏 当前峰电量
;                MOV     R0,#LCD_1  
;	        MOV     @R0,#10
;                MOV     DPH,#02H
;                MOV     DPL,#PWER_LCD_F0                
;               CALL    DPTR_TO_RD4
;                CALL    BYTE4_TO_LCD_DIS
         
;                CALL    LCD_1_7   ;修改压缩程序 05-12-06LIHENG
            
;                MOV     R0,#LCD_8
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#14H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_9
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#13H
;                MOV     EXT_DAT,A
                
;                MOV     EXT_ADR,#12H
;                MOV     EXT_DAT,#11000000B;A
                
;                MOV     EXT_ADR,#11H
;                MOV     EXT_DAT,#00001010B;A
                
;                MOV     EXT_ADR,#10H
;                MOV     EXT_DAT,#00H;A

;第三屏 当前谷电量
;                MOV     R0,#LCD_1  
;	        MOV     @R0,#10
;                MOV     DPH,#02H
;                MOV     DPL,#PWER_LCD_G0                
;                CALL    DPTR_TO_RD4
;                CALL    BYTE4_TO_LCD_DIS 
         
;                CALL    LCD_1_7   ;修改压缩程序 05-12-06LIHENG
                                      
;                MOV     R0,#LCD_8
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#24H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_9
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;               MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#23H
;                MOV     EXT_DAT,A
                
;                MOV     EXT_ADR,#22H
;                MOV     EXT_DAT,#01000001B;A

;                MOV     EXT_ADR,#21H
;                MOV     EXT_DAT,#00001010B;A

;                MOV     EXT_ADR,#20H
;                MOV     EXT_DAT,#00H;A

;第四屏 当前无功总电量
;                MOV     R0,#LCD_1 
;	        MOV     @R0,#10
;                MOV     DPH,#02H
;                MOV     DPL,#PWER_LCD_W0                
;                CALL    DPTR_TO_RD4
;                CALL    BYTE4_TO_LCD_DIS
         
;                CALL    LCD_1_7   ;修改压缩程序 05-12-06LIHENG
                
;                MOV     R0,#LCD_8
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#34H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_9
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#33H
;                MOV     EXT_DAT,A

;                MOV     EXT_ADR,#32H
;                MOV     EXT_DAT,#01000000B;A

;                MOV     EXT_ADR,#31H
;                MOV     EXT_DAT,#00000000B;A

;                MOV     EXT_ADR,#30H
;                MOV     EXT_DAT,#01H;A
              
;                RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;修改程序压缩 05-12-06  LIHENG
;************************************************************
;LCD_1_7:        MOV     R0,#LCD_1
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#0BH
;                MOV     EXT_DAT,A

;                MOV     R0,#LCD_2
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR                
;                MOV     EXT_ADR,#0AH
;                MOV     EXT_DAT,A
                
;               MOV     R0,#LCD_3
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR               
;                MOV     EXT_ADR,#09H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_4
 ;               MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                ADD     A,#01H            ;LCD---NOW_BIT
;                MOV     EXT_ADR,#08H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_5
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                MOV     EXT_ADR,#07H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_6
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR              
;                MOV     EXT_ADR,#06H
;                MOV     EXT_DAT,A
                
;                MOV     R0,#LCD_7
;                MOV     A,@R0
;                MOV     DPTR,#DIS_TAB
;                MOVC    A,@A+DPTR
;                ADD     A,#01H            ;LCD----DP_BIT
;                MOV     EXT_ADR,#05H
;                MOV     EXT_DAT,A
;                RET






                
;**********************************************                
DIS_TAB: DB 0DEH,14H,7AH,76H,0B4H,0E6H,0EEH,54H,0FEH,0F6H,0H,0BCH,8AH, 9EH
;	     0     1    2   3    4   5    6  7   8    9  10隐11H  12L   V

                END                

⌨️ 快捷键说明

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