wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 46321|回復: 7
打印 上一主題 下一主題
收起左側

STM32 模塊篇-溫濕度傳感器模塊(DHT11)實驗

[復制鏈接]
跳轉到指定樓層
樓主
ID:105323 發(fā)表于 2016-3-4 13:33 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
目     錄

5.03.1 概述3

5.03.1.1 性能描述4

5.03.1.2 傳感器時序4

5.03.2 實驗目的6

5.03.3 硬件設計7

5.03.4 軟件設計7

5.03.4.1 軟件設計說明8

5.03.4.2 STM32庫函數(shù)文件8

5.03.4.3 自定義頭文件8

5.03.4.4 pbdata.h文件里的內容是9

5.03.4.5 pbdata.c文件里的內容是9

5.03.5  STM32系統(tǒng)時鐘配置SystemInit()12

5.03.6  GPIO引腳時鐘使能12

5.03.7  GPIO管腳電平控制函數(shù)12

5.03.8  stm32f10x_it.c文件里的內容是13

5.03.9  dht11.h文件里的內容是13

5.03.10  dht11.c文件里的內容是14

5.03.11  main.c文件里的內容是17

5.03.12 程序下載19

5.03.13 實驗效果圖20

 

5.03 溫濕度傳感器模塊實驗

5.03.1 概述

DHT11 數(shù)字溫濕度傳感器是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器。它應用專用的數(shù)字模塊采集技術和溫濕度傳感技術,確保產品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能8 位單片機相連接。因此該產品具有品質卓越、超快響應、抗干擾能力強、性價比極高等優(yōu)點。每個DHT11 傳感器都在極為精確的濕度校驗室中進行校準。校準系數(shù)以程序的形式儲存在OTP 內存中,傳感器內部在檢測信號的處理過程中要調用這些校準系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達20 米以上,使其成為各類應用甚至最為苛刻的應用場合的最佳選則。

 


DHT11 數(shù)字溫濕度傳感器模塊為4 針PH2.0 封裝。連接方便。如右圖所示。

5.03.1.1 性能描述

1. 供電電壓:3-5.5V

2. 供電電流:最大2.5mA

3. 溫度范圍:0-50℃ 誤差±2℃

4. 濕度范圍:20-90%RH 誤差±5%RH

5. 響應時間: 1/e(63%) 6-30s

6. 測量分辨率分別為 8bit(溫度)、8bit(濕度)

7. 采樣周期間隔不得低于1 秒鐘

8. 模塊尺寸:30x20mm 

 


注釋:建議連接線長度短于20米時使用5K上拉電阻,大于20米時根據(jù)實際情況使用合適的上拉電阻。

5.03.1.2 傳感器時序

DATA 用于微處理器與 DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當前小數(shù)部分用于以后擴展,現(xiàn)讀出為零.操作流程如下:

一次完整的數(shù)據(jù)傳輸為40bit,高位先出。

數(shù)據(jù)格式:

8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)

+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)

+8bit校驗和

數(shù)據(jù)傳送正確時校驗和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結果的末8位。

用戶MCU發(fā)送一次開始信號后,DHT11從低功耗模式轉換到高速模式,等待主機開始信號結束后,DHT11發(fā)送響應信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取部分數(shù)據(jù).從模式下,DHT11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機發(fā)送開始信號,DHT11不會主動進行溫濕度采集.采集數(shù)據(jù)后轉換到低速模式。

通訊過程如圖

 

 


    總線空閑狀態(tài)為高電平,主機把總線拉低等待DHT11響應,主機把總線拉低必須大于18毫秒,保證DHT11能檢測到起始信號。DHT11接收到主機的開始信號后,等待主機開始信號結束,然后發(fā)送80us低電平響應信號.主機發(fā)送開始信號結束后,延時等待20-40us后, 讀取DHT11的響應信號,主機發(fā)送開始信號后,可以切換到輸入模式,或者輸出高電平均可, 總線由上拉電阻拉高。

 


    總線為低電平,說明DHT11發(fā)送響應信號,DHT11發(fā)送響應信號后,再把總線拉高80us,準備發(fā)送數(shù)據(jù),每一bit數(shù)據(jù)都以50us低電平時隙開始,高電平的長短定了數(shù)據(jù)位是0還是1.格式見下面圖示.如果讀取響應信號為高電平,則DHT11沒有響應,請檢查線路是否連接正常.當最后一bit數(shù)據(jù)傳送完畢后,DHT11拉低總線50us,隨后總線由上拉電阻拉高進入空閑狀態(tài)。 

5.03.2 實驗目的

1. 掌握溫度采集模塊DHT11的工作原理; 

2. 掌握單片機實現(xiàn)溫度采集模塊DHT11數(shù)據(jù)采集的基本方法,其中包括硬件和軟件實現(xiàn)兩部分;     

3. 熟悉單片機數(shù)據(jù)采集系統(tǒng)中,溫度采集模塊DHT11作為傳感器對象的系統(tǒng)設計方法。

5.03.3 硬件設計

選用大黃蜂實驗板,溫度采集模塊DHT11是成品模塊,直接插接到實驗板上即可。硬件設計見“圖5.03.5  溫度采集模塊DHT11連線圖”。

 



5.03.4 軟件設計

5.03.4.1 軟件設計說明

    溫度采集模塊DHT11是成品模塊,直接插接到實驗板上即可。按照上一章介紹的工作原理,我們就可以按照工作時序編寫出數(shù)據(jù)采集程序。我們還是采用庫函數(shù)的方式進行程序設計。

在這節(jié)程序設計中,用到了外部中斷函數(shù);prinif 重定向打印輸出函數(shù); USART串口通訊函數(shù);定時器函數(shù)。

5.03.4.2 STM32庫函數(shù)文件

?

   本節(jié)實驗及以后的實驗我們都是用到庫文件,其中 stm32f10x_gpio.h頭文件包含了GPIO端口的定義。stm32f10x_rcc.h 頭文件包含了系統(tǒng)時鐘配置函數(shù)以及相關的外設時鐘使能函數(shù),所以我們要把這兩個頭文件對應的stm32f10x_gpio.c和stm32f10x_rcc.c加到工程中;Misc.c庫函數(shù)主要包含了中斷優(yōu)先級的設置,stm32f10x_exti.c 庫函數(shù)主要包含了外部中斷設置參數(shù),tm32f10x_tim.c庫函數(shù)主要包含定時器設置,tm32f10x_usart.c庫函數(shù)主要包含串行通訊設置,這些函數(shù)也要添加到函數(shù)庫中。以上庫文件包含了本次實驗所有要用到的函數(shù)使用功能。

5.03.4.3 自定義頭文件

                                        

    我們在每個工程設計中都要創(chuàng)建了兩個公共的文件,這兩個文件主要存放我們自定義的公共函數(shù)和全局變量,以方便以后每個功能模塊(函數(shù))之間傳遞參數(shù)。

5.03.4.4 pbdata.h文件里的內容是

   

           

語句 #ifndef、#endif是為了防止pbdata.h文件被多個文件調用時出現(xiàn)錯誤提示。如果不加這兩條語句,當兩個文件同時調用pbdata文件時,會提示重復調用錯誤。 

5.03.4.5 pbdata.c文件里的內容是

下面是pbdata.c文件詳細內容,在文件開始還是引用“pbdata.h”文件。


 5.03.5  STM32系統(tǒng)時鐘配置SystemInit()

在每個工程中必須在開始時配置并啟動STM32系統(tǒng)時鐘,這是基礎,這次也不例外。

5.03.6  GPIO引腳時鐘使能


5.03.7  GPIO管腳電平控制函數(shù)

    在主程序中采用while(1)循環(huán)語句,采用查詢方式不停的讀取溫濕度數(shù)據(jù),然后直接通過串口送打印輸出到屏幕。

  while(1)

   {

  DHT11_Read_Data(&wd,&sd);//讀取溫濕度值    

  printf("當前環(huán)境溫度: %d ℃\r\n",wd);    

  printf("當前環(huán)境濕度: %d %%\r\n",sd);    

  delay_ms(1000);

  delay_ms(1000);

   }

 

5.03.8  stm32f10x_it.c文件里的內容是

在中斷處理stm32f10x_it.c文件里中僅串口1子函數(shù)非空,進入中斷處理函數(shù)后,只有串口1有參數(shù)輸出。

#include "stm32f10x_it.h" 

#include "stm32f10x_exti.h"

#include "stm32f10x_rcc.h"

#include "misc.h"

#include "pbdata.h"

 

void NMI_Handler(void)

{

}

 

void USART1_IRQHandler(void)

{

   if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET)

   {

USART_SendData(USART1,USART_ReceiveData(USART1));

while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);

   }

}

 

5.03.9  dht11.h文件里的內容是

函數(shù)dht11.h在這里是為符合溫濕度模塊功能自定義的專用功能函數(shù),dht11.h的內容如下:

#ifndef __DHT11_H

#define __DHT11_H 

#include "pbdata.h"

 

#define IO_DHT11 GPIO_Pin_4 //引入中間變量,方便移植

#define GPIO_DHT11 GPIOE //引入中間變量,方便移植

 

#define DHT11_DQ_High GPIO_SetBits(GPIO_DHT11,IO_DHT11) 

#define DHT11_DQ_Low  GPIO_ResetBits(GPIO_DHT11,IO_DHT11)

 

void DHT11_IO_OUT(void);//溫濕度模塊輸出函數(shù)

void DHT11_IO_IN(void); //溫濕度模塊輸入函數(shù)

void DHT11_Init(void);  //初始化DHT11

u8   DHT11_Read_Data(u8 *temp,u8 *humi);//讀取溫濕度

u8   DHT11_Read_Byte(void);             //讀出一個字節(jié)

u8   DHT11_Read_Bit(void);              //讀出一個位

u8   DHT11_Check(void);                 //檢測是否存在DHT11

void DHT11_Rst(void);                   //復位DHT11    

#endif

 

5.03.10  dht11.c文件里的內容是

 

自定義函數(shù)dht11.c的內容如下:

#include "pbdata.h"

 

void DHT11_IO_IN(void)//溫濕度模塊輸入函數(shù)

{

GPIO_InitTypeDef GPIO_InitStructure;

 

GPIO_InitStructure.GPIO_Pin=IO_DHT11;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;

GPIO_Init(GPIO_DHT11,&GPIO_InitStructure);

}

 

void DHT11_IO_OUT(void)//溫濕度模塊輸出函數(shù)

{

GPIO_InitTypeDef GPIO_InitStructure;

 

GPIO_InitStructure.GPIO_Pin=IO_DHT11;

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;

GPIO_Init(GPIO_DHT11,&GPIO_InitStructure);

}

 

//復位DHT11

void DHT11_Rst(void)   

{                 

   DHT11_IO_OUT(); //SET OUTPUT

    DHT11_DQ_Low; //DQ=0

    delay_ms(20);    //拉低至少18ms

    DHT11_DQ_High; //DQ=1 

 delay_us(30);     //主機拉高20~40us

}

 

//等待DHT11的回應

//返回1:未檢測到DHT11的存在

//返回0:存在

u8 DHT11_Check(void)    

{   

u8 retry=0;//定義臨時變量

DHT11_IO_IN();//SET INPUT 

    while ((GPIO_ReadInputDataBit(GPIO_DHT11,IO_DHT11)==1)&&retry<100)//DHT11會拉低40~80us

{

retry++;

delay_us(1);

}; 

if(retry>=100)return 1;

else retry=0;

    while ((GPIO_ReadInputDataBit(GPIO_DHT11,IO_DHT11)==0)&&retry<100)//DHT11拉低后會再次拉高40~80us

{

retry++;

delay_us(1);

};

if(retry>=100)return 1;    

return 0;

}

//從DHT11讀取一個位

//返回值:1/0

u8 DHT11_Read_Bit(void)  

{

 u8 retry=0;

while((GPIO_ReadInputDataBit(GPIO_DHT11,IO_DHT11)==1)&&retry<100)//等待變?yōu)榈碗娖?/span>

{

retry++;

delay_us(1);

}

retry=0;

while((GPIO_ReadInputDataBit(GPIO_DHT11,IO_DHT11)==0)&&retry<100)//等待變高電平

{

retry++;

delay_us(1);

}

delay_us(40);//等待40us

if(GPIO_ReadInputDataBit(GPIO_DHT11,IO_DHT11)==1)

return 1;

else 

return 0;   

}

//從DHT11讀取一個字節(jié)

//返回值:讀到的數(shù)據(jù)

u8 DHT11_Read_Byte(void)    

{        

    u8 i,dat;

    dat=0;

for (i=0;i<8;i++) 

{

   dat<<=1; 

    dat|=DHT11_Read_Bit();

    }    

    return dat;

}

 

//從DHT11讀取一次數(shù)據(jù)

//temp:溫度值(范圍:0~50°)

//humi:濕度值(范圍:20%~90%)

//返回值:0,正常;1,讀取失敗

u8 DHT11_Read_Data(u8 *temp,u8 *humi)    

{        

 u8 buf[5];

u8 i;

DHT11_Rst();

if(DHT11_Check()==0)

{

for(i=0;i<5;i++)//讀取40位數(shù)據(jù)

{

buf[i]=DHT11_Read_Byte();

}

if((buf[0]+buf[1]+buf[2]+buf[3])==buf[4])

{

*humi=buf[0];

*temp=buf[2];

}

}else return 1;

return 0;    

}

//初始化DHT11的IO口 DQ 同時檢測DHT11的存在

//返回1:不存在

//返回0:存在     

void DHT11_Init(void)

{     

DHT11_Rst();  //復位DHT11

DHT11_Check();//等待DHT11的回應

}

 

5.03.11  main.c文件里的內容是

#include "pbdata.h"

 

void RCC_Configuration(void);

void GPIO_Configuration(void);

void NVIC_Configuration(void);

void USART_Configuration(void);

 

int fputc(int ch,FILE *f)

{

USART_SendData(USART1,(u8)ch);

while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);

return ch;

}

 

int main(void)

{

   u8 wd=0;      

   u8 sd=0;

 

   RCC_Configuration();//系統(tǒng)時鐘初始化

   GPIO_Configuration();//端口初始化

   USART_Configuration();

   NVIC_Configuration();

 

   DHT11_Init();

   

   while(1)

   {

  DHT11_Read_Data(&wd,&sd);//讀取溫濕度值    

  printf("當前環(huán)境溫度: %d ℃\r\n",wd);    

  printf("當前環(huán)境濕度: %d %%\r\n",sd);    

  delay_ms(1000);

  delay_ms(1000);

   }

}

 

void RCC_Configuration(void)

{

    SystemInit();//72m

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);

}

 

void GPIO_Configuration(void)

{

    GPIO_InitTypeDef GPIO_InitStructure;

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;//TX

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;

GPIO_Init(GPIOA,&GPIO_InitStructure);

 

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;//RX

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;

GPIO_Init(GPIOA,&GPIO_InitStructure);

}

 

void NVIC_Configuration(void)

{

   NVIC_InitTypeDef NVIC_InitStructure; 

 

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); 

 

NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn; 

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; 

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; 

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; 

NVIC_Init(&NVIC_InitStructure);

}

 

void USART_Configuration(void)

{

    USART_InitTypeDef  USART_InitStructure;

 

USART_InitStructure.USART_BaudRate=9600;

USART_InitStructure.USART_WordLength=USART_WordLength_8b;

USART_InitStructure.USART_StopBits=USART_StopBits_1;

USART_InitStructure.USART_Parity=USART_Parity_No;

USART_InitStructure.USART_HardwareFlowControl=USART_HardwareFlowControl_None;

USART_InitStructure.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;

 

USART_Init(USART1,&USART_InitStructure);

USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);

USART_Cmd(USART1,ENABLE);

USART_ClearFlag(USART1,USART_FLAG_TC);

}

 

5.03.12 程序下載

在這一章節(jié)中要掌握DHT11溫濕度傳感器工作時序,了解常用的溫濕度傳感器功能和原理。

請根據(jù)下圖所指向的7個重點區(qū)域配置。其中(1)號區(qū)域根據(jù)自己機器的實際情況選擇,我的機器虛擬出來的串口號是COM3。(2)號區(qū)域請自己選擇程序代碼所在的文件夾。(7)號區(qū)域當程序下載完后,進度條會到達最右邊,并且提示一切正常。(4、5、6)號區(qū)域一定要按照上圖顯示的設置。當都設置好以后就可以直接點擊(3)號區(qū)域的開始編程按鈕下傳程序了。

 

本節(jié)實驗的源代碼在光盤中:(LY-STM32 光盤資料\1.課程\2,外設篇\模塊篇 03.溫濕度傳感器模塊(DHT11)\程序)

5.03.13 實驗效果圖

打開眾想科技多功能監(jiān)控軟件,接著打開串口,我們在接收區(qū)可以觀察到實測采集到周圍環(huán)境的溫濕度數(shù)據(jù),周圍環(huán)境的溫度大約     攝氏度左右、濕度是   左右,說明我們溫濕度模塊工作正常,程序編寫和設計思路吻合。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂2 踩

相關帖子

回復

使用道具 舉報

沙發(fā)
ID:208990 發(fā)表于 2017-6-7 21:51 | 只看該作者
可不可以給我發(fā)一個這個代碼的工程。
回復

使用道具 舉報

板凳
ID:208990 發(fā)表于 2017-6-7 21:52 | 只看該作者
或者可以告訴我去哪里下載么
回復

使用道具 舉報

地板
ID:208990 發(fā)表于 2017-6-7 21:53 | 只看該作者
這是全部的程序么
回復

使用道具 舉報

5#
ID:198114 發(fā)表于 2017-6-9 08:50 來自觸屏版 | 只看該作者
可以發(fā)一份程序嗎
回復

使用道具 舉報

6#
ID:219960 發(fā)表于 2017-7-15 23:56 | 只看該作者
可不可以給個開發(fā)板的購買鏈接
回復

使用道具 舉報

7#
ID:319102 發(fā)表于 2018-4-29 20:27 | 只看該作者
很不錯的
回復

使用道具 舉報

8#
ID:609263 發(fā)表于 2019-9-23 19:12 | 只看該作者
大佬可以發(fā)一下全部的代碼嗎!十分感謝!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
黄色片一级视频| 亚洲一区精品在线观看| 亚洲 欧洲 日韩| 欧美一级视频一区二区| 欧美视频中文一区二区三区在线观看| 国产一区二区三区免费在线观看| 四虎视频在线精品免费网址| 成人亚洲性情网站www在线观看| 男女爱爱福利视频| 91精品久久久久久久久久久久久久| 欧美色视频一区| 亚洲国产精品二十页| 免费精品视频| 欧州一区二区| 欧美视频精品| 青春草免费在线视频| 久草在线新视觉| 国产又粗又猛又爽| 四虎永久免费地址| 日韩欧美中文在线视频| 一级黄色片播放| 久久成人资源| 国产精品久久久久久久久免费看| 精品人伦一区二区三区蜜桃免费| 成人网在线播放| 国产视频一区欧美| 日韩久久视频| 久久97久久97精品免视看秋霞| 黄色软件视频在线观看| 91女主播在线观看| 在线播放你懂的| 人人澡人一摸人人添| 中文字幕天堂在线| 国产午夜手机精彩视频| 97中文字幕在线| 蜜桃在线一区二区三区精品| 国产精品美女久久| 国内精品免费午夜毛片| 中文字幕日韩av| 亚洲国产高潮在线观看| 欧美日韩国产乱码电影| 欧美天堂在线观看| 亚洲一级不卡视频| 中文字幕一区二区三区在线不卡| 国产91精品在线观看| 日韩电影免费在线看| 中文成人激情娱乐网| 国产不卡123| 在线三级中文| 成人亚洲精品777777ww| 囯产精品久久久久久| 特级西西444www大胆免费看| 波多野结衣视频网站| 国产在线成人精品午夜| 天堂一区在线观看| 视频一区二区精品| 性色av一区二区三区免费| 亚洲欧美日本另类| 亚洲跨种族黑人xxx| 精品国产精品一区二区夜夜嗨| 555www色欧美视频| 欧美高清视频不卡网| 中文字幕一区二区三区色视频 | 91亚洲欧美| 欧美高清电影在线| 男人天堂网在线观看| 国产露出视频在线观看| 午夜免费视频在线国产| 日本视频一二区| 日本aⅴ中文| 91精品国产一区二区三密臀| 91在线电影| 四虎在线免费看| 国产资源在线看| 国产在线一区二区视频| 成人影音在线| www成人在线视频| 日本蜜桃在线观看| 黄色成年人视频在线观看| 91网在线看| 在线最新版中文在线| gogo亚洲高清大胆美女人体| av在线精品| 日本成人a网站| 另类一区二区| 日韩成人视屏| 国产探花一区二区| 蜜桃精品视频| 综合国产视频| 精品不卡视频| 国产一区二区中文字幕| 91蝌蚪porny| 亚洲精品乱码久久久久久日本蜜臀 | 精品视频三区| 国产一二区在线观看| 麻豆网站免费在线观看| 欧洲精品久久久久毛片完整版| 成人爽a毛片| 亚洲综合色站| 国产天堂在线| 福利在线播放| 中文字幕人成乱码在线观看 | www.91香蕉视频| 黄色无遮挡网站| 国产三级电影在线观看| av剧情在线观看| 精品国产三区在线| 日韩欧美精品| 日韩高清不卡一区二区三区| 337p粉嫩大胆色噜噜噜噜亚洲| www国产成人免费观看视频 深夜成人网| 亚洲天堂免费在线观看视频| 久久综合精品国产一区二区三区| 亚洲欧洲精品一区二区精品久久久| 欧美日韩一区二区在线| 亚洲第一中文字幕在线观看| 久久久久久久久久久网站| 51精品国产人成在线观看| 亚洲精品在线观看免费| 国产精彩免费视频| 秋霞欧美一区二区三区视频免费| 亚洲av人无码激艳猛片服务器| 色欲久久久天天天综合网 | 国产高清自产拍av在线| 国产女人18毛片水真多18精品| 欧美日韩亚洲三区| 97精品国产| 久久国产人妖系列| 国产成人精品免费视频网站| 中文字幕亚洲欧美在线不卡| 欧美军同video69gay| 欧美巨乳在线观看| 精品国产福利| www亚洲成人| 无码人妻精品一区二区三| 放荡的美妇在线播放| 99热国产在线观看| 久久久一区二区三区不卡| 久久99国产视频| 中文在线一二区| 国产福利亚洲| 亚洲欧洲综合| 九九视频精品免费| 91污片在线观看| 欧美日韩亚洲综合在线| 欧美乱妇高清无乱码| 久久综合狠狠综合久久综青草| 97视频在线免费播放| 中文字幕在线观看2018| 中文字幕的av| 99reav在线| 亚洲综合小说图片| 懂色一区二区三区免费观看 | 精品久久精品久久| 久久婷婷中文字幕| 波多野结衣网站| 99热在线观看免费| 新片速递亚洲合集欧美合集| 亚洲欧美亚洲| 亚洲人成人一区二区在线观看| 亚洲精品午夜精品| 不卡av日日日| 性刺激综合网| 久久无码人妻精品一区二区三区| 国产又粗又猛又爽| 黑料吃瓜在线观看| 一本色道69色精品综合久久| 国产精品久久久久久久免费观看| 成人综合婷婷国产精品久久| 久久精品一区二区不卡| 韩国精品一区二区| 欧美挠脚心视频网站| 国产精品视频yy9099| 日本中文字幕高清| 在线观看中文字幕网站| 男男gay免费网站| 高清一区二区| 国产精品99久久久久久宅男| 欧美男男青年gay1069videost| 国产精品极品尤物在线观看| 午夜dv内射一区二区| 中文字幕在线日亚洲9| 国产卡二和卡三的视频| 久久av色综合| 国产日韩亚洲| 在线看日韩精品电影| 久久久精品久久久| 伊人久久大香线蕉精品| 污色网站在线观看| 在线视频欧美亚洲| 在线播放网站| 欧美电影一区| 精品二区三区线观看| 国产福利视频一区二区| 午夜xxxxx| 极品美女一区二区三区视频| 国产色婷婷在线| 国产精品日韩精品欧美精品| 精品视频一区二区三区免费| 91亚色免费| 中文字幕在线1| 色涩视频在线观看| 欧美影院视频| 国产欧美日韩精品一区| 国内精品久久久| 色天使在线观看| 日韩性xxxx| 悠悠资源网亚洲青| 国产成人在线视频播放| www.欧美精品| 91极品尤物在线播放国产| 成人无码一区二区三区| 国产伦子伦对白在线播放观看| 精品影视av免费| 亚洲精品一区二区在线| 99热久久这里只有精品| 久久中文免费视频| 国产私人影院| 成久久久网站| 色哟哟一区二区三区| 国产成人精品福利一区二区三区| 超薄肉色丝袜一二三| av电影免费| 一区二区三区免费在线看| 国产日韩亚洲欧美综合| 91精品国产高清久久久久久91| 男插女免费视频| 少妇又紧又色又爽又刺激视频 | 成人a视频在线观看| 中文字幕高清视频| 天天综合网色中文字幕| 在线国产成人影院| 国产欧美一区二区精品忘忧草 | 一区二区三区四区日本视频| 99精品视频一区| 午夜精品一区二区三区av| 久久久久无码国产精品一区李宗瑞| 欧美69xx性欧美| 国产精品调教视频| 黑人狂躁日本妞一区二区三区| 国产精品久久精品视| www.国产成人| 日本电影在线观看网站| 国产精品99久| 欧美国产精品日韩| aa片在线观看视频在线播放| 成年人视频网站| 国产精品久久| 亚洲欧美日韩国产中文专区| 国产精品视频分类| 涩涩视频免费观看| 成人嘿咻视频免费看| 日韩一级黄色大片| 日韩不卡av| 亚洲午夜精品久久久| 中文字幕在线看片| 亚洲视频免费看| 国内精品**久久毛片app| 伊人中文字幕在线观看| 欧美videosex性欧美黑吊| 国产亚洲婷婷免费| 粉嫩av免费一区二区三区| 无码人妻丰满熟妇区bbbbxxxx| √最新版天堂资源网在线| 国产精品电影院| 久久99精品国产99久久| 99精品人妻无码专区在线视频区| 成人免费网站www网站高清| 亚洲国产cao| 日本黄xxxxxxxxx100| 久久综合第一页| 亚洲综合福利| 日韩成人小视频| 黄色aaaaaa| 美女av网站| 精品一区二区三区在线播放视频| 青青草国产精品一区二区| 国产在线视频第一页| 三妻四妾完整版在线观看电视剧 | 国产视频福利一区| 精品久久久久久久久久久久久久久久| 色老头在线一区二区三区| 一级中文字幕一区二区| 一区二区三区四区国产| 亚洲激情欧美色图| 性欧美free| 成人爽a毛片| 欧美一区二区日韩| 国产真人做爰毛片视频直播| 欧美白人最猛性xxxxx| 99免费精品| 久久伊人精品天天| 1024手机在线视频| 都市激情亚洲一区| 在线精品视频一区二区三四| 成人在线看视频| 黄色网址入口| 国产成人午夜片在线观看高清观看| 91色在线观看| 亚洲av永久纯肉无码精品动漫| 欧美极品在线观看| 欧美日韩国产小视频| 亚洲欧洲日本精品| 中文在线一二区| 久久久不卡网国产精品二区| 日本成人三级| 成人av手机在线| 国产欧美日韩视频在线| 日韩在线视频国产| 精品亚洲永久免费| 亚洲资源在线| 欧美成人三级电影在线| 午夜免费看视频| 在线观看的av网站| 国产精品网曝门| 日本一区二区三区四区五区六区| 成年人三级网站| 懂色av中文一区二区三区| 欧美二区在线看| 五月天丁香在线| 激情久久久久久久久久久久久久久久| 97超碰人人看人人| 欧美最猛黑人xxxxwww| 久色成人在线| 国产高清自拍一区| 国产馆av播放| 国产在线播放一区| 四虎一区二区| 天天碰夜夜操| 久久亚洲综合色| 日本中文字幕在线视频观看| 500福利第一精品导航| 亚洲欧洲国产专区| 国产v亚洲v天堂无码久久久| 男人的天堂在线视频| 午夜av电影一区| 国产裸体视频网站| 黄色视屏在线免费观看| 精品福利在线导航| 日韩免费一二三区| 国产欧美日韩| 国产精品久久久久77777| www..69.hd| 青草av.久久免费一区| 日本一区视频在线观看免费| 成人嫩草影院免费观看| 国产精品色一区二区三区| 国产第一页视频| 哥也色在线视频| 日韩欧美三级在线| 久久久久成人网站| 你微笑时很美电视剧整集高清不卡| 韩日精品中文字幕| 亚洲色偷精品一区二区三区| 免费黄网站欧美| 在线免费观看成人网| 中文字幕在线网| 日韩欧美亚洲成人| 黄色片网站免费| 红杏成人性视频免费看| 欧美亚洲一级片| 四虎成人精品在永久在线观看| 国产一区二区三区四区五区美女| 欧美做受777cos| 成在在线免费视频| 制服丝袜成人动漫| 成年人午夜视频| 小处雏高清一区二区三区| 97超碰人人模人人爽人人看| 亚洲av无码一区东京热久久| 亚洲精品555| 欧美一区欧美二区| 麻豆成人在线视频| 99精品网站| 好看的日韩精品| 日本中文视频| 在线免费一区三区| 久久久久亚洲av无码专区 | 都市激情在线视频| 欧美大片日本大片免费观看| 亚洲s码欧洲m码国产av| 亚洲国产91| 中文字幕一区二区三区四区五区六区 | 神马久久桃色视频| 亚洲av成人精品一区二区三区在线播放| 国产一区二区中文字幕| 黄色片一级视频| 欧美黄色三级| 66m—66摸成人免费视频| 国产精品美女视频免费观看软件| 欧美国产国产综合| 亚洲天堂av网站| 国产极品人妖在线观看| 在线播放国产一区二区三区| 国产77777| 93久久精品日日躁夜夜躁欧美| 岛国av免费在线| 清纯唯美激情亚洲| 成人日韩av在线| 男人免费av|