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

📄 tft_sunplus_spv518_panel.c

📁 TFT显示的源码,附了使用说明书 要下载的速度了
💻 C
字号:

/*
    shenyj modify 2007-7-20 10:26
*/

void  spv518_slave_27M_set(void)
{
        UINT32 i,j;
        UINT32 reg,data;	
                    
    i= sizeof(spv518_slave_27M_reg);
	 
        for(j=0;j<i;j++)
        {
        reg= spv518_slave_27M_reg[j];
        data=spv518_slave_27M_val[j];
	    WriteToI2c(slave_27m,reg,(BYTE *)&data,1);
    } 	 
}

void  spv518_slave_panel_set(void)
{
	UINT32 i,j;
        UINT32 reg,data;	
                    
    i= sizeof(spv518_slave_panel_reg);
        
        for(j=0;j<i;j++)
        {
        reg= spv518_slave_panel_reg[j];
        data=spv518_slave_panel_val[j];
	 WriteToI2c(slave_panel,reg,(BYTE *)&data,1);
        } 	
}
void  spv518_gamma(void)
{
	UINT32 i;
        UINT32 reg,data;	            
         
         // Bank 4
        data=0x04;
        WriteToI2c(slave_panel,0xff, (BYTE *)&data,1);
      
        //--- download R table
        data=0x17;
        WriteToI2c(slave_panel,0x00, (BYTE *)&data,1);
        for(i=0;i<256;i++)
        {
          WriteToI2c(slave_panel,0x1, (BYTE *)&i,1);
          WriteToI2c(slave_panel,0x2, (BYTE *)&spv518_gamma_tbl[i],1);  
        }		 
        //--- download G table   
        data=0x1B;
        WriteToI2c(slave_panel,0x00, (BYTE *)&data,1);
        for(i=0;i<256;i++)
        {
          WriteToI2c(slave_panel,0x1, (BYTE *)&i,1);
          WriteToI2c(slave_panel,0x2, (BYTE *)&spv518_gamma_tbl[i+256],1);  
        }		  
        //----download B table
        data=0x1F;
        WriteToI2c(slave_panel,0x00, (BYTE *)&data,1);
        for(i=0;i<256;i++)
        {
          WriteToI2c(slave_panel,0x1, (BYTE *)&i,1);
          WriteToI2c(slave_panel,0x2, (BYTE *)&spv518_gamma_tbl[i+512],1);  
        }		  
	
       data=0x01; // gamma correction display
       WriteToI2c(slave_panel,0x00, (BYTE *)&data,1);
}

#if 0 //no use shenyj mark it 2007-7-20 11:10
void  spv518_tcon(void)
{
        UINT32 i,j;
        UINT32 reg,data;	
                    
        i= sizeof(spv518_tcon_reg_ap1);
	 
        for(j=0;j<i;j++)
        {
         reg= spv518_tcon_reg_ap1[j];
         data=spv518_tcon_val_ap1[j];
	 WriteToI2c(slave_panel,reg,(BYTE *)&data,1);
        } 	 
}

void  spv518_vpp(void)
{
	UINT32 i,j;
        UINT32 reg,data;	
                    
        i= sizeof(spv518_vpp_reg_ap1); 
        
        for(j=0;j<i;j++)
        {
         reg= spv518_vpp_reg_ap1[j];
         data=spv518_vpp_val_ap1[j];
	 WriteToI2c(slave_panel,reg,(BYTE *)&data,1);
        } 	
}
void  spv518_sys(void)
{
        UINT32 i,j;
        UINT32 reg,data;	
                    
        i= sizeof(spv518_sys_reg_ap1);
	 
        for(j=0;j<i;j++)
        {
         reg= spv518_sys_reg_ap1[j];
         data=spv518_sys_val_ap1[j];
	     WriteToI2c(slave_27m,reg,(BYTE *)&data,1);
        } 	

}


void ColorAdjust_Hue_Saturation(void)
{
    UINT32 i,j;
        UINT32 reg,data;	
                    
        i= sizeof(spv518_hue_saturation_reg); 
        
        for(j=0;j<i;j++)
        {
         reg= spv518_hue_saturation_reg[j];
         data=spv518_hue_saturation_val[j];
	     WriteToI2c(slave_panel,reg,(BYTE *)&data,1);
        } 		
}
void ColorAdjust_Contrast_Brightness(void)
{
    UINT32 i,j;
        UINT32 reg,data;	
                    
        i= sizeof(spv518_contrast_brightness_reg); 
        
        for(j=0;j<i;j++)
        {
         reg= spv518_contrast_brightness_reg[j];
         data=spv518_contrast_brightness_val[j];
	     WriteToI2c(slave_panel,reg,(BYTE *)&data,1);
        } 	
}

#ifdef SPV518_TVD
void spv518_cvd(void) //shenyj add 
{
        UINT32 i,j;
        UINT32 reg,data;	
 
       data=0x00; //switch to bank 0
       WriteToI2c(slave_panel,0xff, (BYTE *)&data,1);
       data=0x08; //internal ccir656
       WriteToI2c(slave_panel,0x01, (BYTE *)&data,1);   
                       
        i= sizeof(spv518_tvd_reg1);
	 
        for(j=0;j<i;j++)
        {
         reg= spv518_tvd_reg1[j];
         data=spv518_tvd_val1[j];
	     WriteToI2c(slave_27m,reg,(BYTE *)&data,1);
        } 	
        i= sizeof(spv518_tvd_reg2);
	 
        for(j=0;j<i;j++)
        {
         reg= spv518_tvd_reg2[j];
         data=spv518_tvd_val2[j];
	     WriteToI2c(slave_27m,reg,(BYTE *)&data,1);
        } 	
        
        i= sizeof(spv518_tvd_reg3);
	 
        for(j=0;j<i;j++)
        {
         reg= spv518_tvd_reg3[j];
         data=spv518_tvd_val3[j];
	     WriteToI2c(slave_27m,reg,(BYTE *)&data,1);
        } 	
        
/* //for external video
data=0x00;
WriteToI2c(slave_27m,0xff,(BYTE *)&data,1);
data=0xe0;//0xe0 for A0 cvbs in ;0xe2 for A2 CVBS in 0xe9 for svideo
WriteToI2c(slave_27m,0x0c,(BYTE *)&data,1);
*/
}
#endif
void spv518_ccir656_pscan(void)
{
    #if defined(DIGITAL_VIDEO_OUT)&&defined(IC_8202R)
    WriteI2c(slave_panel,0xff,0x00,1);     
    //ReadFromI2c(slave_panel,0xff,&TempData1,1);
	//printf_w("TempData:%x............\n",TempData1); 
    WriteI2c(slave_panel,0x00,0x00,1);    
    //ReadFromI2c(slave_panel,0x00,&TempData2,1);
	//printf_w("TempData:%x............\n",TempData2);	
    #endif
}
#endif

⌨️ 快捷键说明

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