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

📄 splc501.c

📁 凌阳SPDA1000 MP3开发资料
💻 C
📖 第 1 页 / 共 5 页
字号:
	SPLC501_Write_Num_Value(4,0x00);
}
//=======================================================================================================
void SPLC501_Disp_LittleString(U8 page,U8 column,U8 *Point,U8 Number)
{
	U8 i,temp;
	SPLC501_Set_PageNColumn_Address(page,column);
	for(i=0;i<Number;i++)
	{
		if(*(Point+i)==' ')
		{
			temp = 38;
		}else if(*(Point+i)=='.')
		{
			temp = 40;
		}else if(*(Point+i)>='A' && *(Point+i)<='Z')
		{
			temp = *(Point+i)-53;
		}else{
			temp = *(Point+i);
		}
		write_SPLC501CD(0x00);
		SPLC501_Disp_LittleChar(temp);
	}
}

//================================================================================
U8 code BmpCommonLogo[]=
{
/*------------------------------------------------------------------------------
  源文件 / 文字 : C:\Documents and Settings\xyq.DOMAIN\My Documents\My Pictures\hello1.bmp
  宽×高(像素): 96×32
  字模格式/大小 : 单色点阵液晶字模,纵向取模,字节倒序/384字节
  数据转换日期  : 2003-9-5 17:33:32
------------------------------------------------------------------------------*/
0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x1F,0x00,0xF0,0xFF,0xFF,0xF9,0xF1,0xFF,0xFF,
0xFF,0x3F,0x2F,0x7F,0x37,0x3F,0x7D,0xFF,0x7F,0xFF,0xF9,0xFF,0x7F,0xFD,0xFF,0xFF,
0xFF,0x3F,0xFF,0xFF,0xFF,0x1F,0xFF,0xF9,0xFF,0xFF,0xFF,0xF1,0x81,0xFF,0xFF,0xF1,
0x01,0xFF,0xFF,0xFF,0x3D,0x0F,0xF7,0xFF,0xFF,0xFE,0xFF,0xFF,0xF8,0x1F,0xFF,0x00,
0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x98,0xEC,
0xFC,0xFC,0xFC,0xF8,0xF0,0xF8,0xF4,0xFC,0xFC,0xFC,0xF8,0xF0,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0xC0,0x3E,0x01,0xC0,0xFC,0x3F,0xFF,0xFF,0xFF,0x0F,0x03,0xFF,
0x03,0x06,0x0E,0x06,0xFF,0xF3,0xF3,0x7B,0x7F,0x3F,0x0F,0x0F,0x08,0x00,0x01,0x03,
0x07,0x00,0x03,0x0F,0x1F,0x40,0x60,0xE7,0x7F,0x7F,0x7F,0xE7,0xEF,0xDF,0x7F,0x3F,
0x7E,0xFF,0xFF,0xFF,0xF0,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0x1F,0xFF,0xC0,0x3F,0xE0,
0x00,0x7F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,
0x0F,0x1F,0x3F,0x7F,0xFF,0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0xE0,0x1E,0x01,0x80,0x18,0x0F,0x01,0x80,0xFF,0x0F,0x1F,0xFF,0x7C,0xFF,
0xC0,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x60,0x20,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x1F,0x3E,0x3E,0x17,0x07,0x03,0x01,0x07,0x84,
0x64,0xF3,0x1F,0x8F,0xFF,0x7F,0x7F,0x7F,0xFF,0xFF,0xFF,0xC0,0x03,0x7F,0xE0,0x0F,
0xF0,0x00,0x1F,0x30,0xC0,0x00,0x00,0x0E,0x1D,0x3F,0x7E,0x3D,0x1F,0x0E,0x00,0xC0,
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0x80,0x80,0x80,0xC0,0x80,0x00,0x00,0x00,
0xF8,0x07,0x00,0xF0,0x0E,0xE1,0x1C,0x07,0xF8,0xFF,0x01,0x00,0x0E,0x03,0x00,0x3F,
0x3F,0x3E,0x38,0x70,0x40,0x80,0x00,0x00,0x00,0x00,0x06,0x0E,0x0C,0x0C,0x04,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x40,0x20,0x30,0x38,0x3C,0x3B,0x39,
0x3D,0x3E,0x3F,0x3F,0x3F,0x1E,0x0E,0x04,0x00,0x00,0x31,0x0F,0x1E,0xF0,0x07,0xFC,
0x00,0x07,0xF8,0x00,0x0F,0xF0,0x00,0x00,0x00,0x00,0x00,0x18,0x04,0x20,0x40,0x7F,
0x00,0x04,0x18,0x00,0x00,0x40,0x24,0x15,0x0C,0x26,0x4C,0x35,0x04,0x00,0x00,0x00,
};
//================================================================================
void SPLC501_ShowCompanyLogo()
{
	U8 i,j;
	LCD501_Clear_ALL();
	gc_PowerOnLogoSelect=1;
	#if 1
	{
		if(!gc_PowerOnLogoSelect)
		{
//			X_Get_UserSettings(1);
            USER_GetSettingInfo();
			for(j=0;j<4;j++)
			{
				SPLC501_Set_PageNColumn_Address(j,18);
				for(i=0;i<96;i++)
				{
					write_SPLC501CD(gc_PlayRecordDataBuf[((unsigned int)j*96)+i]);
				}
			}
		}else{
			for(j=0;j<4;j++)
			{
				SPLC501_Set_PageNColumn_Address(j,18);
				for(i=0;i<96;i++)
				{
					write_SPLC501CD(BmpCommonLogo[((unsigned int)j*96)+i]);
				}
			}
			/*
			for(i=0;i<96;i=i+4)
			{
				write_SPLC501CD(0x44);write_SPLC501CD(0x44);
				write_SPLC501CD(0x11);write_SPLC501CD(0x11);
			}*/
			//return;
		}
//		for(j=0;j<7;j++)
//		{
//			USER_Delay200MS(3);
//			LCD501_Adjust_Contrast(7-j);
//		}
		//U8 code X_C_PowerLogo[]={4,96,96,0,1,0};
		//SPLC501_Disp_XBMPArray(X_C_PowerLogo,&BmpPowerOnLogo[gc_PowerOnLogoSelect][0]);
	}
	#endif
}
//============================================================================
//=======================================================================================================
void SPLC501_Disp_Battery(U8 BLevel)
{
	U8 i,temp;
	SPLC501_Set_PageNColumn_Address(0,0);
	#if (Glass_ColumnNum==132)
	SPLC501_Write_Num_Value(7,0x00);
	#endif
	for(i=0;i<12;i++)
	{
		if(BLevel==5)
		{
			temp=0x00;
		}else{
			temp=BmpBattery[i];
			switch(i)
			{
			case 3:
				if(BLevel<4)
					temp=0x82;
				break;
			case 5:
				if(BLevel<3)
					temp=0x82;
				break;
			case 7:
				if(BLevel<2)
					temp=0x82;
				break;
			case 9:
				if(BLevel<1)
					temp=0x82;
				break;
			}
		}
		write_SPLC501CD(temp);
	}
}
//=======================================================================================================
void SPLC501_Disp_TrackOrTime(U8 *Time, U8 Column)
{
	U8 i,j;
	SPLC501_Set_PageNColumn_Address(3,Column);
	SPLC501_Write_Num_Value(3,0x00);
	for(i=0;i<5;i++)
	{
#ifdef LittleChar4X8
		for(j=0;j<4;j++)
		{
			write_SPLC501CD(BmpDigitNDChar[*(Time+i)][j]);
		}
#else
		for(j=0;j<5;j++)
		{
			write_SPLC501CD(BmpDigitNDChar[*(Time+i)][j]);
		}
		//write_SPLC501CD(0x00);
#endif
	}
	SPLC501_Write_Num_Value(2,0x00);
}
//=======================================================================================================
void SPLC501_Playing_Pause_Stop_Record(U8 XState)
{
	U8 j;
	#if (Glass_ColumnNum==132)
	SPLC501_Set_PageNColumn_Address(3,34);
	#else
	SPLC501_Set_PageNColumn_Address(3,24);
	#endif
	for(j=0;j<6;j++)
	{
		write_SPLC501CD(BmpPlayingPauseStop[XState][j]);
	}
	SPLC501_Write_Num_Value(2,0x00);
}
//=======================================================================================================
U8 code BmpNoText[]=
{
/*----------------No------------------------------------------------------------
  源文件 / 文字 : NO
  宽×高(像素): 14×16
------------------------------------------------------------------------------*/
0xF0,0x60,0x80,0x00,0x00,0xF0,0x00,0x00,0xE0,0x10,0x10,0x10,0x10,0xE0,0x1F,0x00,
0x01,0x02,0x0C,0x1F,0x00,0x00,0x0F,0x10,0x10,0x10,0x10,0x0F,
};
U8 code BmpMP3DVRText[][42]=
{
/*----------------MP3----------------------------------------------------------
/*--  宽度x高度=21x16  --*/
0xF0,0xC0,0x00,0x00,0x00,0xC0,0xF0,0x00,0x00,0xF0,0x10,0x10,0x10,0x10,0xE0,0x00,
0x20,0x10,0x10,0x10,0xE0,0x1F,0x00,0x03,0x0C,0x03,0x00,0x1F,0x00,0x00,0x1F,0x01,
0x01,0x01,0x01,0x00,0x00,0x08,0x10,0x11,0x11,0x0E,
/*----------------DVR----------------------------------------------------------
/*--  宽度x高度=21x16  --*/
0xF0,0x10,0x10,0x10,0x20,0xC0,0x00,0x30,0xC0,0x00,0x00,0x00,0xC0,0x30,0x00,0xF0,
0x10,0x10,0x10,0x10,0xE0,0x1F,0x10,0x10,0x10,0x08,0x07,0x00,0x00,0x01,0x06,0x18,
0x06,0x01,0x00,0x00,0x1F,0x01,0x01,0x01,0x01,0x1E,
/*----------------LST----------------------------------------------------------
/*--  宽度x高度=21x16  --*/
0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,0xE0,0x10,0x10,0x10,0x20,0x00,0x00,0x10,
0x10,0xF0,0x10,0x10,0x00,0x00,0x00,0x1F,0x10,0x10,0x10,0x10,0x00,0x08,0x11,0x11,
0x11,0x0E,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,
};
U8 code BmpFileText[]=
{
//-------------File!------------------------------------------------------------
/*--  宽度x高度=23x16  --*/
0xF0,0x10,0x10,0x10,0x10,0x00,0xF0,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,0xF0,
0x10,0x10,0x10,0x10,0x00,0x00,0xF0,0x1F,0x01,0x01,0x01,0x00,0x00,0x1F,0x00,0x00,
0x1F,0x10,0x10,0x10,0x10,0x00,0x1F,0x11,0x11,0x11,0x10,0x00,0x00,0x17,
};
//=======================================================================================================
void SPLC501_Disp_NoFile(U8 xx)
{

	SPLC501_Erase_OnePage(1);
	SPLC501_Erase_OnePage(2);
	{
		U8 code X_C_TEXTNo[]={2,14,14,9,0,1};
		SPLC501_Disp_XBMPArray(X_C_TEXTNo,BmpNoText);
	}
	{
		U8 code X_C_TEXTMD[]={2,21,21,31,0,1};
		SPLC501_Disp_XBMPArray(X_C_TEXTMD,&BmpMP3DVRText[xx][0]);
	}

	{
		U8 code X_C_TEXTFile[]={2,23,23,61,0,1};
		SPLC501_Disp_XBMPArray(X_C_TEXTFile,BmpFileText);
	}
}
//=======================================================================================================
void SPLC501_Printf(U8 Page,U8 Column,U8 * Pointer)
{
U8 reverse=false;
U8 i;
U8 temp,temp1;
U8 Tmp_DataBuf[24];
	i=0;
	while(*(Pointer+i)!='\0')
	{
		temp=*(Pointer+i);
		if(temp=='~')
		{
			SPLC501_Fill_Value(Page,Column,2,0xff);
			Column=Column+2;
			reverse=~reverse;
		}else{
			if(Column>120) break;//overstep display area
			if(temp&0x80)
			{
				temp1=*(Pointer+i+1);
				X_HZK_Get_BMP(temp,temp1,Tmp_DataBuf);
				LCD_disp_HZKCharBMP(Page,Column,Tmp_DataBuf,IsWord,reverse);
				Column=Column+12;
				i++;
			}else{	
				SPLC501_Write_CharABC(Page,Column,reverse,temp);
				Column=Column+8;
			}
		}
		i++;
		//if(i>=14) break;//????????
	}
	SPLC501_Fill_Value(Page,Column,132-Column,0x00);
}
//=======================================================================================================
void SPLC501_Fill_Value(U8 Page,U8 Column,U8 Num,U8 Value)
{
	SPLC501_Set_PageNColumn_Address(Page,Column);
	SPLC501_Write_Num_Value(Num,Value);

	SPLC501_Set_PageNColumn_Address(Page+1,Column);
	SPLC501_Write_Num_Value(Num,Value);
}
//=======================================================================================================
void SPLC501_Disp_PlayMode(U8 X_PlayMode)
{
	U8 j;
	SPLC501_Set_PageNColumn_Address(3,0);
	#if (Glass_ColumnNum==132)
	SPLC501_Write_Num_Value(7,0x00);
	#endif
	for(j=0;j<24;j++)
	{
		write_SPLC501CD( BmpPlayMode[X_PlayMode][j]);
	}
	SPLC501_Write_Num_Value(3,0x00);
}
//=======================================================================================================
U8 code BmpPC[]=
{
/*------------------------------------------------------------------------------
  源文件 / 文字 : E:\application

⌨️ 快捷键说明

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