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

📄 1420.lst

📁 51控制zy1420语音芯片录音
💻 LST
字号:
A51 MACRO ASSEMBLER  ASMSY53                                                              09/29/2005 08:38:36 PAGE     1


MACRO ASSEMBLER A51 V7.07
OBJECT MODULE PLACED IN ASMSY53.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE ASMSY53.ASM SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

                       1      
                       2     
                       3     
                       4     
                       5     
                       6     
                       7     
                       8     
                       9     
                      10      
                      11          
  0080                12           REC      BIT   P0.0
  0081                13           PLE      BIT   P0.1
  0082                14           PLL      BIT   P0.2
  0083                15           RECLED   BIT   P0.3
                      16     
0000                  17           ORG   0000H
0000 020003           18           LJMP     START
0003                  19     START:
                      20     
0003 7F70             21           MOV   R7,#0070H
0005 7E05             22           MOV   R6,#HIGH(1500)   ;1S
0007 7DDC             23           MOV   R5,#LOW(1500)
0009 1154             24           CALL  PLAYL
000B 7F32             25           MOV   R7,#50         ;控制延时50ms
000D                  26     WAIT1:
000D 120090           27           LCALL DELAY1MS
0010 DFFB             28           DJNZ  R7,WAIT1
                      29           ;SJMP  $
                      30           
0012 7F10             31           MOV   R7,#10H
0014 7E05             32           MOV   R6,#HIGH(1500)
0016 7DDC             33           MOV   R5,#LOW(1500)
0018 1154             34           CALL  PLAYL
                      35     
001A 7F32             36           MOV   R7,#50         ;控制延时50ms
001C                  37     WAIT2:
001C 120090           38           LCALL DELAY1MS
001F DFFB             39           DJNZ  R7,WAIT2
                      40           ;SJMP  $
                      41           
0021 7F20             42           MOV   R7,#20H
0023 7E05             43           MOV   R6,#HIGH(1500)
0025 7DDC             44           MOV   R5,#LOW(1500)
0027 1154             45           CALL  PLAYL
                      46           
0029 7F32             47             MOV   R7,#50         ;控制延时50ms
002B                  48     WAIT3:
002B 120090           49           LCALL DELAY1MS
002E DFFB             50           DJNZ  R7,WAIT3
                      51           ;SJMP  $
                      52           
0030 7F00             53           MOV   R7,#00H
0032 7E05             54           MOV   R6,#HIGH(1500)
0034 7DDC             55           MOV   R5,#LOW(1500)
0036 1167             56           CALL  PLAYE
                      57     
0038 80FE             58           SJMP  $
A51 MACRO ASSEMBLER  ASMSY53                                                              09/29/2005 08:38:36 PAGE     2

                      59     
                      60     
                      61     ;**************************************
                      62     ; 名称:RECORD
                      63     ; 功能:录音
                      64     ; 入口:R7(开始地址),R6(H),R5(L)(录音时间,单位:ms)
                      65     ; 如果R6,R5>剩余录音时间,则录完为止
                      66     ;**************************************
003A                  67     RECORD:
003A EF               68       MOV   A,R7
003B 120077           69       LCALL ADDR_OUT       ;设定开始录音地址
003E C280             70       CLR   REC            ;控制开始录音
                      71       
0040 7F32             72       MOV   R7,#50         ;控制延时50ms
0042                  73     RECORD1:
0042 120090           74       LCALL DELAY1MS
0045 DFFB             75       DJNZ  R7,RECORD1
0047                  76     RECORD2:
0047 120090           77       LCALL DELAY1MS       ;延时1ms
004A 208304           78       JB    RECLED,RECORD3 ;录音模块录满结束判断
004D DDF8             79       DJNZ  R5,RECORD2     ;录音时间控制
004F DEF6             80       DJNZ  R6,RECORD2
0051                  81     RECORD3:
0051 D280             82       SETB  REC            ;释放录音按键
0053 22               83       RET
                      84     
                      85     
                      86     ;**************************************
                      87     ;名称:PLAYL
                      88     ;功能:电平控制放音
                      89     ;入口:R7(开始地址),R6(H),R5(L)(放音时间,单位:ms)
                      90     ; 如果R6,R5>剩余放音时间,则放完为止
                      91     ;**************************************
0054                  92     PLAYL:
0054 EF               93       MOV   A,R7
0055 120077           94       LCALL ADDR_OUT       ;设定开始播放地址
0058 C282             95       CLR   PLL            ;控制播放
005A                  96     PLAYL1:
005A 120090           97       LCALL DELAY1MS       ;延时1ms
005D 308304           98       JNB   RECLED,PLAYL2  ;检测语音模块是否播放完毕
0060 DDF8             99       DJNZ  R5,PLAYL1      ;播放时间控制
0062 DEF6            100       DJNZ  R6,PLAYL1
0064                 101     PLAYL2:
0064 D282            102       SETB  PLL            ;释放播放按键
0066 22              103       RET
                     104     
                     105     
                     106     ;**************************************
                     107     ;名称:PLAYE
                     108     ;功能:脉冲触发放音
                     109     ;入口:R7(开始地址)
                     110     ;**************************************
0067                 111     PLAYE:
0067 EF              112       MOV   A,R7
0068 120077          113       LCALL ADDR_OUT       ;设定开始播放地址
006B C281            114       CLR   PLE            ;控制脉冲触发播放
006D 7F32            115       MOV   R7,#50         ;延时50ms
006F                 116     PLAYE1:
006F 120090          117       LCALL DELAY1MS
0072 DFFB            118       DJNZ  R7,PLAYE1
0074 D281            119       SETB  PLE            ;结束控制信号
0076 22              120       RET
                     121     
                     122     ;**************************************
                     123     ;名称:ADDR_OUT
                     124     ;功能:发送地址
A51 MACRO ASSEMBLER  ASMSY53                                                              09/29/2005 08:38:36 PAGE     3

                     125     ;入口:A(地址)
                     126     ;**************************************
0077                 127     ADDR_OUT:
0077 33              128      RLC    A
0078 9297            129      MOV    P1.7,C
007A 33              130      RLC    A
007B 9296            131      MOV    P1.6,C
007D 33              132      RLC     A
007E 9295            133      MOV    P1.5,C
0080 33              134      RLC    A
0081 9294            135      MOV    P1.4,C
0083 33              136      RLC    A
0084 9293            137      MOV    P1.3,C
0086 33              138      RLC    A
0087 9292            139      MOV    P1.2,C
0089 33              140      RLC    A
008A 9291            141      MOV    P1.1,C
008C 33              142      RLC    A
008D 9290            143      MOV    P1.0,C
008F 22              144     RET
                     145     
                     146     ;**************************************
                     147     ; 名称:DELAY1MS
                     148     ; 功能:延时1MS
                     149     ; 入口:R6,R5
                     150     ;**************************************
0090                 151     DELAY1MS:
0090 7CF9            152       MOV   R4, #249    ;12M晶振:1000=2+2+(1+1+2)*249
0092                 153     DELAY1MS1:
0092 00              154       NOP
0093 00              155       NOP
0094 DCFC            156       DJNZ  R4,DELAY1MS1
0096 22              157       RET
                     158     
                     159     
                     160       END
                             
A51 MACRO ASSEMBLER  ASMSY53                                                              09/29/2005 08:38:36 PAGE     4

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

ADDR_OUT . . . . .  C ADDR   0077H   A   
DELAY1MS . . . . .  C ADDR   0090H   A   
DELAY1MS1. . . . .  C ADDR   0092H   A   
P0 . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
PLAYE. . . . . . .  C ADDR   0067H   A   
PLAYE1 . . . . . .  C ADDR   006FH   A   
PLAYL. . . . . . .  C ADDR   0054H   A   
PLAYL1 . . . . . .  C ADDR   005AH   A   
PLAYL2 . . . . . .  C ADDR   0064H   A   
PLE. . . . . . . .  B ADDR   0080H.1 A   
PLL. . . . . . . .  B ADDR   0080H.2 A   
REC. . . . . . . .  B ADDR   0080H.0 A   
RECLED . . . . . .  B ADDR   0080H.3 A   
RECORD . . . . . .  C ADDR   003AH   A   
RECORD1. . . . . .  C ADDR   0042H   A   
RECORD2. . . . . .  C ADDR   0047H   A   
RECORD3. . . . . .  C ADDR   0051H   A   
START. . . . . . .  C ADDR   0003H   A   
WAIT1. . . . . . .  C ADDR   000DH   A   
WAIT2. . . . . . .  C ADDR   001CH   A   
WAIT3. . . . . . .  C ADDR   002BH   A   


REGISTER BANK(S) USED: 0 

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

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