亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? lcd_240x320.c

?? 用ADS1.2編寫(xiě)的
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
{
    int i;

    for(i=y1;i<=y2;i++)
	Glib_Line(x1,i,x2,i,color);
}

/**************************************************************
在LCD屏幕上指定坐標(biāo)點(diǎn)畫(huà)一個(gè)指定大小的圖片
**************************************************************/
extern void Paint_Bmp(int x0,int y0,int h,int l,unsigned char bmp[])
{
	int x,y;
	U32 c;
	int p = 0;

//本圖片顯示是正的顯示方式
    for( y = 0 ; y < l ; y++ )
    {
    	for( x = 0 ; x < h ; x++ )
    	{
    		c = bmp[p+1] | (bmp[p]<<8) ;

			if ( ( (x0+x) < SCR_XSIZE_TFT_320240) && ( (y0+y) < SCR_YSIZE_TFT_320240) )
			LCD_BUFER[y0+y][x0+x] = c ;

    		p = p + 2 ;
    	}
    }

//本圖片顯示是倒過(guò)來(lái)的,是旋轉(zhuǎn)了180度的顯示方式	
  /*  for( y = l ; y > 0 ; y-- )
    {
    	for( x = h ; x > 0 ; x-- )
    	{
    		c = bmp[p+1] | (bmp[p]<<8) ;

			if ( ( (x0+x) < SCR_XSIZE_TFT_240320) && ( (y0+y) < SCR_YSIZE_TFT_240320) )
			LCD_BUFER[y0+y][x0+x] = c ;

    		p = p + 2 ;
    	}
    }



*/



}
/**************************************************************
在LCD屏幕添加圖標(biāo)
**************************************************************/
extern void accession_ico(int x0,int y0,int h,int l,unsigned char ico[])      
{
	int x,y;
	U32 c;
	int p = 0;


    for( y = 0 ; y < l ; y++ )
    {
    	for( x = 0 ; x < h ; x++ )
    	{
    		c = ico[p+1] | (ico[p]<<8) ;

			if ( ( (x0+x) < SCR_XSIZE_TFT_320240) && ( (y0+y) < SCR_YSIZE_TFT_320240) )
			LCD_BUFER[y0+y][x0+x] = c ;

    		p = p + 2 ;
    	}
    }
}




/*****************************************************/
void Lcd_Tft_240X320_Init( void )
{
    Lcd_Port_Init();

	//***********************************
	//LTV350QV_Reset();	         //reset LCD panel
	LTV350QV_Power_ON();
	//***********************************
	
    Lcd_Init();
    Lcd_EnvidOnOff(1);		//turn on vedio

	Lcd_ClearScr(0xffff);		//fill all screen with some color
	#define LCD_BLANK		16
	#define C_UP		( LCD_XSIZE_TFT_240320 - LCD_BLANK*2 )
	#define C_RIGHT		( LCD_XSIZE_TFT_240320 - LCD_BLANK*2 )
	#define V_BLACK		( ( LCD_YSIZE_TFT_240320 - LCD_BLANK*4 ) / 6 )
	Glib_FilledRectangle( LCD_BLANK, LCD_BLANK, ( LCD_XSIZE_TFT_320240 - LCD_BLANK ), ( LCD_YSIZE_TFT_320240 - LCD_BLANK ),0x0000);		//fill a Rectangle with some color

	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*0), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*1),(C_RIGHT), 0x001f);		//fill a Rectangle with some color
	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*1), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*2),(C_RIGHT), 0x07e0);		//fill a Rectangle with some color
	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*2), (LCD_BLANK*2),(LCD_BLANK*2 + V_BLACK*3),(C_RIGHT), 0xf800);		//fill a Rectangle with some color
	Glib_FilledRectangle(  (LCD_BLANK*2 + V_BLACK*3), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*4),(C_RIGHT),0xffe0);		//fill a Rectangle with some color
	Glib_FilledRectangle(  (LCD_BLANK*2 + V_BLACK*4), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*5),(C_RIGHT),0xf81f);		//fill a Rectangle with some color
	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*5), (LCD_BLANK*2),  (LCD_BLANK*2 + V_BLACK*6),(C_RIGHT),0x07ff);		//fill a Rectangle with some color
}

/**************************************************************
**************************************************************/
void Test_Lcd_Tft_240X320( void )
{
	#ifdef DEBUG
    	Uart_Printf("\nTest 240*320 TFT LCD !\n");
	#endif	

      //Lcd_Port_Init();

	//***********************************
	//LTV350QV_Reset();	         //reset LCD panel
	//LTV350QV_Power_ON();
	//***********************************
	
      //Lcd_Init();
      //Lcd_EnvidOnOff(1);		//turn on vedio
    
    /*	
	Lcd_ClearScr( (0x00<<11) | (0x00<<5) | (0x00)  )  ;		//clear screen
	Uart_Printf( "\nLCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input

	Lcd_ClearScr( (0x1f<<11) | (0x3f<<5) | (0x1f)  )  ;		//clear screen
	Uart_Printf( "LCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input

	Lcd_ClearScr( (0x00<<11) | (0x00<<5) | (0x1f)  )  ;		//clear screen
	Uart_Printf( "LCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input

	Lcd_ClearScr( (0x00<<11) | (0x3f<<5) | (0x00)  )  ;		//clear screen
	Uart_Printf( "LCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input

	Lcd_ClearScr( (0x1f<<11) | (0x00<<5) | (0x00)  )  ;		//clear screen
	Uart_Printf( "LCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input

	Lcd_ClearScr( (0x00<<11) | (0x3f<<5) | (0x1f)  )  ;		//clear screen
	Uart_Printf( "LCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input

	Lcd_ClearScr( (0x1f<<11) | (0x00<<5) | (0x1f)  )  ;		//clear screen
	Uart_Printf( "LCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input

	Lcd_ClearScr( (0x1f<<11) | (0x3f<<5) | (0x00)  )  ;		//clear screen
	Uart_Printf( "LCD clear screen is finished! press any key to continue!\n" );
    Uart_Getch() ;		//wait uart input
*/
	Lcd_ClearScr(0xffff);		//fill all screen with some color
	#define C_UP		( LCD_XSIZE_TFT_240320 - LCD_BLANK*2 )
	#define C_RIGHT		( LCD_XSIZE_TFT_240320 - LCD_BLANK*2 )
	#define V_BLACK		( ( LCD_YSIZE_TFT_240320 - LCD_BLANK*4 ) / 6 )
	Glib_FilledRectangle( LCD_BLANK, LCD_BLANK, ( LCD_XSIZE_TFT_320240 - LCD_BLANK ), ( LCD_YSIZE_TFT_320240 - LCD_BLANK ),0x0000);		//fill a Rectangle with some color

	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*0), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*1),(C_RIGHT), 0x001f);		//fill a Rectangle with some color
	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*1), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*2),(C_RIGHT), 0x07e0);		//fill a Rectangle with some color
	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*2), (LCD_BLANK*2),(LCD_BLANK*2 + V_BLACK*3),(C_RIGHT), 0xf800);		//fill a Rectangle with some color
	Glib_FilledRectangle(  (LCD_BLANK*2 + V_BLACK*3), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*4),(C_RIGHT),0xffe0);		//fill a Rectangle with some color
	Glib_FilledRectangle(  (LCD_BLANK*2 + V_BLACK*4), (LCD_BLANK*2), (LCD_BLANK*2 + V_BLACK*5),(C_RIGHT),0xf81f);		//fill a Rectangle with some color
	Glib_FilledRectangle( (LCD_BLANK*2 + V_BLACK*5), (LCD_BLANK*2),  (LCD_BLANK*2 + V_BLACK*6),(C_RIGHT),0x07ff);		//fill a Rectangle with some color
   	
    
    
   Lcd_ClearScr(0x00);		//fill all screen with some color
   Paint_Bmp( 0,0,320,240,gImage_mini ) ;		//paint a bmp
  // Delay(3000);
   //accession_ico( 24,24,50,50,ji ) ;		
  // Delay(90000);
  
   //accession_ico( 24,84,50,50,ji ) ;
   
}

/*****************************************
*  *for LTV350QV_POE TFT LCD
*****************************************/
//short delay for about 90*time ns 
void LTV350QV_Short_Delay(U8 time)
{
	U8 i;
	for(i=0;i<time*15;i++) ;                 //about 360 ns
}

//****************************************
void LTV350QV_Reset(void)
{
	RST_L;
	Delay(100);
	RST_H;
	Delay(1);
}

void LTV350QV_Register_Write(LTV350QV_SPI_Data regdata)
{
	U8 i,temp1;
	U16 temp2;
	U32 temp3;

	//write index
	temp1=regdata.Device_ID<<2 | 0<<1 | 0<<0;          //register index
	temp2=regdata.Index;
	temp3=(temp1<<24) | (temp2<<8);

	CS_L;
	LTV350QV_Short_Delay(1);
	for(i=0;i<24;i++)
		{
			SCLK_L;
			if(temp3 & (1<<(31-i)) )              //if is H
				SDI_H;
			else 
				SDI_L;
			LTV350QV_Short_Delay(1);      //setup time
			SCLK_H;
			LTV350QV_Short_Delay(1);     //hold time
		}
	CS_H;
	
	LTV350QV_Short_Delay(5);
	
	//write instruction
	temp1=regdata.Device_ID<<2 | 1<<1 | 0<<0;       //instruction
	temp2=regdata.Structure;
	temp3=(temp1<<24) | (temp2<<8);
	
	CS_L;
	LTV350QV_Short_Delay(1);
	for(i=0;i<24;i++)
		{
			SCLK_L;
			if(temp3 & (1<<(31-i)) )             //if is H
				SDI_H;
			else
				SDI_L;
			LTV350QV_Short_Delay(1);
			SCLK_H;
			LTV350QV_Short_Delay(1);
		}
	CS_H;
}

U16 LTV350QV_Register_Read(U8 index)
{
	U8 i,temp1;
	U16 temp2;
	U32 temp3;

	//write index
	temp1=LTV350QV_POE<<2 | 0<<1 | 1<<0;          //register index
	temp2=index;
	temp3=(temp1<<24) | (temp2<<8);

	CS_L;
	LTV350QV_Short_Delay(1);
	for(i=0;i<24;i++)
		{
			SCLK_L;
			if(temp3 & (1<<(31-i)) )              //if is H
				SDI_H;
			else 
				SDI_L;
			LTV350QV_Short_Delay(1);      //setup time
			SCLK_H;
			LTV350QV_Short_Delay(1);     //hold time
		}
	CS_H;
	
	LTV350QV_Short_Delay(5);
	
	//read instruction
	temp1=LTV350QV_POE<<2 | 1<<1 | 1<<0;       //instruction
	temp3=temp1<<24;
	
	CS_L;
	LTV350QV_Short_Delay(1);
	for(i=0;i<8;i++)                                          //send device ID
		{
			SCLK_L;
			if(temp3 & (1<<(31-i)) )              //if is H
				SDI_H;
			else 
				SDI_L;
			LTV350QV_Short_Delay(1);      //setup time
			SCLK_H;
			LTV350QV_Short_Delay(1);     //hold time
		}

	temp2=0;
	rGPCCON &=~(1<<20);      //SDI input
	for(i=0;i<16;i++)                                         //read data from the register
		{
			SCLK_L;
			LTV350QV_Short_Delay(1);
			SCLK_H;
			LTV350QV_Short_Delay(1);
			if(SDI_STATE)                     //if H
				temp2 |=1<<(15-i);
			else                                   //if L
				;
			LTV350QV_Short_Delay(1);
		}
	CS_H;

	return temp2;
}

/****************************************
*  *
****************************************/
void LTV350QV_Write(U16 index, U16 regdata)
{
	LTV350QV_SPI_Data WriteData;
	
	WriteData.Device_ID=LTV350QV_POE;  //0x1d
	WriteData.Index=index;                     //
	WriteData.Structure=regdata;

	LTV350QV_Register_Write(WriteData);
}

/****************************************
*  *power ON sequence
****************************************/
void LTV350QV_Power_ON(void)
{	
 	LTV350QV_Write(9, 0x0000);
 	Delay(150);
 	LTV350QV_Write(9, 0x4000);
 	LTV350QV_Write(10, 0x2000);
 	LTV350QV_Write(9, 0x4055);
 	Delay(550);
 	LTV350QV_Write(1, 0x409d);
 	LTV350QV_Write(2, 0x0204);
	 LTV350QV_Write(3, 0x0100);
 	LTV350QV_Write(4, 0x3000);
 	LTV350QV_Write(5, 0x4003);
 	LTV350QV_Write(6, 0x000a);
 	LTV350QV_Write(7, 0x0021);
 	LTV350QV_Write(8, 0x0c00);
 	LTV350QV_Write(10, 0x0103);
	 LTV350QV_Write(11, 0x0301);
 	LTV350QV_Write(12, 0x1f0f);
 	LTV350QV_Write(13, 0x1f0f);
 	LTV350QV_Write(14, 0x0707);
 	LTV350QV_Write(15, 0x0307);
 	LTV350QV_Write(16, 0x0707);
 	LTV350QV_Write(17, 0x0000);
 	LTV350QV_Write(18, 0x0004);
 	LTV350QV_Write(19, 0x0000);

 	Delay(200);
 	LTV350QV_Write(9, 0x4a55);
 	LTV350QV_Write(5, 0x5003);
}

/**********************************
*  *power OFF sequence
**********************************/
void LTV350QV_Powen_OFF(void)
{

	 /* GON -> 0, POC -> 0 */
	 LTV350QV_Write(9, 0x4055);
	 /* DSC -> 0 */
	 LTV350QV_Write(5, 0x4003);
 	/* VCOMG -> 0 */
 	LTV350QV_Write(10, 0x0000);

 	Delay(20);

	 /* AP[2:0] -> 000 */
	 LTV350QV_Write(9, 0x4000);
}
//*************************************************************

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕不卡在线| 日韩精品一区二区三区老鸭窝| 欧美tickle裸体挠脚心vk| 欧美色手机在线观看| 亚洲狼人国产精品| ww久久中文字幕| 国产精品一区专区| 亚洲另类在线制服丝袜| 亚洲欧美另类小说视频| 日本视频一区二区| 国产91精品露脸国语对白| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 国产精品成人免费| 亚洲第一在线综合网站| 日本不卡在线视频| 丁香六月久久综合狠狠色| 91欧美一区二区| 亚洲一区二区三区四区五区中文| 国产欧美日韩在线视频| 亚洲免费在线看| 丁香婷婷综合色啪| 精品在线视频一区| 欧美伊人久久大香线蕉综合69| 在线91免费看| 亚洲愉拍自拍另类高清精品| 国产精品18久久久久久久久久久久| 亚洲一级在线观看| 成人一级视频在线观看| 在线观看91精品国产麻豆| 国产精品美女久久久久av爽李琼| 日韩成人av影视| 国产精品久久久久久久久图文区| 日韩伦理电影网| 国产成a人无v码亚洲福利| 欧美mv日韩mv国产网站| 亚洲一区在线观看视频| 国产盗摄精品一区二区三区在线| 精品视频123区在线观看| 久久丝袜美腿综合| 麻豆精品国产91久久久久久| 丝袜亚洲另类欧美综合| 日本高清不卡一区| 中文一区在线播放| 国产在线播放一区二区三区| 91精品国产一区二区| 国产河南妇女毛片精品久久久| 91精品国产综合久久小美女| 亚洲国产精品影院| 欧美日韩夫妻久久| 青青草97国产精品免费观看 | 欧美一区二区精品久久911| 亚洲五月六月丁香激情| 欧美色中文字幕| 91精品久久久久久久91蜜桃| 亚洲国产你懂的| 欧美一区二区网站| 极品少妇xxxx精品少妇| 2021久久国产精品不只是精品| 中文在线一区二区| 久久精品国产色蜜蜜麻豆| 2022国产精品视频| 一本色道a无线码一区v| 粉嫩欧美一区二区三区高清影视| 欧美最猛性xxxxx直播| 日本成人在线一区| 国产欧美精品一区二区三区四区| 97se亚洲国产综合自在线观| 亚洲国产精品久久久久婷婷884| 国产乱码一区二区三区| 国产精品久久久久久久久图文区 | 亚洲激情五月婷婷| 欧美精选一区二区| 欧美一区二区久久久| 日本成人中文字幕| 亚洲欧美一区二区三区久本道91| 欧美视频一区在线观看| 国产99一区视频免费| 日韩在线一区二区| 亚洲天堂久久久久久久| 日韩精品一区二区三区在线| www.在线成人| 国产精品乡下勾搭老头1| 在线国产亚洲欧美| 欧美午夜在线观看| 亚洲mv在线观看| 国产精品成人网| 中文字幕第一区二区| 成人欧美一区二区三区1314| 制服丝袜国产精品| 欧美性视频一区二区三区| 99久久婷婷国产综合精品电影| 美国毛片一区二区三区| 婷婷综合久久一区二区三区| 亚洲免费观看高清完整版在线观看 | 日韩欧美一二三| 日韩午夜精品视频| 麻豆久久久久久| 美洲天堂一区二卡三卡四卡视频| 自拍偷拍国产精品| 国产精品的网站| 1024国产精品| 91视视频在线直接观看在线看网页在线看 | 亚洲精品国产视频| 国产农村妇女精品| 日韩欧美国产高清| 久久久综合视频| 久久精品男人的天堂| 国产精品天美传媒沈樵| 国产丝袜欧美中文另类| 欧美在线观看一二区| 欧美日韩亚洲综合在线 | 亚洲精品一线二线三线| 欧美精品一区二区不卡| 国产精品污www在线观看| 国产精品国产三级国产aⅴ无密码| 亚洲四区在线观看| 午夜精品福利久久久| 国产老肥熟一区二区三区| 成人深夜在线观看| 欧美三级电影在线观看| 欧美va亚洲va| 色94色欧美sute亚洲线路一久| 欧美人xxxx| 亚洲国产岛国毛片在线| 亚洲mv在线观看| 欧美影院一区二区三区| 亚洲男人天堂一区| 136国产福利精品导航| 蜜臀a∨国产成人精品| 丁香一区二区三区| 日韩免费观看高清完整版在线观看| 日本一区二区三区四区| 首页国产欧美日韩丝袜| 国产精品一二一区| 日韩视频免费观看高清完整版| 国产精品久久久一本精品 | 亚洲一二三区不卡| 欧美mv日韩mv国产网站app| 尤物av一区二区| 国产一区二区三区免费看| 欧美视频三区在线播放| 亚洲国产精品激情在线观看| 秋霞午夜av一区二区三区| 久久精品人人爽人人爽| 国产精品不卡在线| 丰满岳乱妇一区二区三区| 精品日产卡一卡二卡麻豆| 婷婷开心激情综合| 欧美三片在线视频观看| 日韩成人伦理电影在线观看| 99久久综合99久久综合网站| 国产女人18毛片水真多成人如厕| 亚洲成av人片在线观看无码| 一本到一区二区三区| 色8久久精品久久久久久蜜| 亚洲国产激情av| 懂色中文一区二区在线播放| 国产拍揄自揄精品视频麻豆| 国产精品影视天天线| 国产日韩欧美a| 成人激情av网| 久久99久久99| 日韩精品专区在线| 国产精品资源网| 国产精品久久久一区麻豆最新章节| youjizz久久| 亚洲成人7777| 久久久久久99精品| av亚洲精华国产精华精华| 一区二区三区国产豹纹内裤在线| 一本到高清视频免费精品| 亚洲国产综合91精品麻豆| 91精品国产91久久久久久最新毛片| 日本一区二区成人| 色就色 综合激情| 日韩av不卡在线观看| 精品国产一区二区在线观看| 99久久综合狠狠综合久久| 日韩av一区二| 国产精品二区一区二区aⅴ污介绍| 欧美成人在线直播| 国产成人综合视频| 亚洲欧美在线观看| 精品视频在线免费| 岛国精品一区二区| 午夜伦理一区二区| 中文字幕在线免费不卡| 91精选在线观看| 色偷偷久久人人79超碰人人澡| 美女性感视频久久| 亚洲一区二区视频| 国产欧美日本一区二区三区| 91精品国产综合久久精品性色| 日韩伦理av电影| 国产喷白浆一区二区三区| 日韩视频123| 91精品国产综合久久精品性色| 色综合av在线| eeuss鲁一区二区三区| 亚洲国产成人在线|