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

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

?? uart.c

?? 在ARM平臺(tái)上開發(fā)的LCD驅(qū)動(dòng)程序,具有很強(qiáng)的通用性.
?? C
字號(hào):
/*************************************************************************************
*	Copyright (c) 2005 by National ASIC System Engineering Research Center.
*	PROPRIETARY RIGHTS of ASIC are involved in the subject matter of this 
*	material.  All manufacturing, reproduction, use, and sales rights 
*	pertaining to this subject matter are governed by the license agreement.
*	The recipient of this software implicitly accepts the terms of the license.
*

**************************************************************************************/


#include "garfield.h"
int i=0;


//#define CSMODE
#undef CSMODE


#define ESRAM_Test_BASE  0x1fff0000

#define LCDCOM	0x34000000
#define LCDDATA	0x3400ffff

#define delay10ms()	do{for(i=0;i<200000;i++);}while(0)	
#define delay100us()	do{for(i=0;i<2000;i++);}while(0)		//延時(shí)100us					
#define delay() delay100us()

#define	show()
#define	showStop()

unsigned char  initda[]={0x08,0x01,0x02,0x10,0x38,0x0c,0x80};
unsigned char  initda2[]={0x0c,0x34,0x06,0x03,0x40};
unsigned char  disdata1[]={0xba,0xc0,0xba,0xc1,0xba,0xc2,0xba,0xc3,0xba,0xc4,0xba,0xc5,0xba,0xc6,0xbf,0xc0,0xba,0xc7,0xba,0xc8,0xba,0xc3,0xba,0xc4,0xba,0xc5,0xba,0xc6};
unsigned char  disdata2[]={0xb9,0xe6,0xbc,0xc1,0xbc,0xc2,0xbc,0xc3,0xbc,0xc4,0xbc,0xc5,0xbc,0xc6,0xbe,0xc0,0xba,0xc9,0xba,0xca,0xba,0xc3,0xba,0xc4,0xba,0xc5,0xba,0xc6};



/*-----------------------------------------------------------------------
延時(shí)函數(shù)
系統(tǒng)時(shí)鐘:10M
-----------------------------------------------------------------------*/
void delay_1us(void)                 //1us延時(shí)函數(shù)
{
	for (i=10;i>0;i--); 
}

void delay_nus(unsigned int n)       //N us延時(shí)函數(shù)
{
	for (i=0;i<n;i++)
		delay_1us();
}
  
void delay_1ms(void)                 //1ms延時(shí)函數(shù)
{
	for (i=0;i<10000;i++); 
}
  
void delay_nms(unsigned int n)       //N ms延時(shí)函數(shù)
{
	for (i=0;i<n;i++)
		delay_1ms();
}




/*
	R/W --> PD5
	RS --> PD3
	E -->PA0
*/
//讀
void R(void)
{
	*(RP)0x1000b02c |= 0x20;		//	sel pd5
	*(RP)0x1000b030 |= 0x20;		//	data pd5 -> 1
	*(RP)0x1000b028 &= ~0x20;  		//  dir pd5 out
}

//寫
void W(void)
{
	*(RP)0x1000b02c |= 0x20;		//	sel pd5
	*(RP)0x1000b030 &= ~0x20;		//	data pd5 -> 0
	*(RP)0x1000b028 &= ~0x20;  		//  dir pd5 out
}

//數(shù)據(jù)寫入或者讀取
void D(void)
{
	*(RP)0x1000b02c |= 0x8;		//	sel pd3
	*(RP)0x1000b030 |= 0x8;		//	data pd3 -> 1
	*(RP)0x1000b028 &= ~0x8;  		//  dir pd3 out
}

//命令寫入
void C(void)
{
	*(RP)0x1000b02c |= 0x8;		//	sel pd3
	*(RP)0x1000b030 &= ~0x8;		//	data pd3 -> 0
	*(RP)0x1000b028 &= ~0x8;  		//  dir pd3 out
}

//背光亮
void lingtOn(void)
{
	*(RP)0x1000b02c |= 0x10;		//	sel pd4
	*(RP)0x1000b030 |= 0x10;		//	data pd4 -> 1
	*(RP)0x1000b028 &= ~0x10;  		//  dir pd4
}	
	
//背光滅
void lingtOff(void)
{
	*(RP)0x1000b02c |= 0x10;		//	sel pd4
	*(RP)0x1000b030 &= ~0x10;		//	data pd4 -> 1
	*(RP)0x1000b028 &= ~0x10;  		//  dir pd4
}	

//e使能
void E(void)
{
	*(RP)0x1000b008 |= 0x1;		//	sel pa0
	*(RP)0x1000b00c |= 0x1;		//	data pa0 -> 1
	*(RP)0x1000b004 &= ~0x1;  	//  dir pa0
}

//e 不使能
void disE(void)
{
	*(RP)0x1000b008 |= 0x1;		//	sel pa0
	*(RP)0x1000b00c &= ~0x1;		//	data pa0 -> 0
	*(RP)0x1000b004 &= ~0x1;  	//  dir pa0
}



//檢測(cè)忙標(biāo)志
void check_busy(void)
{
	char x;
	
	C();		//RS = 0; 	//指令
	R();		//RW = 1;   //讀取端口的狀態(tài)
	//E();			//E = 1;   //開通讀寫信號(hào)
	
	disE();	
	x = *(RP16)LCDDATA;
	printf("x = %d\n",x);

	while(x &= 0x80)
	{
		E();
		x = *(RP16)LCDDATA;
		disE();				//E = 0;
	}
}
	
	
void com(char a)
{

#ifdef CSMODE	
	*(RP16)LCDCOM = a;		
	show();
	delay();
	showStop();	
#else
	check_busy();
	C();		//RS = 0; //開通寫指令
	W();		//RW = 0;   //寫
	disE();	
	
	
	*(RP16)LCDCOM = a;
	
	E();			//E = 1;   //開通讀寫信號(hào)
	
	delay();
	
	disE();	
#endif
}


void data(char a)	
{
#ifdef CSMODE		
	*(RP16)LCDDATA = a;		
	show();
	delay();
	showStop();	
#else
	
	check_busy();
	D();		//RS = 0; //開通寫指令
	W();		//RW = 0;   //寫
	
	disE();	
	
	*(RP16)LCDDATA = a;
	
	E();			//E = 1;   //開通讀寫信號(hào)
	
	delay();
	
	disE();	
#endif

}


//畫水漆直線子函數(shù)
void draw_xline(char x, char y, char line_data, char icount)
{
	com(0x34);
	com(y);
	delay100us();
	
	com(x);
	com(0x30);
	while(icount--)
	{
    	data(line_data);
    }
	
	com(0x36);
	com(0x30);
	
/*write_code(0x34);
write_code(y);
delay(1);
write_code(x);
write_code(0x30);
while(icount--)
{
    write_data(line_data);
  //delay(1);
}
write_code(0x36);
write_code(0x30);
*/
}


//清屏子函數(shù)
void clc(void)
{
	com(0x01);
	com(0x34);
	com(0x30);
}


//LCD初始化
void init(void)
{
	

	
	
	
#if 1	
	com(0x30);
	delay100us();
	
	com(0x30);
	delay100us();
	
	com(0x3f);
	delay100us();
	
	com(0x1);	
	delay10ms();
	
	com(0x6);
	delay100us();
	
#endif	
	
	
	
	
	

#if  0	
	com(0x30);
	com(0x30);
	com(0x20);
	com(0x80);	


	com(0x34);
	com(0x30);
	com(0x1);
	com(0x6);	
	com(0xc);
#endif

}	

