text1.lst
来自「单片机写的程序都含有Protues仿真结果」· LST 代码 · 共 125 行
LST
125 行
C51 COMPILER V7.10 TEXT1 06/04/2008 00:21:53 PAGE 1
C51 COMPILER V7.10, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: D:\程序\keil51\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND TABS(6)
line level source
1 /********************************************************************************
2 * 标题: xl系列单片机实验仪演示程序 *
3 * 文件: XL2002.c *
4 * 日期: 2006-1-5 *
5 * 版本: 3.0 (试验通过版)可用xl600-xl1000单片机综合试验仪试验 *
6 * 邮箱: sxj1974@163.com *
7 * 网站: http://www.51c51.com www.8951.com *
8 ********************************************************************************
9 * 描述: *
10 * p3.3口单片机演唱歌 刀郎《2002年的第一场雪》 *
11 * *
12 ********************************************************************************
13 * 【技术支持】请访问http://www.51c51.com/bbs/index.asp 官方论坛 *
14 ********************************************************************************/
15
16
17
18
19
20 #include <reg51.h>
21 sbit SPK=P0^0;
22 void delayms(unsigned char ms);
23 unsigned int data j;
24 unsigned char code song[636]={ 0xFF,0xFF,4,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xf
-d,0x08,2, //21
25 0xFD,0x5B,4,0xFD,0x08,2,0xFC,0xAB,2,0xFC,0x0B,2,0xFC,0x0B,2,0xff,0xff,2,0xFc,0x0B,2, //21
26 0xFC,0xAB,2,0xFC,0xAB,2,0xFC,0xAB,2,0xFC,0xAB,2,0xFC,0xAB,4,0xFC,0xAB,2,0xFC,0xAB,2, //21
27 0xFB,0x8F,2,0xFC,0x0B,2,0xFC,0x0B,4,0xff,0xff,8, //12
28 0xff,0xff,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,4,0xFD,0x08,2,0xFD,0x08,2, //21
29 0xFD,0x5B,4,0xFD,0x08,2,0xFC,0xAB,4,0xFD,0x08,6, //12
30 0xff,0xff,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFA,0x14,2,
- //24
31 0xFC,0xAB,4,0xFC,0xAB,2,0xFC,0xAB,2,0xFC,0xAB,2,0xFC,0x0B,2,0xFC,0x0B,4, //18
32 0xFF,0xFF,4,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2, //21
33 0xFD,0x5B,4,0xFD,0x08,2,0xFC,0xAB,4,0xFD,0x08,6, //12,183
34 0xFF,0xFF,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFA,0x14,
-2, //24
35 0xFC,0xAB,4,0xFC,0xAB,2,0xFC,0xAB,2,0xFC,0xAB,2,0xFC,0x0B,2,0xFC,0x0B,4, //18
36 0xFF,0xFF,4,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xfd,0x08,2, //21
37 0xFD,0x5B,4,0xFD,0x08,2,0xFD,0x5B,2,0xFC,0xAB,2,0xFC,0x0B,2,0xFC,0x0B,4,
- //18
38 0xFF,0xFF,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFB,0x8F,4,0xFB,0x8F,2,0xFB,0x03,2, //21
39 0xFC,0x0B,4,0xFB,0x8F,2,0xFC,0x0B,2,0xFB,0x03,2,0xfa,0x14,2,0xfa,0x14,4,
- //18
40 0xFF,0xFF,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,2,0xFD,0x08,
-2, //24
41 0xFD,0x5B,4,0xFD,0x08,2,0xFD,0x5B,2,0xFC,0xAB,2,0xFC,0x0B,2,0xFC,0x0B,4, //18
42 0xff,0xff,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFA,0x14,2,
- //24
43 0xfc,0xab,4,0xfc,0xab,2,0xfc,0xab,2,0xfb,0x8f,2,0xfc,0x0b,2,0xFC,0x0B,4, //18,204
44 0xFF,0xFF,2,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,2,0xFd,0x08,4,0xFd,0x08,2,
-//21
45 0xfd,0x5b,4,0xfd,0x08,2,0xfc,0xab,4,0xfc,0x0b,6, //12
46 0xFF,0xFF,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,
-//24
C51 COMPILER V7.10 TEXT1 06/04/2008 00:21:53 PAGE 2
47 0xFC,0x0B,4,0xFB,0x8F,2,0xFC,0x0B,2,0xFB,0x03,2,0xfa,0x14,2,0xfa,0x14,4, //18
48 0xff,0xff,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFA,0x14,
-2, //24
49 0xfb,0x03,2,0xfb,0x03,2,0xfb,0x03,2,0xfa,0x14,2,0xfa,0x14,1,0xf9,0x5b,1,0xf8,0x2a,2,0xf8,0x2a,4,
- //24
50 0xff,0xff,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFA,0x14,2,
- //24
51 0xfb,0x8f,2,0xfc,0x08,2,0xfc,0x08,2,0xfc,0x08,10, //12
52 0xff,0xff,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFA,0x14,2,
- //24
53 0xfb,0x03,2,0xfb,0x03,2,0xfb,0x03,2,0xfa,0x14,2,0xfa,0x14,1,0xf9,0x5b,1,0xf8,0x2a,2,0xf8,0x2a,4,
- //24,207
54 0xff,0xff,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x8F,2,0xFB,0x03,2,0xFA,0x14,2,
- //24
55 0xfc,0xab,2,0xfd,0x08,2,0xfd,0x08,2,0xfd,0x08,2,0xff,0xff,4,0xff,0xff,4}; //18,42,636
56
57 void main()
58 { TMOD = 0x01;
59 1 IE = 0x82;
60 1 while(1)
61 1 { j=0;
62 2 while (j<636)
63 2 { TR0=1;
64 3 if ((song[j]==0xff)&&(song[j+1]==0xff)) TR0=0;//休止符用0xff,0xff表示,出现休止符时CT0禁止,不发声.
65 3 delayms(song[j+2]); //每一音符唱多长.
66 3 j=j+3;
67 3 }
68 2 }
69 1 }
70
71 void timer0() interrupt 1 using 1 //每一音符唱多高
72 { TH0=song[j];
73 1 TL0=song[j+1];
74 1 SPK = !SPK;
75 1 }
76 void delayms(unsigned char ms) //基本延时子程序(16分之1拍的时间)
77 { unsigned int i;
78 1 while(ms--)
79 1 {
80 2 for(i = 0; i < 10300; i++);
81 2 }
82 1 TR0=0;
83 1
84 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 170 ----
CONSTANT SIZE = 636 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?