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

📄 av-p06a.asm

📁 型号: AV-P06A 5.1CH功率放大器 89C52+12M+PT2314+PT2315+2*M62429+PT6311+CS16210+6221+VFDGDT1313A,包含VFD真值表手册资料
💻 ASM
📖 第 1 页 / 共 5 页
字号:
IN06:       MOV    A,AD_TIME1
            CJNE   A,#60,INTO_RET
            MOV    AD_TIME1,#0
            
            MOV    A,AD_SIM6
            CJNE   A,AD_DATA1,INTO_06
            JMP    INTO_RET
INTO_06:    SUBB   A,AD_DATA1
            JNC    AD_SUB6
            
AD_UP6:     MOV    A,AD_SIM6
            INC    A
            MOV    AD_SIM6,A
            JMP    INTO_RET
AD_SUB6:    MOV    A,AD_SIM6
            DEC    A
            MOV    AD_SIM6,A

INTO_RET:   JMP    RUN3_2 
          
;/////////////////////////////////////////////////////////////////////////////////////////         
GIF_1:      JNB    POWER_FLAG,GIF_V1     ;如果关机就清屏
            JMP    GIF_V2
   GIF_V1:  CALL   CLR_ALL               ;清屏
            JMP    RET1
   GIF_V2:  JNB   START_FLAG,GIF_V4   
            MOV   R0,#30H                ;显示缓存RAM清0
            MOV   R1,#12
   GIF_V3:  MOV   @R0,#0
            INC   R0
            DJNZ  R1,GIF_V3              ;22H-3BH共26个RAM,两个RAM一个显示位,共13位  
            
    V3_0:   MOV   A,DP_MODE              ;屏谱模式的转换
            CJNE  A,#0,V3_1
            MOV   DPTR,#TAB_PP_01
            
    V3_1:   CJNE  A,#1,V3_2
            MOV   DPTR,#TAB_PP_02
            
    V3_2:   CJNE  A,#2,V3_3_S
            MOV   DPTR,#TAB_PP_03
            
    V3_3_S: CJNE  A,#3,V3_3
            MOV   DPTR,#TAB_PP_04
            
    V3_3:   JB    AUTO_FLAG,V3_5         ;如果是自动屏谱则跳转处理 
            MOV   R0,#3bH
            MOV   R1,#6
    V3_4:   MOV   A,DP_NUM
            RL    A
            MOVC  A,@A+DPTR
            MOV   @R0,A
            DEC   R0
           
            MOV   A,DP_NUM
            RL    A
            INC   A
            MOVC  A,@A+DPTR
            MOV   @R0,A
            DEC   R0
            DJNZ  R1,V3_4
            JMP   V3_7
    
    V3_5:   MOV   R0,#3bH
            MOV   R1,#AD_SIM1
            MOV   R2,#6                  ;一个循环2个字节(对应一个屏谱位),6次12个字节
    V3_6:   MOV   A,@R1
            RL    A
            MOVC  A,@A+DPTR
            MOV   @R0,A
            DEC   R0
           
            MOV   A,@R1
            RL    A
            INC   A
            MOVC  A,@A+DPTR
            MOV   @R0,A
            INC   R1
            DJNZ  R2,V3_6
     
     V3_7:  MOV   A,3bH
            ADD   A,#20H
            MOV   3bH,A
                              
            MOV   A,39H
            ADD   A,#20H
            MOV   39H,A 

            MOV   A,37H
            ADD   A,#20H
            MOV   37H,A                  

           
            MOV   A,35H
             ADD   A,#20H
            MOV   35H,A 

                             
           
            MOV   A,33H
            ADD   A,#20H
            MOV   33H,A 
               
           
            MOV   A,31H
            ADD   A,#20H
            MOV   31H,A
               
           
            JMP   GIF_V5 
             
   GIF_V4:  MOV   30H,#03H
            mov   31h,#40h
            MOV   32H,#03h
            mov   33h,#40h
            MOV   34H,#03h
          mov   35h,#40h
            MOV   36H,#03h
            mov   37h,#40h
            MOV   38H,#03h
           mov   39h,#40h
            MOV   3aH,#03h
           mov   3bh,#40h                                  ;加上低位频谱壁划和频率数字
           
   GIF_V5:  MOV   A,GIF_SIGN
            CJNE  A,#1,GIF_2
            INC   GIF_TIME
            MOV   A,GIF_TIME
            CJNE  A,#80,GIF_V6
            MOV   GIF_TIME,#0
            MOV   DPTR,#TAB_MVLEFT
            CALL  GIF_LEFT
           
            INC   GIF_LONG
            MOV   A,GIF_LONG
            CJNE  A,#23, GIF_V6
            MOV   GIF_LONG,#0
            MOV   GIF_SIGN,#2
   GIF_V6:  JMP   RET1   
;/////////////////////////////////////////////////////////////////////////////////////////
GIF_2:      MOV   A,GIF_SIGN
            CJNE  A,#2,GIF_2B
            
           
            MOV   R0,#30H               ;清除7G-13G
            MOV   R1,#12
   CLR_GID: MOV   @R0,#0
            INC   R0
            DJNZ  R1,CLR_GID
           
GIF_2_DELY: INC   GIF_TIME
            MOV   A,GIF_TIME
            CJNE  A,#150,GIF_2A
            MOV   GIF_TIME,#0
            INC   GIF_LONG
            MOV  A,GIF_LONG
            CJNE  A,#30,GIF_2A
            MOV   GIF_LONG,#0
            MOV   GIF_TIME,#0
            JMP   RET1
            
GIF_2A:     MOV   R7,SYS_SIGN                ;处理G9-G13
            CJNE  R7,#0,GIF_2C               ;VOL
            
            MOV   DPTR,#TAB_VOL
            CALL  GIF_4GID
            MOV   DPTR,#TAB_LEV1
            mov   a,main_data
            CALL  GIF_3GID_A
            JMP   RET1
GIF_2B:     LJMP  GIF_3

GIF_2C:     CJNE  R7,#17,GIF_2D
            MOV   R6,INPUT_DATA              ;输入显示
            CJNE  R6,#1,GIF_2C_1
            MOV   DPTR,#TAB_DVD_LD           ;显示DVD/LD
            SETB   AC_3
            JMP   GIF_2C_4
 GIF_2C_1:  CJNE  R6,#2,GIF_2C_2
            MOV   DPTR,#TAB_VCD_CD           ;显示VCD/CD
            SETB   AC_3
            JMP   GIF_2C_4
            
 GIF_2C_2:  CJNE  R6,#3,GIF_2C_3
            MOV   DPTR,#TAB_AUX              ;显示AUX
            SETB   AC_3
            JMP   GIF_2C_4
 GIF_2C_3:  MOV   DPTR,#TAB_AC3              ;显示AC-3
            CLR  AC_3
            
 GIF_2C_4:  CALL  GIF_7GID                   ;7个位的显示
            JMP   RET1
            
                     
GIF_2D:     CJNE  R7,#1,GIF_2E               ;输入BASS
            MOV   DPTR,#TAB_BASS
            CALL  GIF_4GID
            MOV   DPTR,#TAB_LEV2
            MOV   A,BASS_DATA
            CALL  GIF_3GID_B
            JMP   RET1

GIF_2E:     CJNE  R7,#2,GIF_2F                ;输入TREB
            MOV   DPTR,#TAB_TREB
            CALL  GIF_4GID
            MOV   DPTR,#TAB_LEV2
            MOV   A,TREB_DATA
            CALL  GIF_3GID_B
            JMP   RET1

GIF_2F:     CJNE  R7,#3,GIF_2G                ;显示话筒音量
            MOV   DPTR,#TAB_MVOL
            CALL  GIF_4GID
            MOV   DPTR,#TAB_LEV1
            MOV   A,MVOL_DATA
            CALL  GIF_3GID_A
            JMP   RET1

GIF_2G:     CJNE  R7,#4,GIF_2H                ;显示混响级别
            MOV   DPTR,#TAB_ECHO
            CALL  GIF_4GID
            MOV   DPTR,#TAB_LEV1
            MOV   A,ECHO_DATA
            CALL  GIF_3GID_A
            JMP   RET1

GIF_2H:     CJNE  R7,#6,GIF_2I                ;显示环绕左音量
            MOV   DPTR,#TAB_SL
            CALL  GIF_4GID
            MOV   DPTR,#TAB_LEV1 
            MOV   A,SURL_DATA
            CALL  GIF_3GID_A
            JMP   RET1

GIF_2I:     CJNE   R7,#7,GIF_2J               ;显示环绕右音量
            MOV    DPTR,#TAB_SR
            CALL   GIF_4GID
            MOV    DPTR,#TAB_LEV1
            MOV    A,SURR_DATA
            CALL   GIF_3GID_A
            JMP    RET1 

GIF_2J:     CJNE   R7,#8,GIF_2K               ;显示中置音量
            MOV    DPTR,#TAB_CEN
            CALL   GIF_4GID
            MOV    DPTR,#TAB_LEV1
            MOV    A,CEN_DATA
            CALL   GIF_3GID_A
            JMP    RET1

GIF_2K:     CJNE   R7,#9,GIF_2L                ;显示重低音音量
            MOV    DPTR,#TAB_SBW
            CALL   GIF_4GID
            MOV    DPTR,#TAB_LEV1
            MOV    A,BW_DATA 
            CALL   GIF_3GID_A
            JMP    RET1
            
