欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

STM32F4驅(qū)動SHT30溫濕度傳感器:I2C通信與CRC校驗實(shí)戰(zhàn)

STM32F4驅(qū)動SHT30溫濕度傳感器:I2C通信與CRC校驗實(shí)戰(zhàn) 簡介面向STM32F4嵌入式開發(fā)者的SHT30溫濕度傳感器驅(qū)動資源基于模擬IIC總線協(xié)議完成STM32F407與傳感器之間的數(shù)據(jù)交互覆蓋從引腳初始化、時序控制到溫濕度值換算的完整鏈路適合需要在環(huán)境監(jiān)控、智能家居或工業(yè)現(xiàn)場快速接入溫濕度采集功能的開發(fā)人員。資源壓縮包共包含3個文件分別為C語言驅(qū)動源文件、對應(yīng)的頭文件以及一份PDF格式的中文說明文檔整體體積約858KB結(jié)構(gòu)精簡便于直接移植到自己的工程。目前已有1595人學(xué)習(xí)瀏覽。源碼圍繞普通GPIO模擬IIC通信展開詳細(xì)實(shí)現(xiàn)了起始信號、從機(jī)尋址、命令寫入、數(shù)據(jù)讀取和停止信號等關(guān)鍵步驟并支持單次與周期兩種測量模式PDF文檔則進(jìn)一步講解了SHT30的寄存器配置、地址引腳選擇以及STM32F407外設(shè)初始化注意事項可幫助讀者理解傳感器底層工作機(jī)制同時代碼稍作修改即可遷移到其他STM32型號或兼容單片機(jī)平臺。1. 項目概述與需求拆解拿到這個壓縮包名字“SHT30溫濕度傳感器stm32f4.zip”的時候我第一反應(yīng)是這兄弟的項目應(yīng)該正處在“傳感器數(shù)據(jù)采集”這個常見的嵌入式開發(fā)節(jié)點(diǎn)上。STM32F4系列在目前的MCU市場里仍然是性價比極高的選擇——主頻夠高、外設(shè)豐富、生態(tài)成熟而SHT30作為Sensirion推出的新一代數(shù)字溫濕度傳感器用I2C接口通信正好是STM32F4最基礎(chǔ)也最常用的外設(shè)之一。這兩者結(jié)合起來幾乎覆蓋了環(huán)境監(jiān)測、智能家居、農(nóng)業(yè)大棚、冷鏈運(yùn)輸、機(jī)房監(jiān)控等一大票真實(shí)應(yīng)用場景屬于典型的“小項目但五臟俱全”的類型。拆開看這個項目名字它的本質(zhì)需求其實(shí)是在STM32F4平臺上完成SHT30的驅(qū)動開發(fā)實(shí)現(xiàn)溫濕度數(shù)據(jù)的讀取和輸出最終交付一個能穩(wěn)定運(yùn)行的工程通常是基于Keil5環(huán)境燒錄進(jìn)開發(fā)板后能從串口或者OLED上看到實(shí)時數(shù)據(jù)。這個需求看起來簡單但在實(shí)際開發(fā)中藏著不少坑——I2C時序問題、CRC校驗問題、傳感器響應(yīng)速度問題、以及和FreeRTOS等系統(tǒng)配合時的資源競爭問題每一個都能讓初入行的朋友卡上一兩天。再說說這個壓縮包最可能的內(nèi)部結(jié)構(gòu)。我猜測它應(yīng)該包含一個完整的HAL庫或標(biāo)準(zhǔn)庫工程目錄里面有SHT30的驅(qū)動源文件sht30.c和sht30.h、main.c主函數(shù)、可能還有串口重定向或者OLED顯示的相關(guān)代碼。如果你拿到的壓縮包里沒有這些那也不要緊我會在下面的內(nèi)容里把整個流程重新梳理一遍讓你能獨(dú)立寫出這套驅(qū)動。這篇文章適合誰看一是剛接觸STM32傳感器開發(fā)的在校學(xué)生二是做物聯(lián)網(wǎng)產(chǎn)品原型驗證的硬件工程師三是想了解I2C通信實(shí)戰(zhàn)細(xì)節(jié)的自由開發(fā)者。我盡量不寫“教科書式”的廢話直接把我踩過的坑、驗證過的方法拿出來講。2. 核心硬件與通信協(xié)議分析2.1 SHT30傳感器的關(guān)鍵特性SHT30是Sensirion公司SHT3x系列里最經(jīng)典的型號之一。相比上一代SHT20、SHT21SHT30在精度、功耗和長期穩(wěn)定性上都有明顯提升。具體來看幾個核心參數(shù)溫度測量范圍-40℃到125℃精度典型值±0.2℃濕度測量范圍0%RH到100%RH精度典型值±2%RH供電電壓2.15V到5.5V對3.3V系統(tǒng)非常友好通信接口I2C支持標(biāo)準(zhǔn)模式100kHz和快速模式400kHz默認(rèn)I2C地址0x44ADDR引腳接低電平如果ADDR接高電平則為0x45這個傳感器的功耗控制也很出色在單次測量模式下平均電流可以低到幾十微安級別非常適合電池供電的便攜設(shè)備。對于STM32F4這種性能溢出較多的MCU來說驅(qū)動SHT30簡直是殺雞用牛刀但這恰恰是工程上常見的選擇——運(yùn)算富余可以換開發(fā)效率傳感器性能才是精度的天花板。SHT30支持多種測量模式包括單次測量和周期測量。單次測量模式下主機(jī)發(fā)送測量命令后傳感器執(zhí)行一次測量并在完成后將結(jié)果存入數(shù)據(jù)寄存器主機(jī)然后讀取周期測量模式下傳感器按照設(shè)定的頻率自動測量并更新寄存器主機(jī)可以隨時讀取最新數(shù)據(jù)適合需要持續(xù)監(jiān)控的場景。在實(shí)際項目中如果設(shè)備需要低功耗睡眠就選單次測量模式測完就睡如果是持續(xù)上電的監(jiān)控設(shè)備周期測量模式更省事不用頻繁發(fā)送測量命令。2.2 I2C通信時序與命令格式I2C是一種兩線制的串行通信協(xié)議SCL提供時鐘SDA傳輸數(shù)據(jù)。SHT30的I2C時序和絕大多數(shù)I2C從設(shè)備一樣起始信號、從機(jī)地址加讀寫位、寄存器地址或命令字、數(shù)據(jù)、停止信號。SHT30的命令格式非常有特點(diǎn)所有命令都是16位——兩個字節(jié)。比如最常用的單次測量命令0x2C 0x06高重復(fù)性測量時鐘拉伸使能0x2C 0x0D中重復(fù)性測量時鐘拉伸使能0x2C 0x10低重復(fù)性測量時鐘拉伸使能這里“時鐘拉伸”是個值得展開講的概念。SHT30在接收到測量命令后會開始內(nèi)部測量測量需要時間高重復(fù)性約15.5ms低重復(fù)性約2.5ms。如果使能了時鐘拉伸傳感器會把SCL拉低告訴主機(jī)“我還沒測完你先等著”如果禁用了時鐘拉伸主機(jī)就發(fā)完命令后等待固定延時再讀取數(shù)據(jù)。實(shí)際上在STM32的硬件I2C實(shí)現(xiàn)里時鐘拉伸的實(shí)現(xiàn)比較復(fù)雜所以大多數(shù)國內(nèi)開發(fā)者的代碼都采用“延時后讀取”的方式——發(fā)完測量命令延時20ms或30ms然后再發(fā)讀命令取數(shù)據(jù)。實(shí)測下來這種方式穩(wěn)定可靠完全滿足項目需求。讀取數(shù)據(jù)時主機(jī)發(fā)送從機(jī)地址加讀位后傳感器會連續(xù)返回6個字節(jié)溫度高字節(jié)、溫度低字節(jié)、溫度CRC校驗值、濕度高字節(jié)、濕度低字節(jié)、濕度CRC校驗值。這里必須注意SHT30帶CRC校驗很多初學(xué)的朋友把這個校驗當(dāng)擺設(shè)直接跳過這樣做在大多數(shù)情況下數(shù)據(jù)也能正常讀出來但一旦遇到數(shù)據(jù)跳變、偶發(fā)錯誤你根本分不清是傳感器壞了還是通信干擾所以強(qiáng)烈建議認(rèn)真做CRC校驗。3. 從零搭建STM32F4驅(qū)動工程3.1 Keil5工程配置要點(diǎn)工欲善其事必先利其器。我默認(rèn)你用的是Keil5MDK-ARM這是STM32F4開發(fā)最主流的IDE之一。新建工程時有幾個關(guān)鍵配置點(diǎn)容易出錯芯片型號選擇如果用的是正點(diǎn)原子或野火的板子通常是STM32F407ZGT6或STM32F429IGT6如果用的是Nucleo或Discovery板可能是STM32F411RET6或STM32F446RE。型號不同F(xiàn)lash大小和外設(shè)資源略有差異但I(xiàn)2C這個外設(shè)基本一致。時鐘配置STM32F4上電默認(rèn)使用HSI16MHz內(nèi)部高速時鐘這使得I2C的波特率計算會變得非常尷尬。務(wù)必在SystemInit或CubeMX生成的代碼里把時鐘樹切換到HSE外部晶振并配置PLL鎖相環(huán)把系統(tǒng)時鐘提升到168MHzF407或100MHzF411等。I2C外設(shè)的時鐘源通常是APB1總線時鐘APB1在168MHz系統(tǒng)時鐘下一般為42MHz。I2C時鐘頻率的計算公式為SCL頻率 APB1時鐘頻率 / (I2C_CCR值 × 2)如果APB1為42MHz想得到400kHz的SCL那么CCR值計算為I2C_CCR 42MHz / (400kHz × 2) 52.5 ≈ 53這樣算出來的實(shí)際SCL頻率約為396kHz在I2C快速模式的允許誤差范圍內(nèi)。如果不想手動算用STM32CubeMX可以自動生成I2C初始化代碼非常方便。但只使用CubeMX生成初始化部分業(yè)務(wù)驅(qū)動代碼自己寫這種“半自動”的方式我最推薦——既節(jié)約時間又能保證代碼核心可控。3.2 I2C底層驅(qū)動實(shí)現(xiàn)STM32F4的I2C外設(shè)使用主要有兩種方式一種是使用芯片自帶的硬件I2C另一種是用GPIO模擬I2C。我在實(shí)際項目中兩種都用過給一個負(fù)責(zé)任的結(jié)論STM32F4的硬件I2C沒有傳說中那么難用但有兼容性坑GPIO模擬I2C是萬能的救命稻草。硬件I2C驅(qū)動的核心是以下幾個步驟初始化I2C外設(shè)配置GPIO復(fù)用功能為I2CF4系列中I2C1的SCL和SDA通常是PB6和PB7設(shè)置時鐘頻率使能I2C。發(fā)送起始信號和從機(jī)地址。等待事件標(biāo)志位置位EV5、EV6、EV8等。發(fā)送數(shù)據(jù)或讀取數(shù)據(jù)。發(fā)送停止信號。具體到代碼HAL庫已經(jīng)把底層的寄存器操作封裝好了寫起來清爽很多。核心代碼大致如下// I2C初始化 void MX_I2C1_Init(void) { hi2c1.Instance I2C1; hi2c1.Init.ClockSpeed 400000; hi2c1.Init.DutyCycle I2C_DUTYCYCLE_2; hi2c1.Init.OwnAddress1 0; hi2c1.Init.AddressingMode I2C_ADDRESSINGMODE_7BIT; hi2c1.Init.DualAddressMode I2C_DUALADDRESS_DISABLE; hi2c1.Init.OwnAddress2 0; hi2c1.Init.GeneralCallMode I2C_GENERALCALL_DISABLE; hi2c1.Init.NoStretchMode I2C_NOSTRETCH_DISABLE; HAL_I2C_Init(hi2c1); } // 寫命令 uint8_t SHT30_WriteCommand(uint16_t cmd) { uint8_t buf[2]; buf[0] (cmd 8) 0xFF; buf[1] cmd 0xFF; return HAL_I2C_Master_Transmit(hi2c1, SHT30_ADDR 1, buf, 2, 100); }這里有個細(xì)節(jié)要注意HAL_I2C_Master_Transmit的DevAddress參數(shù)需要傳入的是從機(jī)地址左移一位即7位地址加讀寫位地址0x44要傳0x88。很多新手在這里直接傳0x44導(dǎo)致通信失敗找半天bug結(jié)果是地址沒移位這個錯誤非常經(jīng)典。3.3 SHT30驅(qū)動完整代碼有了底層I2CSHT30的驅(qū)動就可以封裝起來了。我提供一個經(jīng)過驗證的驅(qū)動核心代碼// sht30.c #include sht30.h static uint8_t SHT30_CRC8(uint8_t *data, uint8_t len) { uint8_t crc 0xFF; uint8_t bit; for (uint8_t i 0; i len; i) { crc ^ data[i]; for (bit 0; bit 8; bit) { if (crc 0x80) crc (crc 1) ^ 0x31; else crc 1; } } return crc; } uint8_t SHT30_Init(void) { // 發(fā)送軟復(fù)位命令 0x30 0xA2 uint16_t cmd 0x30A2; return SHT30_WriteCommand(cmd); } uint8_t SHT30_ReadTempHum(float *temp, float *hum) { uint8_t buf[6]; uint16_t tmp_raw, hum_raw; uint8_t crc_val; // 發(fā)送單次測量命令0x2C 0x06 高重復(fù)性 uint16_t cmd 0x2C06; if (SHT30_WriteCommand(cmd) ! HAL_OK) return 1; // 等待測量完成高重復(fù)性約15.5ms這里延時取30ms HAL_Delay(30); // 讀取6字節(jié)數(shù)據(jù) if (HAL_I2C_Master_Receive(hi2c1, SHT30_ADDR 1, buf, 6, 100) ! HAL_OK) return 2; // 校驗溫度數(shù)據(jù) crc_val SHT30_CRC8(buf, 2); if (crc_val ! buf[2]) return 3; // 校驗濕度數(shù)據(jù) crc_val SHT30_CRC8(buf[3], 2); if (crc_val ! buf[5]) return 4; // 轉(zhuǎn)換原始值為實(shí)際溫濕度 tmp_raw (buf[0] 8) | buf[1]; hum_raw (buf[3] 8) | buf[4]; *temp -45.0f 175.0f * (float)tmp_raw / 65535.0f; *hum 100.0f * (float)hum_raw / 65535.0f; return 0; }這個CRC實(shí)現(xiàn)是標(biāo)準(zhǔn)的多項式0x31對應(yīng)多項式x^8 x^5 x^4 1算法初值0xFF和SHT30數(shù)據(jù)手冊中的描述一致。在《SHT30溫濕度傳感器stm32f4.zip》這個項目中CRC是區(qū)分“能用”和“穩(wěn)定用”的關(guān)鍵細(xì)節(jié)。我在一個農(nóng)業(yè)溫室項目中就是因為沒做CRC讀到的濕度偶爾偏差3%RH傳感器本身沒問題是線纜較長導(dǎo)致數(shù)據(jù)位翻轉(zhuǎn)后來加上CRC校驗異常數(shù)據(jù)直接丟棄重讀問題才根治。溫度計算公式的來歷值得多說一句SHT30內(nèi)部是用16位ADC采樣輸出原始值0到65535線性映射到-45℃到130℃數(shù)據(jù)手冊給出的映射范圍實(shí)際是-40到125但公式里用-45和175這兩個常數(shù)這是Sensirion官方推薦的線性化系數(shù)。濕度則是0%到100%線性映射。所以用上面的公式做浮點(diǎn)計算就能得到精度達(dá)0.01級別的溫濕度值對絕大多數(shù)應(yīng)用完全夠用。4. 數(shù)據(jù)展示與工程化擴(kuò)展4.1 串口輸出與OLED顯示傳感器數(shù)據(jù)讀出來了必須有輸出通道才能看到。最常見的兩種方式串口打印和OLED屏幕顯示。串口打印適合調(diào)試階段OLED顯示適合最終產(chǎn)品原型。串口打印我用的是標(biāo)準(zhǔn)庫的printf重定向把fputc函數(shù)重定向到USART1#include stdio.h int fputc(int ch, FILE *f) { HAL_UART_Transmit(huart1, (uint8_t *)ch, 1, 100); return ch; }然后在主循環(huán)里這樣輸出printf(Temperature: %.2f C, Humidity: %.2f %%RH\n, temp, hum);OLED顯示這部分如果你用I2C接口的OLED比如SSD1306驅(qū)動0.96寸128x64可以直接復(fù)用同一個I2C外設(shè)——注意SHT30和OLED的地址不同SHT30是0x44OLED一般是0x3C只要在通信時指定不同從機(jī)地址就行兩個器件掛一條I2C總線上互不干擾。這是我推薦的做法比用SPI OLED省兩個GPIO。4.2 多傳感器輪詢與低功耗設(shè)計如果你的項目不只有一個SHT30而是掛著好幾個I2C傳感器比如再加上BMP280氣壓傳感器、BH1750光照傳感器怎么優(yōu)雅地輪詢我的習(xí)慣做法是做一個簡單的傳感器管理層每一個傳感器封裝成一個結(jié)構(gòu)體里面有初始化函數(shù)指針、讀取函數(shù)指針、數(shù)據(jù)存儲區(qū)主循環(huán)統(tǒng)一調(diào)度。SHT30的ADDR引腳這時候就有大用處了。一個ADDR接低地址0x44一個ADDR接高地址0x45一條I2C總線上就能掛兩個SHT30。比如做一個上下兩層溫濕度監(jiān)測的設(shè)備用兩個SHT30分別測兩個位置代碼上做一個地址參數(shù)的抽象函數(shù)傳不同的設(shè)備地址進(jìn)去就行uint8_t SHT30_ReadReg(uint8_t addr, float *temp, float *hum) { // addr可以是0x44或0x45 }低功耗方面如果用電池供電建議把SHT30配置成單次測量模式測完一個周期就進(jìn)入睡眠狀態(tài)。STM32F4也進(jìn)入STOP模式用RTC鬧鐘周期性喚醒完成測量后繼續(xù)睡這種方式可以把整機(jī)平均功耗壓到毫瓦級別以下。不過要注意SHT30上電后默認(rèn)是周期測量模式如果引腳上拉了電源它會持續(xù)測量白白耗電記得在初始化時發(fā)送一個0x30A2軟復(fù)位命令再切換到單次測量模式。4.3 與SPI設(shè)備共存一次真實(shí)的多外設(shè)工程經(jīng)驗有朋友看了熱詞里提到“stm32f4配置spi1驅(qū)動mt6701”可能會問又是I2C又是SPI這倆外設(shè)同時用會沖突嗎答案是完全不會。STM32F4的I2C1用的是PB6/PB7或者其他映射引腳SPI1用的是PA4/PA5/PA6/PA7引腳資源不重疊外設(shè)資源各自獨(dú)立。我在一個機(jī)器人關(guān)節(jié)模組項目里就同時掛了SHT30測關(guān)節(jié)溫度和MT6701磁編碼器測電機(jī)角度SHT30走I2C1MT6701走SPI1配置為主模式、8位數(shù)據(jù)、CPOL0/CPHA0。初始化順序有講究先初始化SPI和I2C的GPIO時鐘再初始化外設(shè)本身最后再初始化傳感器驅(qū)動。實(shí)際調(diào)試下來的經(jīng)驗是兩個外設(shè)驅(qū)動完全獨(dú)立互不干擾唯一的注意點(diǎn)是中斷優(yōu)先級分配——如果SPI用DMA傳輸中斷優(yōu)先級要低于定時器中斷避免電機(jī)控制信號被傳感器數(shù)據(jù)讀取打斷。至于eMMC如果項目里有大容量存儲需求STM32F4可以掛eMMC芯片一般走SDIO接口或者SDMMC接口。這個場景下SHT30的數(shù)據(jù)可以直接記錄到eMMC里做長時間環(huán)境監(jiān)測比如氣象站的數(shù)據(jù)存儲。不過eMMC的初始化流程比較復(fù)雜需要發(fā)送CMD0、CMD1、CMD2等一系列命令不是一篇博文能講完的這里就先提個思路后續(xù)有機(jī)會單獨(dú)寫一篇。5. 常見問題與實(shí)戰(zhàn)排查手冊5.1 I2C通信失敗的五大原因做I2C通信踩坑是常態(tài)我把SHT30在STM32F4上最常見的失敗原因總結(jié)成一個速查表現(xiàn)象常見原因解決思路讀回數(shù)據(jù)全是0xFFI2C地址錯誤或者器件未上電檢查從機(jī)地址是否左移一位萬用表測SHT30供電讀回數(shù)據(jù)全是0x00I2C總線被拉低時鐘線或數(shù)據(jù)線短路檢查SCL/SDA是否接反換杜邦線數(shù)據(jù)能讀出但數(shù)值跳變嚴(yán)重線纜過長或電磁干擾縮短線纜加I2C電平轉(zhuǎn)換或鐵氧體磁環(huán)使用硬件I2C偶爾卡死STM32F4硬件I2C偶發(fā)死鎖增加超時機(jī)制和總線恢復(fù)邏輯或者換GPIO模擬溫度正常、濕度偏差大CRC校驗失敗數(shù)據(jù)位翻轉(zhuǎn)啟用CRC校驗異常重讀第五種情況最能說明問題。SHT30的濕度傳感器部分對ESD比較敏感如果濕度數(shù)據(jù)經(jīng)常突變除了檢查CRC還要檢查PCB布局上傳感器的位置——是否靠近散熱器件、是否被外殼內(nèi)部的熱空氣直接吹到。我遇到過拿密封塑料外殼裝傳感器內(nèi)部濕氣排不出去導(dǎo)致濕度讀數(shù)異常偏高的情況后來在外殼上開了通風(fēng)孔才解決。所以傳感器數(shù)據(jù)異常不只查軟件還要結(jié)合物理環(huán)境一起分析。5.2 硬件I2C死鎖的終極殺手锏STM32F4的硬件I2C有一個著名的“坑”就是總線忙BUSY標(biāo)志位可能會被莫名置位導(dǎo)致后續(xù)所有I2C操作卡死。這通常發(fā)生在通信中途掉線、或者有設(shè)備在I2C總線傳輸過程中被復(fù)位的情況下。解決這個問題我提供兩個方案方案一在每次I2C通信前檢查總線狀態(tài)如果發(fā)現(xiàn)BUSY標(biāo)志被置位就翻轉(zhuǎn)一下SCL引腳通過GPIO復(fù)用切換發(fā)送9個時鐘脈沖讓從機(jī)釋放SDA。這個方法本質(zhì)上是軟件復(fù)位I2C總線。方案二最簡單粗暴但也最可靠——如果硬件I2C反復(fù)出問題直接換成GPIO軟件模擬I2C。在CubeMX里把I2C1的兩個引腳配置成普通開漏輸出GPIO然后寫一個I2C_Start、I2C_Stop、I2C_WriteByte、I2C_ReadByte的軟件模擬函數(shù)。雖然代碼多一點(diǎn)但穩(wěn)定性極高而且完全不依賴芯片的硬件I2C外設(shè)對于主頻高達(dá)168MHz的STM32F4來說用GPIO模擬400kHz的I2C時序毫無壓力CPU占有率幾乎可以忽略。我在SHT30的實(shí)際項目里最后就用了GPIO模擬I2C。那是個批量出貨的真空干燥箱控制器硬件I2C在實(shí)驗室測試都正常到了客戶現(xiàn)場因為現(xiàn)場有大功率變頻器和加熱設(shè)備電磁環(huán)境惡劣硬件I2C偶爾死鎖。我把驅(qū)動切換到軟件模擬I2C以后一年下來沒再出現(xiàn)過通信故障。所以我的建議是同一個產(chǎn)品如果要用SHT30預(yù)留一個GPIO模擬I2C的驅(qū)動程序作為硬件I2C的穩(wěn)健后備方案。5.3 Keil5燒錄與調(diào)試技巧關(guān)于“keil5燒錄程序stm32f4”這個高頻問題我的經(jīng)驗是燒錄失敗90%是硬件連接問題而不是軟件問題。如果你用的是ST-Link檢查接線時要注意SWDIO、SWCLK、GND三根線是否牢靠如果目標(biāo)板是獨(dú)立供電還要把ST-Link和目標(biāo)板的GND共地。在Keil5的Settings頁面里查看SW Device是否能識別到芯片——識別不到就檢查接線、供電、以及芯片的BOOT0引腳狀態(tài)。有時候燒錄器能識別芯片但下載時提示“RDDI-DAP Error”這個錯誤在STM32F4上很常見尤其是芯片內(nèi)部Flash有讀保護(hù)的情況。解決辦法是按住開發(fā)板的復(fù)位鍵點(diǎn)擊下載按鈕啟動燒錄的同時松開復(fù)位鍵也就是“先按復(fù)位再點(diǎn)下載”的時序技巧。如果還不行就用ST-Link Utility或者STM32CubeProgrammer做一次全芯片擦除清除讀保護(hù)位。代碼調(diào)試階段Keil5的調(diào)試器里有一個很重要的窗口——外設(shè)寄存器觀察窗口可以實(shí)時查看I2C1外設(shè)的各個寄存器狀態(tài)。比如通信失敗的時候打開這個窗口看I2C_SR1和I2C_SR2寄存器的各位能快速定位是哪一步出了問題——是起始信號沒過SB位沒置1還是地址發(fā)送完沒等到ADDR位還是數(shù)據(jù)傳輸階段出錯了。這個技巧比單純打斷點(diǎn)看變量高效得多因為I2C的時序問題用斷點(diǎn)調(diào)試反而會干擾時序。6. 擴(kuò)展思考與經(jīng)驗心得SHT30的基本玩法在上面已經(jīng)全覆蓋了接下來聊聊我做完幾個項目后的一些體會也算是給這套方案畫個句號。關(guān)于驅(qū)動架構(gòu)如果你經(jīng)常做不同的STM32項目建議花點(diǎn)時間把傳感器驅(qū)動做成平臺無關(guān)的代碼。具體做法是在驅(qū)動層把I2C讀寫函數(shù)抽象成接口底層是硬件I2C還是軟件模擬I2C由具體的平臺適配層去實(shí)現(xiàn)。這樣換芯片平臺的時候驅(qū)動核心代碼一行都不用改只改底層的讀寫接口。這篇文章里的SHT30驅(qū)動代碼我已經(jīng)按這個思路寫了你可以直接把sht30.c和sht30.h提出來備用。關(guān)于測量穩(wěn)定性經(jīng)驗來看SHT30的單次測量模式是最穩(wěn)的。周期測量雖然省事但在某些固件版本上會偶發(fā)測量值異常。如果你做的是長期運(yùn)行的設(shè)備建議在主循環(huán)里每100ms到1s發(fā)一次單次測量命令讀取數(shù)據(jù)后緊接著做一次合理性判斷——溫度和上次數(shù)值的差值超過10℃或者濕度變化超過15%RH基本可以判定為異常數(shù)據(jù)直接丟棄。農(nóng)業(yè)生產(chǎn)環(huán)境里同樣的算法可以過濾掉大部分由傳感器自身或者瞬間干擾造成的毛刺。最后講一個性價比很高的擴(kuò)展方向如果你不止需要溫濕度還想測大氣壓天氣趨勢預(yù)測、光照強(qiáng)度花房智能補(bǔ)光、土壤濕度盆栽自動澆水SHT30只是生態(tài)里的第一塊拼圖。把這些傳感器全部掛到同一根I2C總線上加上STM32F4的藍(lán)牙或者WiFi模塊比如ESP8266或HC-05就是一個簡易的物聯(lián)網(wǎng)數(shù)據(jù)采集節(jié)點(diǎn)。整個系統(tǒng)的軟件架構(gòu)和SHT30驅(qū)動是同一套思路——發(fā)送命令、等待響應(yīng)、校驗數(shù)據(jù)、解析數(shù)據(jù)。把這一套流程吃透傳感器驅(qū)動的核心方法論基本就到手了。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91久久久久久| 久久九九综合| 国产成人网址| 久久婷婷五月综合色欧美| 婷婷久久五月天| 26uuu最新地址| 精品久热| 9999三级片| 激情综合网五月| 思思视频这里是精品| 天天干天天爽| 天天天天操| 99福利导航| 激情综合文学| 99热这里只有精品2| 天天爽天天日人人爱 | 丁香六月婷婷久久高清| 激情内射人妻1区2区3区| 性色99| AV大片在线播放| 婷婷五月天另类网站| 婷婷 伊人 久久| 激情性爱五月天| www.国产亚洲69ty.久久久久久久久久久久| 丁香五月www| 99久久99九九99九九九| 丁香六月亭亭久久综合| 26UUU一区二区| 日本欧美成人片AAAA | 97自拍视频在线| 久久久五月婷婷| 欧亚洲在线高清视频| 九九婷| 日本狠狠干| 久热最新视频| 丁香五月婷婷深五月| 丁香五月婷婷激情中文| 少妇被躁爽到高潮无码文| 五月激情婷婷女| 九九久久综合| 夜色综合网| 粉嫩AV久久一区二区三区 | 婷婷五月天AV在线| 日韩啪啪视品| 国产偷人爽久久久久久老妇APP| 综合大香蕉| 丁香五月电影| 激情六月婷| 五月天久久婷婷婷| 久鲁鲁色网 | 五月婷婷在线丁香| 女同激情久久av久久| 风流少妇A片一区二区蜜桃| 色婷婷五月天久久| 天天做天天双| 亚洲成人网无码| 色哟哟精品| 国产精品色婷婷久久久精品| 久久综合爱| 五月婷婷亚洲综合在线 | 欧美啄木乌丝袜人妻系列| 99视频精品全部免费 在线| 激情网站综合五月天| 丁香六月婷婷开心| 丁香五月色五月婷婷宗合| 九九热思思热| 激情婷婷丁香色情五月天| 影视av久久久噜噜噜噜噜三级| 九九色中文| 亚洲中文字幕在线观看| 99精品久久久久久久久| 五月天丁香网站| 久久婷婷亚洲| 热久久视频99| 婷婷五月天第四色| 丁香六月久| 色视五月天婷婷| 天天天日天天天干| AV在线中文| 狠狠色综合网| www.久久| 五月丁香中文婷婷中文| 99热这里在线精品| 婷婷六月激情综合| 99热国产| 99精品在线观看| www久久久| 九九亚洲天堂| 超碰免费人妻| 九热视频| 五月丁香婷爱在线| 天天综合 99久久婷婷| 可以观看的AV| EEUSS鲁片一区二区三区| 色婷婷www| 久草视频一,二三四| 97色97干| 婷婷五月天社区| 中文字幕网伦射乱中文| 婷婷综合一二三| 日日噜噜久久婷婷五月天| av超碰在线| 色婷婷人人| 91婷婷色五月| 伊人网色婷婷五月天| 日韩欧美成人片| 婷婷五月天色色| 久久伊人大香蕉| 五月婷丁香| 熟妇国产| 精品成人久久久久久久_一二三四视| 免费啪啪亚州视频| 五月天久久综合婷婷丁香| 久久性刺激| 91一起艹| 大胆伊人久久| 香蕉久久国产AV一区二区| 亚洲无AV在线中文字幕| 九九亚洲无码| 丁香五月天天高清在线| 天天天天操| 免费成人网在线观看| 亚洲婷婷在线播放十月| 开心五月婷婷| 日韩成人影片在线观看| 六月婷五月丁香| 婷婷狠狠操| 国产肥白大熟妇BBBB视频| 九九99男女视频在线观看| 国产熟女一区二区三区五月婷| 亚洲综合丁香五月| 日韩另类| yazhochengrenavwang| 狠狠操之狠狠操| 99热在线播放| 伊人大香蕉毛片| 色色综合色视频| 五月丁香婷婷六月| 国产AV一区二区三区最新精品 | 婷婷综合在线播放| 五月丁香成人小说| 性色综合网| 伊人婷婷激情| 玖玖爱资源站| 婷婷色资源| 九九99在线观看视频| 99精品在线下载| 天天插天天射| 成人午夜无码视频| 97大香蕉五月天| 亚州操操| WWW.桔色成人.COM| 26uuu偷拍亚洲欧洲综合| 99愛国产| 婷婷中文字暮| 亚洲99精品欧美一区| 99热这里是精品| 久热婷婷在线视频| WWW.17C亚洲精品| www.韩日视频| 欧洲日韩一区二区三区| 午夜69成人做爰视频| 五月丁香六月婷婷精品| 在线不卡视频| 人人色性网| 久久99网| caopeng97人人| 五月开心深深爱激情综合 | 这里只有精品99视频| 丁香六月亚洲综合 | 丁香五月婷婷高清| 婷婷 色 丁香 夜| 色色六月| 久草大| 99热网站| 午夜不卡成人一区二区| 欧美成人猛片AAAAAAA| 婷婷丁香久久| 性做爰1一7伦| 色五月综合激情| 亚洲国产色色| AⅤ在线播放网| 色永久| 伊人激情网| 五月婷色激情五月| 婷婷伊人综合中文字幕| 色婷婷电影网| 丁香六月五月婷婷| 亚洲AV网址| 亚洲成人免费在线| 天天插天天很| www.久久| 午夜色丁香| 综合亚洲AV| 五月天婷婷成人网| 大天天伊人| 99.N在线视频| 黑人熟妇一区二区三区| 国产这里只有精品| 色婷婷六月丁香综合欲精品| 久久久婷婷婷| 91久女| 五月婷婷中文| 久久五月天激情美女| 六月婷婷综合| 色欲久久久久| 色情综合网| 久久精彩免费视频| 亚洲综合五月天婷婷| 99精品久| 丝袜大香蕉| 亚洲AV激情五月综合网| 欧美日韩国产一区二区| 亚洲综合激情五月久久| 婷婷五月天精品| 天堂久久性| 91狠狠综合久久久久久| 夜夜撸日日骑| 天天色天天爽| 婷婷五月丁香亚洲| 婷婷色网站| 99热成人精品| a色婷婷| 99这里有精品视频| 色综合天天综合成人网| 六月综和久久| 丁香六月色婷婷| 午夜天堂啪啪| 色五月婷婷在线观看| 九九热这里只有精品5| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 五月丁香六月在线| 天天爱天天做综合| 亚韩在线视频| 婷婷丁香五月基地| 少妇伦子伦精品无吗| 六月天六月婷| 99超级碰碰| 久热免费| 色性日本| 小视频aaa久久久| 婷婷五月无码| 国内外色色色色色成人视频| 日韩性视频| 夜夜夜叫天天天做| 五月网激情| 丁香伊人五月色婷婷五十路| 欧美性生交XXXXX无码小说| 丁香六月婷| 狠狠999| 午夜激情婷婷| 色爱99| 91色呦哟| 国外亚洲成AV人片在线观看| 色丁香五月婷婷| 久8色色| 另类色视频| 伊人综合色干| 91操在线观看| 激情久久月| 国产AV熟妇人震精品一品二区| 色呦呦美女| 亚洲无码九九| 米奇影视五月天| 久热这里只有精品3| 婷婷久久免费| 99精品超在线播放| 亚洲精品成人片在线播| 1024在线观看免费视频| 色情成人五月天| 婷婷色情 | 五月丁香婷婷综合| 日韩另类| 欧美激情综合| 无码人妻AV久久久一区二区三区| www.色综合| 亚洲天堂久久| 99免费| 一区二区乱码视频| 97在线综合| www.婷婷六月天| 99热6色| 天天爽天天摸| 色五婷婷开心缴| 五月天天丁香婷婷在线中| 狠狠色97| 婷婷五月天AV| 色色无码日韩| 婷婷激情五月天在线视频| 26UUU| 久久丁香五月天| av在线资源| 9操在线| 99男人天堂| 五月婷婷久久大香蕉| 婷婷五月天大香蕉| 99re热99| 日韩免费乱轮网站| 伊人六月丁香婷婷| 99视频这里有精品免费观看| 天天干天天日天天操| av狠狠操| 婷婷久月| 无码AV免费精品一区二区三区| 99国产精品久久久久久久久久久| 亚洲婷婷性爱| 婷婷色五月天色色| 亚洲综合1024| 四虎婷婷五月天| 天天爱天天做天天爽| 国产美女最新VA在线免费观看| 草AV9999| 婷婷欧美| 婷婷六月啪啪| 9九九久久精品无码专区| 可以免费观看的AV| 久久全意婷婷| AV动漫不卡无码免费| 综合AV在线| 丁香五月天在线视频| 色久婷婷网| 五月婷婷狠狠干| 啪啪小说五月天| 伊人网大香| 无码动漫av| 综合色情网| 开心五月婷婷| 色婷婷丁香社综合| 欧日韩AV| 人人播| 九九人人操| 风流少妇A片一区二区蜜桃| 丁香五月之久操视频| 碰人人97| 久久九九怡红院| 婷婷成人综合五月| 九九99九九99| 婷婷五月天A V| 99日逼视频| 色欲婷婷夜夜| 婷婷色情小说| 99re热在线视频| 成人国产欧美大片一区| 丁香五月人妻| VA婷婷亚洲| 五月丁香六月婷婷久久肏| 五月丁香综合| 偷拍九九五月丁香婷婷| 啄木鸟黑丝一区二区| 欧洲亚洲精品| 精品一二三区久久AAA片| 国产乱子轮XXX农村| 99热在线播放精品| 五月丁香激情综合啪| xxx.色婷婷| 99爱精品| 91狠狠综合网| 这里只有精品免费视频| 精品人妻伦九区久久AAA片| 激情WWW| 亚洲欧洲午夜成人精品av| 丁香五月天啪啪| 在线视频区| 国产免费一区二区三区三州老师F1F1.CC | 婷婷五月天综合网| 婷婷色五月在线视频| 国产精品大香蕉| 亚洲在线播放| 狠狠五月激情婷婷直播片| 亚洲AV成人精品日韩在线播放| 九九XX视频| 99啪啪视频| 万月丁香狠狠爱| 五月天激情四射| 激情五月视频在线婷婷| 日韩一区二区A片免费观看| 婷婷五月综合社区| 99亚洲精品| 夜色五月天| 九九人妻福利| 日韩啪啪视频| WWW99热| 色五月色五天免费视频| 中文字幕操比影片| 深爱激情网婷婷| 天天插综合| 97视频.干com| 六月丁香婷婷大香蕉| 精品福利911| 伊人久久艹| 综合久久久婷| 草五月| 日本英国美国欧美亚洲国产精亚洲日韩精品在线观看 | 天天爽天天操| 五月丁香影院| 99re思思热久久| 婷婷五月综合色拍| 日日干日日| 91美女啪啪| 婷婷开心激情综合五月天| 91一起操| 天天做天天双| 成人做爰A片免费看视频| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 国产淫熟妇| 97人人草| 五月丁香在线国产| 99超超碰| 激情网婷婷婷| www超碰com| 丁香五月激情视频| 日韩精品无码AV| 久久婷婷五月天亚洲欧美| 日本黄色三级片内射| 午夜九九电影| 丁香五月激情啪啪啪| 99热只有精| 丁香深五月婷婷| 婷婷五月丁综合| 日本大人久久| 人人爽天天爽| 六月婷婷久久| 色播播五月天| 丁香五月天五码婷婷| 亚洲色模骚货| 久久久九九九 99| 九九热视频精品2| 91九色精品熟女内射| 9久视频| 色婷婷久久| 五月天激情偷拍| 免费观看18视频网站| 99无码免费视频| 久久综合久色欧美综合狠狠| 五月丁香亚洲婷婷| 婷婷99狠狠躁天天躁中| 九九热精品| 青娱乐美女福利视频美臀| 丁香五月激情综合久久| 欧美日韩成人高清在线| 色色网站免费在线视频| 伊人网色婷婷五月天| 丁香六月婷婷综合啪啪| 色婷婷免费观看| 五月丁香综合| 日本色狠狠| 涩综合网| 五月天天丁香婷婷| 97碰| 99视频精品8| 丁香花五月天社区| 色婷婷色99国产综合精品| 一本久久亚洲五月婷婷| 欧美日韩中国| 六月婷婷五月丁香| 五月丁香另类图片| 激情网五夜婷婷| 99九九精品视频推荐| 超碰人人干| 9九热视频| 九九婷婷五月天| 97丁香五月| 丁香五月天激情网址| 人五月天婷婷喷水| 色五月天丁香| 丁香六月无码| 武则天精品久久| 精品国产乱码久久久久久免费| 婷婷五月天视频亚洲| 丁香婷婷大香蕉| 成人 在线观看国产| 99在线看片| 99噜噜噜| 免费在线观看AV网站| 超碰免费大香蕉| 国产精产国品一二三在观看| WWW.桔色成人.COM| 嫩草AV久久伊人妇女超级a| 丁香婷婷五月综合影院| 激情涩播| 日本片日本片祼观看网站在线看中文版网页在线看 | 色婷婷小视频| 欧美成人va| 婷婷五月天激情诱惑| 五月天激情综合在线| 丁香五月婷婷影院| 丁香五月花| 玖玖爱伊人| 色狠狠综合| 好好干Av| 强伦轩人妻一区二区电影| 亚洲欧洲中文日韩久久AV乱码| 天天日 天天草| 五月激情婷婷六月丁香| 热中文字幕| 97久操| 人与禽A片啪啪| 538任你爽| 五月丁香婷婷开心| 五月丁香六月婷婷综合伊人| 色婷婷影音| 五月综合色| 大香蕉五月丁香| 九热视频| 五月婷婷啪啪啪啪| 国产五月婷| 亚洲va日| 怕怕視頻| 狠狠色丁香久久久婷| 激情五月丁香色色去久久| 婷婷色影音天| 香蕉AV777XXX色综合一区| 婷婷五月天丁香| 午夜婷婷久久| 8区视频在线| 偷拍99在线视频观看| 国产成人精品一区二三区熟女在线| 开心五月婷婷激情| 久草天堂| 五月丁香综合| 超碰人人色| 狠狠色97| 五月婷婷六月天| 精品99在线| 久久久精品人妻| 色色色色色色色色网站| 欧美日韩一区二区三区四区| 色综合色色色色色| 香蕉影院色| 婷婷久久五月天| 九九碰九九爱97| 成人av在线电影| 久久婷婷五月综合激情国产| 玖玖爱综合网| 97人人干| 婷婷在线精品| 五月丁香成人网| 综合色播| 9色91视频| 色欧美色色色| 熟妇天天综合| 超碰99热精品| 美女精品一级不卡视频| 99久久婷| 免费AAAAA网| 丁香五月天偷拍| 成人天天爽| 婷丁香五月天| 99免费视频在线观看爱| 五月天国产婷婷精品视频在线| 天天天天天天噜| 国产精品色婷婷AV综合色色| 五月花免费视频| 色5月丁香婷婷| 色哟哟精品| 人妻AV在线| 五月天综合网| 婷色天堂| www91精品| 99人人操人人操人人精| 五月丁香啪啪网| 少妇大叫太大太粗太爽了A片| 国产AV一区二区三区最新精品| 久草丁香婷婷1024| 九九人人看| 激情久久综合| 激情五月婷婷在线区| 99思思热只有在这里看| 久操97| 五月婷婷中文字幕| 激情婷婷狠狠干综合| 国产免费av网站| www.91在线观看| 人人澡天天色天天做| www.日韩艹| 婷婷五月天播播| 久久久中文| 1024在线一区| 丁香五月777| 婷婷伊人无码| 五月丁香六月玩女人| 日韩成人综合网| 女人被躁到高潮嗷嗷叫小| 激情丁香五月天图片| 久久99网站| 五月激情基地| 99热久| 青青草大香| 六月婷欧美| 婷婷丁香第一页| 久久a热| 久热无码| 五月天丁香成人社| 艾小青av| 激情五月婷婷丁香| 成人AV综合在线| 丁香五月六月久久综合| 26uuu亚洲| 色婷婷九月| 色碰97| 婷婷激情五月天激情在线| 99色色色色| 99热伊人| 狠狠色色综合| 天天天摸夜夜夜玩| www.色婷婷| 婷婷激情五月天小说| 亚洲激情电影五月天色婷婷丁香一起草 | 婷婷永久在线| 日本久久精品| 97操碰在线视频| 日日操日日射| 啪啪一区| 99久久久久| 日韩AV大全| 欧美激情性做爰免费视频| 丁香五月AV| 欧美性爱5月天天天看| 99九九视频| av免费在线网站| 去干网最新版本亚洲版| 99热官网| 婷婷激情综合| 欧美 日韩 成人| 97色综合| 精品成人无码A片观看香草视频| 激情婷婷五月天| 婷婷激情四射五月天| 26uuu欧美亚洲日韩| 99热6精品| 182TV大香蕉| 亚洲六月色| 天天久综合网永久入口18| 做爱夜夜干天天操| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 久久香视频| 六月香五月婷| 97五月天| 99久久a线观| 日本婷婷| 亚洲精品网站色视频| 久久性爱视频| 97视频久久| 日韩成人电影在线播放| 伊人五月天97| 26uuu成人网| 91人人人人人人人| 综合激情五月天六月婷免费视频| 90色免费视频| 色婷婷激情五月天在线观看| 五月停性愛| 色婷五月| 第四色色六月色综合| 天堂草在线观| 香港九九六区八区99| 丁香五月亚洲综合| 色五月丁香91| 婷婷综合五月天亚洲综合| 婷婷中文综合网| 综合激情深爱| 天天操精品| 五月天激情小说网| 久久婷狠狠色| 亚洲这里只有精品| 丁香婷婷免费| 99五月香婷婷丁香在线视频| 色狠狠色噜噜噜a天堂一区| 婷婷五月丁香基| 久久欧洲综合网| 大大香蕉综合在线| 99色| 九九成人精品免费视频| 777影视理论片大全在线观看| 五月激情视频网| 天天激情站| 天天做天天摸| 激情五月天的婷婷| 91狠狠综合久久久久久| oumeisesewang| 色欧美色色色| 五月天亚洲综合网| 综合久久综合| 亚洲欧洲中文日韩久久AV乱码| 99热这里只有精品50| 五月丁香花激情啪啪网| 欧洲综合视频| 婷婷六月爽| 超碰熟女农村在线69| 婷婷五月天开心网| www.婷婷五月| 风流少妇A片一区二区蜜桃| 婷婷综合色播网| 日本WWW九九九| 亚洲色综合| 丁香五月第四色88| 久久婷五月综合| 色五月综合网| 五月天开心激情综合网| 97婷婷色| 日本波多野结衣视频| 99热资源在线| 婷婷5月天av| 五月丁香A∨在线| 丁香六月五月天| 五月丁香婷婷激激激综合网色播| 另类伊人婷婷| 国产欧美精品AAAAAA片| 亚洲婷婷欧美婷婷| 精品婷婷五月视| 六月丁香啪| 欧美成人A片AAA片在线播放 | 日本熟妇乱妇熟色A片蜜桃| 五月婷婷天| 色婷婷WWW| av婷婷丁香| 91chinese在线| 婷婷丁香人妻久久在线观看| 婷婷无码视频| 大香蕉丁香婷婷| 婷婷操逼| 五月丁香免费看| 欧美激情丁香五月天久久婷婷一区| 免费在线a| CHINESE熟女老女人HD视频| 丁香五月天婷婷激情| 99re这里只有精品免费| 婷婷中文字幕网| aV直接看| 综合五月天| 九九这里只有精品| 99热这里只有精品 搜| 色色婷| 9色在线视频精品观看| 狠狠综合网| 久热超碰91| 激情综合色婷婷啪啪六月天| 在线观看熟女少妇| 九色七七| 久热伊人在91| 色婷婷很很丝袜| 色噜噜狠狠色综无码久久合欧美| 五月天激情小说网| 亚洲99热| 五月天激情国产综合AV| 婷婷六月丁香开心深深爱| 99视频在线观看网址| 久久综合五月天激情小说网站| 五月丁香综合在线| 久久婷婷91| 五月丁香六月婷婷操操操| 国产热精品| 激情五婷精品网在线观看网址| 亚洲色图81p| 婷婷五月丁香性爱| 午夜不卡久久精品无码免费| 天天操综合网| 91男同| 91九色欧美| 丁香五月激情啪啪| 色5月婷婷| 婷婷婷五月天最新综合你懂的| 99热这里只有精品26| 婷婷激情综合| 91成人品| 99九九精品| 亚洲最大在线| 婷婷色情网| 色婷婷88| 99riAv1国产在线观看| 99热99操| 亚洲天堂啪啪| 99九九玖玖| 99色五月| 97影院一级片| 91九色熟女| 日韩 中文 欧美| 色五月婷婷91| 黄色精品五月婷婷| 狠狠人妻色综合| 日本视频99| 亚洲成人AV在线播放| 日韩在线9| 国产 亚洲 在线| 婷婷九月激情| www久久久| 五月丁香婷婷爱激情综合网| 天天搞夜夜爽夜夜爽| 婷婷激情五月吧| 综合综合色色| 激情WWW| 巴基斯坦粉嫩无码视频| 韩国天天婷婷| 婷婷五月天视频| 99riAV国产精品视频| 九九九热精品| 色五月亚洲| 欧美人与性动交CCOO| 超碰只有精品在线| 激情综合五月丁香六月婷婷| 亚洲久艹| 久久资源网五月婷| 激情五月天色| hd五月婷婷在线| 噜噜噜噜噜色| 婷婷五月在线视频| 综合色播| 熟女人妻一区二区三区免费看| 碰99在线| 色综合久久88| 99色在线观看| 婷婷丁香五月激情中文字幕版| 5月丁香六月婷婷| 激情五月天社区| 色欲婷婷五月天| 亚洲精品字幕在线观看| 成人国产网| 婷婷色吧| 亚州欧美国产久精国产99综合视频| 五月天影院婷婷在线观看| 丁香五月婷婷色| 成人短视频在线免费观看| 91丨九色丨东北熟女| 国自产拍偷拍精品啪啪一区二区| 色婷婷狠狠18yy| 婷婷综合色网| 五月激情丁香六月狠狠干| 婷婷爱婷婷| 五月天激情网站| www久久99| 久久38视频| 九九色影视| 久久 这里只有精品1| 天天日天天爽| 99色色| 久久综合五月| 丁香六月亚洲| 中文av网| 午夜少妇在线观看视频| 激情婷婷九月| 婷久看人爽| 婷婷五月天天爽| 色色色综合| 亚洲视频国产一区| 性爱电影科技贸易有限公司| 色色色网站| 粉嫩AV久久一区二区三区| 2013AV天堂| 五月丁香婷婷无码A∨| 熟女激情五月天| 久久婷婷影院| 99色| 夜夜撸天天日| 久久激情五月婷婷| 九九热99在线视频| A一级操| 精品网站:999WWW| 乱乱av| 婷婷五月天色色| 桔色成人在线| 成人片黄网站色大片免费毛片| 色色九九五月天| 亚洲一区二区无码蜜乳av| 色色五月婷| HD久久精品视频| 狠狠久久婷五月综合色| 玖玖爱综合网| 久久爱综合| 婷婷五月天伊人在线| 欧美大香蕉视频| 丁香操逼| 免费试看小视频 99| 国产亚洲在线观看| 爆乳熟女一区二区三区爆乳| 色 五月婷婷基地| 丁香五月伊人| 玖玖婷婷五月| 99精品亚洲| 五月婷婷操操| 色婷婷丁香五月高清在线| 亚洲五月婷| 久久99看免费| 九九99一区| 色婷婷丁香女女| 99在线爽| 丁香五月影院| 婷婷伊人网| 99热| 538任你爽视频不一样的| 天天情色综合网| 丁香婷婷五月份| 9999热精品在线免费播放| 99爱这里只有精品免费视频| 狠狠99| 色婷婷激情| 久久久九九九 99| 色播五月丁香| 日本色色视频| 久久深爱激情网| 超碰97在线操| www.人人操人人看人人想人人摸 人人人人操,COM| 亚洲天天| 婷婷色婷婷亚洲成人| 99ri国产| 日韩欧美一级大黄网站| 黄色片区子| 激情综合九月| 超碰人人艹| 999婷婷综合| 五月丁香操婷逼| 九九热啪啪| 九九九九综合| 91九色精品女同系列| 五月丁香色色| 91超碰在线观看| av网址在线| 亚洲色久| 天天日天天色| 五月丁香好婷婷A片网| 日本不卡高字幕在线2019| 极品 少妇 内射| 七月婷婷色香综合网| 少妇人妻凹凸视频| www.夜夜爱.com| 婷婷午夜天| www.综合久久.com| 五月丁香六月婷综合成人综合| www.91色| 久久久五月天| 思思99re这里只有| 欧在线一区| 网站免费一站二站| 91色逼| 六月婷婷色| 色原狠狠综合| 99热网址| 九九热这里只有精品556| 99无码视频| 丁香五月人妻熟女| 俺去婷婷 丁香| 婷婷丁香宗合888| 天天看A片| 五月婷婷激情网| 淫荡工a| 99爱爱网| 五月婷婷成人| 狠狠999| 欧美色偷偷大香| 亚洲婷婷91丁香| 丁香五月狠狠在线观看| 丁香88AV五月婷婷| 久久思思热| 天天色天天搡| www.玖玖九| 91色吧网| 激情无码五月天| 精品热青草| 性色婷婷| 五月婷婷五月天天| 婷婷色偷拍| 五月天激情小说网| www,av好吊操| 久久久久久激情| 99国产在线精品视频| 五月婷婷在线免费观看| 丁香综合婷婷开心激情网| 思思re最新视频| 婷婷五月天成人网| 亚洲欧洲色色| 婷婷六月色情| 香蕉婷婷| 日欧大屏操| 天天综合久久| 九九久久污| 天天做天天爱| 久热网站| 播五月婷婷开心| 999精品久久久久久久| 亚洲综合激情五月久久| 久久婷婷丁香六月天| 丁香六月啪啪啪| 日韩成人中文| 欧美内射AA| 婷婷五月天亚洲综合| 激情九月婷婷| 九九色插| 色五月亚洲| 六月天婷婷| 日韩av大全| 1024国产| 五月丁香婷婷色播无码| www.婷婷五月天| WWW,五月| 99久久精品网| 婷婷91| 亚洲色图日韩网址| 国产亚洲精品久久久久久久久动漫| 综合久久久| 另类图片婷婷五月天| 这里有精品99| 97色天堂| 一区二区你懂的| 亚洲乱码日产精品BD| www.99热在线观看| 欧美成人精品一区二区| 7777国产盗摄农村女人| 夜夜爽天天爽| 性爱久久| 丁香五月天天高清在线| 色99视| 久婷| 九九精品热播| 欧美一级毛卡片无码| 日本猛少妇色XXXXX猛叫| 97色天堂| 婷香五月激情视频| 丁香六月天色婷婷| 五月丁香怕怕综合| 婷婷五月激情图片| 美欧成人视频| 激情五月婷婷综合秋霞| 五月丁香六月激情综合| 色婷婷小说| 五月丁香色色| 99色在线观看视频| 天天综合中文| 色婷婷五月天天天干天天操天天爽| 这里只有精品日韩精品| 色五月首页| 大香蕉99| 996精品热视频| 激情av网| 综合网色综合| www.婷婷五月.com| 丁香六月天婷婷色| 熟女少妇内射日韩亚洲| www.99色| 久99| 五月丁香啪| 色999五月色| 六月婷婷开心| jiZZdr| 伊人五月天在线| 色99在线视频| 色五月激情| 天天做天天爱天天爽| 丁香色五月天| 婷婷六月色| 91久久久久久久| 丁香五月成人| 久久思思热| 亚洲精品无码一区二区| 成人综合网站| 51精品国自产在线| 丁香五月激动深爱欧美| 超碰狠狠干99| 夜夜嗨一区二区三区直播内容 | 久久婷婷五月综合网| 99视频热99| 五月做爱| 欧美碰碰| 玖玖婷婷婷丁香五月| 丁香五月AV| 中文字幕av在线| 超碰精品在线| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 成人做爰A片免费看视频| 色婷婷六月| 国产真实乱了老女人视频| 激情操逼婷婷| 丁香五月熟女| 亚洲成人av在线播放| 成人一级片| 天搞天天天天天| 色。 婷婷婷| 丁香五月婷婷成人网| 婷婷五月18永久免费视频| 亚洲激情婷婷| 黄网免费看| 深爱五月婷婷| 亚洲精品无人区| 丁香五月激情啪啪啪啪| 婷婷玖玖丁香| 大香蕉久| 五月激情网五月综合网| 五月婷婷精品无在线| 五月天婷婷社区| 99久在线精品99re8| 色婷婷在线视频| avh片在线观看| 91久久久久久久91| 青青草原中文字幕| 丁香五月天无码| 日婷婷久久开心| 超碰在线国产| 国产乱子轮XXX农村| 日本97在线看片| 亚洲午夜视频| 婷婷丁香五另类网站| 26UUU欧美| 色婷婷基地| 97爱艹婷婷开心丁香激情综合| 伊人综合婷婷| 五月总合激情网| 久久五月婷天天干| 五月丁香六月激情综合| 五月天精品| 免费99色| 亚洲色9| 深爱激情六月| 婷婷久月| 99色综合久久| 久久精典| 欧美日本一区二区三区| 啪啪婷婷五月天激情| 六月婷婷综合| 欧美色偷偷大香| 婷婷色导航| 六月丁香婷婷五月| 中文字幕AV在线播放| 免费观看全黄做爰的视频| 亚洲五月天色色| 五月色亭丁香| 婷婷八月丁香激情综合| 国产亚洲精品久久久久久牛牛| 色欧美日| 深爱激情九九五月天 | 丁香九月婷婷综合| 99热12| www.99在线| 77777亚洲午夜久久| 国产成人AV人人爽人人澡Va| 久色激情| 亚洲中文字幕AV在线| 天天噜日日噜综合无码| av中文网站| 九九精品热| 久热超碰91| 欧美3AaAa大片| 免费观看的av| www.久久9| www.五月丁香av| 欧美色频| 97干视频在线| 天天射夜夜骑| 97色色色| 色综合久久44| 99热6这里只有精品| 情欲禁地| 97人人干| 激情开心五月天| 懂色av粉嫩av蜜臀av| 婷婷色激情网| 日本天堂爱爱| www.久久色.com| 五月婷婷香蕉| 日本欧美成人片AAAA| 99re在线视频| 激情五月开心五月丁香五月| 中国女人内射6XXXXX| 婷婷综合五月| 99ri视频在线播放| 日本nghangse中文字幕| 夜夜天天久久婷婷| 激情综合五| 五月激情综合网| 神马欧美精| 丁香社92视频| 狠狠干伊人| 国产毛多水多女人A片| 欧美噜噜噜草| www.99在线| 97人人做| 狠狠爱婷婷丁香| 婷婷丁香五月天大香蕉| 五月丁香婷婷激情澎湃四射| 天天日天天久久青青| 草美女在线观看视频在线播放| 五月色婷婷综合| 天天搡日日搡aaaaⅩ| 99热在线看片| 日本3级片一区2区| 色婷插| 婷婷无五月无码视频| 九月婷婷综合八月丁香在线观看 | 成人啪啪色婷婷久| 天天天天天日| 九97免费视频| 这里只精品热在线18| 大香蕉五月婷婷丁香| www.五月激情红色| 精品少妇人妻AV无码专区偷人 | 97色婷婷| 亚洲五月天伊人| 双性美人被调教到喷水A片| 79亚洲精品少妇| 五月丁香成人网| 五月情四婷婷| 国产成人精品一区二三区熟女在线| 色六月天天激情综合网| 人妻久久久久久| 色五月婷婷激情综合网| 激情小说五月天| 久久久久久草黄色片AV在线观看| 婷婷午夜| 丁香五月婷婷亚洲综合精品在线| 国产精产国品一二三在观看| 婷婷久久六月费| 亚洲正能量欧美| 少妇达人正片在线播放_ikun_福利吧| 亚洲精品另类| 丁香五月在线观看| 亚洲乱码w在线观看| 4438激情网| 丁香九月婷| 丁香激情五月天| 丁香婷婷人妻综合网| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品 | AV 3P| 性爱111111| 久久这里只精品| 天天搡日日搡aaaaⅩ| 久久五月天综合| 日日婷婷不卡| 五月丁香婷久久| 月婷婷婷婷五月| 色婷婷综合久久久久| 开心激情站| 天天插天天干天天舔| 超碰丁香五月| 亚洲综合五月天婷婷丁香| 99 热| 五月婷婷香蕉| 色噜噜狠狠色综合日日| 超碰激情网| 一点色成人网| 可以看的AV网站| 超碰免费人妻| 亚洲亚洲人成综合网络| 欧美草久久五月天91| 99热色婷婷| 五月丁香色综合| 五月丁香六月香综合激情| 亚洲成人无码网站| 色情综合| 啪啪小说五月天| 99综合免费视频| 婷婷丁香日韩五月| 另类 在线| 第2色五月婷| av操B网站| 色婷婷操逼| 六月天六月婷| 五月婷激情影院| 无码日本精品XXXXXXXXX | 色综合激情| 99激情网| 激情五月天福利| 五月婷婷香| 天天日日综合| 色色99| 日本97在线看片| 东京热免费视频| 婷婷五月噜噜| 午夜大香蕉| 综合99在线| 久久人妻精品|