📄 song.lst
字号:
C51 COMPILER V8.01 SONG 05/02/2008 22:52:00 PAGE 1
C51 COMPILER V8.01, COMPILATION OF MODULE SONG
OBJECT MODULE PLACED IN song.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE song.c BROWSE DEBUG OBJECTEXTEND TABS(6)
line level source
1 #include<reg52.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4 sbit speak=P2^3;
5 bit flag;
6 uchar count;
7 uchar code song[] ={
8 0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x20,
9 0x30,0x20,0x39,0x10,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1c,0x20,
10 0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x80,0x26,0x20,
11 0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20,
12 0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x10,
13 0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x20,
14 0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x18,0x20,0x18,0x20,0x26,0x20,
15 0x20,0x20,0x20,0x40,0x26,0x20,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,
16 0x20,0x80,0x1c,0x20,0x1c,0x20,0x1c,0x20,0x30,0x20,0x30,0x60,0x39,0x10,0x30,0x10,
17 0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x10,0x26,0x10,0x26,0x10,0x2b,0x10,0x2b,0x80,
18 0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x60,0x26,0x10,0x2b,0x20,0x30,0x20,
19 0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x26,0x20,0x30,0x10,0x30,0x10,0x30,0x20,
20 0x39,0x20,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x10,0x40,0x10,0x20,0x10,
21 0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x00};
22
23 void playing();
24 void delay(uint z);
25 void intc();
26 void main()
27 {
28 1 intc();
29 1 while(1)
30 1 {
31 2 playing();
32 2 if(flag)
33 2 {while(1);}
34 2 }
35 1 }
36 void intc()
37 {
38 1 TMOD=0x01;
39 1 IE= 0x82;
40 1 TH0= 0xD8;
41 1 TL0= 0xEF;
42 1 }
43 void delay(uint z)
44 {
45 1 uint i,j;
46 1 for(i=z;i>0;i--)
47 1 for(j=2;j>0;j--);
48 1 }
49 void playing()
50 {
51 1 uchar temp1,temp2;
52 1 uint add;
53 1 count=0;
54 1 temp1=song[add++];
55 1 if(temp1==0x00)
C51 COMPILER V8.01 SONG 05/02/2008 22:52:00 PAGE 2
56 1 {flag=1;TR0=0;}
57 1 else
58 1 {
59 2 TR0=1;
60 2 temp2=song[add++];
61 2 while(1)
62 2 {
63 3 speak=~speak;
64 3 delay(temp1);
65 3 if(count==temp1)
66 3 {
67 4 count=0;
68 4 break;
69 4 }
70 3 }
71 2 }
72 1 }
73 void T0_srv() interrupt 1
74 {
75 1 TH0 = 0xD8;
76 1 TL0 = 0xEF;
77 1 count++;
78 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 140 ----
CONSTANT SIZE = 217 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 3
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -