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

📄 ili9325.txt

📁 ili9325的驱动程序
💻 TXT
📖 第 1 页 / 共 5 页
字号:

 	{  
   	   show_cross();
	    smhj();
	touch_point_display(x,y);
      // display_icon();
 	}
 

 	if ((x>50)&&(x<1800)&&(((y>50)&&(y<1900)))) //4

 	{  
     	rgb_jb();
        smhj();
	 touch_point_display(x,y);
     // display_icon();
 	}

/*	if ((x>1650)&&(x<1950)&&(((y>3200)&&(y<3800))||((y>0)&&(y<600)))) //5

 	{  
   		MainLcdFill(0xffff);

	  //touch_point_display(x,y);
     //  display_icon();
 	} 

 	if ((x>2050)&&(x<2350)&&(((y>3200)&&(y<3800))||((y>0)&&(y<600)))) //6

 	{  
		show_cross();

	   //touch_point_display(x,y);
	//	display_icon();
 	}

	if ((x>2450)&&(x<2750)&&(((y>3200)&&(y<3800))||((y>0)&&(y<600)))) //7

 	{  
 
 		showRGBW();

	   // touch_point_display(x,y);
       // display_icon();
 	} 


	if ((x>2850)&&(x<3150)&&(((y>3200)&&(y<3800))||((y>0)&&(y<600)))) //9
 	{  

 		picture_display(pic1);

     // 	touch_point_display(x,y);
      // display_icon();
 	} 

	if ((x>3250)&&(x<3550)&&(((y>3200)&&(y<3800))||((y>0)&&(y<600)))) //10

 	{  	rgbhbhj();
   	//	display_icon();

   	//touch_point_display(x,y);
 	} 
 

 	if ((x>0)&&(x<3600)&&(y>600)&&(y<3200) )   //显示范围240*320内感应数据
    {
		MainLcdFill(0x1356);
	
	//	touch_point_display(x,y);
   	 }
*/

}
 
 
/*===========================================================================
** 函数名称: clear_ram()
** 功能描述: 清除显示RAM
** 入口参数: 无  
** 出口参数: 无 
============================================================================*/
 
void clear_ram()
 {
    uint t,l;

    LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
     
    LCD_write_c(0x0022);
   
    for(l=0;l<common;l++)
    {
        for(t=0;t<segment;t++)
        {
              LCD_write_d(0x0000);
        }   
 
    }
 } 
/*===========================================================================
** 函数名称: show_standard()
** 功能描述: 显示标准R、G、B和黑白颜色;
** 入口参数: A : 16位显示数据/象素
============================================================================*/
void MainLcdFill(uint A )
 {
    uint t,l;
  
  
     LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
     
    LCD_write_c(0x0022);
        
    for(l=0;l<common;l++)
    {
         for(t=0;t<segment;t++)
         {
              LCD_write_d(A);
         }
     //  waitkey();    
 
    }
 }
/*===========================================================================
** 函数名称: showRGBW()
** 功能描述: 显示标准RGB和黑白横条;
============================================================================*/
void showRGBW(void)
{
   	uint t,l;
    LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
     
    LCD_write_c(0x0022);
       
    for(l=0;l<(common/5);l++)
    {
         	for(t=0;t<segment;t++)
            {
              	LCD_write_d(0xf800);
            }
            
    }
         
       	for(l=0;l<(common/5);l++)
        {
         	for(t=0;t<segment;t++)
            {
             	 LCD_write_d(0x07e0);
            }
        }
         
       	for(l=0;l<(common/5);l++)
        {
         	for(t=0;t<segment;t++)
            {
             	 LCD_write_d(0x001f);
            }
        }
        
        for(l=0;l<(common/5);l++)
        {
         	for(t=0;t<segment;t++)
            {
             	 LCD_write_d(0xffff);
            }
        } 
         
         
       	for(l=0;l<(common/5+common%5);l++)
        {
         	for(t=0;t<segment;t++)
            {
              	LCD_write_d(0x0000);
            }
        }
    
  }
  
 /*===========================================================================
** 函数名称: show_cross()
** 功能描述: 检测cross_talk
============================================================================*/      
void show_cross(void)
{
    uint t,l;
       
       
    LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
     
    LCD_write_c(0x0022);
   
    
   	for(l=0;l<1;l++)
    {
         for(t=0;t<segment;t++)
         {
             	 LCD_write_d(0xf800);
         }
     }
         
     for(l=0;l<common-2;l++)
     {
         for(t=0;t<1;t++)
         {
            	LCD_write_d(0xf800);
         }
         for(t=0;t<segment-2;t++)
            {
              	LCD_write_d(0x0000);
            }
         for(t=0;t<1;t++)
         {
            	LCD_write_d(0xf800);
         }
      }
         
       for(l=0;l<1;l++)
       {
         	for(t=0;t<segment;t++)
         	{
           		LCD_write_d(0xf800);
         	}
      	}
}
 

 
/*===========================================================================
** 函数名称: volum_rgb_display()
** 功能描述: 显示标准RGB和黑白竖条;
============================================================================*/
  
 void volum_rgb_display(void)
{
	 uint l,t;
  
     LCD_write_c(0x0003); 	//entry mode
     LCD_write_d(0x7038);	//BGR mode
 						 	//vertically write mode	
 						 					
    LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
     
    LCD_write_c(0x0022);
     

     for(l=0;l<(segment/5);l++)
     {
         	for(t=0;t<common;t++)
            {
              	LCD_write_d(0xf800);
            }
            
     }
         
     for(l=0;l<(segment/5);l++)
     {
         	for(t=0;t<common;t++)
            {
             	 LCD_write_d(0x07e0);
            }
     }
         
     for(l=0;l<(segment/5);l++)
     {
         	for(t=0;t<common;t++)
            {
             	 LCD_write_d(0x001f);
            }
     }
        
     for(l=0;l<(segment/5);l++)
     {
         	for(t=0;t<common;t++)
            {
             	 LCD_write_d(0xffff);
            }
     } 
         
         
     for(l=0;l<(segment/5+segment%5);l++)
     {
         	for(t=0;t<common;t++)
            {
              	LCD_write_d(0x0000);
            }
     }
    
        
     LCD_write_c(0x0003); 	//entry mode
     LCD_write_d(0x7030);	//BGR mode
 						 	//vertically write mode	
 	
}
/*===========================================================================
** 函数名称: window_fill()
** 功能描述: 填弃窗口;
** 入口参数: X:窗口位置X坐标,Y:窗口位置y坐标
			 XX:窗口长,YY:窗口宽,fill_color:填充颜色
============================================================================*/

void window_fill(uint x,uint y,uint xx,uint yy,uint fill_color)
{
	uint ii,jj;

 
 
 	for(ii=0;ii<yy;ii++)
	{


    	LCD_write_c(0x0020); 		//x  GDDRAM address set
    	LCD_write_d(x);

    	LCD_write_c(0x0021); 		//y  GDDRAM address set
    	LCD_write_d(y+ii);
 
     
    	LCD_write_c(0x0022);


		for(jj=0;jj<xx;jj++)
			LCD_write_d(fill_color);
	}



    LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
}

/*===========================================================================
** 函数名称: icon_pic()
** 功能描述: 填弃ICON图像;
** 入口参数: X:窗口位置X坐标,Y:窗口位置y坐标
			 XX:窗口长,YY:窗口宽,pi:图像数组指针
============================================================================*/
 
void icon_pic(uint x,uint y,uint xx,uint yy,unsigned char *pi)
{
	uint ii,jj;
	xx++;
	yy++;

 	for(ii=0;ii<15;ii++)
	{

    	LCD_write_c(0x0020); 		//x  GDDRAM address set
    	LCD_write_d(x);

    	LCD_write_c(0x0021); 		//y  GDDRAM address set
    	LCD_write_d(y+ii);


 		LCD_write_c(0x0022);

		for(jj=0;jj<16;jj++)
		{
			LCD_write_d(((uint)(*pi)<<8)|(*(pi+1)));
			pi=pi+2;
		}
	}
    LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
}
/*===========================================================================
** 函数名称: tp_pic()
** 功能描述: 填弃ICON图像;
** 入口参数: X:窗口位置X坐标,Y:窗口位置y坐标
			 XX:窗口长,YY:窗口宽,pi:图像数组指针
============================================================================*/
 
void tp_pic(uint x,uint y,uint xx,uint yy,unsigned char *pi)
{
	uint ii,jj;
	xx++;
	yy++;
 	for(ii=0;ii<120;ii++)
	{

    	LCD_write_c(0x0020); 		//x  GDDRAM address set
    	LCD_write_d(x);

    	LCD_write_c(0x0021); 		//y  GDDRAM address set
    	LCD_write_d(y+ii);


 		LCD_write_c(0x0022);

		for(jj=0;jj<40;jj++)
		{
			LCD_write_d(((uint)(*pi)<<8)|(*(pi+1)));
			pi=pi+2;
		}
	}
    LCD_write_c(0x0020); 		//x  GDDRAM address set
    LCD_write_d(0x0000);

    LCD_write_c(0x0021); 		//y  GDDRAM address set
    LCD_write_d(0x0000);
 
}
/*===========================================================================
** 函数名称: display_icon()
** 功能描述: 显示ICON?
** 入口参数:无
============================================================================*/

void display_icon()
{
	window_fill(0,(common-20),segment,20,0x05e0);//背景

	window_fill(((segment-5)/9)*0+5,(common-17),((segment-5)/9-5),15,0xf800);//红色		
	
	window_fill(((segment-5)/9)*1+5,(common-17),((segment-5)/9-5),15,0x07e0);//绿色		

	window_fill(((segment-5)/9)*2+5,(common-17),((segment-5)/9-5),15,0x001f);//蓝色	

	window_fill(((segment-5)/9)*3+5,(common-17),((segment-5)/9-5),15,0x0000);//黑色

	window_fill(((segment-5)/9)*4+5,(common-17),((segment-5)/9-5),15,0xffff);//白色	


	window_fill(((segment-5)/9)*5+5,(common-17),((segment-5)/9-5),15,0xf800);// cross	
	window_fill(((segment-5)/9)*5+5+3,(common-17+2),((segment-5)/9-5)-5,15-5,0x0000);// 	
 

	window_fill(((segment-5)/9)*6+5,(common-17+0),((segment-5)/9-5),5,0xf800);//红绿蓝	
	window_fill(((segment-5)/9)*6+5,(common-17+5),((segment-5)/9-5),5,0x07e0);//红绿蓝	
	window_fill(((segment-5)/9)*6+5,(common-17+10),((segment-5)/9-5),5,0x001f);//红绿蓝	

	icon_pic(((segment-5)/9)*7+5,(common-17),((segment-5)/9-5),15,picon);

	icon_pic(((segment-5)/9)*8+5,(common-17),((segment-5)/9-5),15,picon);

 
 }
/*===========================================================================
** 函数名称: display_word()
** 功能描述: 显示tp_test
** 入口参数:无
============================================================================*/	
 void display_word()
{    LCD_write_c(0x0003); 	//entry mode
     LCD_write_d(0x7038);	//BGR mode
    
	 MainLcdFill(0xf800);	
	
	 LCD_write_c(0x0003); 	//entry mode
     LCD_write_d(0x7030);	//BGR mode

    	tp_pic(((segment-40)/2),((segment-40)/2),40,120,pic2);
    	display_icon();
 }	
/*===========================================================================
** 函数名称: picture_display()

⌨️ 快捷键说明

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