日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

STM32廚房安全監(jiān)測系統(tǒng):ESP01S+OneNET+小程序全鏈路實戰(zhàn)

STM32廚房安全監(jiān)測系統(tǒng):ESP01S+OneNET+小程序全鏈路實戰(zhàn) 做物聯(lián)網(wǎng)畢業(yè)設計或競賽項目很多人不是卡在代碼難寫而是卡在“整條鏈路太長”。以廚房安全監(jiān)測系統(tǒng)為例你需要讓 STM32 采集溫濕度、煙霧濃度通過 ESP01S 將數(shù)據(jù)推到 OneNET 云平臺再在微信小程序里顯示并遠程控制繼電器。單看任何一個節(jié)點網(wǎng)上都能找到教程一旦要求它們聯(lián)調(diào)跑通各種問題就冒出來了——串口亂碼、AT 指令不返回、MQTT 連接失敗、小程序收不到數(shù)據(jù)……這篇文章的目的很明確幫你把這條鏈路完整走通。我會從系統(tǒng)架構(gòu)、硬件選型、STM32 驅(qū)動代碼、ESP01S 接入 OneNET、小程序?qū)?、PCB 設計到常見排錯按真實開發(fā)順序講一遍。內(nèi)容以 STM32F103C8T6 ESP01S OneNET 這套主流方案為主線同樣適用于智能家居、環(huán)境監(jiān)測、宿舍安防等類似選題。1. 這個項目解決什么問題物聯(lián)網(wǎng)畢設的真正難點先說一個觀察很多做 STM32 畢設或競賽項目的同學容易陷入“局部自嗨”的怪圈——傳感器讀取寫得滾瓜爛熟OLED 屏幕顯示也做得很好看但一提到上云就卡殼。為什么因為前面這些只是單片機基本功物聯(lián)網(wǎng)項目真正考核的是“端-云-應用”三層鏈路的數(shù)據(jù)閉環(huán)。所謂“鏈路打通”指的是傳感器數(shù)據(jù)能被 MCU 正確采集MCU 能把數(shù)據(jù)通過串口交給 WiFi 模塊WiFi 模塊能連上路由器、能連上云平臺云平臺上能正確創(chuàng)建產(chǎn)品、設備、數(shù)據(jù)流小程序/APP 能通過云平臺接口讀到設備數(shù)據(jù)、下發(fā)控制指令。任何一環(huán)斷了整個項目都不算完成。這套基于 STM32 的廚房安全監(jiān)測系統(tǒng)適合的讀者包括物聯(lián)網(wǎng)、電子信息、計算機相關(guān)專業(yè)的畢業(yè)生正在挑畢設題目準備參加電子設計競賽、互聯(lián)網(wǎng)、挑戰(zhàn)杯的學生團隊想完整掌握“STM32 云平臺 小程序”全鏈路開發(fā)但又缺乏項目經(jīng)驗的開發(fā)者。項目完成后你的成果物不只是“一個能報警的設備”而是一整套可以演示、答辯、擴展的方案一塊自研 PCB 底板集成了 STM32 最小系統(tǒng)、傳感器接口、繼電器驅(qū)動、ESP01S 座子一套 STM32 標準庫工程包含傳感器驅(qū)動、串口通信、AT 指令控制 WiFi 模塊的邏輯一個 OneNET 云平臺設備實例能生成 APIKey、數(shù)據(jù)流、命令下發(fā)一個微信小程序界面能實時顯示溫度、濕度、煙霧濃度并遠程觸發(fā)聲光報警或排風扇。這套鏈路本身也是物聯(lián)網(wǎng)行業(yè)里非常通用的能力。做完這個項目你已經(jīng)摸清了嵌入式上云的基本方法后續(xù)換傳感器、換 WiFi 模塊、換云平臺都是同一套思路的遷移。2. 系統(tǒng)總體架構(gòu)與核心選型邏輯2.1 四層架構(gòu)從數(shù)據(jù)流的角度看系統(tǒng)分為四層層級作用本項目的具體實現(xiàn)感知層采集廚房環(huán)境數(shù)據(jù)DHT11 溫濕度、MQ-2 煙霧濃度、火焰?zhèn)鞲衅骺刂茖犹幚頂?shù)據(jù)、執(zhí)行本地邏輯STM32F103C8T6 主控、繼電器控制排風扇/電磁閥平臺層數(shù)據(jù)中轉(zhuǎn)、存儲、API 輸出OneNET 云平臺通過 MQTT 協(xié)議接入應用層用戶遠程查看與控制微信小程序這四層不是孤立的。感知層把物理信號變成數(shù)字量控制層負責“本地判斷 遠程上傳”平臺層負責把設備與小程序解耦應用層則給用戶提供可視化界面。2.2 控制邏輯本地邏輯可以這樣設計STM32 每 2 秒采集一次溫度、濕度、煙霧濃度如果煙霧濃度或溫度超過閾值立即打開繼電器控制排風扇或燃氣電磁閥并驅(qū)動蜂鳴器報警無論是否報警數(shù)據(jù)都會通過 ESP01S 上傳到 OneNET。這個“本地閉環(huán)”設計非常重要。它保證即使 WiFi 斷開、云平臺不可用廚房的安全機制依然能工作。很多初學者容易忽略這一點把所有判斷都交給云端結(jié)果網(wǎng)絡一抖設備就“失靈”了。2.3 為什么用 ESP01S 而不是 ESP8266 開發(fā)板ESP01S 本質(zhì)上是 ESP8266 芯片的一個最小模組引出 8 個引腳其中可用 GPIO 只有 2 個。它沒有獨立的 USB 轉(zhuǎn)串口電路也沒有穩(wěn)壓和下載電路看起來對新手不太友好。但它有兩個明顯優(yōu)勢便宜單模塊成本低適合做產(chǎn)品化的 PCB出廠自帶 AT 固件不需要額外寫 ESP8266 的固件把它當“串口轉(zhuǎn) WiFi 透明通道”來用就行。在畢設場景里ESP01S 是最省事的方案STM32 通過串口發(fā) AT 指令ESP01S 負責 WiFi 連接與 MQTT 協(xié)議處理所有業(yè)務邏輯都在 STM32 上完成。如果你選用的是整塊 NodeMCU 開發(fā)板也不是不行但體積大、集成度低做 PCB 時不好安排位置。2.4 為什么選 OneNETOneNET 是中移物聯(lián)網(wǎng)的開放平臺對校園用戶和開發(fā)者比較友好。它的優(yōu)勢在于不需要自己買服務器、搭后端直接在平臺上創(chuàng)建設備生成鑒權(quán)信息提供 MQTT 接入方式兼容性好數(shù)據(jù)流和命令下發(fā)清晰適合展示畢設的“端到端”能力。相比自建 MQTT 服務器OneNET 明顯更適合課程設計和競賽場景。它讓項目可以聚焦在“設備端怎么發(fā)數(shù)據(jù)、應用端怎么讀數(shù)據(jù)”而不是花大量精力去維護服務器。3. 硬件設計與原理圖要點3.1 主控與核心器件本系統(tǒng)主控采用 STM32F103C8T6這是 STM32 家族里最常用的入門型號之一。它基于 Arm Cortex-M3 內(nèi)核主頻 72MHz內(nèi)置 64KB Flash、20KB SRAM擁有 3 個 USART、2 個 SPI、2 個 I2C、多個定時器和 ADC。為什么夠用傳感器采集是模擬量 單總線協(xié)議PWM 或 ADC 就能解決與 ESP01S 通信只需要一個串口控制繼電器、蜂鳴器只需要 GPIO不需要跑操作系統(tǒng)裸機輪詢即可。其他核心器件包括器件作用備注DHT11采集溫度、濕度單總線協(xié)議3 根線MQ-2 煙霧傳感器檢測可燃氣體/煙霧濃度模擬量輸出接到 ADC火焰?zhèn)鞲衅鳈z測明火紅外光譜數(shù)字或模擬量輸出繼電器模塊控制排風扇、電磁閥5V 或 3.3V 觸發(fā)注意驅(qū)動電流蜂鳴器本地聲光報警有源蜂鳴器更簡單ESP01SWiFi 通信3.3V 供電注意電流需求3.2 傳感器選型邏輯廚房安全的核心是“燃氣泄漏”和“溫度異?!?。MQ-2 對液化氣、丙烷、氫氣等可燃氣體比較敏感而且價格低、資料多非常適合畢設演示。它輸出模擬電壓煙霧濃度越高電壓越大接 STM32 的 ADC 引腳即可讀取。DHT11 精度雖然不高但勝在協(xié)議簡單、驅(qū)動例程到處都是用來做環(huán)境溫濕度采集完全夠用。如果你想讓項目更有“工程感”可以換成 DHT22 或 SHT30但這屬于后期優(yōu)化不影響整體架構(gòu)?;鹧?zhèn)鞲衅髦饕袃煞N一種輸出數(shù)字量檢測到火焰時輸出低電平一種輸出模擬量可以判斷火焰強度。建議接 ADC 引腳這樣既能判斷“有火”也能看“火勢”。它的檢測距離有限實際擺放時要靠近灶臺區(qū)域。3.3 電源方案與繼電器控制整個系統(tǒng)的供電可以選擇 USB 5V 輸入也可以選擇 220V 轉(zhuǎn) 5V 的電源模塊。這里有一個關(guān)鍵點ESP01S 的工作電流瞬間可能達到 200mA 以上如果用 STM32 板載的 3.3V LDO 給它供電WiFi 連接瞬間大概率會復位??煽康淖龇ㄊ?V 輸入通過獨立的 AMS1117-3.3 穩(wěn)壓芯片給 ESP01S 供電STM32 的 3.3V 也建議單獨用一路 LDO。繼電器驅(qū)動不要直接用 STM32 的 GPIO 去推。繼電器線圈屬于感性負載驅(qū)動時需要三極管或 ULN2003并且線圈兩端要并聯(lián)續(xù)流二極管否則斷開瞬間的反向電動勢可能損壞 GPIO。常用驅(qū)動結(jié)構(gòu)GPIO 輸出高電平經(jīng)限流電阻接 NPN 三極管基極繼電器線圈接在三極管集電極與 5V 之間線圈兩端并聯(lián) 1N4007 二極管負極接 5V。3.4 電路設計要點原理圖設計需要注意幾個細節(jié)STM32F103C8T6 的 BOOT0 接 10K 電阻到 GND避免上電后意外進入系統(tǒng)存儲器模式NRST 引腳接 100nF 電容到地VDD 每個引腳就近放一個 100nF 去耦電容8MHz 晶振的兩個負載電容通常選 22pF 左右但準確值要根據(jù)芯片數(shù)據(jù)手冊中的負載電容參數(shù)計算公式是 CL (C1 * C2) / (C1 C2) 寄生電容ESP01S 的 VCC 引腳需要 3.3V且建議在模塊附近放一個 10uF 或 100uF 電解電容應對 WiFi 發(fā)射時的電流尖峰。如果你用的是立創(chuàng)EDA嘉立創(chuàng)EDA畫完原理圖后可以直接檢查 ERC、生成 PCB然后在線下單打樣整套流程對新手比較友好網(wǎng)上相關(guān)教程也很多。4. STM32 開發(fā)環(huán)境搭建4.1 開發(fā)工具鏈本文代碼基于 STM32 標準外設庫Standard Peripheral Library開發(fā)環(huán)境是 Keil MDK。這套組合雖然是“老配方”但資料多、社區(qū)成熟非常適合課程設計和競賽快速推進。需要準備的工具工具說明Keil MDK 5.x編寫、編譯、下載代碼STM32F1xx 器件支持包在 Keil 中安裝包含芯片型號定義ST-Link 驅(qū)動 / J-Link 驅(qū)動下載調(diào)試器驅(qū)動STM32 標準庫提供外設驅(qū)動源碼STM32 ST-LINK Utility用于連接異常時的芯片解鎖與燒錄串口調(diào)試助手查看 MCU 打印日志、調(diào)試 AT 指令4.2 Keil 安裝 C51 與 STM32 共存問題很多同學電腦上之前裝過 Keil C51再裝 Keil MDK 時兩個軟件會默認裝到不同目錄。這里容易出的問題是打開一個項目時界面顯示沒有對應的編譯器或芯片包。解決辦法如果以 C51 為主先安裝 Keil C51再安裝 Keil MDK并把 C51 的安裝目錄指定為 Keil 安裝目錄下的 UV4 文件夾這樣兩者可以共存在 MDK 中打開項目時需要在 Project 窗口右鍵選擇 Manage Project Items確認編譯器版本是 ARM Compiler而不是 C51 編譯器下載報錯Error: Flash Download failed - Cortex-M3通常是因為沒有在 Options for Target 的 Debug 頁面配置 Flash Download或者芯片型號選錯。這些問題的本質(zhì)是“兩個版本 Keil 的工程文件結(jié)構(gòu)不同 芯片支持包缺失”。排查時先看 Tools 菜單下的 Pack Installer確認是否安裝了對應的器件支持包。4.3 STM32 標準庫工程結(jié)構(gòu)標準庫工程的典型結(jié)構(gòu)如下Project/ ├── Core/ │ ├── inc/ │ └── src/ ├── HAL/ # 標準庫使用 SystemInit 啟動文件 ├── STM32F10x_FWLib/ │ ├── inc/ │ └── src/ ├── User/ │ ├── main.c │ ├── stm32f10x_it.c │ └── system_stm32f10x.c └── MDK-ARM/新建工程時建議手動建立以下幾個用戶文件bsp_usart.c/h串口初始化與重定向 printfbsp_dht11.c/hDHT11 驅(qū)動bsp_adc.c/hADC 采集模擬量esp01s_at.c/h封裝 AT 指令發(fā)送與 MQTT 連接流程app_task.c/h主循環(huán)業(yè)務邏輯。這樣組織的好處是傳感器驅(qū)動、WiFi 通信、業(yè)務邏輯相互獨立后期更換傳感器或云平臺時不用大面積改代碼。5. 傳感器驅(qū)動與數(shù)據(jù)采集代碼5.1 DHT11 溫濕度讀取DHT11 是單總線器件通信時序相對固定主機先拉低總線至少 18ms再釋放總線然后讀取 40 位數(shù)據(jù)濕度整數(shù)、濕度小數(shù)、溫度整數(shù)、溫度小數(shù)、校驗和。下面的代碼是一個簡化版示例重點看協(xié)議流程而不是追求完整產(chǎn)品級容錯。// 文件路徑User/bsp_dht11.c #include bsp_dht11.h #include stm32f10x.h #define DHT11_GPIO_PORT GPIOB #define DHT11_GPIO_PIN GPIO_Pin_0 #define DHT11_RCC RCC_APB2Periph_GPIOB static uint8_t dht11_data[5]; static void DHT11_GPIO_Output(void) { GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin DHT11_GPIO_PIN; GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz; GPIO_Init(DHT11_GPIO_PORT, GPIO_InitStructure); } static void DHT11_GPIO_Input(void) { GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin DHT11_GPIO_PIN; GPIO_InitStructure.GPIO_Mode GPIO_Mode_IN_FLOATING; GPIO_Init(DHT11_GPIO_PORT, GPIO_InitStructure); } static uint8_t DHT11_ReadByte(void) { uint8_t i, byte 0; for (i 0; i 8; i) { while (GPIO_ReadInputDataBit(DHT11_GPIO_PORT, DHT11_GPIO_PIN) RESET); delay_us(40); if (GPIO_ReadInputDataBit(DHT11_GPIO_PORT, DHT11_GPIO_PIN) SET) { byte (byte 1) | 0x01; } else { byte (byte 1); } while (GPIO_ReadInputDataBit(DHT11_GPIO_PORT, DHT11_GPIO_PIN) SET); } return byte; } uint8_t DHT11_ReadData(float *temp, float *humi) { uint8_t i; DHT11_GPIO_Output(); GPIO_ResetBits(DHT11_GPIO_PORT, DHT11_GPIO_PIN); delay_ms(20); GPIO_SetBits(DHT11_GPIO_PORT, DHT11_GPIO_PIN); delay_us(30); DHT11_GPIO_Input(); while (GPIO_ReadInputDataBit(DHT11_GPIO_PORT, DHT11_GPIO_PIN) SET); while (GPIO_ReadInputDataBit(DHT11_GPIO_PORT, DHT11_GPIO_PIN) RESET); while (GPIO_ReadInputDataBit(DHT11_GPIO_PORT, DHT11_GPIO_PIN) SET); for (i 0; i 5; i) { dht11_data[i] DHT11_ReadByte(); } if ((dht11_data[0] dht11_data[1] dht11_data[2] dht11_data[3]) dht11_data[4]) { *humi (float)((dht11_data[0] 8 | dht11_data[1]) 8); *temp (float)((dht11_data[2] 8 | dht11_data[3]) 8); return 1; } return 0; }這里有幾個容易出錯的地方起始信號的低電平時間必須足夠短了傳感器不響應常見問題是時序函數(shù)延時不準讀取每一位時40us 的判斷是區(qū)分“0”和“1”的關(guān)鍵不能死等校驗和的判斷不能省否則干擾環(huán)境下會出現(xiàn)離譜數(shù)據(jù)。5.2 MQ-2 煙霧濃度采集MQ-2 輸出的是模擬電壓STM32 采集它只需要 ADC 外設。// 文件路徑User/bsp_adc.c #include bsp_adc.h #include stm32f10x.h void ADC_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; ADC_InitTypeDef ADC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_ADC1, ENABLE); GPIO_InitStructure.GPIO_Pin GPIO_Pin_1; GPIO_InitStructure.GPIO_Mode GPIO_Mode_AIN; GPIO_Init(GPIOA, GPIO_InitStructure); ADC_InitStructure.ADC_Mode ADC_Mode_Independent; ADC_InitStructure.ADC_ScanConvMode DISABLE; ADC_InitStructure.ADC_ContinuousConvMode DISABLE; ADC_InitStructure.ADC_ExternalTrigConv ADC_ExternalTrigConv_None; ADC_InitStructure.ADC_DataAlign ADC_DataAlign_Right; ADC_InitStructure.ADC_NbrOfChannel 1; ADC_Init(ADC1, ADC_InitStructure); ADC_Cmd(ADC1, ENABLE); ADC_ResetCalibration(ADC1); while (ADC_GetResetCalibrationStatus(ADC1)); ADC_StartCalibration(ADC1); while (ADC_GetCalibrationStatus(ADC1)); } uint16_t MQ2_Read(void) { ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_55Cycles5); ADC_SoftwareStartConvCmd(ADC1, ENABLE); while (ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC) RESET); return ADC_GetConversionValue(ADC1); }ADC 采樣值是一個 0 到 4095 的數(shù)字量對應 0 到 3.3V。如果你需要電壓值可以折算float voltage (float)adc_value * 3.3f / 4095.0f;在實際項目里直接把原始 ADC 值作為“煙霧濃度指標”也可以因為報警閾值只需要一個相對量標定好“正常環(huán)境下的基準值”和“報警環(huán)境下的采樣值”在這個區(qū)間內(nèi)配置閾值即可。5.3 串口調(diào)試信息輸出調(diào)試離不開串口。推薦把 printf 重定向到串口 1這樣可以直接在串口助手看數(shù)據(jù)。// 文件路徑User/bsp_usart.c #include bsp_usart.h #include stm32f10x.h #include stdio.h void USART1_Init(uint32_t baudrate) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_USART1, ENABLE); GPIO_InitStructure.GPIO_Pin GPIO_Pin_9; 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; GPIO_InitStructure.GPIO_Mode GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA, GPIO_InitStructure); USART_InitStructure.USART_BaudRate baudrate; 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_Cmd(USART1, ENABLE); } int fputc(int ch, FILE *f) { while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) RESET); USART_SendData(USART1, (uint8_t)ch); return ch; }串口調(diào)試時建議保持固定波特率比如 115200。如果發(fā)現(xiàn)亂碼優(yōu)先檢查串口助手的波特率和單片機初始化參數(shù)是否一致。6. ESP01S 接入 OneNET 云平臺的完整實現(xiàn)6.1 ESP01S 出廠 AT 固件的使用前提ESP01S 出廠一般刷好了 AT 固件使用前先用 USB 轉(zhuǎn) TTL 模塊連接它確認能收到AT回復OK。常見的 AT 固件版本不同指令集也有差異。這里用一個保守但穩(wěn)妥的說法ESP8266 官方 AT 指令集經(jīng)過了多個版本迭代支持 MQTT 的指令在不同版本中格式不完全一致。如果你的模塊不支持ATMQTTCONN這類指令可以先用串口助手把固件升級到支持 MQTT 的版本或者使用舊的 TCP 透傳方式連接 OneNET。無論固件版本如何調(diào)試順序都是固定的配置 WiFi 模式連接路由器建立 TCP 或 MQTT 連接發(fā)送/接收數(shù)據(jù)。6.2 先用串口助手手動聯(lián)調(diào) AT 指令在寫 STM32 代碼之前強烈建議先用 USB 轉(zhuǎn) TTL 模塊把 ESP01S 接電腦用串口助手手動敲一遍指令。這一步能幫你確認 ESP01S 的 AT 指令格式和 OneNET 接入?yún)?shù)避免后面代碼調(diào)試時分不清是“指令寫錯”還是“網(wǎng)絡問題”。典型流程如下AT # 回復 OK ATCWMODE1 # 回復 OK設置為 STA 模式 ATCWJAP你的WiFi名,你的WiFi密碼 # 回復 WIFI GOT IP # 連接 OneNET 服務器 ATMQTTUSERCFG0,1,clientId,username,password,0,0, ATMQTTCONN0,host地址,端口,1關(guān)于 OneNET 的接入?yún)?shù)這里需要特別注意。OneNET 平臺有多個接入版本舊版多協(xié)議接入的 MQTT 參數(shù)與新版 OneNET Studio 不完全相同舊版多協(xié)議接入時clientId、username、password 由平臺提供的設備信息生成新版 Studio 則更強調(diào)產(chǎn)品 ID、設備名稱、設備密鑰的組合關(guān)系不同版本的接入域名和端口也可能不同。所以我的建議是不要憑網(wǎng)上某篇文章里的 IP 和端口直接抄而是登錄 OneNET 控制臺找到“設備接入”或“MQTT 接入”頁面以平臺給出的實際接入點為準。這個細節(jié)很多初學者會踩坑也是 ESP8266/ESP01S 連接 OneNET 失敗的高頻原因之一。6.3 STM32 通過串口控制 ESP01S 的代碼手動調(diào)試通過后就可以把 AT 指令封裝到 STM32 代碼里。ESP01S 與 STM32 的接線方式STM32ESP01SPA2USART2 TXRXPA3USART2 RXTX3.3V獨立穩(wěn)壓VCCGNDGND10K 上拉電阻CH_PD/EN下面這段代碼演示了如何使用串口 2 發(fā)送 AT 指令并等待 ESP01S 返回指定關(guān)鍵字。// 文件路徑User/esp01s_at.c #include esp01s_at.h #include stm32f10x.h #include string.h #include stdio.h extern UART_HandleTypeDef huart2; // 標準庫項目請?zhí)鎿Q為 USART2 static uint8_t rx_buffer[512]; static uint16_t rx_len 0; void ESP01S_SendCmd(const char *cmd) { USART_SendString(USART2, (uint8_t *)cmd); } uint8_t ESP01S_WaitResponse(const char *keyword, uint16_t timeout) { // 簡化實現(xiàn)輪詢接收緩沖區(qū)判斷是否包含關(guān)鍵字 // 真實項目中建議使用狀態(tài)機 環(huán)形緩沖區(qū) } uint8_t ESP01S_ConnectWiFi(const char *ssid, const char *pwd) { char cmd[128]; sprintf(cmd, ATCWJAP\%s\,\%s\\r\n, ssid, pwd); ESP01S_SendCmd(cmd); return ESP01S_WaitResponse(OK, 10000); } uint8_t ESP01S_ConnectMQTT(const char *clientId, const char *username, const char *password, const char *host, int port) { char cmd[256]; sprintf(cmd, ATMQTTUSERCFG0,1,\%s\,\%s\,\%s\,0,0,\\\r\n, clientId, username, password); ESP01S_SendCmd(cmd); if (ESP01S_WaitResponse(OK, 3000)) { sprintf(cmd, ATMQTTCONN0,\%s\,%d,1\r\n, host, port); ESP01S_SendCmd(cmd); return ESP01S_WaitResponse(CONNACK, 10000); } return 0; } uint8_t ESP01S_PublishData(float temp, float humi, uint16_t gas) { char payload[128]; sprintf(payload, {\temperature\:%.1f,\humidity\:%.1f,\gas\:%d}, temp, humi, gas); char cmd[192]; sprintf(cmd, ATMQTTPUB0,\數(shù)據(jù)流主題名\,\%s\,0,0\r\n, payload); ESP01S_SendCmd(cmd); return ESP01S_WaitResponse(OK, 3000); }這段代碼里的USART_SendString和USART2在本示例中約定在bsp_usart.c中實現(xiàn)。標準庫環(huán)境下需要為串口 2 單獨寫初始化與串口 1 布局一致。實際應用中AT 指令的響應不是一次就發(fā)完的。最推薦的方案是串口接收中斷 環(huán)形緩沖區(qū)在主循環(huán)中解析緩沖區(qū)內(nèi)容。純阻塞式等待在局域網(wǎng)環(huán)境下問題不大但 Wi-Fi 環(huán)境不穩(wěn)定時一旦丟包程序就會卡死。6.4 OneNET 平臺配置與數(shù)據(jù)流OneNET 平臺側(cè)的操作大致是注冊賬號并登錄 OneNET 控制臺創(chuàng)建產(chǎn)品選擇 MQTT 協(xié)議在產(chǎn)品下添加設備記錄設備 ID、鑒權(quán)信息查看接入文檔確定 MQTT broker 地址、端口和 Topic 格式在一段時間內(nèi)收集設備上報的數(shù)據(jù)然后在平臺添加或確認數(shù)據(jù)流模板。這里有幾個容易混淆的概念數(shù)據(jù)流Datastream描述一個設備的某一類數(shù)據(jù)比如 “temperature”數(shù)據(jù)點Datapoint某個時間點的具體數(shù)值命令/消息下發(fā)從云平臺或小程序向設備發(fā)送控制指令。聯(lián)動小程序時上報數(shù)據(jù)可以直接按 JSON 格式打包平臺側(cè)根據(jù)數(shù)據(jù)流模板解析。如果平臺沒有預定義模板只要在發(fā)布時使用相同的 Topic 和字段名也能在設備日志里看到原始數(shù)據(jù)。6.5 ESP01S 發(fā)送 TCP 消息與手機接收熱搜詞里有“esp01s發(fā)送tcp消息 手機”這其實是 ESP01S 最基礎(chǔ)的用法通過ATCIPSTART建立 TCP 連接把數(shù)據(jù)發(fā)到某個服務器或手機 App 監(jiān)聽端口。它在局域網(wǎng)里很容易驗證比如用手機上的網(wǎng)絡調(diào)試助手工具監(jiān)聽端口ESP01S 就能把數(shù)據(jù)推過去。但在本項目里這種“點對點 TCP”并不適合做完整畢設原因有二手機沒有公網(wǎng) IP 時無法直接接收局域網(wǎng)外的 ESP01S 數(shù)據(jù)TCP 透傳沒有鑒權(quán)、沒有歷史存儲不夠“平臺化”。OneNET 的價值正是解決這兩個問題把數(shù)據(jù)存儲在云端小程序通過 API 訂閱設備側(cè)只維護一條 MQTT 長連接。7. 微信小程序控制端設計與對接思路7.1 小程序架構(gòu)微信小程序端有兩種常見做法直連 OneNET API通過 HTTP 請求獲取設備最新數(shù)據(jù)點再展示到頁面上。優(yōu)點是架構(gòu)簡單缺點是直接暴露平臺訪問密鑰到前端有安全風險。個人演示項目可以接受但正式項目不建議。自建后端中轉(zhuǎn)小程序請求自己的后端接口后端再與 OneNET 交互。更安全但需要一臺服務器或云函數(shù)。對課程設計和競賽而言第一種方案演示速度最快。OneNET 的 API 一般支持按產(chǎn)品設備和數(shù)據(jù)流查詢最新數(shù)據(jù)返回 JSON 后在小程序里渲染即可。7.2 頁面與功能一個典型的廚房安全監(jiān)測小程序包含三個頁面數(shù)據(jù)總覽頁卡片式展示溫度、濕度、煙霧濃度設備控制頁排風扇開關(guān)、報警復位按鈕設置頁上報閾值、WiFi 信息如果設備端支持遠程配置。需要特別提醒小程序端必須處理“設備離線”狀態(tài)。如果 ESP01S 斷開連接OneNET 會標記設備離線小程序顯示的數(shù)據(jù)可能是舊數(shù)據(jù)此時界面要提示“設備離線”而不是給用戶一個誤以為實時的數(shù)值。7.3 命令下發(fā)原理遠程控制的本質(zhì)是“向設備發(fā)布一條消息”。在 OneNET 里這通常表現(xiàn)為云平臺向設備的訂閱 Topic 下發(fā)消息ESP01S 收到后通過串口發(fā)給 STM32STM32 解析后控制繼電器或蜂鳴器。因此STM32 端不僅要有“上報數(shù)據(jù)”的代碼還要有“接收下行消息”的解析邏輯。這需要用到串口接收中斷和消息隊列復雜度比單向上報高一些。做的時候先保證上報能通再擴展下行控制不要一上來就同時做雙向通信。8. PCB 設計從原理圖到打板8.1 設計流程如果項目要出實物板推薦用嘉立創(chuàng)EDA立創(chuàng)EDA這類國產(chǎn)工具流程短、上手快而且可以直接對接打板服務?;玖鞒绦陆üこ坍嬙韴D添加 STM32F103C8T6、晶振、復位、電源、傳感器接口、繼電器驅(qū)動等器件進行 ERC 電氣規(guī)則檢查修正未連接網(wǎng)絡生成 PCB先擺好核心器件位置再進行布線鋪銅、添加絲印、檢查開路短路導出 Gerber 文件上傳打板也可以直接在 EDA 內(nèi)使用在線下單。8.2 PCB 布局與布線要點廚房安全監(jiān)測板屬于混合電路板既有 3.3V 數(shù)字電路又有繼電器這樣的功率電路。布局時最忌諱把大電流線路與敏感傳感器線攪在一起。幾個實用原則按模塊分區(qū)STM32 最小系統(tǒng)放中間ESP01S 放一側(cè)繼電器放另一側(cè)傳感器接口放邊緣電源走線加粗5V 和 GND 走線建議 30mil 以上繼電器控制線至少在 20mil 以上信號線 12mil 即可晶振盡量靠近 STM32 的 OSC 引腳走線要短且不要平行長距離走線模擬地和數(shù)字地可以先用磁珠或 0Ω 電阻連接重點保證 MQ-2 的 ADC 采樣穩(wěn)定絲印字號不要太小打板回來后要能看清接口標識繼電器下方銅皮要留足必要時加開窗避免散熱和機械應力導致焊盤脫落。8.3 常見 PCB 設計問題熱搜詞里有很多 PCB 相關(guān)問題比如“gerber 文件轉(zhuǎn)成 pcb 文件”“pcb 板廠鉆孔工序”“pcb 添加 ole 文件對象”等。站在新手角度最容易忽略的是下面幾個Gerber 文件是生產(chǎn)文件不是可以繼續(xù)編輯的 PCB 工程文件。需要修改板子時要回到 EDA 工程里改而不是去處理 Gerber打板時板廠會按廠商件和標準工藝區(qū)分最小線寬、線距、孔徑。下單前先查看所選工藝參數(shù)不能想畫多細都行鉆孔文件Drill通常和 Gerber 一起打包轉(zhuǎn)格式時不要把鉆孔文件漏掉否則板子無法打孔PCB 絲印模糊通常是因為字體太小或線寬過細設計階段就要檢查絲印規(guī)則。9. 常見問題與排查思路整理一份完整排查表覆蓋這套系統(tǒng)從焊接、燒錄到上云過程中最高頻的問題問題現(xiàn)象可能原因排查方式解決方案error: no stm32 target found! if your product embeds debug authenticationST-Link 連接不穩(wěn)定、芯片鎖死、供電不足檢查 SWDIO/SWCLK 和 GND 接線測 3.3V 電壓按住復位再點下載用 STM32 ST-LINK Utility 連接按復位期間燒錄必要時設置 BOOT0 拉高Keil 編譯報錯找不到器件未安裝 STM32F1 器件支持包打開 Pack Installer 確認在 Pack Installer 中安裝 STM32F1xx 系列支持包Keil 打開 C51 項目后無法編譯 STM32編譯器版本不對查看 Options for Target 中的編譯器設置選擇 ARM Compiler確保工程文件是 MDK 工程串口打印亂碼波特率不匹配檢查串口助手和 MCU 初始化波特率統(tǒng)一為 115200ESP01S 上電后不響應 AT供電不足 或 CH_PD 未拉高測量 VCC 電壓是否穩(wěn)定 3.3V檢查 CH_PD 引腳使用獨立 3.3V 穩(wěn)壓CH_PD 接 10K 上拉ESP01S 連接 WiFi 失敗SSID/密碼錯誤、路由器是 5GHz 或加密方式不支持檢查 AT 返回的 ERROR 碼使用 2.4GHz 路由器確認賬號密碼必要時重置 WiFi 配置OneNET 連接失敗設備鑒權(quán)信息不對、接入地址端口錯誤查看 MQTT CONNECT 返回碼以 OneNET 控制臺接入文檔的參數(shù)為準不要照抄老教程數(shù)據(jù)上傳成功但平臺無數(shù)據(jù)Topic 或數(shù)據(jù)流字段名不一致在平臺查看設備日志和原始上報數(shù)據(jù)統(tǒng)一 Topic 與 JSON 字段名小程序設備離線ESP01S 掉線或網(wǎng)絡異常檢查 ESP01S 供電與 WiFi 信號增加斷線重連機制定時發(fā)送心跳繼電器不動作GPIO 驅(qū)動能力不足或三極管接線錯誤測量繼電器控制端電壓使用三極管/ULN2003 驅(qū)動并聯(lián)續(xù)流二極管PCB 下載程序時報芯片找不到焊接虛焊、BOOT0 未接地、晶振不起振檢查 STM32 最小系統(tǒng)焊接和供電重新焊接關(guān)鍵引腳檢查晶振和復位電路PCB 打樣回來后絲印看不清絲印線寬過細在 EDA 中檢查絲印層調(diào)整絲印最小線寬一般在 10mil 以上這里特別要提一下stm32 virtual com port 嘆號這個問題。很多 STM32 板子通過 USB 虛擬串口連接電腦時設備管理器里會出現(xiàn)黃色感嘆號本質(zhì)是缺少驅(qū)動。遇到這種情況先裝 STM32 的 VCPVirtual COM Port驅(qū)動再檢查 USB 線是否只供電沒有信號線。還有一種情況是板子的 USB D 上拉電阻沒有接好這種屬于硬件問題。10. 最佳實踐與工程建議10.1 代碼層面的工程化建議不要把所有邏輯都塞在 main 函數(shù)的 while 循環(huán)里。推薦至少拆成幾個模塊傳感器采集模塊負責讀取原始數(shù)據(jù)并校驗數(shù)據(jù)上報模塊負責拼裝 JSON、通過串口發(fā)送 AT 指令控制模塊負責本地閾值判斷、繼電器和蜂鳴器動作串口接收模塊負責處理 ESP01S 返回的下行數(shù)據(jù)。每個模塊之間通過結(jié)構(gòu)體或全局狀態(tài)機傳遞數(shù)據(jù)。這樣做的好處是調(diào)試時能快速定位問題也方便答辯時講清楚代碼結(jié)構(gòu)。另外一定要打開編譯器的 warning 提示盡量做到零 warning。很多人把 warning 當回車鍵跳過結(jié)果上電才發(fā)現(xiàn)某個變量未初始化產(chǎn)生隨機值導致系統(tǒng)行為不可預期。10.2 安全邊界廚房安全系統(tǒng)的核心價值是“不安全時能報警”而不是“網(wǎng)絡通暢時才安全”。因此設計時要注意本地判斷優(yōu)先即使無法上云也要保證本地蜂鳴器和繼電器能響應斷電恢復意外斷電后重新上電系統(tǒng)能自動恢復初始化而不是停在異常狀態(tài)傳感器臟污處理MQ-2 長時間使用會漂移要定期校準基準值或加自動標定邏輯閾值可配置默認閾值只是演示值正式使用要根據(jù)安裝環(huán)境重新標定。10.3 不斷線重連ESP01S 在長時間運行時可能掉線。工程上要有一個“連接狀態(tài)檢測 自動重連”的機制定期檢查是否收到 OneNET 的響應如果超過 N 秒沒有消息就重新執(zhí)行 WiFi 連接和 MQTT 連接流程。這里要注意反復快速重連可能會被路由器或云平臺臨時封禁所以重連間隔要加退避比如第一次 5 秒、第二次 10 秒、之后 30 秒。10.4 答辯與文檔準備如果是畢業(yè)設計除了代碼跑通還要提前準備好以下材料系統(tǒng)框圖、時序圖、狀態(tài)機圖關(guān)鍵模塊的測試記錄比如 AT 指令聯(lián)調(diào)日志、數(shù)據(jù)上報日志PCB 原理圖、Gerber 文件、BOM 清單小程序截圖和演示視頻。關(guān)鍵是講清楚“我為什么這么做”而不是只講“我做了什么”。比如為什么選擇 MQTT 而不是 HTTP為什么本地也要做判斷為什么電源要獨立穩(wěn)壓這些問題在答辯時被問到的概率極高。10.5 擴展方向這套系統(tǒng)做完之后可擴展的方向很多把 DHT11 換成 SHT30提高溫濕度精度加入 OLED 顯示屏本地可視化數(shù)據(jù)接入攝像頭實現(xiàn)遠程廚房看護換成 4G 模塊如合宙 Air724 等擺脫 WiFi 依賴把 OneNET 換成自建 MQTT 服務器學習更底層的數(shù)據(jù)流轉(zhuǎn)過程。11. 總結(jié)STM32 廚房安全監(jiān)測系統(tǒng)不是一個“高大上”的選題但它非常典型它把單片機編程、傳感器接口、串口通信、WiFi 模塊 AT 指令、云平臺 MQTT 接入、小程序 API 調(diào)用、PCB 設計這些物聯(lián)網(wǎng)核心技術(shù)點串成了一個完整閉環(huán)。真正值得你投入精力的不是背下某一條 AT 指令也不是記住某個平臺按鈕的位置而是理解“端-云-應用”這條數(shù)據(jù)鏈路的連接方式。做完這個項目你手里就有一套可以遷移到很多物聯(lián)網(wǎng)場景的“骨架”。建議動手順序也很明確先用最小舵機跑通單點上報再做本地控制最后接小程序和 PCB。這樣每一步都有可驗證的產(chǎn)出不容易卡在最后聯(lián)調(diào)階段。建議把這篇文章收藏備用按章節(jié)逐步實踐。如果你遇到某個環(huán)節(jié)卡住優(yōu)先對照“常見問題與排查思路”表格絕大多數(shù)問題出在供電、接線、串口參數(shù)和平臺鑒權(quán)這四類原因上。祝你的廚房安全系統(tǒng)順利落地。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
午夜舔阴达高潮视频免费看| 亚洲欧美大| 精品人妻一区二区三区在线视频不卡| 亚洲图片欧美偷拍| 国产精品视频内谢女人| 亚洲欧美成人在线| 久久噜| 欧美亚洲在线| 日韩黄色成人性爱| 天天干天天做| 97香焦色区| 综合91网| 亚川综合视频| 欧美综合色站| 97天天摸天天爽| 涩亚洲欧洲| 综合伊人网12色| 丁香五月综合| 性高潮久久久| www超碰| 操逼999| 91热热色| 欧美日韩国产色图在线| 中文字幕欧美精品亚洲日韩蜜臀| 欧美日韩另类激情图片| 99热9| 亚洲第一视频 欧美风情 日韩| 乱伦一区二区三区‘| 大香蕉免| 久久精品 六十路 熟女 欧美| 另类综合另类| 欧美不卡五十路| 91粉芽高清在线一区二区| 亚洲蜜臀视频精品久久| 亚洲精品第一| 青青草原伊人网| 五月婷婷激情| 综合av社区| 欧美99999| 日韩不卡av一二三| 乱欲视频| 热G综合热G中文| 91日本在线观看| 久热网| 屌逼麻豆| 97Ai亚洲| 亚洲AV色图一区| 日韩女模中文造逼| 亚洲无码视频免费在线观看网址!| 女优视频第10页| 秋霞 色色| 青青草吊丝| 国产一区二区精品久久99| 亚洲91射| 夜夜青青无码影院| 嗯嗯啊啊亚欧精品| 中文字幕五区| 啪啪一区| 亚洲色图日韩精品| 隔壁邻居波多野结衣中文字幕| www.成人无码| 欧美精品三区| 91处女视频在线观看| 丁香五月色情| 亚洲高潮少妇| 久操大香蕉手机视频在线看| 最新欧美色网| 伊人丁香五月婷婷| 国产成人无码a| 欧美激情亚洲| 午夜毛片亚洲精品片国产久久久| 少妇500双飞99| 精品人人| A男人的天堂| 黄色高清久久无码依人| 中国小夫妻勾搭露脸淫荡对白| 超91综合网| 日本午夜福利视频| 极品一区二区三区免费| 97精品第3页| 日本亚洲vr欧美不卡高清专区| 亚洲AV免费在线| 婷色五月天| 9超碰免费| 激情丁香五月| 少妇色综合| 欧美一级专区免费大片| 狠狠躁AV| 操死我了啊啊啊| 欧美第五页| 人人操人人操人妻人| 国产美女自拍视频| 国产强奸无码乱伦| 啪啪一区| 男人天堂无码| 久操国产在线| 91香蕉视频在线观看免费| 亚洲精品一区二区精品| 国产精品一区二区三区四区五区| 亚洲AV在线资源| 噜噜噜噜天天狠狠| 亚洲中文一区二区三区| 久久亚洲精品成人av| 欧美亚洲另类在线蜜桃| 国产人伦精品一区二区三区| 欧美高潮| 少妇高潮对白在线观看| 2019AV天堂| 欧美国产操逼| 无码人妻丰满热妇又大又粗| 超碰免费97| 91小视频| 久久这里都是精品| 亚洲国产中文字幕| 无码在线亚洲| 韩国一区二区精品亚洲| 国产精品视屏| 欧美激情另类一区二区| 后入内射蜜桃臀| 亚州综| 二男一女成人A片| 精品一区96| 国产精品扒开腿做爽爽爽视频| 97免费视频在线| 口爆吞精在线观看| 五十路熟女工口 | 在线毛片片免费观看| 久久性爱城| 久久精品女同亚洲女同13| 国产中文大片资源中文字幕 | 成人影 天天操 亚洲| 欧美劲爆第一页| 日本黄 R色 成 人网站| 国产偷人妻精品一区二区在线| 青娱乐福利99| 日本久久999| 97视频900| 精品久久青青草| 亚洲一区二区三区欧美日韩| 欧美极品美女aaaaaa级黄片| 婷婷性爱| 欧美色图私拍91| JuliaAnn丝袜熟女系列| 精品久一区免费| 嗯嗯啊好爽| 99re视频在线观看这里只有精品| 超碰久超碰久| 男人的天堂2010| 不卡在线观看视频| 在线 亚洲 网爆 自拍| 欧美高清无码免费视频高清版| 国产精品免费日韩| 青青草在线视频播放器| 欧美老熟另类| 天天看天天在线精品| 久草婷婷| 天天伊人| 亚州成人a∨| 综合五月婷婷亚洲一区| 欧美激情亚洲| 丝袜性亚洲| 亚洲在线网站| 国产精品网站www| 中文字幕一区二区三区高清| 久久精品操| 九九九九九九九精品视频| 国产精品自拍视频| 男人精品天堂一区| 高潮的A片激情扒开一区| 精品久久大胆人体| 啊啊啊啊一区| 国产成人无码a| 久久大香蕉手机高清视频| 国产精品熟女九色九色蜜臀| 青青草国产亚洲精品久久| 国产AV精久久| 色色97爱| 国模不卡一本二本三电影| 午夜亚洲国产理论秋霞| 欧美美女视频| aV中文麻| 亚欧美综合| 91在线免费观看处女| 中文字幕人成乱码熟女香港| 中日992视频| 日韩伦理久 久久 清纯| 国产福利第一视频| 日韩激情电影中文字幕| 啊啊啊啊无码| 91国产丝袜白虎| 91艹逼精品| 黄色AAAAA欧美| 91亚洲综合在线| 干美女人妻| 躁躁日曰躁2020| 中文字幕啊啊啊在线观看视频| 白天啪啪晚上啪啪视频| AVE乱伦| 欧美亚洲清纯| 久久久久久久久久久久久久9999| 91色婷婷综合久久中文字幕二区| 色波多| 欧美日韩久久精品爱爱| 午夜大香蕉| 99热99在线播放激情| 亚洲丝袜少妇在线| 亚洲第一页综合在线| 十八禁网站在线| 国模吧 一区二区三区| 欧美经典一区二区三区 | 国产欧美伊人| 久久久爆乳翘臀一线天伦理视频| 丁香五月激情综合国产| 99热18| 亚洲最大无码中文字幕网站| 国产黄色 A 片免费看| 蜜乳视频网站| 无码一区免费在线不卡| 国产婷婷综合在线观看| 一本色道久久天天射天天干| 亚洲熟女人妻中文字幕一区二区| 国产999精品久久久| 少妇特黄一区二区三区| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 精品九九淫乱男| 超碰在线99| 日本性爱少妇| 色噜噜综合在线| 欧美日本一区二区a人| 国产亚州高清国产拍精| 一级啊性爱在线视频| 日韩 欧美 另类 人妻| 亚洲av国产av综合av卡| 亚川综合视频| 亚洲天堂人妻熟妇视频| 中国亚洲呦女专区| 激激五月| 国产精品不卡一区二区三区| 久久影视二区三区行押| 日本精品加勒比海一区| 亚洲加勒比| 日本一二区不卡| 亚洲图片欧美偷拍| 国产成人 综合亚洲 天堂| 无码一区二区精品视频久久久春药| 青娱乐二区免费| 超97在线精品视频| 丁香六月婷婷综合| 精品免费1| 色哟哟1区2区| 国产路线专区| 8x福利精品第一福利视频导航| 欧美黄色大片在线观看| 91麻豆天美国产欧美日| 久久噜| 亚洲风情在线观看| 国产探花精品在线| 女人的久久久| 欧美熟女逼久久久久久| 午夜亚洲WWW湿好大| 亚洲国产一级精品毛一级精品看免费视频 | 色女网日韩| 久久综合av| 人妻熟女一区二区在线视频| 免费看黄片现成| 丝袜剧情| 少妇同性| 91九色丨风韵犹存| 家庭乱伦性爱av| 久久这里都是精品| 91亚洲欧洲| 日韩无码黄色片| 亚洲人人操| 久久超碰98| 中文视频在线观看| 成人性爱电影网| 金典av| 天美传媒麻豆一区二区三区国产精| 伊人专区一区二区三区| 97WW精品| 亚洲做性| 强奸a片网| 18禁久极品美女久久哦哟呀!| 久9精品| 岛国大片国产| 热天堂一区二区| 国内一级精品| 久久久夜夜嗨免费视频| 亚洲老司机123专区| 美女十八禁| 久久久久久国产无码精品| 射 色综合| 999热日韩精品| 韩国成人精品久久久免费看| 亚洲淫色网中文| 99人妻| 九九热视频在线观看| 老熟妇一区二区三区| 一级做a爰片性色毛片久久| 九九av| 久久久78| 色色丁香| 97免费在线观看| caoni国产亚洲av| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 校园春色中文字幕AV| 日韩欧美大片免费高清啪啪| 婷婷国产精品九区| 亚洲 小说 欧美 激情 另类| 色婷婷成人综合| 男啪女色黄无遮挡免费观看| 日本人体九九九九九九| 一区二区三区免费视频入口| 国产SV一线| 精品无码一区二区三区色欲| 久久久亚洲精品电影免费看| 天天cao在线| 婷婷久久五月| 网站A V在线| 操B久久| 中文字幕日韩电影人妻| 超踫中文字幕| 国产美女高潮| 日本不卡二三区| 亚洲精品国产熟女久久久久久| 亚洲射综合网| 欧美日韩99| www.男人的天堂| 人妻一区二区三区| 亚洲AV秘 精品久久老牛影视| 91亚洲人电影| 中文字幕三四五区| 中文字幕少妇色| 日本人妻中文字幕| 男女啊啊啊| 婷婷久草一区二区三区| 18禁精品网站在线看| 91精品国产91久久久久久久久久久久| 小少妇| 变态乱伦伪娘灌肠一区二区| 久久久久久久久久精| 蜜桃av综合网发布| 三上悠亚在线毛片91| 亚洲国产精品久久久男人的天堂| 久精品无码av一区二免费国产在线观看 | 操操碰| 国产无码成人无码| 欧洲色综合| 欧美性区| 91粉嫩萝控精品福利网站_精品影音先锋国 | 加勒比无码毛片| 久超碰在| 一区二区三区激情在线观看| 日日操免费视频| 久久人妇| 国产成人亚洲精品自产在线| 在线一道啪| 麻豆成人影音在线| 久久久av爱| 免费视频a级毛片免费视频| 天美精品原创av片国产| 亚洲成人帖图| www.婷婷六月天| 中国少妇XXXX做受| 伊人网青青| 另类小说欧美激情校园春色| 亚洲男人的天堂V| 国产网红精品| 中文乱码字字幕在线第5页| 色香欲天天天天综合色| 久草男人天堂| 欲色影视综合吧| 国产女人高潮视频| 爱射综合| 久久久久久精品免费看A级| 亚洲一区日韩精品中文字幕| 9997se| 蜜臀久久久国产| 久久久久久AⅤ无码免费肉站 | 亚洲阿v天堂在线| 99后入| 久久久久9999妇女| 国产成人无码网站在线视频| 亚洲图片婷婷五月天| 亚洲国产另类在线中文| 久久午夜色播影院免费高清| 日本97久久| 97一区二区三区视频| 五月天久久久| 超碰在线看| 人妻-91porn| ?亚洲伊人伊成久久人综合网| 精品国产Av无码久久久亚洲| 亚洲性网| 天天干18禁| 精人妻一区二区三区| 久久久精品九| 情色大香蕉| 久久黄黄| 青青青青草av在线观看| 欧美另类色图片| 午夜免费视频1000| 在线观看十八禁| 激情五月综合网| 婷婷五月在线视频| 曰本精品久久久| 久久国产对白激情浪潮| 白丝jkav| 欧美青青草视频| 操B久久| 91天美传媒在线观看| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 日夜尻逼网| 成人草草视频| 国产h小视频在线观看免费| 91综合熟女| yiqicaoav| 人妻 丝袜美腿 中文字幕| 人人操人人操人人人操| 日韩激情毛片一级久久久| 老熟女91| 午夜电影在线观看无码专区| 人妻熟女一区在| 91在线美女| 日本新免费二区三区| 亚洲九九视频| 欧美色网| 久久精视频美日韩在线视频| 九色 人妻 大香蕉| 久久亚洲色图中文字幕| 嗯嗯不要 视频| 无码国产精品96久久久久孕妇| 日韩熟女三十乱伦| 日本网色| 欧美大香蕉97| 久久久555| 操逼无码操逼| 久久久无码国精品无码三区三区| 午夜欧美J进J出白浆流出久久久 | 亚洲人精品午夜不卡| 欧综合网| 黄在线| 日本超碰在线国产一区| 少妇丝袜在线观看AV| 欧美成人贴图| 福利操逼| 欧美日韩222| 成人精品一区二区三区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 日本中文字幕在线电影| 国产1727欧美| 日韩熟女操逼| 91亚·色| 欧美碰碰综合色| 国产Aα| 久久久久9久久久久| 国产精品伦理| AV无码久久久精品| 午夜后入| 中日韩一区二区三区欧美| 国产精品老师| 丝袜喷水在线| 91操熟女| 色色99| 自拍第一页| 在线播放免费av福利片| 91成人国产综合久久精品蜜月| 人人妻人人爽| 免费一级欧美片片线观看| 97色涩| 亚洲日韩在线a不卡99精品| 婷婷亚洲综合| 亚洲人妻爽爽爽| 成人网站 免费观看| 欧美中字二区| 精品无码一区二区三区| 国模限制级电影| 国产麻豆91欧美一区二区久久婷婷国产精品| 无码人妻精品一区二区中文| 九九碰九九爱97超碰| 久草线上视频免费看| 欧美性生活免费网| 亚洲涩涩| 国产成人无码啪| 激情四射五月天| 无码国产Av| 国产欧美黑人丰满在线| 无码高清操逼网址| 亚洲情色在线| 免费观看的av| 亚洲AV无码AV吞精久久久久| 60秒免费小视频| 日本 色 导航| 久久亚洲天堂| av天堂手机版追回| 玖玖综合网| 人妻加勒比东京热| 一级AAA片一区二区三区| 中文AV制服乱伦| 东京日日夜夜| 国产粉嫩蜜臀av一区二区三区 | 久久久久久久97| 水澄无码AV| 精品一区99999| 国产精选三级在线观看| 日逼97| 免费一级a毛片久久久久久鸭绿欲| 欧美91精彩| 色青青久久影视| 天天干夜夜鈤| 亚洲人妻熟妇三十三区| 太久视频| 97资源久久| 97久久精品国产| 国产理论视频在线播放| 干B网| 欧美成人精品一区二区三区| 亚洲一级性爱视频免费看| 热热色综合网| 亚洲精品一二三四区| 99精品久久久久久久婷婷| 国产成年女人免费视频播放a| 亚洲性爱无码乱伦av| 欧美激情综合| 国产成人拍国产亚洲精品| 亚洲欧洲国产综合av| 色五月AV| 蜜臀久久99'精品久久久| 亚洲黄色a级片| 九九操久久国产免费视频| 亚洲欧美综合色| 国产女人极品高潮毛片| 97色97干| 揉揉揉夜夜| 97青娱乐超碰久久| 色婷婷激情| 97在线免费看视频| 久久久久久久久国产| 91原创在线观看| 日本高清免费一本视频在线观看| 精品日日人妻| 日韩欧美蜜桃精品久久中文字幕久久| 久久女婷| 强奸乱伦αv片| 精品丝袜无码一区二区三APP| 久草电影网| 欧美另类自拍| AV一二区| 日本三级久| 国产97色在线| 免费1级a做爰片观看| 91亚洲色图| 欧美在线大香999| 91天射| 久久久久久夜夜夜夜夜| 另类视频在线| 丁香六月啪| 中文字幕免费看大片| 日韩在线性爱免费视频| 放黄片放3级黄片没穿衣服| 超碰9 7女人| 亚洲天天精品| 九九十八精品| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 久久9精品| 亚洲综合色在线| 97操综合| 亚洲男人天堂2013| 东北女人被操| 97大色网| 欧美性爱一区| 欧美乱妇狂野欧美在线视频| 超碰中文字幕人妻草一区| 操操啪| 狠狠狠狠狠狠| 久久美女福利是上海美女| 高潮毛片无遮挡高清免费| 久久丁香久草综合网| 百度百度日本操逼| 91国产操逼视频| 三级精品三级在线观看| 青青青国产手线观看视频2| 呦呦一区| AV一区观看| 欧美午夜视频免费观看| 夜色综合| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 中文字幕免费观看| 超碰天天操| 九九英色视频| 欧美另类自拍 | 五月天精品| 亚洲欧美日韩中文久久自慰| 日韩AV噜噜噜一区二区三区四区 | 五十路熟女人妻一区二区三区四区五| 91亚洲欧美激情| 天堂无码| 日操粉逼逼| 欧美黄色大香蕉一区二区| 一个人免费HD91视频| 色婷婷综合网站| 色狠狠综合| 久九干| 操我啊啊啊啊啊| 91少妇香蕉久久精品| 国产美女口爆吞精| 亚洲天堂2020| 欧美婷婷久久| 欧美色图小说综合 | 久久国产热视频97电影| 色色色色综合网| 天天操天天射青青草| 操一区| 亚洲欧美校园| 欧美精品久久久久久久丰满| 欧美v亚洲v日韩v最新在线二区| 超碰99在线| 天天夜夜久久| 男人的天堂三级| 日韩性爱电影一区| 黄片免费久久久久久久| 91蜜臀熟女| 一区二区三区成人| 亚洲国产精品久久久久久久久久| 精品国产91内射久久| 人人搞人人插人人操| 婷婷五月天无码 | 超碰人妻久久| 亚洲 小说 欧美 激情 另类| 国产无码成人无码| 日韩精品一区二区三区色欲 | 欧美亚洲激情小说| 国产精品久久久久久久久久久久久久久久久久| 精品国产乱码久久久久久日本公司| 色噜噜狠狠色综无码久久合欧美| 99久久e免费热视| 久久久久久久久久久人妻| 国产精品无套内谢| 性猛交| 有码专区最新中文字幕有码| av网站在线看| 五月丁香| 日本福利二区视频| 操B视频日韩无码| 探花精品视频| 人妻另类 专区 欧美 制服| 国产女人操逼视频| 日韩人妻精品| 亚洲激情网一二三四区| 九九热精品在线| 美女诱惑1区2区| 久久大香蕉手机高清| 91精品啪在线观看国产城中村| 东方亚洲在线操逼天堂| 国产h小视频在线观看免费| 亚洲va有码在线天堂| 久久成人国产精品| 久久久久久久9| 殴美日韩m| 亚洲**2021在线观看| 男女香蕉一区二区| 亚洲 国产 精品一区| 人人插人人摸人人| 温婉少妇玩3p| 影视综合无码少妇| 久草免费福利在线播放| 国产成年精品高清在线观看91| 亚洲一区二区三区在线激情| 射 色综合| 91视频在线观看18| 8050无码八戒| 91丝袜美腿片| 亚洲一区二区中文字幕| 91成人亚洲色图| 国产亚洲精品无码三区| 91爱做| 99这里只有精品国产| 青娱乐蜜桃臀AV色婷| 天天爽夜夜爽夜夜爽精| 色娱乐色呦呦夜夜夜夜av| 人妻少妇被猛烈进入中| 综合激情一一91| 久久受www免费人成| 天天躁狠狠躁av| 色9999日韩国产| 96久久久久久久| 国产亚洲一黄| 91熟女丨91老女人| 久久人妻四季| 成人三一级一片aaa| 亚洲极品| 中文啪啪视频| 国产黄色影片在线观看| 天天干夜夜肏| 精品少妇后入一区二区三区四区人妻巨乳 | 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 超碰97网址| 亚洲av影音先锋| 美女好片色日本| 亚洲乱熟女一区二区三区大香蕉| 好爽视频在线观看| 91久久伊人婷婷青青草| 日本免费人成视频播放120秒| 91热色| 男人的天堂2018.| 凹凸视频特色日本特黄| 东北女人操逼| 丝袜天堂网| 色狠人在线99| 99热思思| 国产91精品福利在线| 美女啊啊啊啊啊啊| 久久综合久色欧美综合狠狠 | 丝袜综合| 日本免费人成视频播放120秒| 欧美草草高清日韩视频| 偷拍 精品另类 凸凹了四区| 精品人妻一区二区三区免费视频| 久久小视频| 午夜男女爽爽大片免费观看| 日韩久久艹| 久久婷婷伊人| 欧美国产精品久久九九| 伊人宅男大香蕉| 亚洲自拍另类丝袜综合| 蜜桃视频精品一区二区| 大香蕉一线视频| 香蕉国产精品麻豆亚洲欧美日韩| 欧美另类丝袜熟女| 亚州欧美总和| 久久中文色图| 国产又黄又猛又粗又爽的网站| 国产极品99热在线播放69| 一起草三级AV电影在线观看| 老熟乱一区二区三区四区| 国产白丝在线| 美腿色图| 日韩精品.久久精品.AV女优.天美传媒| 少妇高潮对白在线观看| 日本性交操一区二区不卡系列| 校园春色宗合网| 久久嫩草国产成人一区| 亚洲男人天堂Av| 天天色综亚洲91污| av绯色| 天天色黄色影院天天操| 国模无码人体一区二区三| 午夜性刺激视频免费观看| 9久精品| 女人久久久| a级免费在线观看| 3PAV乱伦视频| 天天澡天天狠天天天做| 国产午夜精品理论片a大结局| 91视频在线观看18| 伊人91| 国产日韩精品suv| 襙一襙| 人人操人人干网页| 大香蕉www.超碰| 操比国产| 日韩婷婷| 麻豆国产原创AV色哟哟| 人妻插插人妻人| 91亚洲欧美色图| 欧洲亚洲人人爽爽视频| 91n.欧美| 黄骗免费网站| 大香蕉乱级| 天堂а√在线最新版在线| 人人摸人人添人人操| 国产精品视频白浆免费| 欧美色图天堂在线| 亚洲中文字幕妇伦久久| 日韩在线人妻网站| 亚洲人妻久久久| 九久精品| 天堂俺去俺来也www久久婷婷| 日韩卡一卡二卡三在线| 亚洲第一在线视频| 嗯嗯嗯啊啊啊操的我好爽| 超碰碰激情97+久| 精品无码少妇| 成人26uuu| 免费观看的黄色的网站| 97色冈| 美女AV一区二区| 98久久超碰| 国产精品久久久久久久电影渣男| 欧美色性爱| 久久,精品一二三| 麻豆天美久久91| 亚洲美女 晚间男人天堂| 亚洲综合网91| 91精品微拍福利| 久久久久久久久久8888| 成人在线永久| 91黄站| 色欲蜜臀AV| 嗯嗯嗯好爽| 97超碰巨乳| 久久精品熟女亚洲AV麻豆软件| 一级做a爰片久久毛片图片| 99色视频| 欧美色图在线视频少妇| 色欧美综合| 国产亚洲精品第一最新| 亚洲中文字幕妇伦久久| 亚欧洲日韩国产精品| 免费少妇一区二区| 激情综合久久| 国产性爱欧美性爱在线| 精品国产三级av韩国在线| 色综合网1| 天美传媒av一区二区| 狠狠超| 亚洲综合一区二区| 97av,com| 久久精品日韩| 青草香蕉网| 久久专区| 亚洲最大91网| 精品国产a∨一区天美传媒| 亚洲精品国产专区在线观看| 日韩av三四区| 美女久久久| 久久久蜜桃一区二区三区| 92大香蕉| 久久欧美性爱视频| 中文字幕一区二区三四五区日日骚| 97爱综合| 亚州色图第三区| 欧美在线天堂| 性爱视频久久| 懂色Av一区二区三区| 人人操,操人人| 蘋果手機免費看成人Av| 色天使亚洲综合在线观看| www四虎| 日韩精品资源专区二区| 久久久久骚| 熟女人妻一区二区三区免费看 | 久久精品国产亚洲AV先锋| 韩国黄色片精品久久久| 精品在线78| 午夜免费福利视频一区| 美女黄色91| 亚洲操人| 日韩一二三区| 骚货人妻偷情自拍在线视频| 伦理第一页| 91美腿丝袜在线观看| 久久久蜜桃臀无码视频| 韩日男人的天堂| 91综合色噜噜| 中文幕97| 爱av免费| 色香欲综合| 99国产人成精品| 人妻天堂三区| 欧美午夜色妇色鬼| 国产精品亚洲一级av第二区| 日韩中文9| 国产精品青草综合久久| 日本道不卡| 九九热超碰97亚洲最新香蕉| 国产精品一级特黄aaa大片在线观看| 亚av顶级裸体一区二区三区四区五区 | 女人18精品一区二区三区| 五月激情视频| 欧美亚洲图片| 欧洲小说色图视频另类| 五月天玖玖资源站| 亚洲大色鬼| 91粉芽高清在线一区二区| 亚洲丝袜综合| 和协影院中文字幕三区| 天天做日日爱夜夜爽| 97超碰香蕉| 日韩国产十八禁| 亚洲一区中文字幕一区| 啊啊啊免费视频| 天美传媒av在线| 综合婷婷| JuliaAnn丝袜熟女系列| 久久亚洲熟妇在线视频| 国产九九九九九九九九| 久久伊人最新网址视频| 亚洲精品 欧美精品| 大香蕉久久| 人人操人人舒服| 东京热毛片调教| 日韩无码嘿咻黑热久| 日本成人电影资源网| 欧美激情高清性猛交| 无码一区二区三区四区五区六区七区八区九区十区视频 | 久久久亚洲Av| 欧美天天射| 日本一久是| 9999伦理视频| 五月婷丁香| 永久电影三级在线观看| 久久久月天| 69综合网| 精品国产乱码久久久久久久久1| 操逼大黄片| 人人操,人人液| 尤物AV免费网站| 蜜臀久久久国产| 丰满人妻-区二区三区免费| 操逼啊啊啊91| 91人妻人人澡人人爽人人精品| 9美女超碰在线免费观看| 黑丝日韩av丝袜av| 国产精品情侣啪啪| 超碰人人在线| 人人做人人妻人人夜视频| 熟妇综合一区二区三区| 日本亚欧爱爱| 香蕉免费一区二区三区不读 | 人妻精品4K4K4K4K4| 婷婷五月色| 亚洲码专区| 网页导航五月天免费一二三区 | 日韩精品熟妇| 中文字幕第页| www.色婷婷.com| 国产激情在线| 九九黄色视频在线观看| 高潮毛片无遮挡高清免费| 在线免费观看高清无码视频| 性高潮久久久久久久久久久| 久久久久婷婷精品av电影| 久久超碰97中文字幕| 激情图片伦理国产一区二区日韩| 五月婷婷六月色| 日本综合色图| 2020国产精品| 欧美色色色| 综合久久中文字幕综合日韩精品| 一本一道vs波多野结衣| 日韩欧美tv一区二区在线观看| 国产真乱mangent| 岛国爱情动作片在国产AV无码专区亚洲AV漫画| 久久偷偷色综合蜜桃| 一区二区三区四区在线不卡| 国产视频小说| 国产青青综合伊人| 久久久少妇诱惑精品视频| 亚洲人综合| 亚洲人人夜夜澡人人爽| 97视频免费在线| 精品人妻视频一区二区在线播放 | 淫荡网址| 日语五十路和六十路亚洲国产精品| 91亚洲最新在线| 亚洲深夜福利| 青青青草原| 91少妇人妻| 欧美色图20P| 国产又黄又爽| 中文字幕三四区| 国产探花日韩援交| 欧美精品精品一区二区| 99久久久久久亚洲精品不卡| 在线观看无码三级少妇| 干日本人少妇午夜寂寞影院| 91GD.COM| 超碰日本97美女人妻人人玩人人爱| 色呦呦、国产精品| 国产熟妇一区二区| 在线观看啊啊啊啊啊| 伊人网高清| 午夜国产成人精品视频| 把腿张开老子CAO烂你| 人妻日日干| 亚洲色图超碰在线| 曰本精品久久久| 99最新日韩偷拍视频| 天天日骚逼熟女| 在线观看中文字幕| 好爽视频在线观看视频 | 四虎影视精品| 欧美精品成人一区二区在线观看 | 伊人91| 亚洲综合图文| 青青草原av| 亚洲 欧美 日韩 国产一区二区 | 97在线免费看| 欧美激情亚洲情色| 欧美日韩久久精品爱爱| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 热久日综合| 欧在线一二区| 影音先锋新男人| 日本在线一二| 欧美日韩亚洲高清不卡一区二区三区| 激情婷婷丁香网| 亚欧高清| 99热这里是精品| 五月天久久婷婷亚洲| 色香综合| 狠狠久久手机视频精品| 亚洲精品视频在线播放| 丰满精品人妻少妇久久字幕| 欧美激情内射| 岛国黄色大片网站| 人人澡人人爽人人精品| 欧美日韩妖精91com| 伊人久久综合影院精品久久久| 国产激情久久久| 日韩中文字幕av在线播放| 久久这里只有精品9| 青娱乐国产精品| 久久亚洲不卡一区二区三区| 欧美午夜熟妇黑人精品91| 国产熟女完整版中字| 精品国产网站| 91丝袜在线观看| 九九色图| 亚洲成人在线资源| 国内偷拍精品一区二区| 女人爽到高潮潮喷18禁网站| 亚洲天堂电影网| 一级做a爰片性色毛片久久| 久久婷婷一区二| 久久久一区二区三区麻豆| 亚洲制服欧美另类内射| 91美乳| 国产9 9在线 | 亚洲| 国产欧美日韩女同性恋ww喷水精品| 中文字幕欧美精品亚洲日韩蜜臀| 8x福利精品第一福利视频导航| 亚洲综合影视| 色欲久久99精品久久| 亚洲第一成人影院色播| 日韩毛片9| 一牛影视成人片免费| 久久久久亚洲精品| a片在线播放| 中文字幕55555| 又大又大又大又粗爽高潮观看 | 97日韩欧美亚洲| 国产视频不卡在线观看| 欧美最婬乱婬爆婬牲视频| Blackedraw视频一区二区| 日本国产二线女色| 日韩免费看黄片| 日比av无码| 九色97| 综合久久97| 久久超碰免费的| 日本人妻伦在线中文字幕| 日韩激情视频| 久久久久亚洲熟妇熟女| 日本精品免费一区二区三区四区| 69视频入口| 精品999日本| 亚洲色 国产 欧美 日韩| 青青伊人加勒比海| 去干网最新版| 国产97在线播放| 精品少妇后入一区二区三区四区人妻巨乳 | 精品99999久久久久久| 91久久免费视频互動交流| 神马久久久久久久久久久久| 岛国大片在线观看网站入口| 大香蕉日亚洲日本亚大| 深夜激情无码| 九九亚洲| 亚洲精品一二三四区| 老女人综合网| 激情五月天丁香| 4虎在线观看| 91蜜桃婷婷狠狠久久综合9色| 亚洲色电影在线| 亚洲精品丝袜| 超碰成人最新最好看| 天天操美美| 小泽玛利亚一二三| 伊人丁香五月婷婷| 白嫩妹子国产骚| 精品久久久久,69国产成人精| 中日韩免费看男女操逼大全| 无码人妻精品一区二区三区九九 | 国产偷仑| 一级久久久久久久久久久| 亚洲在线欧美| 91欧美综合在线| 91久久久久久| 国产精品视频自拍在线| 亚洲系列欧美| 男人亚洲91首页在线| 91色色网站| 国产精品高朝久久久久久久| 好湿好紧好爽 视频| 涩涩这里只有精品视频| 午夜精品久久久久久久久久久久久| 久草资源在线视频官方总站日韩丝袜美腿 | 人人弄人人摸| 九九九九九精品十六| 欧美夜夜狠| 中文字幕av亚洲在线| 日韩兔费看黄片| 精品少妇一区二区三区| 成人欧美一区二区三区黑人一| 2017人人操,人人摸| 天天92av| 久久精品中文字幕女同| 中文久久一区| 91丨九色丨大屁股| 18禁的网站在线| 久久午夜鲁丝片| 91 综合网| 超碰是碰在线观看| 69AV女优男人的天堂| 人妻熟女午夜精品在线| 日韩欧美字幕亚洲一区二区| 毛片久久| 97超碰久久| 国产乱码精品久久久久久| www老逼91| 国产免费一区二区三区最新不卡| 国产精品一区二区麻豆| 午夜舔阴达高潮视频免费看| julia国产在线| 欧美亚洲宗合色性图| 天天夜夜久久| 欧美综合骚| 婷婷久久五月天| 欧美成人性爱视频大全| 天天干人人干天天日97| .精品人妻一区二区三| 91精片| 丝袜美腿亚洲| 亚洲成A∨人影院在线欢看| 男人久久天堂| 国产精品一二三区福利| 偷拍亚洲熟女视频播放| 精人妻无码一区二区三区伊人直播| 秋霞一级视频在线观看免费| 草草电影院| 久久是精品| 成人日本精品九区| 99久久网站| 内射老妇BBWX0C0CK| 91N综合网| 嗯~啊~轻一点 视频| 久久久久久性爱视频| 婷婷丁香五月综合| 亚洲国产欧美中日韩成人综合视频| 91亚洲综合在线| 精品人妻15区| 国产精品久久久午夜夜伦鲁鲁| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 桃色五月天| 不卡啪啪视频| 亚洲最大无码中文字幕网站| 日本操逼视频不卡直接放| 成人国产视频在线观看|