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

📄 asmpro.lst

📁 完整功放的控制程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
02D6 C291       =1   794             CLR     BC_PB
02D8 D290       =1   795             SETB    BC_PC                   ;X4
                =1   796     
02DA 120371     =1   797             LCALL   OUTPUT_VOL
02DD 7409       =1   798             MOV     A, #09H                 ;该延时值需要调整!!!!!
02DF D5E0FD     =1   799             DJNZ    ACC, $
                =1   800             
02E2 208305     =1   801             JB      BC_AD, ADR_L05          ;检测声道是否到位
02E5 8900     F =1   802             MOV     AD_IN+3, R1
02E7 0202F0     =1   803             LJMP    ADPRO4
02EA            =1   804     ADR_L05:
02EA 09         =1   805             INC     R1
02EB D8E7       =1   806             DJNZ    R0, P_1KHZ
02ED 75000F   F =1   807             MOV     AD_IN+3,#0FH            ;检不到时为最高格数             
                =1   808     ;*****************************  
02F0            =1   809     ADPRO4:
02F0 7810       =1   810             MOV     R0,#10H
02F2 7900       =1   811             MOV     R1,#00H
                =1   812             
02F4            =1   813     P_25KHZ:        
02F4 C292       =1   814             CLR     BC_PA                   ;2.5KHZ
02F6 D291       =1   815             SETB    BC_PB
02F8 D290       =1   816             SETB    BC_PC                   ;X6
A51 MACRO ASSEMBLER      ASMPRO                                                              DATE  21/06/03   PAGE    15


LOC  OBJ            LINE     SOURCE

                =1   817             
02FA 120371     =1   818             LCALL   OUTPUT_VOL
02FD 7409       =1   819             MOV     A, #09H                 ;该延时值需要调整!!!!!
02FF D5E0FD     =1   820             DJNZ    ACC, $
                =1   821             
0302 208305     =1   822             JB      BC_AD, ADR_L06          ;检测声道是否到位
0305 8900     F =1   823             MOV     AD_IN+4, R1
0307 020310     =1   824             LJMP    ADPRO5
030A            =1   825     ADR_L06:
030A 09         =1   826             INC     R1
030B D8E7       =1   827             DJNZ    R0, P_25KHZ
030D 75000F   F =1   828             MOV     AD_IN+4,#0FH            ;检不到时为最高格数             
                =1   829     ;*****************************  
0310            =1   830     ADPRO5:
0310 7810       =1   831             MOV     R0,#10H
0312 7900       =1   832             MOV     R1,#00H
                =1   833             
0314            =1   834     P_83KHZ:        
0314 D292       =1   835             SETB    BC_PA                   ;8.3KHZ
0316 C291       =1   836             CLR     BC_PB
0318 C290       =1   837             CLR     BC_PC                   ;X1
                =1   838     
031A 120371     =1   839             LCALL   OUTPUT_VOL
031D 7409       =1   840             MOV     A, #09H                 ;该延时值需要调整!!!!!
031F D5E0FD     =1   841             DJNZ    ACC, $
                =1   842             
0322 208305     =1   843             JB      BC_AD, ADR_L07          ;检测声道是否到位
0325 8900     F =1   844             MOV     AD_IN+5, R1
0327 020330     =1   845             LJMP    ADPRO6
032A            =1   846     ADR_L07:
032A 09         =1   847             INC     R1
032B D8E7       =1   848             DJNZ    R0, P_83KHZ
032D 75000F   F =1   849             MOV     AD_IN+5,#0FH            ;检不到时为最高格数             
                =1   850     ;*****************************  
0330            =1   851     ADPRO6:
0330 7810       =1   852             MOV     R0,#10H
0332 7900       =1   853             MOV     R1,#00H
                =1   854             
0334            =1   855     P_10KHZ:        
0334 C292       =1   856             CLR     BC_PA                   ;10KHZ
0336 D291       =1   857             SETB    BC_PB                   ;X2
0338 C290       =1   858             CLR     BC_PC
                =1   859             
033A 120371     =1   860             LCALL   OUTPUT_VOL
                =1   861             
033D 7409       =1   862             MOV     A, #09H                 ;该延时值需要调整!!!!!
033F D5E0FD     =1   863             DJNZ    ACC, $
                =1   864             
0342 208305     =1   865             JB      BC_AD, ADR_L08          ;检测声道是否到位
0345 8900     F =1   866             MOV     AD_IN+6, R1
0347 020350     =1   867             LJMP    ADPRO7
034A            =1   868     ADR_L08:
034A 09         =1   869             INC     R1
034B D8E7       =1   870             DJNZ    R0, P_10KHZ
034D 75000F   F =1   871             MOV     AD_IN+6,#0FH            ;检不到时为最高格数             
                =1   872     ;*****************************  
0350            =1   873     ADPRO7:
                =1   874     
0350 7810       =1   875             MOV     R0,#10H
A51 MACRO ASSEMBLER      ASMPRO                                                              DATE  21/06/03   PAGE    16


LOC  OBJ            LINE     SOURCE

0352 7900       =1   876             MOV     R1,#00H
                =1   877             
0354            =1   878     P_12KHZ:        
0354 C292       =1   879             CLR     BC_PA                   ;12KHZ
0356 C291       =1   880             CLR     BC_PB                   ;X2
0358 C290       =1   881             CLR     BC_PC
                =1   882             
035A 120371     =1   883             LCALL   OUTPUT_VOL
                =1   884             
035D 7409       =1   885             MOV     A, #09H                 ;该延时值需要调整!!!!!
035F D5E0FD     =1   886             DJNZ    ACC, $
                =1   887             
