📄 splc501.c
字号:
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 + -