日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

vc2013 开发 winusb 简单测试程序 基于 nu_bridge

發布時間:2023/12/20 c/c++ 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vc2013 开发 winusb 简单测试程序 基于 nu_bridge 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

nu_bridge是新唐的牛橋,借助該USB工具,pc端可以方便的調試外部的SPI, I2C設備。
新唐提供的驅動包中已經包含了winusb的驅動。
在測試下面的程序之前需要安裝驅動。

這里是用vs2013 開發一個簡單的winUSB控制臺測試程序,幫助入門winUSB的API。
新建一個控制臺工程:nu_bridge_simple

點擊完成

添加文件:

文件:device.cpp

#include "pch.h"#include <SetupAPI.h>HRESULT RetrieveDevicePath(_Out_bytecap_(BufLen) LPTSTR DevicePath,_In_ ULONG BufLen,_Out_opt_ PBOOL FailureDeviceNotFound);HRESULT OpenDevice(_Out_ PDEVICE_DATA DeviceData,_Out_opt_ PBOOL FailureDeviceNotFound) /*++Routine description:Open all needed handles to interact with the device.If the device has multiple USB interfaces, this function grants access toonly the first interface.If multiple devices have the same device interface GUID, there is noguarantee of which one will be returned.Arguments:DeviceData - Struct filled in by this function. The caller should use theWinusbHandle to interact with the device, and must pass the struct toCloseDevice when finished.FailureDeviceNotFound - TRUE when failure is returned due to no devicesfound with the correct device interface (device not connected, drivernot installed, or device is disabled in Device Manager); FALSEotherwise.Return value:HRESULT--*/ {HRESULT hr = S_OK;BOOL bResult;DeviceData->HandlesOpen = FALSE;hr = RetrieveDevicePath(DeviceData->DevicePath,sizeof(DeviceData->DevicePath),FailureDeviceNotFound);if (FAILED(hr)) {return hr;}DeviceData->DeviceHandle = CreateFile(DeviceData->DevicePath,GENERIC_WRITE | GENERIC_READ,FILE_SHARE_WRITE | FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,NULL);if (INVALID_HANDLE_VALUE == DeviceData->DeviceHandle) {hr = HRESULT_FROM_WIN32(GetLastError());return hr;}bResult = WinUsb_Initialize(DeviceData->DeviceHandle,&DeviceData->WinusbHandle);if (FALSE == bResult) {hr = HRESULT_FROM_WIN32(GetLastError());CloseHandle(DeviceData->DeviceHandle);return hr;}DeviceData->HandlesOpen = TRUE;return hr; }VOID CloseDevice(_Inout_ PDEVICE_DATA DeviceData) /*++Routine description:Perform required cleanup when the device is no longer needed.If OpenDevice failed, do nothing.Arguments:DeviceData - Struct filled in by OpenDeviceReturn value:None--*/ {if (FALSE == DeviceData->HandlesOpen) {//// Called on an uninitialized DeviceData//return;}WinUsb_Free(DeviceData->WinusbHandle);CloseHandle(DeviceData->DeviceHandle);DeviceData->HandlesOpen = FALSE;return; } //下面的OSR_DEVICE_INTERFACE是從牛橋的pc端軟件copy過來的 static const GUID OSR_DEVICE_INTERFACE ={ 0x1f4911f2, 0xc55d, 0x4561, { 0x98, 0x7a, 0xbc, 0xfa, 0x74, 0xd5, 0xbb, 0x6d } };HRESULT RetrieveDevicePath(_Out_bytecap_(BufLen) LPTSTR DevicePath,_In_ ULONG BufLen,_Out_opt_ PBOOL FailureDeviceNotFound) /*++Routine description:Retrieve the device path that can be used to open the WinUSB-based device.If multiple devices have the same device interface GUID, there is noguarantee of which one will be returned.Arguments:DevicePath - On successful return, the path of the device (use with CreateFile).BufLen - The size of DevicePath's buffer, in bytesFailureDeviceNotFound - TRUE when failure is returned due to no devicesfound with the correct device interface (device not connected, drivernot installed, or device is disabled in Device Manager); FALSEotherwise.Return value:HRESULT--*/ {BOOL bResult = FALSE;HDEVINFO deviceInfo;SP_DEVICE_INTERFACE_DATA interfaceData;PSP_DEVICE_INTERFACE_DETAIL_DATA detailData = NULL;ULONG length;ULONG requiredLength=0;HRESULT hr;if (NULL != FailureDeviceNotFound) {*FailureDeviceNotFound = FALSE;}printf("RetrieveDevicePath \n");//// Enumerate all devices exposing the interface///*deviceInfo = SetupDiGetClassDevs(&GUID_DEVINTERFACE_USBApplication1,NULL,NULL,DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);*/deviceInfo = SetupDiGetClassDevs(&OSR_DEVICE_INTERFACE,NULL,NULL,DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);if (deviceInfo == INVALID_HANDLE_VALUE) {hr = HRESULT_FROM_WIN32(GetLastError());return hr;}interfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);//// Get the first interface (index 0) in the result set//bResult = SetupDiEnumDeviceInterfaces(deviceInfo,NULL,&OSR_DEVICE_INTERFACE,0,&interfaceData);if (FALSE == bResult) {//// We would see this error if no devices were found//if (ERROR_NO_MORE_ITEMS == GetLastError() &&NULL != FailureDeviceNotFound) {*FailureDeviceNotFound = TRUE;}hr = HRESULT_FROM_WIN32(GetLastError());SetupDiDestroyDeviceInfoList(deviceInfo);return hr;}//// Get the size of the path string// We expect to get a failure with insufficient buffer//bResult = SetupDiGetDeviceInterfaceDetail(deviceInfo,&interfaceData,NULL,0,&requiredLength,NULL);if (FALSE == bResult && ERROR_INSUFFICIENT_BUFFER != GetLastError()) {hr = HRESULT_FROM_WIN32(GetLastError());SetupDiDestroyDeviceInfoList(deviceInfo);return hr;}//// Allocate temporary space for SetupDi structure//detailData = (PSP_DEVICE_INTERFACE_DETAIL_DATA)LocalAlloc(LMEM_FIXED, requiredLength);if (NULL == detailData){hr = E_OUTOFMEMORY;SetupDiDestroyDeviceInfoList(deviceInfo);return hr;}detailData->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA);length = requiredLength;//// Get the interface's path string//bResult = SetupDiGetDeviceInterfaceDetail(deviceInfo,&interfaceData,detailData,length,&requiredLength,NULL);if(FALSE == bResult){hr = HRESULT_FROM_WIN32(GetLastError());LocalFree(detailData);SetupDiDestroyDeviceInfoList(deviceInfo);return hr;}//// Give path to the caller. SetupDiGetDeviceInterfaceDetail ensured// DevicePath is NULL-terminated.//hr = StringCbCopy(DevicePath,BufLen,detailData->DevicePath);LocalFree(detailData);SetupDiDestroyDeviceInfoList(deviceInfo);return hr; }

其中下面這句話比較關鍵是和驅動配合使用的:

//下面的OSR_DEVICE_INTERFACE是從牛橋的pc端軟件copy過來的 static const GUID OSR_DEVICE_INTERFACE ={ 0x1f4911f2, 0xc55d, 0x4561, { 0x98, 0x7a, 0xbc, 0xfa, 0x74, 0xd5, 0xbb, 0x6d } };

文件:device.h

// // Define below GUIDs // #include <initguid.h>// // Device Interface GUID. // Used by all WinUsb devices that this application talks to. // Must match "DeviceInterfaceGUIDs" registry value specified in the INF file. // cce59234-f9f6-43c8-9007-a61e760fb59f ////DEFINE_GUID(GUID_DEVINTERFACE_USBApplication1, // 0xcce59234,0xf9f6,0x43c8,0x90,0x07,0xa6,0x1e,0x76,0x0f,0xb5,0x9f);//下面這句話沒有用到 DEFINE_GUID(GUID_DEVINTERFACE_USBApplication1,0x1f4911f2, 0xc55d, 0x4561, 0x98, 0x7a, 0xbc, 0xfa, 0x74, 0xd5, 0xbb, 0x6d);typedef struct _DEVICE_DATA {BOOL HandlesOpen;WINUSB_INTERFACE_HANDLE WinusbHandle;HANDLE DeviceHandle;TCHAR DevicePath[MAX_PATH];} DEVICE_DATA, *PDEVICE_DATA;HRESULT OpenDevice(_Out_ PDEVICE_DATA DeviceData,_Out_opt_ PBOOL FailureDeviceNotFound);VOID CloseDevice(_Inout_ PDEVICE_DATA DeviceData);

文件:pch.h

#include <Windows.h> #include <tchar.h> #include <strsafe.h> #include <winusb.h> #include <usb.h>#include "device.h"

將nu_bridge_simple.cpp中的所有內容刪掉:
替換為如下內容:

// nu_bridge_simple.cpp : 定義控制臺應用程序的入口點。 // //#include "stdafx.h"#include "pch.h"#include <stdio.h>LONG __cdecl _tmain( LONG Argc, LPTSTR * Argv ) /*++Routine description:Sample program that communicates with a USB device using WinUSB--*/ {DEVICE_DATA deviceData;HRESULT hr;USB_DEVICE_DESCRIPTOR deviceDesc;BOOL bResult;BOOL noDevice;ULONG lengthReceived;UNREFERENCED_PARAMETER(Argc);UNREFERENCED_PARAMETER(Argv);//// Find a device connected to the system that has WinUSB installed using our// INF//hr = OpenDevice(&deviceData, &noDevice);if (FAILED(hr)) {if (noDevice) {printf("Device not connected or driver not installed\n");}else {printf("Failed looking for device, HRESULT 0x%x\n", hr);}return 0;}//// Get device descriptor//bResult = WinUsb_GetDescriptor(deviceData.WinusbHandle,USB_DEVICE_DESCRIPTOR_TYPE,0,0,(PBYTE)&deviceDesc,sizeof(deviceDesc),&lengthReceived);if (FALSE == bResult || lengthReceived != sizeof(deviceDesc)) {printf("Error among LastError %d or lengthReceived %d\n",FALSE == bResult ? GetLastError() : 0,lengthReceived);CloseDevice(&deviceData);return 0;}//// Print a few parts of the device descriptor//printf("Device found: VID_%04X&PID_%04X; bcdUsb %04X\n",deviceDesc.idVendor,deviceDesc.idProduct,deviceDesc.bcdUSB);getchar();CloseDevice(&deviceData);return 0; }

添加完文件之后,需要添加庫:

添加的庫的名稱是:
winusb.lib
setupapi.lib

將牛橋插入PC 的usb端口,然后編譯程序,然后執行

運行效果如下:

RetrieveDevicePath Device found: VID_0416&PID_3101; bcdUsb 0110

然后按下鍵盤任意鍵,退出程序。

參考內容:
1.How to Access a USB Device by Using WinUSB Functions
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/usbcon/using-winusb-api-to-communicate-with-a-usb-device

2.Write a Windows desktop app based on the WinUSB template
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/usbcon/how-to-write-a-windows-desktop-app-that-communicates-with-a-usb-device

3.How to Access a USB Device by Using WinUSB Functions
https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/using-winusb-api-to-communicate-with-a-usb-device

參考軟件:

[0508] NuBridge SW/NuBridge.exe 源碼 vs2008 MFC

繼續:
將nu_bridge_simple.cpp中的所有內容刪掉:
替換為如下內容:

// nu_bridge_simple.cpp : 定義控制臺應用程序的入口點。 // //#include "stdafx.h"#include "pch.h"#include <stdio.h>int NU_SetDeviceSpiMasteMode(_In_ WINUSB_INTERFACE_HANDLE InterfaceHandle) {WINUSB_SETUP_PACKET SetupPacket;SetupPacket.RequestType = 0x42;SetupPacket.Request = 1;SetupPacket.Value = 0;SetupPacket.Index = 0;SetupPacket.Length = 0;WinUsb_ControlTransfer(InterfaceHandle, SetupPacket, 0, 0, NULL, 0);return 0; }int NU_SetDeviceLED(_In_ WINUSB_INTERFACE_HANDLE InterfaceHandle) {WINUSB_SETUP_PACKET SetupPacket;SetupPacket.RequestType = 0x40;SetupPacket.Request = 0;SetupPacket.Value = 0;SetupPacket.Index = 0;SetupPacket.Length = 0;printf("NU_SetDeviceLED\n");WinUsb_ControlTransfer(InterfaceHandle, SetupPacket, 0, 0, NULL, 0);return TRUE; }BOOL GetUSBDeviceSpeed(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pDeviceSpeed) {if (!pDeviceSpeed || hDeviceHandle == INVALID_HANDLE_VALUE){return FALSE;}BOOL bResult = TRUE;ULONG length = sizeof(UCHAR);bResult = WinUsb_QueryDeviceInformation(hDeviceHandle, DEVICE_SPEED, &length, pDeviceSpeed);if (!bResult){printf("Error getting device speed: %d.\n", GetLastError());goto done;}if (*pDeviceSpeed == LowSpeed){printf("Device speed: %d (Low speed).\n", *pDeviceSpeed);goto done;}if (*pDeviceSpeed == FullSpeed){printf("Device speed: %d (Full speed).\n", *pDeviceSpeed);goto done;}if (*pDeviceSpeed == HighSpeed){printf("Device speed: %d (High speed).\n", *pDeviceSpeed);goto done;}done:return bResult; }struct PIPE_ID {UCHAR PipeInId;UCHAR PipeOutId; };BOOL QueryDeviceEndpoints(WINUSB_INTERFACE_HANDLE hDeviceHandle, PIPE_ID* pipeid) {if (hDeviceHandle == INVALID_HANDLE_VALUE){return FALSE;}BOOL bResult = TRUE;USB_INTERFACE_DESCRIPTOR InterfaceDescriptor;ZeroMemory(&InterfaceDescriptor, sizeof(USB_INTERFACE_DESCRIPTOR));WINUSB_PIPE_INFORMATION Pipe;ZeroMemory(&Pipe, sizeof(WINUSB_PIPE_INFORMATION));bResult = WinUsb_QueryInterfaceSettings(hDeviceHandle, 0, &InterfaceDescriptor);if (bResult){for (int index = 0; index < InterfaceDescriptor.bNumEndpoints; index++){bResult = WinUsb_QueryPipe(hDeviceHandle, 0, index, &Pipe);if (bResult){if (Pipe.PipeType == UsbdPipeTypeControl){printf("Endpoint index: %d Pipe type: Control Pipe ID: %d.\n", index, Pipe.PipeType, Pipe.PipeId);}if (Pipe.PipeType == UsbdPipeTypeIsochronous){printf("Endpoint index: %d Pipe type: Isochronous Pipe ID: %d.\n", index, Pipe.PipeType, Pipe.PipeId);}if (Pipe.PipeType == UsbdPipeTypeBulk){if (USB_ENDPOINT_DIRECTION_IN(Pipe.PipeId)){printf("Endpoint index: %d Pipe type: Bulk Pipe ID: %c.\n", index, Pipe.PipeType, Pipe.PipeId);pipeid->PipeInId = Pipe.PipeId;}if (USB_ENDPOINT_DIRECTION_OUT(Pipe.PipeId)){printf("Endpoint index: %d Pipe type: Bulk Pipe ID: %c.\n", index, Pipe.PipeType, Pipe.PipeId);pipeid->PipeOutId = Pipe.PipeId;}}if (Pipe.PipeType == UsbdPipeTypeInterrupt){printf("Endpoint index: %d Pipe type: Interrupt Pipe ID: %d.\n", index, Pipe.PipeType, Pipe.PipeId);}}else{continue;}}}done:return bResult; }BOOL SendDatatoDefaultEndpoint(WINUSB_INTERFACE_HANDLE hDeviceHandle) {if (hDeviceHandle == INVALID_HANDLE_VALUE){return FALSE;}BOOL bResult = TRUE;UCHAR bars = 0;WINUSB_SETUP_PACKET SetupPacket;ZeroMemory(&SetupPacket, sizeof(WINUSB_SETUP_PACKET));ULONG cbSent = 0;//Set bits to light alternate barsfor (short i = 0; i < 7; i += 2){bars += 1 << i;}//Create the setup packetSetupPacket.RequestType = 0;SetupPacket.Request = 0xD8;SetupPacket.Value = 0;SetupPacket.Index = 0;SetupPacket.Length = sizeof(UCHAR);bResult = WinUsb_ControlTransfer(hDeviceHandle, SetupPacket, &bars, sizeof(UCHAR), &cbSent, 0);if (!bResult){goto done;}printf("Data sent: %d \nActual data transferred: %d.\n", sizeof(bars), cbSent);done:return bResult;}BOOL NU_WritePipe(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pID,UCHAR *buf, ULONG len) {printf("NU_WritePipe\n");ULONG nBytesSent = 0;if (hDeviceHandle == INVALID_HANDLE_VALUE || !pID ){return FALSE;}nBytesSent = 0;WinUsb_WritePipe(hDeviceHandle, *pID, buf, len, &nBytesSent, 0);if (nBytesSent != len){return FALSE;}return TRUE; }BOOL Nu_WriteCmd(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pID) {UCHAR data[] = { 0x01,0x01,0x53 ,0x01 ,0x00 ,0x00 ,0x08 ,0x06 ,0x90 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x50 };NU_WritePipe(hDeviceHandle, pID,data,15);UCHAR tag[] = { 0x00, 0x01 };NU_WritePipe(hDeviceHandle, pID, tag, 2);return TRUE; }ULONG NU_ReadPipe(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pID, UCHAR *buf, ULONG len) {ULONG nBytesRead = 0;printf("NU_ReadPipe\n");WinUsb_ReadPipe(hDeviceHandle, *pID, (unsigned char*)buf, len, &nBytesRead, 0);return nBytesRead; }BOOL Nu_ReadCmd(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pID) { UCHAR data[64];int len;int i;memset(data, 0, 64);len = NU_ReadPipe(hDeviceHandle, pID, data,64);printf("Nu_ReadCmd len= %d\n", len);for (i = 0; i < len; i++){printf("%x,", data[i]);}printf("\n");return TRUE; }BOOL NuWriteToBulkEndpoint(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pID, ULONG* pcbWritten) {if (hDeviceHandle == INVALID_HANDLE_VALUE || !pID || !pcbWritten){return FALSE;}BOOL bResult = TRUE;UCHAR szBuffer[] = "Hello World";ULONG cbSize = strlen((const char *)szBuffer);ULONG cbSent = 0;bResult = WinUsb_WritePipe(hDeviceHandle, *pID, szBuffer, cbSize, &cbSent, 0);if (!bResult){goto done;}printf("Wrote to pipe %d: %s \nActual data transferred: %d.\n", *pID, szBuffer, cbSent);*pcbWritten = cbSent;done:return bResult;}BOOL WriteToBulkEndpoint(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pID, ULONG* pcbWritten) {if (hDeviceHandle == INVALID_HANDLE_VALUE || !pID || !pcbWritten){return FALSE;}BOOL bResult = TRUE;UCHAR szBuffer[] = "Hello World";ULONG cbSize = strlen((const char *)szBuffer);ULONG cbSent = 0;bResult = WinUsb_WritePipe(hDeviceHandle, *pID, szBuffer, cbSize, &cbSent, 0);if (!bResult){goto done;}printf("Wrote to pipe %d: %s \nActual data transferred: %d.\n", *pID, szBuffer, cbSent);*pcbWritten = cbSent;done:return bResult;}BOOL ReadFromBulkEndpoint(WINUSB_INTERFACE_HANDLE hDeviceHandle, UCHAR* pID, ULONG cbSize) {if (hDeviceHandle == INVALID_HANDLE_VALUE){return FALSE;}BOOL bResult = TRUE;UCHAR* szBuffer = (UCHAR*)LocalAlloc(LPTR, sizeof(UCHAR)*cbSize);ULONG cbRead = 0;bResult = WinUsb_ReadPipe(hDeviceHandle, *pID, szBuffer, cbSize, &cbRead, 0);if (!bResult){goto done;}printf("Read from pipe %d: %s \nActual data read: %d.\n", *pID, szBuffer, cbRead);done:LocalFree(szBuffer);return bResult;}int _tmain(int argc, _TCHAR* argv[]) {DEVICE_DATA deviceData;HRESULT hr;USB_DEVICE_DESCRIPTOR deviceDesc;BOOL noDevice;ULONG lengthReceived;BOOL bResult = TRUE;PIPE_ID PipeID;HANDLE hDeviceHandle = INVALID_HANDLE_VALUE;WINUSB_INTERFACE_HANDLE hWinUSBHandle = INVALID_HANDLE_VALUE;UCHAR DeviceSpeed;ULONG cbSize = 0;UNREFERENCED_PARAMETER(argc);UNREFERENCED_PARAMETER(argv);//// Find a device connected to the system that has WinUSB installed using our// INF//hr = OpenDevice(&deviceData, &noDevice);if (FAILED(hr)) {if (noDevice) {printf("Device not connected or driver not installed\n");}else {printf("Failed looking for device, HRESULT 0x%x\n", hr);}return 0;}hWinUSBHandle = deviceData.WinusbHandle;hDeviceHandle = deviceData.DeviceHandle;bResult = GetUSBDeviceSpeed(hWinUSBHandle, &DeviceSpeed);if(!bResult){goto done;}bResult = QueryDeviceEndpoints(hWinUSBHandle, &PipeID);if(!bResult){goto done;}#if 0bResult = NU_SetDeviceLED(hWinUSBHandle);if(!bResult){goto done;} #endifprintf("PipeID.PipeInId = %d\n", PipeID.PipeInId);printf("PipeID.PipeOutId = %d\n", PipeID.PipeOutId);NU_SetDeviceSpiMasteMode(hWinUSBHandle);Nu_WriteCmd(hWinUSBHandle, &PipeID.PipeOutId);Nu_ReadCmd(hWinUSBHandle, &PipeID.PipeInId);system("PAUSE");done:CloseHandle(hDeviceHandle);WinUsb_Free(hWinUSBHandle);return 0; }

運行效果:

RetrieveDevicePath Device speed: 1 (Low speed). Endpoint index: 0 Pipe type: Bulk Pipe ID: Endpoint index: 1 Pipe type: Bulk Pipe ID: PipeID.PipeInId = 132 PipeID.PipeOutId = 5 NU_WritePipe NU_WritePipe NU_ReadPipe Nu_ReadCmd len= 10 1,0,6,0,ff,ff,ff,ff,51,14, 請按任意鍵繼續. . .

End

總結

以上是生活随笔為你收集整理的vc2013 开发 winusb 简单测试程序 基于 nu_bridge的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

免费大片黄在线 | 久久久久综合精品福利啪啪 | 国产精品手机在线观看 | 久久久免费精品视频 | 免费看一级黄色 | 99热这里只有精品免费 | 中文字幕一区在线 | 国产精品成人久久久 | 久草香蕉在线视频 | 日韩 精品 一区 国产 麻豆 | 欧美日韩免费在线观看视频 | 国产精品一区二区在线观看 | 黄a网 | 国产中文字幕网 | 久久免费99精品久久久久久 | 天天视频色| 久久久不卡影院 | 五月天综合网站 | 久草在在线| 亚州视频在线 | 亚洲黄网站 | 久久乐九色婷婷综合色狠狠182 | 国产精品久久久视频 | 99久久精品午夜一区二区小说 | 五月天亚洲婷婷 | 亚洲国产成人高清精品 | 欧美国产日韩一区 | 国产精品综合久久久久久 | 久草网站在线观看 | 久热色超碰 | 亚洲人成人在线 | 国产一级片免费播放 | 色婷婷骚婷婷 | a v在线观看 | 久久手机免费观看 | 久久人网| 成人蜜桃网 | 久久综合狠狠狠色97 | 色www.| 久黄色 | 99久久精品国产欧美主题曲 | 免费观看的黄色片 | 最近中文字幕免费大全 | 日韩一区二区三区在线观看 | 欧美乱码精品一区二区 | 欧美黄在线| 日韩精品综合在线 | 国产精品女人久久久久久 | 国产精品手机看片 | www日日| 91污污视频在线观看 | 中文字幕一区二区三区在线播放 | 色视频 在线| 欧美激情第一页xxx 午夜性福利 | 久久久久久综合 | 精品久久久亚洲 | 亚洲一级黄色av | 日韩中文字幕在线观看 | 青青河边草观看完整版高清 | 亚洲乱码国产乱码精品天美传媒 | 日韩小视频 | 久久人人爽 | 五月婷婷六月丁香 | 久草免费在线观看视频 | 天天操夜夜操夜夜操 | 欧美怡红院视频 | 欧美a级片免费看 | 亚洲国产剧情 | 亚洲区另类春色综合小说 | 国产成人在线观看 | 日日夜色| 人人干97 | 六月天综合网 | 夜夜爱av | 永久免费精品视频 | 在线免费观看黄色av | 国产精品v欧美精品 | 欧美经典久久 | 亚洲精品国产精品国自产观看浪潮 | av免费在线免费观看 | 精品国产电影一区二区 | 97免费在线观看视频 | 99国产精品免费网站 | 国产69精品久久久久久久久久 | 怡红院av久久久久久久 | 视频一区二区视频 | 人人插人人费 | 国产精品99在线播放 | 免费在线一区二区 | 玖玖视频网 | 激情五月婷婷激情 | 亚洲精欧美一区二区精品 | 亚洲一区二区视频 | 91片黄在线观 | 99久久精品免费看国产免费软件 | 国产九九精品 | 能在线观看的日韩av | 国产一区视频在线观看免费 | 日韩有码欧美 | av免费网页 | 欧美一区日韩一区 | 日本h视频在线观看 | 亚洲乱码精品久久久久 | 在线观看黄av | 最新av网址在线 | 国产福利中文字幕 | 国产成人一区二区三区在线观看 | 97热久久免费频精品99 | 欧美91精品 | 91成人精品一区在线播放 | 精品在线看 | av大片免费看 | 婷婷色影院 | 欧美不卡视频在线 | 91在线视频 | 丁香视频免费观看 | 欧美激情综合网 | 欧美精品在线观看免费 | 中国老女人日b | 91看片在线播放 | 日日夜夜人人精品 | 成人午夜电影久久影院 | 国产精品女 | 国产视频在线观看免费 | 成人欧美一区二区三区黑人麻豆 | 久久国产免费视频 | 久草精品在线观看 | 狠狠干成人 | 成人在线电影观看 | 精品免费视频. | 欧美整片sss| 亚洲精品电影在线 | 亚洲婷婷综合色高清在线 | 国产a国产a国产a | 中文字幕日本特黄aa毛片 | 91精品国产99久久久久 | 国产精品美女久久久久久2018 | 久久美女高清视频 | 久久艹在线 | 精品国产区在线 | 日本三级不卡视频 | 中文字幕高清有码 | 国产精品久久av | 成人av一二三区 | 国产精品国产三级国产aⅴ入口 | 成人免费看电影 | 亚洲午夜不卡 | 99久久精品免费看国产一区二区三区 | 激情综合啪 | 国产精品丝袜在线 | 97成人精品| 亚洲aⅴ乱码精品成人区 | 日本最新中文字幕 | 亚洲一区二区三区精品在线观看 | 免费69视频 | 欧美嫩草影院 | www.色午夜,com| 亚洲精品久久久蜜桃直播 | 免费日韩视频 | 日韩一级电影在线 | 九九天堂| 久久久久久久网 | 成人欧美一区二区三区在线观看 | 欧美另类网站 | 成人av网站在线 | 日日夜夜精品网站 | 免费看黄20分钟 | 日韩av成人免费看 | 日韩在线观看一区二区 | 国产成人av | 91亚洲在线观看 | 美女网色 | 免费黄色网止 | 五月婷婷色| 久久久亚洲国产精品麻豆综合天堂 | 天天色天天操综合 | 人人爽人人澡 | 成人理论电影 | 亚洲一区免费在线 | 久久视屏网 | 日韩在线免费观看视频 | 国产麻豆精品久久 | 天天综合色天天综合 | japanese黑人亚洲人4k | 亚洲成人一二三 | 亚洲成av人影院 | 日韩欧美在线国产 | 在线a人片免费观看视频 | 国产伦理久久精品久久久久_ | 黄色软件视频网站 | 久久综合久久综合久久 | 97碰视频| a黄色大片| 国产成人777777 | 亚洲专区一二三 | 国产精品一区久久久久 | 国产粉嫩在线 | 久久亚洲人 | 亚洲va综合va国产va中文 | 国产精品一区二区av日韩在线 | 久草网站在线观看 | 日韩系列| 亚洲区视频在线 | 日韩精品一区二区电影 | 天天爱天天草 | 久草视频手机在线 | 欧美黄色高清 | 中文字幕你懂的 | 丰满少妇在线观看 | 久久精品美女视频网站 | 超碰97国产精品人人cao | 激情av在线资源 | 久久综合成人 | 草在线视频 | 97在线看片| 91视频3p| 亚洲电影av在线 | 在线有码中文字幕 | 中文在线a天堂 | 精品国产自在精品国产精野外直播 | 久青草国产在线 | 色综合亚洲精品激情狠狠 | 成年人视频在线 | 日韩美女久久 | 丁香花中文字幕 | avwww在线观看| 在线免费观看国产黄色 | 国产精品12 | 中文字幕在线免费97 | 久久99精品久久久久久久久久久久 | 久草视频观看 | 国产特级毛片aaaaaa毛片 | 国产精品美女久久久久久久久久久 | 亚洲精品永久免费视频 | 午夜视频久久久 | 色综合久久综合 | 国产 在线 高清 精品 | 久久不卡免费视频 | 亚洲夜夜综合 | 九九视频网站 | 亚洲精品免费在线播放 | 97在线观看免费高清完整版在线观看 | 日本三级不卡视频 | 亚洲精品美女久久17c | 精品视频9999 | 91伊人影院| 91一区二区三区久久久久国产乱 | 色多多污污 | 一级黄色片在线免费看 | 色综合久久五月 | 精品播放| 亚洲毛片久久 | 五月婷婷激情综合网 | 97超碰精品 | 91九色网址 | 天天操天天色综合 | 欧洲精品亚洲精品 | avwww在线观看 | 日韩视频中文字幕在线观看 | 国产高清精品在线观看 | 国产精品久久久久久久久久直播 | 在线国产激情视频 | 九九热99视频 | 91女人18片女毛片60分钟 | 免费看片日韩 | 色网站在线免费 | 精品久久网站 | 9在线观看免费高清完整版 玖玖爱免费视频 | 久久久久日本精品一区二区三区 | 99亚洲精品在线 | 亚洲全部视频 | 日韩一级黄色av | 在线看片视频 | 中文字幕在线观看播放 | 91精选在线观看 | 日本久久久久久 | av免费线看 | 欧美伦理一区 | 在线中文字幕一区二区 | 人人插人人费 | 日韩一区二区三区视频在线 | 91免费国产在线观看 | 91一区二区三区在线观看 | 在线观看亚洲精品视频 | 国产成人精品电影久久久 | 特黄一级毛片 | 久久精品—区二区三区 | 亚洲精品美女久久久久网站 | 日韩成人精品在线观看 | 91毛片在线观看 | 日韩在线短视频 | 国产乱码精品一区二区三区介绍 | 色播六月天 | 国产97视频 | 国产色资源 | 97视频免费在线 | 狠狠操.com| 国产成年免费视频 | 综合色综合 | 国产午夜视频在线观看 | 91精选 | 精品99久久| 日色在线视频 | 一级黄色片在线观看 | 免费激情网 | 亚洲综合在线发布 | 中文字幕在线免费看线人 | 色七七亚洲影院 | 中文字幕第一页在线 | 在线天堂v | 麻豆激情电影 | 91黄色在线观看 | 成人免费视频视频在线观看 免费 | 欧美精品九九99久久 | 99久久久成人国产精品 | 亚洲三级av | 久久免费成人精品视频 | 免费国产在线视频 | 日韩精品一区二区三区免费观看 | 日韩精品无 | 天天操天天插 | 亚洲最新av网址 | 中文av免费 | 日韩视频二区 | 欧美一级特黄高清视频 | 91精品一区二区在线观看 | 97碰在线视频| 日韩在线观看精品 | 色网av | 久久综合久色欧美综合狠狠 | 免费日韩高清 | 久久久久亚洲精品 | 国产无吗一区二区三区在线欢 | 黄色av成人在线 | 天天草网站 | 在线观看av不卡 | 欧美日韩高清一区二区 | 国产一区自拍视频 | 国产剧情在线一区 | 国产一级黄大片 | 国产成人精品在线观看 | 国产成人在线观看免费 | 免费看亚洲毛片 | 久久美女高清视频 | 久久精品第一页 | 在线午夜电影神马影院 | 碰天天操天天 | 亚洲国产精品成人av | 中文av网 | 亚洲人成在线观看 | 日本在线视频一区二区三区 | 日本中出在线观看 | 国产麻豆电影在线观看 | 一区二区欧美激情 | 精品久久99 | www.夜夜爱| www久久久 | 国产精品99久久久久人中文网介绍 | 久久久久伊人 | 国产成人精品av在线 | 亚洲尺码电影av久久 | 午夜精品一区二区三区在线播放 | 成人在线播放网站 | 99热精品视 | 中文字幕日韩在线播放 | 91av电影网 | 瑞典xxxx性hd极品 | 国产最新福利 | 99久久精品免费看国产麻豆 | 久久久国产一区二区三区 | 欧美婷婷综合 | 免费在线观看污网站 | 欧美日韩裸体免费视频 | 成人aaa毛片| 亚洲成aⅴ人片久久青草影院 | 亚洲精品午夜久久久久久久久久久 | 午夜精品视频福利 | 免费在线成人av | 99国产视频在线 | 精品日韩在线一区 | 色之综合网 | 成人在线视频论坛 | 中文av日韩 | 国产特级毛片aaaaaa高清 | 日韩手机视频 | 五月综合久久 | 国产成人一区二 | 欧美国产在线看 | 色综合久久88色综合天天 | 日本高清免费中文字幕 | 97在线观| 日本h视频在线观看 | av电影中文字幕 | 夜夜看av| 久久久国产精品电影 | 亚洲视屏在线播放 | 色综合天天综合网国产成人网 | 欧美极品久久 | 欧美精品在线免费 | 国产中文在线观看 | 在线免费高清视频 | 探花视频在线观看免费 | 香蕉网在线观看 | 人人干人人搞 | 国产污视频在线观看 | 成人国产电影在线观看 | 97看片网| av在线网站大全 | 国产在线综合视频 | 亚洲激情中文 | 国产精品免费视频一区二区 | 天天干,夜夜爽 | 亚洲国产小视频在线观看 | 国产一区二区三区免费在线观看 | 97小视频 | 久久国内精品99久久6app | 久久久久久亚洲精品 | 黄污视频网站大全 | 免费福利片2019潦草影视午夜 | 亚洲欧美成人 | 久久久香蕉视频 | 久久毛片网站 | 就要色综合 | 夜夜躁狠狠躁日日躁视频黑人 | 精品国产综合区久久久久久 | 国产一级黄色片免费看 | 亚洲一级黄色大片 | 中文字幕在线观看视频一区二区三区 | 国产玖玖精品视频 | 亚洲国产激情 | 国产一级二级在线播放 | 久久久久这里只有精品 | 亚洲精品国产综合久久 | 人人爱在线视频 | 成人黄视频 | 9999激情| 99久久精品国产一区二区三区 | 色中射 | 美女网站黄免费 | 不卡av在线播放 | 欧美日韩视频免费 | 嫩草av在线 | av黄色亚洲 | 国产免费专区 | 久久久午夜精品福利内容 | 国内精品毛片 | 在线国产专区 | 偷拍视频一区 | 天天干亚洲 | 久久久久久久18 | 久久久在线观看 | 夜夜躁狠狠躁日日躁视频黑人 | 黄网站免费大全入口 | 国产亚洲免费观看 | www.久久久 | 一区二区三区电影在线播 | 国产福利一区二区在线 | 久久国产精品久久久 | 高潮久久久久久 | 免费男女羞羞的视频网站中文字幕 | 97超视频免费观看 | 麻豆91视频| 成人黄色小说视频 | 在线色亚洲| 久久精品视频一 | 国产一区二区三区 在线 | 免费毛片一区二区三区久久久 | av.com在线 | 国产久草在线 | 国产福利91精品 | 免费在线观看日韩视频 | 亚洲国产偷 | 91日韩精品一区 | 色婷婷av一区二 | 一级黄色片在线免费观看 | 日韩国产精品一区 | 日日夜操 | www.天天草| 国产精品一区二区三区免费视频 | 国产热re99久久6国产精品 | 丰满少妇在线观看 | 夜夜操夜夜干 | 久久免费视频播放 | 免费无遮挡动漫网站 | 在线观看视频精品 | 欧美日韩中文另类 | 不卡的av在线 | 91亚洲精品乱码久久久久久蜜桃 | 噜噜色官网 | 伊人精品在线 | 久久精品3 | 日韩在线免费播放 | 最近2019年日本中文免费字幕 | 成人免费观看在线视频 | 久操久 | 天天草天天 | 丁香婷婷激情国产高清秒播 | 69av视频在线 | 日韩理论电影网 | 97夜夜澡人人双人人人喊 | 日韩高清免费在线观看 | 亚洲国产网站 | 天天做日日做天天爽视频免费 | 98精品国产自产在线观看 | 精品一二三区视频 | 免费国产在线视频 | 欧美日韩在线免费视频 | 欧美一级艳片视频免费观看 | 免费高清在线观看成人 | www.天天干 | 黄色在线观看免费网站 | 亚洲一区二区三区91 | 天天干天天做 | 人人草人| 中文字幕一区二区在线观看 | 日日夜夜网站 | 国产成人香蕉 | 免费观看的黄色片 | 日韩精品一区二区在线视频 | 日韩在线精品 | 亚洲少妇激情 | 最近高清中文字幕在线国语5 | 91人人澡人人爽人人精品 | av免费在线观 | 91久久国产自产拍夜夜嗨 | 国产一区二区高清不卡 | 久久久伦理 | 国产91成人 | 久精品视频在线观看 | a一片一级| 亚洲欧美视频在线观看 | 少妇bbbb揉bbbb日本 | 视频在线播放国产 | 人人干狠狠操 | 日韩高清黄色 | 九九热在线免费观看 | 精品久久久久久亚洲综合网站 | 免费av福利 | 欧美日韩伦理在线 | 日韩成人黄色av | 美女视频黄的免费的 | 日韩二区在线播放 | 五月综合网站 | 久久久亚洲麻豆日韩精品一区三区 | 在线播放精品一区二区三区 | 丁香婷婷网 | 啪啪凸凸 | 丁香婷婷综合激情 | 色网站国产精品 | 久久精品8 | 久久久久久久久久电影 | 天天干夜夜夜操天 | 亚洲一区二区精品在线 | 欧美日韩高清免费 | 97精品超碰一区二区三区 | 国产精品18久久久久久不卡孕妇 | 天天色天天操天天爽 | 日韩高清精品一区二区 | 亚洲精品tv久久久久久久久久 | 国产精品 日本 | 国产三级香港三韩国三级 | 国产一级视频在线观看 | 国产成人精品久久久 | 国产精品精品国产婷婷这里av | 国产伦理精品一区二区 | 国产视频91在线 | 久久久国产精品电影 | 在线91视频 | 久青草国产在线 | 精品久久网 | 成人午夜剧场在线观看 | 免费av网站在线看 | 久久色视频 | 午夜精品一区二区三区在线播放 | 久久国产手机看片 | 欧美极度另类 | 久久99精品国产一区二区三区 | 激情av五月婷婷 | www.色综合.com| 91成品人影院 | av在线免费网站 | 在线激情av电影 | 亚洲乱码在线观看 | 成人在线观看免费视频 | 久久午夜精品影院一区 | 亚洲人成影院在线 | 欧美aaa一级 | 高清在线一区二区 | 亚洲一区美女视频在线观看免费 | 在线免费观看国产精品 | 91原创在线观看 | 中文 一区二区 | 日韩亚洲欧美中文字幕 | 天天操天操 | 亚洲第一久久久 | 午夜久久久精品 | 国内精品国产三级国产aⅴ久 | 日韩一区二区三区高清在线观看 | 国产又粗又猛又色又黄网站 | 欧美污网站 | 2021国产精品 | 亚洲黄网址| 国产精品夜夜夜一区二区三区尤 | 国产视频手机在线 | 一级黄色片在线 | 最近2019年日本中文免费字幕 | 欧美日在线观看 | 区一区二区三区中文字幕 | 中文字幕在线免费看 | 午夜在线观看 | aaawww| 国产成人精品午夜在线播放 | 91精品国产三级a在线观看 | 国产精品中文 | 日韩在线观看视频中文字幕 | 99热免费在线 | 伊甸园av在线| 91av中文| 免费看黄色大全 | 国产精品麻豆99久久久久久 | 欧美一二三区播放 | 国产精品国产三级国产aⅴ入口 | 亚洲国产中文字幕在线视频综合 | 中文字幕在线看人 | 美女网站在线免费观看 | 91精品电影 | 日韩在线网址 | 人人草在线观看 | 成人国产精品久久久春色 | 免费看片黄色 | 免费在线观看一区 | 在线观看视频中文字幕 | 日韩a级黄色 | 九九久久久久久久久激情 | 欧美一区二区三区在线播放 | 91av欧美 | 2019精品手机国产品在线 | 久久久精品一区二区三区 | 91人人爽久久涩噜噜噜 | 九九日九九操 | 中文字幕一区二区三 | 日韩成人中文字幕 | 欧美精品一二 | 国产高清精品在线观看 | 国产日韩在线看 | 最近中文字幕国语免费高清6 | 国产黄色片久久久 | 久久久久久国产精品亚洲78 | 成年人黄色大片在线 | 久久夜夜爽 | 日韩大片在线观看 | 久久精品91久久久久久再现 | 国内精品久久久久久久久 | 精选久久 | 日韩激情综合 | 国产99视频在线观看 | 午夜精品福利一区二区 | 亚洲精品成人免费 | 日本在线免费看 | 超碰在线观看av | 亚洲综合射| 天天综合网在线观看 | 国产精品永久在线 | 国产又粗又猛又黄视频 | 成人影音在线 | 精品国产成人在线影院 | 中文字幕在线观看视频免费 | 中国成人一区 | 国产亚洲精品久久久久久久久久 | 国产91精品久久久久 | 日韩一级片大全 | 国产高清视频免费在线观看 | 人人舔人人插 | 国产成人在线综合 | 日本高清中文字幕有码在线 | 美女免费视频一区二区 | 亚洲永久精品在线观看 | 国产精品人人做人人爽人人添 | 99国产一区 | 欧美精品一区二区在线播放 | 九九热中文字幕 | 视频在线99re | 亚洲国产合集 | 精品国产视频一区 | 国产一线二线三线在线观看 | 一级黄色片在线播放 | 在线播放一区二区三区 | 99久久精品国产观看 | 91日韩精品 | 成年人app网址 | 在线成人免费电影 | 精品视频97| 国产精品久久一卡二卡 | av福利在线免费观看 | 久久99日韩| 色综合五月天 | 国产黄在线播放 | 久久国产精品99久久久久久丝袜 | 免费69视频 | 日韩高清在线一区二区三区 | 麻豆一区在线观看 | 日本不卡123 | 久久精品视频3 | 黄色小说免费在线观看 | 伊人www22综合色 | 五月的婷婷 | 国产伦精品一区二区三区高清 | 99亚洲视频| 国产传媒中文字幕 | 九九国产视频 | 久草视频免费播放 | 九九九电影免费看 | 99免费在线播放99久久免费 | 亚洲精品免费在线播放 | 日韩视频免费观看高清 | 久久一区精品 | www.色综合.com | 久久综合9988久久爱 | 久久久九色精品国产一区二区三区 | 亚洲激情一区二区三区 | 99热超碰 | 欧美91精品久久久久国产性生爱 | 天天综合成人 | 国产日韩一区在线 | 午夜黄色影院 | 日本99干网 | 久久国产露脸精品国产 | 久久蜜臀一区二区三区av | 色吊丝av中文字幕 | 欧美激情综合五月色丁香 | 欧美成人999 | 九九视频精品免费 | 五月香婷 | 中文字幕在线观看一区二区 | 美女在线免费观看视频 | 国产午夜亚洲精品 | 98久久| 精品久久久久久久久久国产 | 日韩av电影免费观看 | 成人一区在线观看 | 国产精品第一视频 | 国产生活一级片 | 日本精品视频免费观看 | 久久av免费 | 国产乱对白刺激视频在线观看女王 | 天天操天天拍 | 在线你懂 | wwwwww色| 丁香六月久久综合狠狠色 | 久久精品国产精品亚洲 | 樱空桃av| 91激情视频在线 | 久久久精品高清 | 韩国av在线播放 | 日韩三级免费 | 国产成人在线看 | 亚洲干视频在线观看 | 国产精品美女在线 | 狠狠久久伊人 | 久草视频在线免费 | 亚洲一区 av | 亚洲国产手机在线 | 国产美女视频免费 | 中文字幕免费播放 | 久草在线免费看视频 | 久久免费看视频 | 中文字幕成人网 | 午夜91在线| 97超碰人 | 97香蕉超级碰碰久久免费软件 | 天天插天天操天天干 | 国产精品久久一区二区三区, | 久久国产精品一区二区三区四区 | 亚洲在线激情 | 九九免费观看全部免费视频 | 欧美一级久久 | 韩国av不卡| 中文字幕亚洲国产 | 热久久精品在线 | 最新国产精品拍自在线播放 | 99视频精品免费观看, | 久久最新网址 | av综合在线观看 | 国产一区电影在线观看 | 色在线免费视频 | www.少妇| 成人av免费电影 | 九草在线观看 | 美女性爽视频国产免费app | av电影免费 | 国产在线播放不卡 | 色久综合 | 精品久久久久久久久久国产 | 国产精品你懂的在线观看 | 天天天天天天干 | 久久视频国产精品免费视频在线 | 日本成址在线观看 | www.午夜色.com | 亚洲精品资源在线观看 | 狠狠的干狠狠的操 | 中文字幕日韩有码 | 一区二区三区电影 | 蜜桃传媒一区二区 | 国产午夜精品久久 | 69国产盗摄一区二区三区五区 | 久久久久国产免费免费 | 亚洲视频在线免费看 | 午夜av一区 | 99视频偷窥在线精品国自产拍 | 成人精品影视 | 在线国产视频 | 婷婷在线免费 | 日韩欧美69 | 91精品视频在线看 | 国产成人精品亚洲a | 天天爱天天操 | 人人操日日干 | 久久伦理视频 | 午夜精品999 | 日本精品一区二区在线观看 | 另类五月激情 | 日本一区二区三区视频在线播放 | 欧美在线观看视频免费 | 免费观看91 | 亚洲精品玖玖玖av在线看 | 最新日韩中文字幕 | 国产一区免费观看 | 日韩一二三在线 | 中文在线a天堂 | 精品美女在线观看 | 国产成人在线观看 | 欧美日韩在线视频一区 | 久久精品九色 | 99视频国产在线 | 中文字幕视频一区 | 黄色片视频在线观看 | 五月亚洲综合 | 91久久精品日日躁夜夜躁国产 | 日韩视频一| av免费在线观看1 | 日韩高清一二区 | 国产精品女 | a久久久久久 | 青青色影院 | 色丁香综合 | 人人插超碰| 一级黄色片毛片 | www.成人久久| 91成年人视频 | 免费精品国产va自在自线 | 草樱av| 99热精品在线 | 一区二区精品久久 | 免费看的黄网站软件 | www.91国产| 欧美视频不卡 | 国产视频精品在线 | 久久96国产精品久久99软件 | 久久久久久久久精 | 欧美天堂久久 | 911久久香蕉国产线看观看 | 日韩精品三区四区 | 欧美性粗大hdvideo | 亚洲精品成人在线 | 精品国模一区二区 | 久久大片 | 久久精品国产一区二区三 | 在线v片免费观看视频 | 亚洲精品一区中文字幕乱码 | 日韩在线观看一区二区三区 | 精品一区91 | 狠狠躁日日躁 | 91精品久久久久久久99蜜桃 | 中文字幕av网站 | 欧美成人影音 | 六月激情久久 | 精品在线观看一区二区三区 | 丁香高清视频在线看看 | 999电影免费在线观看2020 | 国产一区二区在线影院 | 亚洲欧美日韩国产一区二区三区 | 99视频精品在线 | 中文字幕高清在线 | 在线视频婷婷 | 成人午夜电影在线 | 99精品在线免费 | 狠狠躁夜夜躁人人爽视频 | 91在线视频在线观看 | 国产午夜在线观看视频 | 久久成人18免费网站 | 欧美了一区在线观看 | 久久精品国产免费看久久精品 | 婷婷丁香七月 | 婷婷色网址 | 国产视频精选 | 日韩激情网| 日韩精品中文字幕在线播放 | 97国产大学生情侣白嫩酒店 | 中文字幕麻豆 | 国产中年夫妇高潮精品视频 | 国产精品视频最多的网站 | 成人aaa毛片| 四虎影视精品永久在线观看 | 成人黄色小说在线观看 | 婷婷色综合网 | 亚洲成人av在线电影 | 麻豆国产精品va在线观看不卡 | 啪啪激情网 | av在线免费在线观看 | 中文字幕第 | 国产成人亚洲精品自产在线 | 中文字幕成人在线观看 | 国产最新视频在线观看 | 午夜18视频在线观看 | 国产精品18久久久久久久久 | avwww在线| 精品久久久久久久久久 | 久久精品99国产精品日本 | 99视频精品免费观看, | 中文字幕精品一区久久久久 | 国内揄拍国产精品 | 精品国产一区二区三区久久久蜜臀 | 中文字幕日韩精品有码视频 | 97视频成人| 99在线精品视频观看 | 国产婷婷一区二区 | 亚洲国产成人av网 | 91av视频免费在线观看 | 国产最顶级的黄色片在线免费观看 | 怡春院av| 九热精品| 国产高h视频| 在线免费高清一区二区三区 | 超碰精品在线观看 | 国产香蕉av| 在线日韩一区 | 国产最新91 | 国产亚洲va综合人人澡精品 | 午夜久久久久久久久久影院 | 中文字幕高清有码 | 狠狠操天天射 | free. 性欧美.com | 欧美日本一二三 | 国产视频精品免费 | 最新日韩电影 | 综合网成人 | 天天操夜夜曰 | 在线婷婷| 美女视频久久久 | 亚洲精品国产精品国自产观看 | 国产在线播放一区 | 成人手机在线视频 | 97人人精品| 欧美日韩中文国产一区发布 | 五月综合 | 国产亚洲精品久久久久久大师 | 国产亚洲高清视频 | 少妇bbw搡bbbb搡bbbb | 顶级bbw搡bbbb搡bbbb | 久久福利剧场 | 日韩精品久久久久 | 96精品高清视频在线观看软件特色 | 国产日产精品一区二区三区四区的观看方式 | 久久精品一区二区三区视频 | 欧美日韩p片 | 天天射天天操天天干 | 天天干夜夜夜操天 | 久久久精品国产一区二区电影四季 | 成人黄色电影视频 | 在线观看黄av | 国产啊v在线 | 久久精品久久99精品久久 | 亚洲永久精品一区 | 日韩有码在线观看视频 | 久久免费看片 | 在线a人v观看视频 | 亚洲精品动漫在线 | 国产精品白丝av | 久久久国产精品人人片99精片欧美一 | 黄色小说在线观看视频 | 国产精品毛片久久久久久久久久99999999 | 国产精品久久久久免费 | 国产一区二区中文字幕 | 伊人春色电影网 | 欧美成年网站 | 91在线播放视频 | 精品毛片一区二区免费看 | 婷婷激情5月天 | 久久不卡日韩美女 | 在线观看av中文字幕 | av色图天堂网 | 激情久久网 | 亚洲精品tv | 97国产一区二区 | 在线播放精品一区二区三区 | 久久精品成人 | 久久综合影视 | 一级成人在线 |