0362 208305     =1   888             JB      BC_AD, ADR_L09          ;检测声道是否到位
0365 8900     F =1   889             MOV     AD_IN+7, R1
0367 020370     =1   890             LJMP    ADPRO8
036A            =1   891     ADR_L09:
036A 09         =1   892             INC     R1
036B D8E7       =1   893             DJNZ    R0, P_12KHZ
036D 75000F   F =1   894             MOV     AD_IN+7,#0FH            ;检不到时为最高格数             
0370            =1   895     ADPRO8:
                =1   896     ;*****************************  
0370 22         =1   897             RET
                =1   898     ;*************************
0371            =1   899     OUTPUT_VOL:
0371 E9         =1   900             MOV     A, R1           
0372 A2E0       =1   901             MOV     C, ACC.0
0374 9284       =1   902             MOV     BC_AD0, C
0376 A2E1       =1   903             MOV     C, ACC.1
0378 9285       =1   904             MOV     BC_AD1, C
037A A2E2       =1   905             MOV     C, ACC.2
037C 9286       =1   906             MOV     BC_AD2, C
037E A2E3       =1   907             MOV     C, ACC.3
0380 9287       =1   908             MOV     BC_AD3, C
0382 22         =1   909             RET
                     910     
                     911     ;;        $INCLUDE (MVOLDET.ASM)
                     912     ;;        $INCLUDE (VOLDET.ASM)
                     913             $INCLUDE (M62421.ASM)
                =1   914     ;***************************** M62421 器件子程序集 *************************
                =1   915     ;2通道电子音量音调控制IC
                =1   916     ;占用:  ACC, R0
                =1   917     
                =1   918            
                =1   919            ;************* 外部变量说明 **********************
  00B1          =1   920             BC_SDA_62421    BIT     P3.1    ;*** 数据输入脚
  00B0          =1   921             BC_CLK_62421    BIT     P3.0    ;*** 时钟脚
                =1   922     
                =1   923     
                =1   924     
                =1   925             ;************ 公共变量定义 ****************
                =1   926             PUBLIC  SEND_62421
                =1   927     
                =1   928     
                =1   929     
                =1   930             ;************** 常数定义 ******************
                =1   931             
                =1   932     
                =1   933     
                =1   934     
A51 MACRO ASSEMBLER      ASMPRO                                                              DATE  21/06/03   PAGE    17


LOC  OBJ            LINE     SOURCE

                =1   935     
                =1   936     ;=============================== 公共子程序 (可被C调用) ===============================
                =1   937     ;*************** 写M62421 *******************
                =1   938     ;********************************************
                =1   939     ;写入数据为13位
                =1   940     ;参数1: PAR     高8位数据
                =1   941     ;参数2: PAR+01H 低8位数据
                =1   942     ;返回:
                =1   943     ;占用: ACC, R0
                =1   944     
0383            =1   945     SEND_62421:
0383 780D       =1   946          MOV   R0,#00DH             ;send_data to M62421,13bit
0385 C2B0       =1   947          CLR   BC_CLK_62421         ;CLK
0387 C3         =1   948          CLR   C
0388            =1   949     LBL_PS58:
0388 E500     F =1   950          MOV   A,PAR
038A 13         =1   951          RRC   A 
038B F500     F =1   952          MOV   PAR,A 
038D E500     F =1   953          MOV   A,PAR+01H
038F 13         =1   954          RRC   A 
0390 F500     F =1   955          MOV   PAR+01H,A 
0392 92B1       =1   956          MOV   BC_SDA_62421,C       ;SDA
0394 00         =1   957          NOP 
0395 00         =1   958          NOP 
0396 00         =1   959          NOP
0397 D2B0       =1   960          SETB  BC_CLK_62421         ;Data is read by CLK rise edge
0399 B80105     =1   961          CJNE  R0,#001H,LBL_P59     ;Latch sinal is read by CLK fall edge
039C 00         =1   962          NOP 
039D D2B1       =1   963          SETB  BC_SDA_62421 
039F 8005       =1   964          SJMP  LBL_P60 
03A1            =1   965     LBL_P59:
03A1 00         =1   966          NOP
03A2 C2B1       =1   967          CLR   BC_SDA_62421 
03A4 00         =1   968          NOP 
03A5 00         =1   969          NOP 
03A6            =1   970     LBL_P60:
03A6 00         =1   971          NOP
03A7 00         =1   972          NOP
03A8 C2B0       =1   973          CLR   BC_CLK_62421  
03AA D8DC       =1   974          DJNZ  R0,LBL_PS58 
03AC 22         =1   975          RET
                     976     
                     977             $INCLUDE (24C01.ASM)
                =1   978     ;*************************** 24c01器件子程序 **************************
                =1   979     ;I2C总线EEPROM
                =1   980     ;使用了: ACC,R0,R1,R2,R3
                =1   981     
                =1   982             ;************ 公共变量定义 ****************
                =1   983             PUBLIC  READ_ABYTE, WRITE_ABYTE
                =1   984     
                =1   985     
                =1   986     
                =1   987            ;************ 变量说明 *****************
  00A7          =1   988             BC_SDA_24C01    BIT     P2.7    ;24c01数据线
  00A6          =1   989             BC_CLK_24C01    BIT     P2.6    ;24c01时钟
                =1   990     
                =1   991             EXTRN   BIT(B_ACK_24C01)        ;24C01的应答位值寄存
                =1   992             EXTRN   DATA(ERR_24C01)         ;24C01的错误码寄存,!!!!!! 开机时清0 !!!
                =1   993     
A51 MACRO ASSEMBLER      ASMPRO                               

⌨️ 快捷键说明

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