GIF_2L:     CJNE   R7,#11,GIF_2M                ;显示DSP声场模式
            MOV    DPTR,#TAB_DSP
            CALL   GIF_4GID
            MOV    DPTR,#TAB_LEV1
            MOV    A,DSP_DATA
            CALL   GIF_3GID_A
            JMP    RET1

GIF_2M:     CJNE   R7,#15,GIF_2N               ;显示静音
            MOV    DPTR,#TAB_MUTE
            JNB    MUTE_FLAG,GIF_NO_MUT            
            CALL   GIF_4GID
            JMP    RET1
GIF_NO_MUT: MOV    SYS_SIGN,#0
            JMP    RET1
            
GIF_2N:     CJNE   R7,#13,GIF_2O               ;显示5.1CH模式
            MOV    DPTR,#TAB_51CH
            CALL   GIF_7GID
            JMP    RET1
            
GIF_2O:     CJNE   R7,#12,GIF_2P               ;显示2.0CH模式
            MOV    DPTR,#TAB_20CH
            CALL   GIF_7GID
            JMP    RET1
            
GIF_2P:     CJNE   R7,#14,GIF_2Q               ;显示等响开关
            JB     LOUND_FLAG,GIF_LOU_ON
            MOV    DPTR,#TAB_LOUND_OF
            JMP    GIF_2P_1
GIF_LOU_ON: MOV    DPTR,#TAB_LOUND_ON
GIF_2P_1:   CALL   GIF_7GID
            JMP    RET1
            
GIF_2Q:     NOP
            JMP    RET1
;/////////////////////////////////////////////////////////////////////////////////////////

GIF_3:      CALL   CLR_ALL
            MOV    GIF_SIGN,#1
            JMP    RET1
RET1:       JMP    GIF_END

;/////////////////////////////////////////////////////////////////////////////////////////
CLR_ALL:    MOV    R2,#26                       ;清26个显示用RAM
            MOV    R1,#22H                      ;共13位15段显示
CLR_DSPRAM: MOV    @R1,#0
            INC    R1
            DJNZ   R2,CLR_DSPRAM
            RET
;-----------------------------------------------------------------------------------------
GIF_LEFT:   MOV    2fH,2dH                      ;左移
            MOV    2eH,2cH
            MOV    2dH,2bH
            MOV    2cH,2aH
            MOV    2bH,29H
            MOV    2aH,28H
            MOV    29H,27H
            MOV    28H,26H
            MOV    27H,25H
            MOV    26H,24H
            MOV    25H,23H
            MOV    24H,22H
            
            MOV    A,GIF_LONG                   ;更新最低位
            RL     A
            MOVC   A,@A+DPTR
            MOV    22H,A
            
            MOV    A,GIF_LONG
            RL     A
            INC    A
            MOVC   A,@A+DPTR
            MOV    23H,A
            RET
;-----------------------------------------------------------------------------------------
GIF_4GID:   MOV    R1,#8
            MOV    R2,#0
            MOV    R0,#2fH
   G_4GID:  MOV    A,R2
            MOVC   A,@A+DPTR
            MOV    @R0,A
            DEC    R0
            INC    R2
            DJNZ   R1,G_4GID
            RET                          
;-----------------------------------------------------------------------------------------
GIF_3GID_A: MOV    DIV_16,A
            CALL   DIV10
            
            MOV    A,DISP_H                     ;输入十位
            RL     A
            MOVC   A,@A+DPTR
            MOV    25H,A
            
            MOV    A,DISP_H
            RL     A
            INC    A
            MOVC   A,@A+DPTR
            MOV    24H,A
            
            MOV    A,DISP_L                     ;输入个位
            RL     A
            MOVC   A,@A+DPTR
            MOV    23H,A
            MOV    A,DISP_L
            RL     A
            INC    A
            MOVC   A,@A+DPTR
            MOV    22H,A
            RET
;-----------------------------------------------------------------------------------------
GIF_3GID_B: 
            MOV    B,#6
            MUL    AB
            MOV    R1,A
            MOV    R0,#27H
            MOV    R2,#6
            
  D3GID_B:  MOV    A,R1
            MOVC   A,@A+DPTR
            MOV    @R0,A
            DEC    R0
            INC    DPTR
            DJNZ   R2,D3GID_B
            RET
;-----------------------------------------------------------------------------------------
GIF_7GID:   MOV    R1,#14                       ;处理14个显示缓存RAM
            MOV    R2,#0                        ;DPTR指针
            MOV    R0,#2fH                      ;高位开始
            
   D7GID:   MOV    A,R2
            MOVC   A,@A+DPTR
            MOV    @R0,A
            DEC    R0
            INC    R2
            DJNZ   R1,D7GID
            RET
             
            
;/////////////////////////////////////////////////////////////////////////////////////////
;A/D转换,T1中断入口
AD_GO:      INC    TIME1
            PUSH   ACC
            PUSH   PSW
       AD:  MOV    R3,AD_SIGN

⌨️ 快捷键说明

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