📄 a.lst
字号:
C51 COMPILER V8.09 A 10/09/2008 09:41:25 PAGE 1
C51 COMPILER V8.09, COMPILATION OF MODULE A
OBJECT MODULE PLACED IN a.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE a.c BROWSE DEBUG OBJECTEXTEND
line level source
1 // #include<AT89X51.h>
2 #include <REGX52.H>
3
4 void Music(unsigned char number);
5 void delay10ms(unsigned char time);
6 void delay50us(unsigned char time);
7 unsigned char code SOUNDLONG[];
8 unsigned char code SOUNDTONE[];
9
10 void main()
11 {
12 1 while(1)
13 1 {
14 2 Music(1); //生日快乐
15 2 delay10ms(250);
16 2 delay10ms(250);
17 2 Music(2); //三轮车
18 2 delay10ms(250);
19 2 delay10ms(250);
20 2 }
21 1 }
22
23 void Music(unsigned char number)
24 {
25 1 unsigned int k,n;
26 1 unsigned int SoundLong,SoundTone;
27 1 unsigned int i,j,m;
28 1
29 1 for(k=0;k<number-1;k++)
30 1 {
31 2 while(SOUNDLONG[i] !=0){i++;}
32 2 i++;
33 2 if(i>=57) i=0;
34 2 }
35 1 for(k=0;k<number-1;k++)
36 1 {
37 2 while(SOUNDTONE[j] !=0){j++;}
38 2 j++;
39 2 if(j>=57) j=0;
40 2 }
41 1
42 1 do
43 1 {
44 2 if(i>=57) i=0;
45 2 if(j>=57) j=0;
46 2 SoundLong=SOUNDLONG[i];
47 2 SoundTone=SOUNDTONE[j];
48 2 i++;
49 2 j++;
50 2
51 2 for(n=0;n<SoundLong;n++)
52 2 {
53 3 for(k=0;k<12;k++)
54 3 {
55 4 P3_4=0;for(m=0;m<SoundTone/2;m++);
C51 COMPILER V8.09 A 10/09/2008 09:41:25 PAGE 2
56 4 P3_4=1;for(m=0;m<SoundTone/2;m++);
57 4 }
58 3 }
59 2 delay50us(6);
60 2 }while((SOUNDLONG[i] !=0) || (SOUNDTONE[j] !=0));
61 1 }
62
63 //延时程序
64 void delay10ms(unsigned char time)
65 {
66 1 unsigned char a,b,c;
67 1 for(a=0;a<time;a++)
68 1 for(b=0;b<10;b++)
69 1 for(c=0;c<120;c++)
70 1 ;
71 1 }
72 void delay50us(unsigned char time)
73 {
74 1 unsigned char a,b;
75 1 for(a=0;a<time;a++)
76 1 for(b=0;b<6;b++)
77 1 ;
78 1 }
79
80 unsigned char code SOUNDLONG[]=
81 {9,3,12,12,12,24,
82 9,3,12,12,12,24,
83 9,3,12,12,12,12,12,
84 9,3,12,12,12,24,
85 0, //生日快乐end
86 6,6,9,3,6,6,12,
87 6,6,6,6,6,6,12,
88 6,6,9,3,6,6,9,3,
89 6,3,3,6,3,3,6,6,9,
90 0 //三轮车end
91 };
92
93 unsigned char code SOUNDTONE[]=
94 {
95 212,212,190,212,159,169,
96 212,212,190,212,142,159,
97 212,212,106,126,159,169,190,
98 119,119,126,159,142,159,
99 0, //生日快乐end
100 239,239,212,189,159,159,189,
101 159,159,142,126,120,120,159,
102 120,120,142,159,189,142,159,189,
103 239,212,189,159,142,159,189,212,239,
104 0 //三轮车end
105 };
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 448 ----
CONSTANT SIZE = 116 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 8
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -