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

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

?? stm32f10x_fsmc.c

?? STM32不完全手冊(cè) 例程源碼 29個(gè)
?? C
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
/******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
* File Name          : stm32f10x_fsmc.c
* Author             : MCD Application Team
* Version            : V2.0.1
* Date               : 06/13/2008
* Description        : This file provides all the FSMC firmware functions.
********************************************************************************
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/

/* Includes ------------------------------------------------------------------*/
#include "stm32f10x_fsmc.h"
#include "stm32f10x_rcc.h"

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* --------------------- FSMC registers bit mask ---------------------------- */
/* FSMC BCRx Mask */
#define BCR_MBKEN_Set                       ((u32)0x00000001)
#define BCR_MBKEN_Reset                     ((u32)0x000FFFFE)
#define BCR_FACCEN_Set                      ((u32)0x00000040)

/* FSMC PCRx Mask */
#define PCR_PBKEN_Set                       ((u32)0x00000004)
#define PCR_PBKEN_Reset                     ((u32)0x000FFFFB)
#define PCR_ECCEN_Set                       ((u32)0x00000040)
#define PCR_ECCEN_Reset                     ((u32)0x000FFFBF)
#define PCR_MemoryType_NAND                 ((u32)0x00000008)

/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/

/*******************************************************************************
* Function Name  : FSMC_NORSRAMDeInit
* Description    : Deinitializes the FSMC NOR/SRAM Banks registers to their default 
*                  reset values.
* Input          : - FSMC_Bank: specifies the FSMC Bank to be used
*                    This parameter can be one of the following values:
*                       - FSMC_Bank1_NORSRAM1: FSMC Bank1 NOR/SRAM1  
*                       - FSMC_Bank1_NORSRAM2: FSMC Bank1 NOR/SRAM2 
*                       - FSMC_Bank1_NORSRAM3: FSMC Bank1 NOR/SRAM3 
*                       - FSMC_Bank1_NORSRAM4: FSMC Bank1 NOR/SRAM4                       
* Output         : None
* Return         : None
*******************************************************************************/
void FSMC_NORSRAMDeInit(u32 FSMC_Bank)
{
  /* Check the parameter */
  assert_param(IS_FSMC_NORSRAM_BANK(FSMC_Bank));
  
  /* FSMC_Bank1_NORSRAM1 */
  if(FSMC_Bank == FSMC_Bank1_NORSRAM1)
  {
    FSMC_Bank1->BTCR[FSMC_Bank] = 0x000030DB;    
  }
  /* FSMC_Bank1_NORSRAM2,  FSMC_Bank1_NORSRAM3 or FSMC_Bank1_NORSRAM4 */
  else
  {   
    FSMC_Bank1->BTCR[FSMC_Bank] = 0x000030D2; 
  }

  FSMC_Bank1->BTCR[FSMC_Bank + 1] = 0x0FFFFFFF;
  FSMC_Bank1E->BWTR[FSMC_Bank] = 0x0FFFFFFF;  
}

/*******************************************************************************
* Function Name  : FSMC_NANDDeInit
* Description    : Deinitializes the FSMC NAND Banks registers to their default 
*                  reset values.
* Input          : - FSMC_Bank: specifies the FSMC Bank to be used
*                    This parameter can be one of the following values:
*                       - FSMC_Bank2_NAND: FSMC Bank2 NAND 
*                       - FSMC_Bank3_NAND: FSMC Bank3 NAND                       
* Output         : None
* Return         : None
*******************************************************************************/
void FSMC_NANDDeInit(u32 FSMC_Bank)
{
  /* Check the parameter */
  assert_param(IS_FSMC_NAND_BANK(FSMC_Bank));
  
  if(FSMC_Bank == FSMC_Bank2_NAND)
  {
    /* Set the FSMC_Bank2 registers to their reset values */
    FSMC_Bank2->PCR2 = 0x00000018;
    FSMC_Bank2->SR2 = 0x00000040;
    FSMC_Bank2->PMEM2 = 0xFCFCFCFC;
    FSMC_Bank2->PATT2 = 0xFCFCFCFC;  
  }
  /* FSMC_Bank3_NAND */  
  else
  {
    /* Set the FSMC_Bank3 registers to their reset values */
    FSMC_Bank3->PCR3 = 0x00000018;
    FSMC_Bank3->SR3 = 0x00000040;
    FSMC_Bank3->PMEM3 = 0xFCFCFCFC;
    FSMC_Bank3->PATT3 = 0xFCFCFCFC; 
  }  
}

/*******************************************************************************
* Function Name  : FSMC_PCCARDDeInit
* Description    : Deinitializes the FSMC PCCARD Bank registers to their default 
*                  reset values.
* Input          : None                       
* Output         : None
* Return         : None
*******************************************************************************/
void FSMC_PCCARDDeInit(void)
{
  /* Set the FSMC_Bank4 registers to their reset values */
  FSMC_Bank4->PCR4 = 0x00000018; 
  FSMC_Bank4->SR4 = 0x00000000;	
  FSMC_Bank4->PMEM4 = 0xFCFCFCFC;
  FSMC_Bank4->PATT4 = 0xFCFCFCFC;
  FSMC_Bank4->PIO4 = 0xFCFCFCFC;
}

/*******************************************************************************
* Function Name  : FSMC_NORSRAMInit
* Description    : Initializes the FSMC NOR/SRAM Banks according to the 
*                  specified parameters in the FSMC_NORSRAMInitStruct.
* Input          : - FSMC_NORSRAMInitStruct : pointer to a FSMC_NORSRAMInitTypeDef
*                  structure that contains the configuration information for 
*                  the FSMC NOR/SRAM specified Banks.                       
* Output         : None
* Return         : None
*******************************************************************************/
void FSMC_NORSRAMInit(FSMC_NORSRAMInitTypeDef* FSMC_NORSRAMInitStruct)
{ 
  /* Check the parameters */
  assert_param(IS_FSMC_NORSRAM_BANK(FSMC_NORSRAMInitStruct->FSMC_Bank));
  assert_param(IS_FSMC_MUX(FSMC_NORSRAMInitStruct->FSMC_DataAddressMux));
  assert_param(IS_FSMC_MEMORY(FSMC_NORSRAMInitStruct->FSMC_MemoryType));
  assert_param(IS_FSMC_MEMORY_WIDTH(FSMC_NORSRAMInitStruct->FSMC_MemoryDataWidth));
  assert_param(IS_FSMC_BURSTMODE(FSMC_NORSRAMInitStruct->FSMC_BurstAccessMode));
  assert_param(IS_FSMC_WAIT_POLARITY(FSMC_NORSRAMInitStruct->FSMC_WaitSignalPolarity));
  assert_param(IS_FSMC_WRAP_MODE(FSMC_NORSRAMInitStruct->FSMC_WrapMode));
  assert_param(IS_FSMC_WAIT_SIGNAL_ACTIVE(FSMC_NORSRAMInitStruct->FSMC_WaitSignalActive));
  assert_param(IS_FSMC_WRITE_OPERATION(FSMC_NORSRAMInitStruct->FSMC_WriteOperation));
  assert_param(IS_FSMC_WAITE_SIGNAL(FSMC_NORSRAMInitStruct->FSMC_WaitSignal));
  assert_param(IS_FSMC_EXTENDED_MODE(FSMC_NORSRAMInitStruct->FSMC_ExtendedMode));
  assert_param(IS_FSMC_ASYNC_WAIT(FSMC_NORSRAMInitStruct->FSMC_AsyncWait));
  assert_param(IS_FSMC_WRITE_BURST(FSMC_NORSRAMInitStruct->FSMC_WriteBurst));  
  assert_param(IS_FSMC_ADDRESS_SETUP_TIME(FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_AddressSetupTime));
  assert_param(IS_FSMC_ADDRESS_HOLD_TIME(FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_AddressHoldTime));
  assert_param(IS_FSMC_DATASETUP_TIME(FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_DataSetupTime));
  assert_param(IS_FSMC_TURNAROUND_TIME(FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_BusTurnAroundDuration));
  assert_param(IS_FSMC_CLK_DIV(FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_CLKDivision));
  assert_param(IS_FSMC_DATA_LATENCY(FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_DataLatency));
  assert_param(IS_FSMC_ACCESS_MODE(FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_AccessMode)); 
  
  /* Bank1 NOR/SRAM control register configuration */ 
  FSMC_Bank1->BTCR[FSMC_NORSRAMInitStruct->FSMC_Bank] = 
            (u32)FSMC_NORSRAMInitStruct->FSMC_DataAddressMux |
            FSMC_NORSRAMInitStruct->FSMC_MemoryType |
            FSMC_NORSRAMInitStruct->FSMC_MemoryDataWidth |
            FSMC_NORSRAMInitStruct->FSMC_BurstAccessMode |
            FSMC_NORSRAMInitStruct->FSMC_WaitSignalPolarity |
            FSMC_NORSRAMInitStruct->FSMC_WrapMode |
            FSMC_NORSRAMInitStruct->FSMC_WaitSignalActive |
            FSMC_NORSRAMInitStruct->FSMC_WriteOperation |
            FSMC_NORSRAMInitStruct->FSMC_WaitSignal |
            FSMC_NORSRAMInitStruct->FSMC_ExtendedMode |
            FSMC_NORSRAMInitStruct->FSMC_AsyncWait |
            FSMC_NORSRAMInitStruct->FSMC_WriteBurst;

  if(FSMC_NORSRAMInitStruct->FSMC_MemoryType == FSMC_MemoryType_NOR)
  {
    FSMC_Bank1->BTCR[FSMC_NORSRAMInitStruct->FSMC_Bank] |= (u32)BCR_FACCEN_Set;
  }

  /* Bank1 NOR/SRAM timing register configuration */
  FSMC_Bank1->BTCR[FSMC_NORSRAMInitStruct->FSMC_Bank+1] = 
            (u32)FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_AddressSetupTime |
            (FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_AddressHoldTime << 4) |
            (FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_DataSetupTime << 8) |
            (FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_BusTurnAroundDuration << 16) |
            (FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_CLKDivision << 20) |
            (FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_DataLatency << 24) |
             FSMC_NORSRAMInitStruct->FSMC_ReadWriteTimingStruct->FSMC_AccessMode;
            

    
  /* Bank1 NOR/SRAM timing register for write configuration, if extended mode is used */
  if(FSMC_NORSRAMInitStruct->FSMC_ExtendedMode == FSMC_ExtendedMode_Enable)
  {
    assert_param(IS_FSMC_ADDRESS_SETUP_TIME(FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_AddressSetupTime));
    assert_param(IS_FSMC_ADDRESS_HOLD_TIME(FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_AddressHoldTime));
    assert_param(IS_FSMC_DATASETUP_TIME(FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_DataSetupTime));
    assert_param(IS_FSMC_TURNAROUND_TIME(FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_BusTurnAroundDuration));
    assert_param(IS_FSMC_CLK_DIV(FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_CLKDivision));
    assert_param(IS_FSMC_DATA_LATENCY(FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_DataLatency));
    assert_param(IS_FSMC_ACCESS_MODE(FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_AccessMode));

    FSMC_Bank1E->BWTR[FSMC_NORSRAMInitStruct->FSMC_Bank] = 
              (u32)FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_AddressSetupTime |
              (FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_AddressHoldTime << 4 )|
              (FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_DataSetupTime << 8) |
              (FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_BusTurnAroundDuration << 16) |
              (FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_CLKDivision << 20) |
              (FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_DataLatency << 24) |
               FSMC_NORSRAMInitStruct->FSMC_WriteTimingStruct->FSMC_AccessMode;
  }
  else
  {
    FSMC_Bank1E->BWTR[FSMC_NORSRAMInitStruct->FSMC_Bank] = 0x0FFFFFFF;
  }
}

/*******************************************************************************
* Function Name  : FSMC_NANDInit
* Description    : Initializes the FSMC NAND Banks according to the specified 
*                  parameters in the FSMC_NANDInitStruct.
* Input          : - FSMC_NANDInitStruct : pointer to a FSMC_NANDInitTypeDef 
*                    structure that contains the configuration information for 
*                    the FSMC NAND specified Banks.                       
* Output         : None
* Return         : None
*******************************************************************************/
void FSMC_NANDInit(FSMC_NANDInitTypeDef* FSMC_NANDInitStruct)
{
  u32 tmppcr = 0x00000000, tmppmem = 0x00000000, tmppatt = 0x00000000; 
    
  /* Check the parameters */
  assert_param( IS_FSMC_NAND_BANK(FSMC_NANDInitStruct->FSMC_Bank));
  assert_param( IS_FSMC_WAIT_FEATURE(FSMC_NANDInitStruct->FSMC_Waitfeature));
  assert_param( IS_FSMC_DATA_WIDTH(FSMC_NANDInitStruct->FSMC_MemoryDataWidth));
  assert_param( IS_FSMC_ECC_STATE(FSMC_NANDInitStruct->FSMC_ECC));
  assert_param( IS_FSMC_ECCPAGE_SIZE(FSMC_NANDInitStruct->FSMC_ECCPageSize));
  assert_param( IS_FSMC_ADDRESS_LOW_MAPPING(FSMC_NANDInitStruct->FSMC_AddressLowMapping));
  assert_param( IS_FSMC_TCLR_TIME(FSMC_NANDInitStruct->FSMC_TCLRSetupTime));
  assert_param( IS_FSMC_TAR_TIME(FSMC_NANDInitStruct->FSMC_TARSetupTime));

  assert_param(IS_FSMC_SETUP_TIME(FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_SetupTime));
  assert_param(IS_FSMC_WAIT_TIME(FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_WaitSetupTime));
  assert_param(IS_FSMC_HOLD_TIME(FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HoldSetupTime));
  assert_param(IS_FSMC_HIZ_TIME(FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HiZSetupTime));

  assert_param(IS_FSMC_SETUP_TIME(FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_SetupTime));
  assert_param(IS_FSMC_WAIT_TIME(FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_WaitSetupTime));
  assert_param(IS_FSMC_HOLD_TIME(FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HoldSetupTime));
  assert_param(IS_FSMC_HIZ_TIME(FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HiZSetupTime));
  
  /* Set the tmppcr value according to FSMC_NANDInitStruct parameters */
  tmppcr = (u32)FSMC_NANDInitStruct->FSMC_Waitfeature |
            PCR_MemoryType_NAND |
            FSMC_NANDInitStruct->FSMC_MemoryDataWidth |
            FSMC_NANDInitStruct->FSMC_ECC |
            FSMC_NANDInitStruct->FSMC_ECCPageSize |
            FSMC_NANDInitStruct->FSMC_AddressLowMapping |
            (FSMC_NANDInitStruct->FSMC_TCLRSetupTime << 9 )|
            (FSMC_NANDInitStruct->FSMC_TARSetupTime << 13);
            
  /* Set tmppmem value according to FSMC_CommonSpaceTimingStructure parameters */
  tmppmem = (u32)FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_SetupTime |
            (FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_WaitSetupTime << 8) |
            (FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HoldSetupTime << 16)|
            (FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HiZSetupTime << 24); 
            
  /* Set tmppatt value according to FSMC_AttributeSpaceTimingStructure parameters */
  tmppatt = (u32)FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_SetupTime |
            (FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_WaitSetupTime << 8) |
            (FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HoldSetupTime << 16)|
            (FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HiZSetupTime << 24);
  
  if(FSMC_NANDInitStruct->FSMC_Bank == FSMC_Bank2_NAND)
  {
    /* FSMC_Bank2_NAND registers configuration */
    FSMC_Bank2->PCR2 = tmppcr;
    FSMC_Bank2->PMEM2 = tmppmem;
    FSMC_Bank2->PATT2 = tmppatt;
  }
  else
  {
    /* FSMC_Bank3_NAND registers configuration */
    FSMC_Bank3->PCR3 = tmppcr;
    FSMC_Bank3->PMEM3 = tmppmem;
    FSMC_Bank3->PATT3 = tmppatt;
  }
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人小视频| 99久久婷婷国产精品综合| 国产精品欧美一区二区三区| 日本韩国欧美在线| 国产一区三区三区| 丝袜美腿亚洲一区二区图片| 国产日韩欧美一区二区三区综合| 欧美女孩性生活视频| 99久久精品99国产精品| 国产露脸91国语对白| 日本不卡中文字幕| 亚洲午夜免费电影| 中文字幕一区二区三区不卡在线| 久久在线免费观看| 欧美一区二区精品在线| 欧美午夜电影网| 一本大道久久精品懂色aⅴ| 国产一区二区美女诱惑| 日本在线播放一区二区三区| 亚洲一区二区精品3399| 亚洲欧美二区三区| 最新久久zyz资源站| 国产欧美综合在线| 久久久久亚洲综合| 337p粉嫩大胆噜噜噜噜噜91av | 中文字幕一区不卡| 久久久美女毛片| 久久亚洲精华国产精华液| 日韩一卡二卡三卡四卡| 在线不卡一区二区| 51午夜精品国产| 欧美一区二区视频观看视频| 欧美色精品天天在线观看视频| 日本高清无吗v一区| 色香蕉成人二区免费| 99久久综合色| 一本大道久久a久久精品综合| 99精品欧美一区二区三区小说 | 青青草97国产精品免费观看| 午夜精品一区二区三区免费视频 | 久久国产精品免费| 美洲天堂一区二卡三卡四卡视频 | 99riav久久精品riav| 99精品桃花视频在线观看| 成人av午夜影院| av亚洲产国偷v产偷v自拍| 成人av免费在线播放| 91老师国产黑色丝袜在线| 91久久线看在观草草青青| 欧美日韩综合色| 4438x亚洲最大成人网| 欧美成人性战久久| 久久久精品tv| 亚洲天堂精品视频| 亚洲最新视频在线观看| 午夜精品国产更新| 麻豆一区二区三| 国产精品正在播放| 91亚洲永久精品| 欧美图区在线视频| 日韩精品一区二区三区中文不卡 | 久久综合狠狠综合久久激情| 26uuu另类欧美| 亚洲国产精品ⅴa在线观看| 日韩一区在线看| 亚洲va欧美va天堂v国产综合| 免费成人在线观看| 国产iv一区二区三区| 日本精品一级二级| 日韩欧美中文字幕精品| 国产欧美日韩综合| 亚洲一二三区不卡| 久久精品国产免费看久久精品| 国产精品18久久久久久久久久久久| 国产乱子伦视频一区二区三区| 成人动漫av在线| 91精品久久久久久久91蜜桃| 26uuu亚洲综合色欧美| 自拍偷在线精品自拍偷无码专区| 午夜精品一区在线观看| 成人综合婷婷国产精品久久免费| 欧美日韩在线播放三区| 久久久久久影视| 国产凹凸在线观看一区二区| 欧美男同性恋视频网站| 久久精品日韩一区二区三区| 亚洲影院在线观看| 国产成人免费高清| 欧美日本在线播放| 中文字幕亚洲欧美在线不卡| 蜜臀精品久久久久久蜜臀| 99国产麻豆精品| 欧美不卡视频一区| 一区二区三区产品免费精品久久75| 久久狠狠亚洲综合| 欧洲一区二区三区在线| 中文字幕乱码一区二区免费| 美女一区二区久久| 欧美在线啊v一区| 中文文精品字幕一区二区| 人人狠狠综合久久亚洲| 色悠悠久久综合| 亚洲国产精品传媒在线观看| 免费观看久久久4p| 欧美在线影院一区二区| 国产精品久久久久久福利一牛影视 | 欧美电影一区二区三区| 中文字幕一区在线观看| 久久99久久精品| 欧美精三区欧美精三区| 亚洲免费视频中文字幕| 国产盗摄精品一区二区三区在线| 4438成人网| 午夜精品福利视频网站| 欧美在线视频不卡| 最新国产成人在线观看| 成人福利视频网站| 欧美经典三级视频一区二区三区| 久久国产精品99久久久久久老狼| 欧美日韩不卡一区| 亚洲综合在线电影| 一本色道久久综合亚洲aⅴ蜜桃| 国产偷国产偷亚洲高清人白洁| 日韩精彩视频在线观看| 91精彩视频在线| 亚洲精品中文在线观看| eeuss鲁片一区二区三区在线看| 久久久久久久电影| 国产麻豆精品一区二区| 精品国产成人在线影院| 精品一区二区在线免费观看| 欧美电影免费观看高清完整版| 日韩精品欧美精品| 91精品国产综合久久精品app| 日韩成人一级片| 91精品在线一区二区| 视频一区视频二区中文| 欧美日韩激情一区二区| 日韩精品三区四区| 欧美大黄免费观看| 国产在线精品不卡| 国产日韩欧美电影| zzijzzij亚洲日本少妇熟睡| 国产精品的网站| 91成人在线免费观看| 亚洲综合久久久| 91麻豆精品91久久久久久清纯| 日本aⅴ亚洲精品中文乱码| 欧美丰满嫩嫩电影| 精品一区二区三区香蕉蜜桃| 国产视频一区在线观看| 91视频免费播放| 亚洲成人午夜电影| 日韩美一区二区三区| 国产精品99久久久久久久女警 | 欧美日韩精品欧美日韩精品一综合| 亚洲一卡二卡三卡四卡 | 1000精品久久久久久久久| 日本精品免费观看高清观看| 亚欧色一区w666天堂| 欧美v亚洲v综合ⅴ国产v| 国产成人在线视频网站| 亚洲欧美中日韩| 91精品国产综合久久精品图片 | 久久久久久久久久久久电影| 成人激情小说网站| 亚洲福利一区二区| 精品福利视频一区二区三区| www.一区二区| 天天影视网天天综合色在线播放| 欧美本精品男人aⅴ天堂| 白白色 亚洲乱淫| 日韩va亚洲va欧美va久久| 国产日韩高清在线| 欧美日韩你懂的| 国产91丝袜在线18| 亚洲成人av在线电影| 久久亚洲一区二区三区四区| 一本久久a久久免费精品不卡| 蜜桃传媒麻豆第一区在线观看| 国产欧美精品一区二区三区四区| 欧美在线一区二区| 国产成人精品免费网站| 亚洲午夜精品久久久久久久久| 久久综合网色—综合色88| 色狠狠综合天天综合综合| 激情小说欧美图片| 亚洲图片欧美视频| 中文字幕免费不卡| 日韩视频123| 欧美性色黄大片手机版| 国产成人午夜高潮毛片| 午夜精品福利在线| 亚洲视频你懂的| 久久久www成人免费无遮挡大片| 欧美在线啊v一区| a美女胸又www黄视频久久| 狠狠色狠狠色综合日日91app| 一区二区三区在线影院| 欧美高清在线精品一区|