📄 music.c
字号:
/************ music *******************/
#include"Atmel/AT89X52.H"
//sbit P3_0=P3^0;
#define uchar unsigned char
#define uint unsigned int
#define SPEAKER P3_0
uchar mf;
uint count;
uint music[16]={64260,64400,64524,64580,64684,64777,64820,64898,64968,65030,65058,65110,65157,65178,65217,0};
void initial(void)
{
mf=0;count=1;
TR1=0;ET1=0;EA=0;
TMOD=0x10;
TH1=music[mf]/256;
TL1=music[mf]%256;
SPEAKER=0;
T2CON=0x04;
T2MOD=0x00;
TH2=0x3c;TL2=0xb0;
RCAP2H=0x3c;RCAP2L=0xb0;
TR1=1;ET1=1;
TR2=1;ET2=1;
EA=1;
}
void timer1() interrupt 3 using 3
{
TH1=music[mf]/256;
TL1=music[mf]%256;
SPEAKER=~SPEAKER;
}
void timer2() interrupt 5 //用定时器2延时,决定每个音的时间
{
count++;
if(count%300==0)
{
mf++;
if(mf>=15)mf=0;
}
}
void delay(uint N) //延时子程序 决定每个音的时间
{
int i;
for(i=0;i<N;i++);
}
void main()
{
initial();
while(1);
/* {
i++;
if(i>=15)i=0;
delay(10000);
} */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -