⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 music.h

📁 51单片机SD卡TFT彩屏显示图片
💻 H
字号:
u8 RadyMusic()
{
	u8 MUSIC;
	if(Pen_Point.Y0>=16&&Pen_Point.Y0<32){MUSIC=0;return MUSIC;}    
 
	if(Pen_Point.Y0>=32&&Pen_Point.Y0<48){MUSIC=1;return MUSIC;} 

	if(Pen_Point.Y0>=48&&Pen_Point.Y0<64){MUSIC=2;return MUSIC;}

	if(Pen_Point.Y0>=64&&Pen_Point.Y0<80){MUSIC=3;return MUSIC;}

	if(Pen_Point.Y0>=80&&Pen_Point.Y0<96){MUSIC=4;return MUSIC;}

	if(Pen_Point.Y0>=96&&Pen_Point.Y0<112){MUSIC=5;return MUSIC;}

	if(Pen_Point.Y0>=112&&Pen_Point.Y0<128){MUSIC=6;return MUSIC;}

	if(Pen_Point.Y0>=128&&Pen_Point.Y0<144){MUSIC=7;return MUSIC;}

	if(Pen_Point.Y0>=144&&Pen_Point.Y0<160){MUSIC=8;return MUSIC;}

	if(Pen_Point.Y0>=160&&Pen_Point.Y0<176){MUSIC=9;return MUSIC;}

	if(Pen_Point.Y0>=176&&Pen_Point.Y0<192){MUSIC=10;return MUSIC;}

	if(Pen_Point.Y0>=192&&Pen_Point.Y0<208){MUSIC=11;return MUSIC;}

	if(Pen_Point.Y0>=208&&Pen_Point.Y0<224){MUSIC=12;return MUSIC;}

	if(Pen_Point.Y0>=224&&Pen_Point.Y0<240){MUSIC=13;return MUSIC;}

	if(Pen_Point.Y0>=240&&Pen_Point.Y0<256){MUSIC=14;return MUSIC;}
	
	return 15;	
}
void PlayMusic(u8 music)
{
	unsigned char addr[8];
	unsigned long ADDR;
	unsigned long size;
	unsigned int time;
	u16 time2;
 	u8 n;
	u16 i;
	u32 ii;
	Pen_Int_Set(1);//开启中断	
res:addr[0]=Music[music*32+26];
	addr[1]=Music[music*32+27];
	addr[2]=Music[music*32+20];
	addr[3]=Music[music*32+21];
	addr[4]=Music[music*32+28];
	addr[5]=Music[music*32+29];
	addr[6]=Music[music*32+30];
	addr[7]=Music[music*32+31];
	ADDR=addr[3]<<24|addr[2]<<16|addr[1]<<8|addr[0];
	ADDR=(ADDR-2)*8+FirstBlock;
	size=addr[7]<<24|addr[6]<<16|addr[5]<<8|addr[4];
	size=size/512; 
	VS_Init();
	VS_HD_Reset();	//硬复位							 				  		 	  
	VS_Soft_Reset();  				//软复位VS10XX 			
	SPIx_SetSpeed(SPI_SPEED_8);//高速,对VS1003B,最大值不能超过36.864/6Mhz,这里设置为4.5M  	   				    																	
	for(ii=0;ii<size;ii++)   //播放音乐的主循环
	{		
		SD_ReadSingleBlock((ADDR+ii)*512,buffer);//读取一个扇区的数据

		time=VS_RD_Reg(SPI_DECODE_TIME);
		if(time!=time2&&time!=0)
		{ 
			time2=time;
			huanyuan(123,300,147,316,TIME);
			LCD_ShowNum(123,300,time,3,16);
		} 	
		for(i=0;i<16;i++)
		{  	 	 	 
			while(VS_DQ==0);  // 非暂停 送数据给VS1003 			   	 
			VS_XDCS_L;    
			for(n=0;n<32;n++)
			{
				SPIx_ReadWriteByte(buffer[i*32+n]);	 			
			}
			VS_XDCS_H;
			if(Pen_Point.Key_Sta==Key_Down)//触摸屏被按下
			{
				Convert_Pos();
				Pen_Point.Key_Sta=Key_Up;
				if(Pen_Point.Y0>=303&&Pen_Point.X0>=159&&Pen_Point.X0<191)
				{
					bb=0;
					beijing();
					Show_Str(159,303,"音乐",16,1);
					Show_Str(207,303,"属性",16,1);
					goto zhuye;		
				}
				music=RadyMusic();
				if(music!=15)
				{
					goto res;	
				}
			}    
		}
	}
	music++;
	if(music!=15)goto res;
zhuye:
}

⌨️ 快捷键说明

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