pingan.LST
Upload User: sxhope
Upload Date: 2022-07-23
Package Size: 93k
Code Size: 8k
Category:

SCM

Development Platform:

Asm

  1. A51 MACRO ASSEMBLER  PINGAN                                                               09/12/2007 21:30:13 PAGE     1
  2. MACRO ASSEMBLER A51 V8.00
  3. OBJECT MODULE PLACED IN pingan.OBJ
  4. ASSEMBLER INVOKED BY: C:KeilC51BINA51.EXE pingan.asm SET(SMALL) DEBUG EP
  5. LOC  OBJ            LINE     SOURCE
  6.                        1     ;P3.3小喇叭---生日快乐。
  7.                        2     ;***************************************************************************
  8.                        3     ;*  E-mail:sxj1974@163.com (51c51 test web)  51单片机学习网,自学单片机的网站 *
  9.                        4     ;* Create by :石学军 www.51c51.com   www.8951.com 更多例程请登陆网站                 *
  10.                        5     ;*************************************************************************** 
  11. 0000                   6     ORG 0000H
  12. 0000 020014            7     LJMP START
  13. 000B                   8     ORG 000BH
  14. 000B 0520              9     INC 20H ;中断服务,中断计数器加1
  15. 000D 758CD8           10     MOV TH0,#0D8H
  16. 0010 758AEF           11     MOV TL0,#0EFH ;12M晶振,形成10毫秒中断
  17. 0013 32               12     RETI
  18. 0014                  13     START: 
  19. 0014 758150           14     MOV SP,#50H
  20. 0017 758CD8           15     MOV TH0,#0D8H
  21. 001A 758AEF           16     MOV TL0,#0EFH
  22. 001D 758901           17     MOV TMOD,#01H
  23. 0020 75A882           18     MOV IE,#82H
  24. 0023                  19     MUSIC0:
  25. 0023 00               20     NOP
  26. 0024 90007D           21     MOV DPTR,#DAT ;表头地址送DPTR
  27. 0027 752000           22     MOV 20H,#00H ;中断计数器清0
  28. 002A 75F000           23     MOV B,#00H ;表序号清0
  29. 002D                  24     MUSIC1:
  30. 002D 00               25     NOP
  31. 002E E4               26     CLR A
  32. 002F 93               27     MOVC A,@A+DPTR ;查表取代码
  33. 0030 6033             28     JZ END0 ;是00H,则结束
  34. 0032 B4FF03           29     CJNE A,#0FFH,MUSIC5
  35. 0035 020054           30     LJMP MUSIC3
  36. 0038                  31     MUSIC5:
  37. 0038 00               32     NOP
  38. 0039 FE               33     MOV R6,A
  39. 003A A3               34     INC DPTR
  40. 003B E5F0             35     MOV A,B
  41. 003D 93               36     MOVC A,@A+DPTR ;取节拍代码送R7
  42. 003E FF               37     MOV R7,A
  43. 003F D28C             38     SETB TR0 ;启动计数
  44. 0041                  39     MUSIC2:
  45. 0041 00               40     NOP
  46. 0042 B2A1             41     CPL P2.1
  47. 0044 EE               42     MOV A,R6
  48. 0045 FB               43     MOV R3,A
  49. 0046 120072           44     LCALL DEL
  50. 0049 EF               45     MOV A,R7
  51. 004A B520F4           46     CJNE A,20H,MUSIC2 ;中断计数器(20H)=R7否?
  52.                       47     ;不等,则继续循环
  53. 004D 752000           48     MOV 20H,#00H ;等于,则取下一代码
  54. 0050 A3               49     INC DPTR
  55.                       50     ; INC B
  56. 0051 02002D           51     LJMP MUSIC1
  57. 0054                  52     MUSIC3:
  58. 0054 00               53     NOP
  59. 0055 C28C             54     CLR TR0 ;休止100毫秒
  60. 0057 7A0D             55     MOV R2,#0DH
  61. 0059                  56     MUSIC4:
  62. 0059 00               57     NOP
  63. 005A 7BFF             58     MOV R3,#0FFH
  64. A51 MACRO ASSEMBLER  PINGAN                                                               09/12/2007 21:30:13 PAGE     2
  65. 005C 120072           59     LCALL DEL
  66. 005F DAF8             60     DJNZ R2,MUSIC4
  67. 0061 A3               61     INC DPTR
  68. 0062 02002D           62     LJMP MUSIC1
  69. 0065                  63     END0:
  70. 0065 00               64     NOP
  71. 0066 7A64             65     MOV R2,#64H ;歌曲结束,延时1秒后继续
  72. 0068                  66     MUSIC6:
  73. 0068 7B00             67     MOV R3,#00H
  74. 006A 120072           68     LCALL DEL
  75. 006D DAF9             69     DJNZ R2,MUSIC6
  76. 006F 020023           70     LJMP MUSIC0
  77. 0072                  71     DEL:
  78. 0072 00               72     NOP
  79. 0073                  73     DEL3: 
  80. 0073 7C02             74     MOV R4,#02H
  81. 0075                  75     DEL4: 
  82. 0075 00               76     NOP
  83. 0076 DCFD             77     DJNZ R4,DEL4
  84. 0078 00               78     NOP
  85. 0079 DBF8             79     DJNZ R3,DEL3
  86. 007B 22               80     RET
  87. 007C 00               81     NOP
  88. 007D                  82     DAT:
  89. 007D 26202020         83     db 26h,20h,20h,20h,20h,20h,26h,10h,20h,10h,20h,80h,26h,20h,30h,20h
  90. 0081 20202610                
  91. 0085 20102080                
  92. 0089 26203020                
  93. 008D 30203910         84     db 30h,20h,39h,10h,30h,10h,30h,80h,26h,20h,20h,20h,20h,20h,1ch,20h
  94. 0091 30103080                
  95. 0095 26202020                
  96. 0099 20201C20                
  97. 009D 20802B20         85     db 20h,80h,2bh,20h,26h,20h,20h,20h,2bh,10h,26h,10h,2bh,80h,26h,20h
  98. 00A1 26202020                
  99. 00A5 2B102610                
  100. 00A9 2B802620                
  101. 00AD 30203020         86     db 30h,20h,30h,20h,39h,10h,26h,10h,26h,60h,40h,10h,39h,10h,26h,20h
  102. 00B1 39102610                
  103. 00B5 26604010                
  104. 00B9 39102620                
  105. 00BD 30203020         87     db 30h,20h,30h,20h,39h,10h,26h,10h,26h,80h,26h,20h,2bh,10h,2bh,10h
  106. 00C1 39102610                
  107. 00C5 26802620                
  108. 00C9 2B102B10                
  109. 00CD 2B203010         88     db 2bh,20h,30h,10h,39h,10h,26h,10h,2bh,10h,2bh,20h,2bh,40h,40h,20h
  110. 00D1 39102610                
  111. 00D5 2B102B20                
  112. 00D9 2B404020                
  113. 00DD 20102010         89     db 20h,10h,20h,10h,2bh,10h,26h,30h,30h,80h,18h,20h,18h,20h,26h,20h
  114. 00E1 2B102630                
  115. 00E5 30801820                
  116. 00E9 18202620                
  117. 00ED 20202040         90     db 20h,20h,20h,40h,26h,20h,2bh,20h,30h,20h,30h,20h,1ch,20h,20h,20h
  118. 00F1 26202B20                
  119. 00F5 30203020                
  120. 00F9 1C202020                
  121. 00FD 20801C20         91     db 20h,80h,1ch,20h,1ch,20h,1ch,20h,30h,20h,30h,60h,39h,10h,30h,10h
  122. 0101 1C201C20                
  123. 0105 30203060                
  124. 0109 39103010                
  125. 010D 20202B10         92     db 20h,20h,2bh,10h,26h,10h,2bh,10h,26h,10h,26h,10h,2bh,10h,2bh,80h
  126. 0111 26102B10                
  127. 0115 26102610                
  128. 0119 2B102B80                
  129. 011D 18201820         93     db 18h,20h,18h,20h,26h,20h,20h,20h,20h,60h,26h,10h,2bh,20h,30h,20h
  130. 0121 26202020                
  131. A51 MACRO ASSEMBLER  PINGAN                                                               09/12/2007 21:30:13 PAGE     3
  132. 0125 20602610                
  133. 0129 2B203020                
  134. 012D 30201C20         94     db 30h,20h,1ch,20h,20h,20h,20h,80h,26h,20h,30h,10h,30h,10h,30h,20h
  135. 0131 20202080                
  136. 0135 26203010                
  137. 0139 30103020                
  138. 013D 39202610         95     db 39h,20h,26h,10h,2bh,10h,2bh,20h,2bh,40h,40h,10h,40h,10h,20h,10h
  139. 0141 2B102B20                
  140. 0145 2B404010                
  141. 0149 40102010                
  142. 014D 20102B10         96     db 20h,10h,2bh,10h,26h,30h,30h,80h,00H
  143. 0151 26303080                
  144. 0155 00                      
  145.                       97     
  146.                       98     END 
  147. A51 MACRO ASSEMBLER  PINGAN                                                               09/12/2007 21:30:13 PAGE     4
  148. SYMBOL TABLE LISTING
  149. ------ ----- -------
  150. N A M E             T Y P E  V A L U E   ATTRIBUTES
  151. B. . . . . . . . .  D ADDR   00F0H   A   
  152. DAT. . . . . . . .  C ADDR   007DH   A   
  153. DEL. . . . . . . .  C ADDR   0072H   A   
  154. DEL3 . . . . . . .  C ADDR   0073H   A   
  155. DEL4 . . . . . . .  C ADDR   0075H   A   
  156. END0 . . . . . . .  C ADDR   0065H   A   
  157. IE . . . . . . . .  D ADDR   00A8H   A   
  158. MUSIC0 . . . . . .  C ADDR   0023H   A   
  159. MUSIC1 . . . . . .  C ADDR   002DH   A   
  160. MUSIC2 . . . . . .  C ADDR   0041H   A   
  161. MUSIC3 . . . . . .  C ADDR   0054H   A   
  162. MUSIC4 . . . . . .  C ADDR   0059H   A   
  163. MUSIC5 . . . . . .  C ADDR   0038H   A   
  164. MUSIC6 . . . . . .  C ADDR   0068H   A   
  165. P2 . . . . . . . .  D ADDR   00A0H   A   
  166. SP . . . . . . . .  D ADDR   0081H   A   
  167. START. . . . . . .  C ADDR   0014H   A   
  168. TH0. . . . . . . .  D ADDR   008CH   A   
  169. TL0. . . . . . . .  D ADDR   008AH   A   
  170. TMOD . . . . . . .  D ADDR   0089H   A   
  171. TR0. . . . . . . .  B ADDR   0088H.4 A   
  172. REGISTER BANK(S) USED: 0 
  173. ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)