int main(void)
{
	
	int j = 0;
	system_init();
	*(RP)0x10000000 = 0;
	

	*(RP16)0x24000000 = 0x30;
	
		
	init();

	lingtOn();




	delay10ms();
	
	
	
	draw_xline(0x90,0x90,0xff,16);
	
while(1);	
	for(j=0;j<16;j++)
	{	

		data( disdata1[j]);	

	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
#if 0		
	for(j=3;j>0;j--)
	{
		show();	
		*(RP16)LCDCOM = 0x30;		//基本指令集
		delay();
		showStop();
	}	


	

	/////////////////////////////////////////////////////////////
	delay();
	*(RP16)LCDCOM = 0x30;		//基本指令集
	show();
	delay();
	showStop();	
	
	delay();
	*(RP16)LCDCOM = 0x30;		//基本指令集
	show();
	delay();	
	showStop();
	
	delay();
	*(RP16)LCDCOM = 0x3f;		//整體顯示、光標(biāo)顯示、光標(biāo)反顯
	show();
	delay();		
	showStop();	
	
	delay();
	*(RP16)LCDCOM = 0x1;			//清屏	
	show();
	delay();
	showStop();
	for(i=0;i<0x100000;i++);
	
	
	delay();
	*(RP16)LCDCOM = 0x7;			//光標(biāo)移動(dòng)的方向
	show();
	delay();
	showStop();

	delay();	
	*(RP16)LCDCOM = 0x30;		//基本指令集
	show();
	delay();
	showStop();
	
	
	///////////////////////////////////////////////////////////////

	delay();
	*(RP16)LCDCOM = 0x20;		// 位置歸0
	show();
	delay();
	showStop();
	
	delay();	
	*(RP16)LCDCOM = 0x80;		// ddram位置選擇
	show();
	delay();	
	showStop();	
	
	
	
	
	//////////////////////////////////////////////////////////////
	


	for(j=0;j<16;j++)
	{	
		delay();
		*(RP16)LCDDATA = disdata1[j];	
		show();
		delay();
		showStop();
	}
	
	
	
	
	for(j=0;j<7;j++)
	{		
		delay();				
		*(RP16)LCDDATA = initda[j];	
		show();
		delay();
		showStop();
	}
	
	
#endif		
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
		
		
	while(1);
}

 
 




STATUS ModuleUart(void)
{
     
   U32 sysclk      = 70000000;  // 20MHz, 30MHz, 40MHz, 50MHz, 60MHz
   U32 baudrate    = 9600;     // 57600, 56000, 38400, 19200, 9600
   U32 databit     = 8;         // 6, 7, 8 
   U32 trigerlevel = 8;         // 4, 8, 14
   
 
   int recie = 1;               //0 disable, 1 enble
   int thrie = 0;	            //0 disable, 1 enble
  
   
	/* system initialized */
	system_init();//PMU_init() INT_init()系統(tǒng)時(shí)鐘功耗初始化 中斷初始化(屏蔽所有中斷
	//同時(shí)使能所有中斷,等待打開屏蔽)
	
	/* open uart0 interrrupt mask */
	unmask_irq(INT_UART0);//根據(jù)參數(shù)中斷號(hào)判斷出uart0屏蔽打開
      
   init_uart0(sysclk, baudrate, databit, trigerlevel);//初始化uart0
      
   uart0_int_en(recie, thrie);
   
   *(RP)INTC_IEN = 0X01800000;					//第23,24位置1,打開uart1 uart2				 
   
   unmask_all_irq();


	prints("ESCo1");
	prints("27 69 10 100 10 5 6 8 7 2 0");


	return 0;






}
















   void init_esram(void)
 {
    int i;
 
   volatile int *esram_base1 = ( int  *)ESRAM_Test_BASE;
   volatile int *esram_base2 = ( int  *)ESRAM_Test_BASE;
   //*(esram_base1) = "test string!";
   for(i = 0; i<0x1000; i++)
   {
      *(esram_base1)=0;
      esram_base1 ++;
    }

   for(i=0;i<0x40;i++)
   {
 	*(esram_base2)=i;
 	esram_base2 ++;
   }
 
 }


int init_uart0(U32 sysclk, U32 baudrate, U32 databit, U32 trigerlevel)
{
    U32 baud, bit, triger, baudh, baudl;
    baud  = sysclk/16/baudrate;//?
    baudh = baud >> 8;//波特率高8位賦值
    baudl = baud & 0xff;//波特率低8位賦值
    
    switch(databit)//根據(jù)數(shù)據(jù)位大小判斷,
    //四種情況對(duì)應(yīng)不同的數(shù)據(jù)比特?cái)?shù):00(5bits),01(6bits),10(7bits),11(8bits)
    {
    	case 5: bit = 0x80;
    	     break;
    	     
    	case 6: bit = 0x81;
    	     break;
    	       
    	case 7: bit = 0x82;
    	     break;
    	     
    	case 8: bit = 0x83;
    	     break;
    	
    	default: ;
    	     break;             	  	
    }	
    
    write_reg(UART0_LCR, bit);  //divisor latch被訪問,通過輸入的數(shù)據(jù)bit第8位為1配置
    
    write_reg(UART0_DLH, baudh);//將計(jì)算后的波特率寫入高8位
    write_reg(UART0_DLL, baudl);//將計(jì)算后的波特率寫入低8位
    
    read_reg(UART0_LCR) &= (~(0x1 << 7));  //通過UART0_LCR第8位和0相與置0,關(guān)閉波特率訪問,
    //轉(zhuǎn)到普通寄存器的訪問,至此完成的數(shù)據(jù)的初始化
    
    switch(trigerlevel)//觸發(fā)級(jí)初始化,定義transmitter FIFO的trigger level:00(0byte),
    //01(2byte),10(4byte),11(8byte)
    {
    	case 1:  triger = 0x0;
    	     break;
    	     
    	case 4:  triger = 0x1;
    	     break;
    	     
    	case 8:  triger = 0x2;
    	     break;
    	     
    	case 14: triger = 0x3;
    	     break;
    	
    }
    
    triger = (triger << 6);
    
    write_reg(UART0_FCR, triger);
    //這個(gè)函數(shù)同樣方法可以定義receiver FIFO的trigger level。
    
    write_reg(UART0_IER, 0x00);//打開接收FIFO觸發(fā)級(jí)中斷使能
    //	
    return E_OK;
}

int uart0_int_en(int recie, int thrie)//判斷uart0是否準(zhǔn)備接收和發(fā)送數(shù)據(jù),從而決定FIFO的使能控制
{
     if(recie == 1)//uart0準(zhǔn)備好接收數(shù)據(jù)
        read_reg(UART0_IER) |= 0x1;//開接收FIFO觸發(fā)級(jí)中斷使能/*received data available interrupt enable*/
        
     else 
        if(recie == 0)//uart0沒準(zhǔn)備接收數(shù)據(jù)
          read_reg(UART0_IER) &= ~0x1;//關(guān)閉接收FIFO觸發(fā)級(jí)中斷使能/*interrupt disable*/
        
     if(thrie == 1)//uart0準(zhǔn)備發(fā)送數(shù)據(jù)
        read_reg(UART0_IER) |= (0x1 << 1);//開發(fā)送FIFO觸發(fā)級(jí)空中斷使能    /*transmitter holding register empty interrupt enable*/
        
     else
        if(thrie == 0)//uart0沒準(zhǔn)備好發(fā)送數(shù)據(jù)
          read_reg(UART0_IER) &= ~(0x1 << 1); //關(guān)閉發(fā)送FIFO觸發(fā)級(jí)空中斷使能/*transmitter holding register empty interrupt disable*/	
   	
     return E_OK; 
}

int thr_isr_uart0(void)
{
     U32 i;
     U32 a = 0x30;
     
     prints("UART transmiter holding register handler!\n");
     
     for(i=0; i<100; i++,a++)
         write_reg(UART1_THR,a);//把要發(fā)送的數(shù)據(jù)放入傳輸FIFO
         
     return E_OK;
}

ER rda_isr_uart0(void)
{
     U32 i;
     U32 a;
     
     prints("UART receive data available handler!\n");
     
     for(i=0; i<8; i++)
     {
         a = read_reg(UART0_RBR);//讀取接收FIFO里的數(shù)據(jù)
   //      printf("%d\n",a);//把接收的數(shù)據(jù)在lcd上打印 
     }
     
     return E_OK;
}
/*中斷服務(wù)程序*/
void int_serv_uart0(void)
{
	//a =  (*(RP)UART0_IIR & 0XE ) >> 1;
	switch(( read_reg(UART0_IIR) & 0XE ) >> 1 )//判斷bit【3:1】中斷源標(biāo)號(hào)
 	//switch(a)
 	{
 	case 3 :	
 		rls_isr();	//receiver line status interrupt接收數(shù)據(jù)狀態(tài)中斷
 		return ;
 		break;	
	case 2 :
		rda_isr_uart0();	//receiver data available interrupt接收FIFO中的數(shù)據(jù)達(dá)到觸發(fā)級(jí)中斷
		return ;
		break;	
	case 6 :	
		tmo_isr_uart0();	//time out interrupt超時(shí)中斷
		return ;
		break;	
	case 1 :	
		thr_isr_uart0();	//transmit holding register empty interrupt 傳輸FIFO中斷
		return ;
		break;
	case 0 :	
		mds_isr();	//modem status intertupt modem狀態(tài)發(fā)生變化中斷
		return ;
		break;

	default :
		return ;
	}
}
extern ER rls_isr(void)//出現(xiàn)硬件錯(cuò)誤
{
	return E_HA;	
}

extern ER mds_isr(void)//出現(xiàn)硬件錯(cuò)誤
{
	return E_HA;	
}	
ER tmo_isr_uart0(void)
{
	volatile U32 a;
	
	a = read_reg(UART0_RBR);//讀取接收FIFO中數(shù)據(jù),清除這個(gè)中斷
	
	return E_OK;
	
}


ER prints(char *s)//把數(shù)據(jù)打印到上位機(jī)超級(jí)終端
{
    int i;
   // U32 mask;
    while(*s != '\0')
    {
        {
           *(RP)UART0_THR = *s++;//利用指針傳輸數(shù)據(jù),這個(gè)是硬件管理的,我們只要把指針指向首數(shù)據(jù)地址,并且建立循環(huán)
        }
        for(i=0; i<5000 ; i++) ;
    }
    *(RP)UART0_THR = '\n';   
        return E_OK;    
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美中文在线| 欧美色视频一区| 不卡在线视频中文字幕| 国产成人综合在线| 91丝袜高跟美女视频| 欧洲一区在线电影| 精品国产伦一区二区三区观看体验| 欧美性淫爽ww久久久久无| 欧美高清视频一二三区| 亚洲精品在线电影| 亚洲欧洲日产国码二区| 亚洲黄网站在线观看| 日本女人一区二区三区| 成人三级伦理片| 欧美一区二区私人影院日本| 国产亚洲一区二区三区四区| 一区二区三区不卡视频在线观看| 青娱乐精品视频在线| 欧美精品九九99久久| 中文一区一区三区高中清不卡| 爽好多水快深点欧美视频| 国产精品白丝jk黑袜喷水| 在线免费观看日本一区| 久久久国产精品午夜一区ai换脸| 亚洲人成在线播放网站岛国| 国内精品不卡在线| 欧美一区二区三区视频在线| 亚洲综合在线五月| 国产伦精品一区二区三区免费迷 | 色综合 综合色| 中文字幕第一区二区| 国产精华液一区二区三区| 欧美性大战久久久久久久 | 国产中文一区二区三区| 4438x成人网最大色成网站| 一区二区三区国产豹纹内裤在线 | 91精品国产一区二区三区蜜臀| 亚洲人亚洲人成电影网站色| 国产精华液一区二区三区| 精品免费国产二区三区| 免费日韩伦理电影| 日韩欧美在线123| 国产精品一区二区三区99| 日韩欧美亚洲国产精品字幕久久久 | 日韩毛片精品高清免费| 91亚洲精华国产精华精华液| 夜夜夜精品看看| 在线不卡的av| 成人手机在线视频| 亚洲自拍偷拍九九九| 色婷婷综合久久久久中文一区二区 | 日本麻豆一区二区三区视频| 欧美一级黄色大片| 成人视屏免费看| 欧美大度的电影原声| 国产一区二区三区免费在线观看 | 国产精品一区二区三区网站| 一区二区三区**美女毛片| 欧美高清视频www夜色资源网| 久久99国产精品麻豆| 亚洲欧美日韩综合aⅴ视频| 欧美高清精品3d| 99久久精品免费| 日本不卡中文字幕| 玉米视频成人免费看| 日韩免费视频线观看| 日本韩国欧美在线| 成人精品电影在线观看| 捆绑紧缚一区二区三区视频| 亚洲最新视频在线播放| 国产亚洲欧美日韩在线一区| 欧美三区在线观看| 高清不卡在线观看av| 国产精品一区二区久久精品爱涩 | 91久久精品国产91性色tv| 成人开心网精品视频| 国产成人av在线影院| 粉嫩绯色av一区二区在线观看| 精品一区二区久久| 日韩精品高清不卡| 秋霞电影网一区二区| 午夜精品免费在线观看| 亚洲综合成人网| 三级亚洲高清视频| 琪琪一区二区三区| 激情成人午夜视频| 国产白丝精品91爽爽久久| 成人综合在线观看| 99久久免费精品高清特色大片| www.成人网.com| 欧美日本在线播放| 久久众筹精品私拍模特| 国产精品电影一区二区| 一二三四区精品视频| 丝袜美腿亚洲一区二区图片| 精品一区二区综合| 99视频一区二区三区| 欧美剧情片在线观看| 久久精品男人的天堂| 亚洲成人先锋电影| 成人免费视频一区| 欧美视频在线观看一区二区| 欧美哺乳videos| 一级中文字幕一区二区| 国产成人免费视| 91精品国产丝袜白色高跟鞋| 国产精品三级视频| 六月婷婷色综合| 欧美自拍丝袜亚洲| 国产精品传媒入口麻豆| 久久97超碰色| 日韩欧美一二三区| 亚洲v精品v日韩v欧美v专区| 不卡电影一区二区三区| 精品剧情在线观看| 日韩av电影免费观看高清完整版 | 天涯成人国产亚洲精品一区av| 国产成人免费视频一区| 欧美精品第一页| 成人综合婷婷国产精品久久 | 狠狠色丁香久久婷婷综| 日韩欧美一级精品久久| 久久黄色级2电影| 欧美不卡视频一区| 久草这里只有精品视频| 欧美精品一区二区高清在线观看| 麻豆免费看一区二区三区| 欧美一二三四在线| 国产真实乱偷精品视频免| 亚洲国产经典视频| 91视频国产资源| 蜜臀91精品一区二区三区| 欧美日韩在线不卡| 国产精品欧美精品| 奇米影视一区二区三区小说| aaa欧美色吧激情视频| 久久五月婷婷丁香社区| 亚洲国产视频在线| 色婷婷久久综合| 国产精品久久久久久久第一福利 | 日韩欧美专区在线| 亚洲婷婷综合久久一本伊一区 | 欧美性猛片aaaaaaa做受| 一区在线观看视频| 国产91精品免费| 国产精品久99| 日本高清不卡在线观看| 亚洲欧美日韩小说| 欧美视频一二三区| 亚洲亚洲精品在线观看| 91欧美激情一区二区三区成人| 欧美亚洲免费在线一区| 午夜欧美在线一二页| 91精品国产综合久久久久久久久久 | 亚洲免费观看高清| 国产精品99精品久久免费| 国产亚洲成aⅴ人片在线观看| av一区二区不卡| 亚洲成人福利片| 日韩一区二区三区视频在线| 亚洲国产精品传媒在线观看| 日韩中文字幕区一区有砖一区| 91精品国产高清一区二区三区蜜臀| 日本中文字幕不卡| 国产精品久久久久久久久免费丝袜 | 免费av成人在线| 亚洲欧美视频在线观看视频| 日韩美一区二区三区| 国产成人日日夜夜| 日韩一级高清毛片| 91国产成人在线| 国产精品一二三四| 蜜臀久久久久久久| 有坂深雪av一区二区精品| 亚洲国产成人在线| 日韩色视频在线观看| 一本色道a无线码一区v| 美女视频一区二区| 欧美一区二区三区免费观看视频| 青青青伊人色综合久久| 欧美久久久久久久久| 91网站视频在线观看| 成人av在线看| 成人黄色在线视频| 久久狠狠亚洲综合| 国产又黄又大久久| 九九久久精品视频| 日本成人在线视频网站| 天天av天天翘天天综合网色鬼国产 | 欧美岛国在线观看| 91麻豆精品国产91久久久久| 欧美日韩黄视频| 欧美精品1区2区3区| 欧美一区二区三区四区在线观看| 欧美体内she精视频| 欧美一区二区三区日韩视频| 欧美sm美女调教| 国产欧美一区二区三区在线看蜜臀 | 免费在线观看视频一区| 国产成人亚洲综合a∨婷婷|