soundplay.c

来自「音响效果程序」· C语言 代码 · 共 49 行

C
49
字号
#include <reg52.h>
#include <math.h>

sbit SpeakerPin=P2^5;
/*
code unsigned char cSoundData[]=
{
	0x80, 0x90, 0xa0, 0xb0, 0xc0, 0xd0, 0xe0, 0xf0, 0xff, 0xf0, 0xe0, 0xd0, 0xc0, 0xb0, 0xa0, 0x90,
	0x80, 0x70, 0x60, 0x50, 0x40, 0x30, 0x20, 0x10,	0x00, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70
};
*/
unsigned char SoundData[64];

void T0int( void ) interrupt 1 using 1
{
	static bit sts=0;
	static unsigned char i=0;

	SpeakerPin = !SpeakerPin;
	if( sts )
	{
		TH0 = SoundData[i];
		if( ++i >= 64 ) i=0;
		sts = 0;
	}
	else
	{
		TH0 = -SoundData[i];
		sts = 1;
	}
}

void main( void )
{
	unsigned char i;

	for( i=0; i<64; i++ )
	{
		SoundData[i] = sin( 3.14159 / 32 * i )*106.0 + 128.0;
	}
	
	TMOD = 0x22;
	TR0 = 1;
	ET0 = 1;
	EA = 1;
	while( 1 );	
}
	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?