99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

嵌入式Modbus中float傳輸與4檔旋轉(zhuǎn)開(kāi)關(guān)ADC復(fù)用實(shí)戰(zhàn)

嵌入式Modbus中float傳輸與4檔旋轉(zhuǎn)開(kāi)關(guān)ADC復(fù)用實(shí)戰(zhàn) 1. 項(xiàng)目概述為什么一個(gè)4檔旋轉(zhuǎn)開(kāi)關(guān)值得專(zhuān)門(mén)寫(xiě)6篇調(diào)試筆記嵌入式調(diào)試筆記系列寫(xiě)到第六篇標(biāo)題里卻只提“4檔旋轉(zhuǎn)開(kāi)關(guān)”和“Modbus中float的拆分還原”——看起來(lái)像兩個(gè)毫不相干的模塊拼湊。但如果你在STM32F103或GD32E230這類(lèi)IO資源緊張、ADC通道有限、又必須走標(biāo)準(zhǔn)Modbus RTU協(xié)議的工業(yè)現(xiàn)場(chǎng)干過(guò)活就會(huì)立刻明白這根本不是兩個(gè)功能而是一個(gè)被逼出來(lái)的系統(tǒng)級(jí)折衷方案。我去年在給某國(guó)產(chǎn)溫控器做固件升級(jí)時(shí)就卡在這兒主控用的是GD32E230C8T6只有16個(gè)GPIO可用其中UART1Modbus主站、SWD調(diào)試口、LED指示燈、繼電器驅(qū)動(dòng)已占掉11個(gè)剩下5個(gè)IO里還要留2個(gè)給EEPROM I2C最后只剩3個(gè)空閑IO——可客戶(hù)要求必須支持4檔手動(dòng)模式選擇節(jié)能/舒適/強(qiáng)力/自動(dòng)還得把當(dāng)前設(shè)定溫度f(wàn)loat型比如24.5℃通過(guò)Modbus寄存器上傳給上位機(jī)。你算算4檔狀態(tài)按常規(guī)做法得用2個(gè)GPIO做二進(jìn)制編碼00/01/10/11但這里連2個(gè)IO都擠不出來(lái)若改用ADC讀電位器分壓又得占用1個(gè)ADC通道1個(gè)IO做參考電壓切換而ADC本身還要承擔(dān)NTC溫度采樣任務(wù)采樣周期沖突、濾波邏輯打架實(shí)測(cè)噪聲超±0.8℃根本沒(méi)法用。最終方案是用單個(gè)ADC通道4檔旋轉(zhuǎn)開(kāi)關(guān)精密電阻分壓網(wǎng)絡(luò)實(shí)現(xiàn)4檔狀態(tài)識(shí)別 溫度設(shè)定值float上傳雙功能復(fù)用。核心在于旋轉(zhuǎn)開(kāi)關(guān)每檔對(duì)應(yīng)一個(gè)唯一分壓值如0.3V/1.2V/2.1V/3.0VADC采樣后查表判檔同時(shí)用戶(hù)旋鈕調(diào)節(jié)設(shè)定溫度時(shí)同一物理旋鈕會(huì)同步改變另一個(gè)獨(dú)立電位器阻值該電位器接入ADC另一通道或復(fù)用通道模擬開(kāi)關(guān)其電壓經(jīng)標(biāo)定后映射為float溫度值再按Modbus規(guī)范拆成2個(gè)16位寄存器傳輸。但問(wèn)題來(lái)了——Modbus協(xié)議棧FreeMODBUS只認(rèn)uint16_t類(lèi)型寄存器怎么把32位float塞進(jìn)去怎么保證上位機(jī)比如Modbus Poll能正確還原更關(guān)鍵的是ADC采樣值受供電波動(dòng)、運(yùn)放溫漂、PCB布局影響0.3V檔實(shí)測(cè)可能變成0.28~0.32V查表誤判怎么辦float拆分后高低字節(jié)順序搞反上位機(jī)顯示成1.23e-38這種鬼數(shù)產(chǎn)線(xiàn)測(cè)試直接抓瞎。所以這篇筆記不講原理堆砌只聚焦真實(shí)產(chǎn)線(xiàn)踩坑后的閉環(huán)解法從電阻選型計(jì)算、ADC校準(zhǔn)策略、float內(nèi)存布局解析到Modbus寄存器映射實(shí)操、上位機(jī)驗(yàn)證技巧全部基于GD32E230FreeMODBUS v1.6Modbus Poll 7.5.2實(shí)測(cè)驗(yàn)證。如果你正被IO資源卡脖子或者M(jìn)odbus傳float總對(duì)不上數(shù)這篇就是為你寫(xiě)的——它不教你怎么配置CubeMX而是告訴你當(dāng)硬件資源見(jiàn)底時(shí)工程師靠什么把不可能變成量產(chǎn)代碼。2. 硬件設(shè)計(jì)與信號(hào)鏈解析4檔開(kāi)關(guān)如何用1路ADC扛起狀態(tài)識(shí)別數(shù)值輸入雙任務(wù)2.1 旋轉(zhuǎn)開(kāi)關(guān)分壓網(wǎng)絡(luò)的底層邏輯為什么非得用4個(gè)精密電阻先破除一個(gè)誤區(qū)很多人以為“4檔開(kāi)關(guān)接ADC”就是隨便串幾個(gè)電阻分壓完事。我試過(guò)用1%精度的貼片電阻搭分壓結(jié)果在-10℃~60℃環(huán)境測(cè)試中第3檔標(biāo)稱(chēng)2.1VADC讀數(shù)在0x3A2~0x418之間跳變12位ADCVref3.3V對(duì)應(yīng)電壓1.89~2.21V跨度達(dá)0.32V——而相鄰檔位第2檔1.2V→0x235第4檔3.0V→0x5C8的理論間隔僅0.9V實(shí)際重疊區(qū)高達(dá)0.15V查表必然誤判。根本原因在于普通電阻的溫度系數(shù)TCR通常為±100ppm/℃溫升20℃就引入±0.2%誤差而旋轉(zhuǎn)開(kāi)關(guān)觸點(diǎn)接觸電阻隨壓力、氧化層變化實(shí)測(cè)波動(dòng)達(dá)5~50Ω。這兩者疊加讓分壓比嚴(yán)重漂移。解決方案是三重冗余設(shè)計(jì)電阻選型全部采用TCR≤25ppm/℃的精密薄膜電阻如Vishay PR01系列阻值公差±0.1%。以Vref3.3V、目標(biāo)分壓點(diǎn)0.3V/1.2V/2.1V/3.0V為例計(jì)算基準(zhǔn)電阻R110kΩ則各檔分壓電阻R2需滿(mǎn)足Vout Vref × R2 / (R1 R2)→R2 R1 × Vout / (Vref - Vout)代入得R2?1.032kΩ, R2?5.455kΩ, R2?15.23kΩ, R2?100kΩ注意R2?100kΩ已接近ADC輸入阻抗下限需加運(yùn)放緩沖。開(kāi)關(guān)結(jié)構(gòu)選用帶銀合金觸點(diǎn)的Bourns PTV09系列旋轉(zhuǎn)開(kāi)關(guān)接觸電阻≤20mΩ實(shí)測(cè)均值8mΩ且每檔有獨(dú)立觸點(diǎn)組避免公共端累積誤差。信號(hào)調(diào)理在ADC輸入前加一級(jí)單位增益運(yùn)放TI OPA333輸入偏置電流20pA共模抑制比120dB徹底隔離開(kāi)關(guān)觸點(diǎn)噪聲和PCB走線(xiàn)耦合干擾。提示很多工程師忽略運(yùn)放供電。OPA333若用3.3V單電源供電輸出擺幅僅能到0.1V~3.2V而第1檔目標(biāo)0.3V已逼近下限。實(shí)測(cè)發(fā)現(xiàn)當(dāng)Vcc波動(dòng)±5%3.14V~3.47V時(shí)0.3V檔輸出實(shí)際為0.28~0.31V仍在運(yùn)放線(xiàn)性區(qū)但若用LDO穩(wěn)壓到3.3V±1%則輸出穩(wěn)定在0.295~0.305VADC采樣值集中在0x172~0x17812位離散度壓縮到6LSB為后續(xù)軟件濾波留足余量。2.2 ADC采樣策略為什么必須關(guān)閉DMA、禁用連續(xù)轉(zhuǎn)換、手動(dòng)觸發(fā)GD32E230的ADC有12位分辨率但手冊(cè)明確標(biāo)注“在單次轉(zhuǎn)換模式下有效位數(shù)ENOB為11.2位啟用DMA連續(xù)采樣時(shí)ENOB降至9.8位”。這是因?yàn)镈MA突發(fā)傳輸會(huì)引入電源軌擾動(dòng)導(dǎo)致參考電壓Vref瞬態(tài)跌落——我們實(shí)測(cè)過(guò)當(dāng)ADC以1MHz采樣率連續(xù)轉(zhuǎn)換時(shí)Vref引腳出現(xiàn)15mV峰峰值紋波直接造成0.5%滿(mǎn)量程誤差。更致命的是通道切換延遲。GD32E230的ADC多通道掃描模式存在“通道建立時(shí)間”Acquisition Time從切換通道到采樣開(kāi)始需至少1.5μs。若用自動(dòng)掃描第1通道采樣結(jié)束到第2通道啟動(dòng)間隔不可控而我們的旋轉(zhuǎn)開(kāi)關(guān)狀態(tài)識(shí)別通道0和溫度設(shè)定值采樣通道1必須嚴(yán)格同步——因?yàn)橛脩?hù)旋鈕轉(zhuǎn)動(dòng)時(shí)兩個(gè)物理電位器聯(lián)動(dòng)時(shí)間差超過(guò)10ms就會(huì)導(dǎo)致?tīng)顟B(tài)與數(shù)值錯(cuò)配比如旋鈕剛轉(zhuǎn)到第3檔溫度值還停留在第2檔數(shù)據(jù)。因此最終采用雙觸發(fā)單次采樣先配置ADC通道0旋轉(zhuǎn)開(kāi)關(guān)分壓為單次轉(zhuǎn)換模式軟件觸發(fā)等待EOCEnd of Conversion標(biāo)志置位讀取DR寄存器立即配置ADC通道1溫度設(shè)定電位器為單次轉(zhuǎn)換模式軟件觸發(fā)再等EOC讀取DR寄存器。整個(gè)流程耗時(shí)約32μs含寄存器配置開(kāi)銷(xiāo)遠(yuǎn)低于旋鈕機(jī)械響應(yīng)時(shí)間典型值≥50ms確保狀態(tài)與數(shù)值強(qiáng)綁定。注意GD32E230的ADC_DR寄存器是16位寬但只使用低12位。很多新手直接adc_val ADC_RDATA(ADCx)結(jié)果高4位被隨機(jī)值污染。正確寫(xiě)法是adc_val ADC_RDATA(ADCx) 0x0FFF。我在產(chǎn)線(xiàn)曾因這行代碼漏寫(xiě)掩碼導(dǎo)致第1檔0.3VADC值偶爾讀成0x10724210查表誤判為第4檔整批產(chǎn)品返工。2.3 4檔狀態(tài)識(shí)別算法查表法為何比電壓比較更可靠理論上4檔狀態(tài)可用3個(gè)電壓比較器邏輯門(mén)實(shí)現(xiàn)成本更低。但嵌入式項(xiàng)目中復(fù)用現(xiàn)有ADC通道永遠(yuǎn)比新增外圍器件更優(yōu)——少一顆料BOM成本降0.12元PCB面積省3mm2更重要的是避免比較器失調(diào)電壓典型值±2mV帶來(lái)的溫漂問(wèn)題。查表法的關(guān)鍵在于動(dòng)態(tài)閾值窗口。固定閾值如0.25V/0.75V/1.65V/2.55V在溫漂下必然失效。我們的方案是每次上電執(zhí)行3點(diǎn)校準(zhǔn)短接GND得0V基準(zhǔn)、接Vref得3.3V基準(zhǔn)、接已知精密電壓源如LT1021的2.5V。記錄ADC值adc_gnd0x000,adc_vref0xFFF,adc_2v50x999理論值0x999實(shí)測(cè)0x98F~0x9A5。計(jì)算實(shí)際Vrefreal_vref 2.5V × 0xFFF / adc_2v5例如adc_2v50x992則real_vref3.302V。根據(jù)real_vref重新計(jì)算4檔理論ADC值target_adc[i] 0xFFF × target_volt[i] / real_vref。為每個(gè)檔位設(shè)置±15LSB的動(dòng)態(tài)窗口實(shí)測(cè)噪聲RMS≈8LSB±15LSB覆蓋3σ。偽代碼如下#define WINDOW_SIZE 15 uint16_t target_adc[4] {0x16A, 0x5A2, 0x9D8, 0xFFF}; // 基于real_vref計(jì)算 uint16_t adc_sw; // 旋轉(zhuǎn)開(kāi)關(guān)ADC值 uint8_t sw_state 0xFF; for(uint8_t i0; i4; i) { if( (adc_sw target_adc[i]-WINDOW_SIZE) (adc_sw target_adc[i]WINDOW_SIZE) ) { sw_state i; break; } }此算法在-40℃~85℃全溫區(qū)測(cè)試中誤判率為010萬(wàn)次采樣而固定閾值法在60℃時(shí)誤判率達(dá)3.2%。3. Modbus float傳輸實(shí)戰(zhàn)從IEEE 754內(nèi)存布局到寄存器映射的完整鏈條3.1 浮點(diǎn)數(shù)在內(nèi)存中的真實(shí)模樣為什么不能直接memcpy到Modbus寄存器這是嵌入式新人最常踩的坑??吹健癕odbus寄存器是16位”就想當(dāng)然把float變量強(qiáng)制轉(zhuǎn)成uint16_t數(shù)組float temp_set 24.5f; uint16_t reg[2]; memcpy(reg, temp_set, 4); // 錯(cuò) // 然后reg[0]寫(xiě)入保持寄存器40001reg[1]寫(xiě)入40002結(jié)果Modbus Poll顯示1.234e-38或NaN。原因在于IEEE 754單精度浮點(diǎn)數(shù)的字節(jié)序Endianness與Modbus寄存器順序不匹配。以24.5f為例在ARM Cortex-M3小端機(jī)內(nèi)存中存儲(chǔ)為地址: 0x20001000 0x20001001 0x20001002 0x20001003 值: 0x00 0x00 0xC2 0x41 // 小端LSB在低地址而Modbus協(xié)議規(guī)定寄存器40001存放高16位0x41C240002存放低16位0x0000。但memcpy直接按內(nèi)存順序復(fù)制導(dǎo)致reg[0]0x0000, reg[1]0x41C2上位機(jī)按大端解析得到錯(cuò)誤值。正確解法是字節(jié)重排float_to_modbus_reg(float fval, uint16_t *reg) { uint32_t raw; memcpy(raw, fval, 4); // 獲取IEEE 754原始位模式 // 將32位整數(shù)拆分為2個(gè)16位寄存器大端序 reg[0] (raw 16) 0xFFFF; // 高16位 → 寄存器40001 reg[1] raw 0xFFFF; // 低16位 → 寄存器40002 }驗(yàn)證24.5f的raw0x41C20000 → reg[0]0x41C2, reg[1]0x0000Modbus Poll正確顯示24.5。實(shí)操心得FreeMODBUS的mbportserial.c中eMBRegHoldingCB()回調(diào)函數(shù)接收*pucRegBuffer指向uint8_t數(shù)組但寄存器數(shù)據(jù)實(shí)際按uint16_t組織。很多開(kāi)發(fā)者直接*(uint16_t*)pucRegBuffer reg_value在小端MCU上會(huì)導(dǎo)致高低字節(jié)顛倒。正確寫(xiě)法是pucRegBuffer[0] (reg_value 8) 0xFF; // 高字節(jié) pucRegBuffer[1] reg_value 0xFF; // 低字節(jié)3.2 FreeMODBUS寄存器映射配置如何讓40001-40002真正承載float溫度值FreeMODBUS默認(rèn)只管理離散量線(xiàn)圈、輸入狀態(tài)和保持寄存器Holding Register但不自動(dòng)關(guān)聯(lián)float變量與寄存器地址。必須手動(dòng)在mbconfig.h中定義寄存器數(shù)量并在eMBRegHoldingCB()中實(shí)現(xiàn)讀寫(xiě)邏輯。步驟分解修改寄存器范圍在mbconfig.h中將MB_REG_HOLDING_NREGS設(shè)為至少2實(shí)際建議設(shè)為10預(yù)留擴(kuò)展。定義float變量存儲(chǔ)區(qū)在全局變量區(qū)聲明static float g_temp_setpoint 25.0f; // 設(shè)定溫度 static uint16_t g_holding_reg[10] {0}; // 保持寄存器數(shù)組實(shí)現(xiàn)回調(diào)函數(shù)關(guān)鍵在eMBRegHoldingCB()的MB_EVENT_READ分支case MB_EVENT_READ: if( usAddress 0 usNRegs 2 ) { // 讀40001-40002 float_to_modbus_reg(g_temp_setpoint, g_holding_reg[0]); // 將g_holding_reg[0]和[1]復(fù)制到pucRegBuffer pucRegBuffer[0] (g_holding_reg[0] 8) 0xFF; pucRegBuffer[1] g_holding_reg[0] 0xFF; pucRegBuffer[2] (g_holding_reg[1] 8) 0xFF; pucRegBuffer[3] g_holding_reg[1] 0xFF; *pucSize 4; // 2個(gè)寄存器×2字節(jié) } break;寫(xiě)操作處理當(dāng)上位機(jī)寫(xiě)40001-40002時(shí)需將寄存器值還原為floatcase MB_EVENT_WRITE: if( usAddress 0 usNRegs 2 ) { uint32_t raw ((uint32_t)pucRegBuffer[0] 24) | ((uint32_t)pucRegBuffer[1] 16) | ((uint32_t)pucRegBuffer[2] 8) | pucRegBuffer[3]; memcpy(g_temp_setpoint, raw, 4); } break;注意GD32E230的Flash擦寫(xiě)壽命約10萬(wàn)次若每次溫度設(shè)定都寫(xiě)EEPROM保存半年就報(bào)廢。我們的方案是僅在設(shè)備斷電前檢測(cè)到Vbat2.8V才將g_temp_setpoint寫(xiě)入Flash指定扇區(qū)日常運(yùn)行全在RAM中操作既保證掉電不丟失又延長(zhǎng)Flash壽命。3.3 上位機(jī)驗(yàn)證技巧用Modbus Poll快速定位float傳輸故障Modbus Poll是調(diào)試必備工具但默認(rèn)設(shè)置會(huì)掩蓋float問(wèn)題。必須調(diào)整3個(gè)關(guān)鍵參數(shù)Read/Write Function設(shè)為03Read Holding RegistersData Type在“Options → Read/Write Data Format”中勾選“Floating Point (32-bit IEEE 754)”并選擇“Big Endian Byte Order”對(duì)應(yīng)reg[0]high, reg[1]lowRegister Address輸入40001注意Modbus Poll顯示地址從1開(kāi)始實(shí)際協(xié)議地址為0故障排查速查表現(xiàn)象可能原因驗(yàn)證方法顯示1.234e-38或極小值float拆分時(shí)高低字節(jié)顛倒在MCU端打印printf(reg0%04X, reg1%04X\n, reg[0], reg[1]);對(duì)比Modbus Poll收到的原始值顯示NaN或INFfloat原始位模式非法如全1檢查ADC采樣值是否溢出0xFFF或溫度計(jì)算公式產(chǎn)生除零數(shù)值跳變劇烈±5℃ADC未濾波或float映射標(biāo)定曲線(xiàn)錯(cuò)誤關(guān)閉Modbus用串口打印ADC值和計(jì)算出的float觀(guān)察穩(wěn)定性寫(xiě)入后讀回值不變eMBRegHoldingCB()未處理寫(xiě)事件或Flash寫(xiě)保護(hù)未解除在寫(xiě)回調(diào)中添加LED閃爍提示確認(rèn)函數(shù)被調(diào)用實(shí)測(cè)案例某次產(chǎn)線(xiàn)測(cè)試中Modbus Poll顯示溫度為1.175e38。抓取寄存器值400010x7F80, 400020x0000。查IEEE 754表0x7F800000正是INF。追蹤代碼發(fā)現(xiàn)ADC采樣值為0xFFF滿(mǎn)量程但溫度映射公式temp (adc_val * 50.0f) / 4095.0f未做飽和判斷導(dǎo)致float溢出。修復(fù)if(adc_val 0xFFF) adc_val 0xFFF;。4. 全鏈路聯(lián)調(diào)與產(chǎn)線(xiàn)落地從實(shí)驗(yàn)室到批量生產(chǎn)的12個(gè)關(guān)鍵細(xì)節(jié)4.1 ADC校準(zhǔn)的工程化實(shí)現(xiàn)三點(diǎn)校準(zhǔn)如何避免產(chǎn)線(xiàn)燒錄瓶頸實(shí)驗(yàn)室用LT1021精密電壓源校準(zhǔn)很完美但產(chǎn)線(xiàn)不可能每臺(tái)設(shè)備配一臺(tái)2000元的基準(zhǔn)源。我們的方案是用MCU自身ADC做相對(duì)校準(zhǔn)。原理GD32E230內(nèi)置1.2V內(nèi)部參考電壓VREFINT其溫度特性已由ST官方標(biāo)定-40℃~85℃誤差±1.5%。校準(zhǔn)流程上電后先讀取VREFINT通道ADC通道17的ADC值adc_vrefint查MCU數(shù)據(jù)手冊(cè)獲取該型號(hào)VREFINT典型值如1.21V計(jì)算實(shí)際Vrefreal_vref 1.21V × 0xFFF / adc_vrefint用此real_vref校準(zhǔn)所有外部ADC通道。產(chǎn)線(xiàn)只需在夾具上短接VREFINT引腳無(wú)需額外設(shè)備。實(shí)測(cè)1000臺(tái)設(shè)備Vref計(jì)算誤差均在±0.8%內(nèi)完全滿(mǎn)足工業(yè)級(jí)±2%精度要求。踩坑記錄GD32E230的VREFINT通道必須在ADC使能后10μs才能穩(wěn)定。早期代碼在ADC_Enable()后立即讀取導(dǎo)致adc_vrefint偏低5%real_vref虛高最終溫度讀數(shù)偏高1.2℃。修復(fù)添加for(volatile uint32_t i0; i100; i);延時(shí)。4.2 旋轉(zhuǎn)開(kāi)關(guān)抖動(dòng)消隱硬件RC濾波與軟件狀態(tài)機(jī)的協(xié)同設(shè)計(jì)機(jī)械旋轉(zhuǎn)開(kāi)關(guān)存在毫秒級(jí)抖動(dòng)bounce time 5~15ms。單純軟件延時(shí)如delay_ms(20)會(huì)阻塞主循環(huán)影響Modbus響應(yīng)實(shí)時(shí)性。我們采用硬件預(yù)濾波軟件狀態(tài)機(jī)組合硬件層在ADC輸入端加RC低通濾波R10kΩ, C100nF截止頻率159Hz衰減1kHz以上噪聲同時(shí)將抖動(dòng)脈寬平滑至5ms。軟件層用狀態(tài)機(jī)實(shí)現(xiàn)去抖不依賴(lài)延時(shí)函數(shù)typedef enum { SW_IDLE, SW_DEBOUNCE, SW_STABLE } sw_state_t; static sw_state_t sw_fsm SW_IDLE; static uint16_t sw_last_adc 0; static uint32_t sw_last_time 0; void sw_fsm_update(uint16_t adc_val) { switch(sw_fsm) { case SW_IDLE: if(adc_val ! sw_last_adc) { sw_last_adc adc_val; sw_last_time HAL_GetTick(); sw_fsm SW_DEBOUNCE; } break; case SW_DEBOUNCE: if(HAL_GetTick() - sw_last_time 20) { // 20ms穩(wěn)定窗口 sw_fsm SW_STABLE; } else if(adc_val ! sw_last_adc) { sw_last_adc adc_val; sw_last_time HAL_GetTick(); } break; case SW_STABLE: if(adc_val ! sw_last_adc) { sw_last_adc adc_val; sw_fsm SW_DEBOUNCE; } break; } }此狀態(tài)機(jī)在1ms定時(shí)中斷中調(diào)用CPU占用率0.3%且能精準(zhǔn)捕獲開(kāi)關(guān)動(dòng)作。4.3 Modbus通信魯棒性增強(qiáng)應(yīng)對(duì)工業(yè)現(xiàn)場(chǎng)的3類(lèi)典型干擾Modbus RTU在RS485總線(xiàn)上極易受干擾常見(jiàn)現(xiàn)象寄存器讀取亂碼、從機(jī)無(wú)響應(yīng)、偶發(fā)CRC錯(cuò)誤。我們針對(duì)產(chǎn)線(xiàn)實(shí)測(cè)的3類(lèi)干擾做了加固共模干擾如變頻器啟停在RS485收發(fā)器SP3485的A/B線(xiàn)間加120Ω終端電阻并在A/GND、B/GND間各加1nF陶瓷電容X7R濾除高頻共模噪聲。實(shí)測(cè)共模電壓抑制比提升22dB。地電位差長(zhǎng)距離布線(xiàn)放棄單點(diǎn)接地采用“浮地TVS”方案。SP3485的GND引腳不接PCB地而是通過(guò)10Ω電阻5.6V TVSP6KE5.6A連接到大地既泄放浪涌又避免地環(huán)流。CRC校驗(yàn)失敗FreeMODBUS默認(rèn)重試1次即報(bào)錯(cuò)。我們修改mbportserial.c在eMBPortSerialPoll()中增加if( eStatus MB_EILLFUNC || eStatus MB_EIO ) { // CRC錯(cuò)誤或I/O異常等待300ms后重試避開(kāi)干擾窗口 vMBPortTimersDelay(300); continue; }重試上限設(shè)為3次成功率從82%提升至99.7%。最后分享一個(gè)產(chǎn)線(xiàn)血淚教訓(xùn)某批次PCB的RS485終端電阻焊盤(pán)設(shè)計(jì)為0805封裝但產(chǎn)線(xiàn)誤用0603電阻功率不足0.125W。連續(xù)運(yùn)行2小時(shí)后電阻熱擊穿導(dǎo)致總線(xiàn)癱瘓。后續(xù)強(qiáng)制改為1206封裝0.25W并增加AOI光學(xué)檢測(cè)項(xiàng)。5. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄來(lái)自17個(gè)產(chǎn)線(xiàn)項(xiàng)目的故障庫(kù)5.1 ADC相關(guān)故障速查故障現(xiàn)象根本原因解決方案驗(yàn)證方法所有ADC通道讀數(shù)為0ADC時(shí)鐘未使能或ADC電源域ADCCLK未配置檢查RCC_APB2PERCLKEN RCC_APB2PERCLKEN_ADC1確認(rèn)ADC_CTLR0 ~ADC_CTLR0_ADCON后是否調(diào)用ADC_Enable()單通道讀數(shù)固定為0xFFF該通道輸入懸空或短路到Vref檢查PCB該通道走線(xiàn)是否虛焊萬(wàn)用表測(cè)輸入對(duì)地電阻是否1kΩ斷開(kāi)傳感器用可調(diào)電源注入0.5V看讀數(shù)是否變化ADC值隨溫度線(xiàn)性漂移Vref未用內(nèi)部基準(zhǔn)且LDO輸出溫漂大改用MCU內(nèi)部VREFINT作為ADC參考源ADC_CTLR1 ADC_CTLR1_VREFSEL5.2 Modbus float傳輸故障速查故障現(xiàn)象根本原因解決方案驗(yàn)證方法Modbus Poll顯示值為0float變量未初始化或?qū)懟卣{(diào)未更新RAM變量在main()中添加g_temp_setpoint 25.0f;檢查eMBRegHoldingCB()中寫(xiě)操作是否執(zhí)行memcpy(g_temp_setpoint, raw, 4)用J-Link Debugger查看g_temp_setpoint內(nèi)存值讀取值正確寫(xiě)入值不生效FreeMODBUS的MB_EVENT_WRITE_COMPLETE未觸發(fā)或寄存器地址映射錯(cuò)誤確認(rèn)usAddress參數(shù)是否從0開(kāi)始40001對(duì)應(yīng)0檢查eMBRegHoldingCB()中usAddress 0條件在寫(xiě)回調(diào)中添加HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin)用示波器看LED是否閃爍float值小數(shù)點(diǎn)后全為0浮點(diǎn)運(yùn)算未鏈接math庫(kù)或編譯器優(yōu)化等級(jí)過(guò)高在Keil中勾選Use MicroLIB或添加--fpuvfp編譯選項(xiàng)降低優(yōu)化等級(jí)至-O1編譯后查看.map文件確認(rèn)__aeabi_fadd等符號(hào)是否被引用5.3 旋轉(zhuǎn)開(kāi)關(guān)識(shí)別故障速查故障現(xiàn)象根本原因解決方案驗(yàn)證方法開(kāi)關(guān)檔位跳變?nèi)绲?檔突然變第4檔PCB分壓電阻焊盤(pán)虛焊或開(kāi)關(guān)觸點(diǎn)氧化用烙鐵補(bǔ)焊分壓電阻用電子清潔劑清洗開(kāi)關(guān)觸點(diǎn)萬(wàn)用表測(cè)各檔位對(duì)地電阻應(yīng)與理論值偏差0.5%某檔位始終無(wú)法識(shí)別該檔分壓電阻阻值超差或ADC通道被其他外設(shè)占用更換該檔電阻用LCR表實(shí)測(cè)檢查ADC_SAMPTIME寄存器是否被SPI DMA修改示波器測(cè)該檔分壓點(diǎn)電壓應(yīng)穩(wěn)定在標(biāo)稱(chēng)值±10mV內(nèi)開(kāi)關(guān)旋轉(zhuǎn)時(shí)數(shù)值跳變兩個(gè)電位器機(jī)械聯(lián)動(dòng)不同步或ADC采樣時(shí)序未鎖定在sw_fsm_update()中加入HAL_ADC_Start(hadc1); HAL_ADC_PollForConversion(hadc1, 10);強(qiáng)制同步采樣用邏輯分析儀抓取ADC_EOC和SW狀態(tài)變化時(shí)序確保間隔10μs5.4 綜合調(diào)試技巧3個(gè)讓效率翻倍的硬核方法寄存器快照法在eMBRegHoldingCB()開(kāi)頭添加static uint16_t reg_snapshot[10]; memcpy(reg_snapshot, g_holding_reg, sizeof(reg_snapshot));然后用J-Link RTT Viewer實(shí)時(shí)打印reg_snapshot[0]和reg_snapshot[1]繞過(guò)Modbus協(xié)議棧直接驗(yàn)證float拆分是否正確。ADC波形可視化利用STM32CubeIDE的SWVSerial Wire Viewer功能配置ITM Stimulus Port輸出ADC值用Ozone軟件生成實(shí)時(shí)波形圖。比串口打印快100倍且能直觀(guān)看到噪聲頻譜。Modbus流量鏡像在RS485總線(xiàn)TAP點(diǎn)并接USB轉(zhuǎn)RS485適配器用Wireshark抓包加載modbus_dissector.lua插件。可精確分析從機(jī)響應(yīng)延遲、CRC錯(cuò)誤位置、寄存器地址偏移比Modbus Poll的日志更底層。我在調(diào)試某款智能閥門(mén)時(shí)用Wireshark發(fā)現(xiàn)從機(jī)響應(yīng)時(shí)間長(zhǎng)達(dá)120ms標(biāo)準(zhǔn)要求30ms。深入分析發(fā)現(xiàn)FreeMODBUS的xMBPortEventPost()在中斷中調(diào)用xQueueSendFromISR()而隊(duì)列長(zhǎng)度設(shè)為5當(dāng)Modbus請(qǐng)求密集時(shí)發(fā)生阻塞。解決方案將隊(duì)列長(zhǎng)度增至20并在prvMBCallbackTimerExpired()中增加xQueueReset()防溢出。6. 項(xiàng)目延伸與演進(jìn)思考當(dāng)4檔開(kāi)關(guān)遇上AI邊緣計(jì)算這個(gè)看似簡(jiǎn)單的“4檔開(kāi)關(guān)float傳輸”方案其底層思想正在被新一代嵌入式系統(tǒng)重構(gòu)。去年我們?yōu)槟彻I(yè)網(wǎng)關(guān)做的升級(jí)中就面臨類(lèi)似需求8路模擬輸入4-20mA、16路數(shù)字IO、雙網(wǎng)口還要跑輕量級(jí)TensorFlow Lite模型做設(shè)備異常檢測(cè)——MCU換成NXP i.MX RT1064資源充裕了但問(wèn)題更復(fù)雜用戶(hù)仍想用旋轉(zhuǎn)開(kāi)關(guān)選擇AI模型工作模式靜音/標(biāo)準(zhǔn)/極速/學(xué)習(xí)同時(shí)要上傳模型推理結(jié)果float數(shù)組。此時(shí)“省IO”已不是首要目標(biāo)確定性時(shí)序和數(shù)據(jù)一致性成為新瓶頸。我們的新方案是旋轉(zhuǎn)開(kāi)關(guān)狀態(tài)通過(guò)GPIO中斷捕獲消抖后觸發(fā)FreeRTOS事件組通知AI任務(wù)切換模式float結(jié)果上傳改用Modbus TCP利用RT1064的硬件TCP/IP加速器吞吐量達(dá)12Mbps關(guān)鍵創(chuàng)新將float數(shù)組打包為Protocol Buffer二進(jìn)制流通過(guò)Modbus自定義功能碼0x43傳輸比傳統(tǒng)寄存器映射節(jié)省60%帶寬。這印證了一個(gè)事實(shí)嵌入式工程師的價(jià)值從來(lái)不在“會(huì)用某個(gè)芯片”而在于理解約束的本質(zhì)并在資源、實(shí)時(shí)性、可靠性、成本的多維空間中找到最優(yōu)解。那個(gè)被IO逼到墻角的4檔開(kāi)關(guān)方案今天看或許簡(jiǎn)陋但它教會(huì)我的——如何用最樸素的硬件完成最苛刻的工業(yè)通信——至今仍是產(chǎn)線(xiàn)救火的第一反應(yīng)。最后說(shuō)個(gè)細(xì)節(jié)所有量產(chǎn)代碼中float_to_modbus_reg()函數(shù)的注釋第一行寫(xiě)著“Don’t touch this unless you’ve read IEEE 754 spec and FreeMODBUS source.”——因?yàn)檫^(guò)去三年它被誤改過(guò)7次每次都在凌晨3點(diǎn)接到產(chǎn)線(xiàn)電話(huà)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产午夜成人AV在线播放| 五月天伊人综合| 这里只有精品无码| 乱色色色| 狠狠干狠狠干狠狠干狠狠干| 久热这里只有精品3| 色婷婷五月天无码视频| 老师高潮流白浆喷水的A片| 99久久精品国产色欲| 中文无码精品一区二区三区| 久久人妻乱子伦| 成人免费视频一区| 亚洲视频另类| 日韩有码一区| 超碰啪啪网| 国产亚洲精品久久久久久郑州| 99精品综合| 五月综合激情综合久| 色婷精品91| 天天干天天av天天射| 六月丁香婷婷五月天| 欧美久久久中文字幕| 五月综合视频| 中国丰满熟女A片免费观| 久碰婷婷视频| 九九99精品视频| 天天色综合图片| 精品综合久久久久久五月天| 思思热精品免费视频| 色,激情五月天| 99久在线视频| 激情五月深爱五月观看| 思思视频这里是精品| 99日精品视频| 超碰免费99| 99九精品| 日本久久天堂| 婷婷基地成人五月天| 色综合婷婷| 婷婷五月天大香蕉| 婷婷欧美综合| 婷婷五月深情丁香深爱日韩| 欧美日韩大黄| 六月丁香五月激情网| WWW五月婷婷| 色五月首页| 大香蕉九九| 五月丁香婷婷综合久久| 九九日本视频| 青草热视频这里只有精品| av在线超清中文| 青青草性爱视频| 97久久视频| 欧美日综合| 99日韩| 五月丁香好婷婷A片网| 99九九中文字幕视频| 久久九精品| 丁香婷婷超碰| 激情综合五月天| 精品久久艹| 亚洲这里只有精品| 久操香蕉| aa久久| 99色激| 激情五月天婷婷久久久久久久久久久 | 色停停五月天| 婷婷成人综合| 亚洲日韩一页精品发布| AV六月丁香| 欧美性久| 久久五月激情网| 丁香色五月婷婷91桃色| 欧美久久网| 99久在线精品99re8| 五月天婷婷综合| 国产成人精品亚洲线观看| 怡红院AV亚洲一区二区三区H| 色婷青青| 久久婷婷五月天激情四射| 亚洲第一成人无码A片| 久久激情综合| www.亚洲激情| 丁香五月婷婷六月| 丁香六月综合| 亚洲国产精品成人免费一区久久久在线观看AAAA | 免费无码毛片一区二区A片| 超pen个人视频97| 欧美六月婷婷| 丁香五月天激情五月天激情五月天激情网| 天天天天爽爽天干| 五月天激情视频| 少妇性按摩无码中文A片| 日韩av免费版| 丁香六月婷婷综合激情欧美| 丁香六月婷婷一区二区三区| www九九热| 五月丁香六月片| 久re热视频| 色婷婷五月天| 婷婷色色丁香| 99精品在线下载| 亚洲性视频| 激情色播| 91精品久久久久久久| 综合激情综合啪啪| 久热9| 狠狠插.com| 99色| 天天操天天操天天操天天操天天操天天操| 99久在线精品99re8| 有码一区二区三区| 性 色 婷婷| 五月天六月色| 99热在线播放精品| 最新激情五月天| 色五月激情五月开心五月| 激情网五月天| 久久久99视频| 超碰猛烈的性猛交| 色五月在线综合| 丁香婷婷人妻| 久久五月丁香| 伊人超碰| 婷婷激情六月综合| 好色婷婷| 欧美综合激情丁香五月六月婷| 99欧美| 9视频1在线| 97涩涩丁香五月天| 激情婷婷五月天| 天堂色色色| 五月天激情日色在线| 开心激情网在线| 婷婷五月激情图片| 一区操| 久久视频婷婷视频| 色墦五月丁香| 九九热只有精品6| 亚洲免费观看高清完整版AV线| 欧美性爱丁香五月| 丁香欧美| 色五月婷婷丁香凹凸| 996er在线观看| 日韩在线观看亚洲| 国产精品丝| www.26uuu.com亚洲电影| 综合色图区| 久久婷婷综合网| 天天橾夜夜爽| 久久五月天免费网站| 涩涩婷婷五月| yjzz亚洲国产| 99精品22| 精品导航在线x不卡| 婷婷丁香五月天小说| 五月天色色网站| 色综合九九| 99玖玖免费视频| 丁香五月综合无码趴趴| 一级二级色大片| 色五月婷婷91在线| 网站免费一站二站| 五月婷婷色综图片| 欧美日韩aaa| 色激情综合| 在线观看的av| 婷婷五月成年人| www.99视频| 激情综合亚洲| 做爰丰满少妇1313| 国内在线99视频| 五月丁香婷婷激情| 一级黄色片看看| 2025年最新亚洲在线欧美| 最近中文字幕2019视频1| 三区激情四射av| 中文字幕按摩做爰| 五月婷婷丁香狠狠撸久久| 婷婷碰碰| 狠狠狠狠狠狠色| 狼人婷婷久久| 六月婷婷综合| 开心激情站婷婷五月天| 小泽玛利亚视频一区二区| 色综合九九| 華人性愛AV在線| 五月天综合在线| 大香蕉久久伊人婷婷五月丁香| 操97| 少妇人妻偷人精品无码视频新浪| 激情五月丁香社区| 激情五月色综合国产精品| 六月色婷婷综合影视| 五月激情综合网| 激情五月综合色婷婷| 色五月在线综合| 日本一毛片| 狠狠久久婷五月综合色| 五月丁香激情婷婷| 玖玖婷婷五月天毛片| 天天摸天天透天天舔| 丁香婷婷网| 超碰成人公开| 欧美婷婷综合| 婷婷激情视频| 99热在线这里| 五月天婷爱综合| 婷婷久久免费| 丁香五月天社区婷婷| 色五月天电影| www.91九色| 亚洲六月婷| 亚洲综合视频在线| 久婷久婷激情肉| 99久久国产宗和精品1上映| EEUSS鲁片一区二区三区| 草婷婷在线| 伊人婷婷大香蕉| 五月天大香焦| 亚洲网站观看视频| 五月婷婷五月天| YJLZZJLZZ亚洲乱熟无码| 激情五月天色爱| 亚洲精品成人| 日韩在线视频中文字幕| 97碰成超视频免费视频| 99久久婷婷国产综合亚洲| 天天爱天天操| 综合网天天| 91色在线 | 日韩| 99热这里只是精品| 色五月五月丁香| 五月婷婷亚洲天堂激情在线| 六月色日韩| 99re热在线视频| 亚洲成人无码免费| 久久精品五月| 亚洲午夜一区二区| 久9免费视频| 99热欲| 大战熟女丰满人妻AV| 日韩久久视频| 九九这里都是精品| 激情五月天色色网| 欧美黑人巨大性生话| 99热这里是精品| 九九aV| 色色亚洲| 激情久久久久| 五月婷婷激情综合| 大地9中文在线观看免费高清 | 校花娇喘呻吟校长陈若雪视频| 久久婷综合| 日日夜夜狠狠| 色五月婷婷基地| 色色热| 婷婷操婷婷干婷婷射| 亚洲、热| 五月天丁香久久| 久久在线大香蕉| 色99在线观看| www久久99| 大香蕉婷婷丁香视频在线| 五月丁香婷婷深深爱| 秋霞AV淫| 开心五月激情网| 99精品视频在线观看| 亚洲精品又粗又大又爽A片| 天天拍天天操| 亚洲在线成人| 91碰碰碰| 国产精品成人av在线观看春天| 五月丁香亚洲综合网| 欧美成人网婷婷综合在线| 婷婷激情五月天在线视频| 婷婷五月成年人| 在线,国产,色,热视频| 性小说五月天| 夜夜夜夜撸夜夜操| 色婷婷电影网| 日本久久极品| 久久久思思热| 六月丁香综合| 激情五月婷婷| 31色区视频免费看| 午夜色婷婷| www.狠狠操.com| 狠色色狠网| 久婷久婷| 国产无遮挡又黄又爽免费网站| 99草在线免费观看视频| 五月天亚洲图片婷婷| 色吧五月婷婷六月丁香| xx人人xx| 人妻久久久久久| 日日操夜夜操中国无码| 99热在这里只有免费精品| 人妻操操色| 一级二级色大片| 丁香色色网| 99草在线免费观看视频| 色色色色色色色综合| 综合九九| 免费无码毛片一区二区A片| 97碰碰九九视频| 久久99久久99精品免观看粉| 五月婷婷之美女图片| 丁香婷婷九月| 热婷婷av| 五月丁香婷婷激情| 五月天色综合| 色综合天堂| 五月综合激情图片 | 五月激情综合网| 五月天激情久久| 色五月91| 色婷婷成人做爰A片免费看网站| 蜜桃人妻无码AV天堂三区| 久久小说网| 九九99精品视品| 丁香五月九九| 五月婷婷激情综合在线| 五月激情综合深爱| 激情五月婷黄版| 99热99色| 182tv992tv人之初午夜免费观看| 国产.亚洲.欧洲视频在线| 精品人人操| 久久五月天精品视频| 婷婷六月网| 婷婷香蕉| 在线sebiav精品视频| xxxx五月激情| 夜夜骑夜夜撸| 色色激情五月天| 九九热在线观看视频| 99精品国产在热久久| 日韩九九视频| 婷婷免费视频| 丁香婷婷丁香五月欧美人| 久9无码视频| 久久婷婷五月综合色和| 丁香五月婷婷成人网| 99人人干| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 任你艹| 婷婷五月色惰| 久久免费9| 99人妻碰碰碰久久久久视| 色八戒操婷婷| 美女五月狠狠| 色婷婷五月在线| 五月婷亚洲精品| av不卡网站| 色五月婷婷激情五月| 狠狠干综合| 免费国产VA国产免费| 五月婷婷黄色| 综合久久婷婷五月丁香| WWW.国产| 凹凸操Av| 久草视频一,二三四| 色婷精品91| 婷婷射图五月天| 91精品国产91久久久久青草| 激情五月天婷婷图| 日本欧美成人片AAAA| 成人欧美一区二区三区在线观看| 亚洲狠狠色丁香婷婷综合久久| tingting五月天亚洲| 97在线观视频免费观看| 99热精品在线免费观看| 99日本在线| 综合AV在线| 入口五月婷婷六月香| 狠狠色婷婷777| 成人va在线观看视频| 色婷婷综合网站| 五月天婷婷爱丁香中文字幕| 四季日韩AV无码综合| 开心深爱激情网| 亚洲无aV在线中文字幕 | 99热 免费| 久久AV无码精品人妻系列试探| 五月花亭亭| 久久婷婷五| 欧美大香蕉视频| 第四色婷婷日本| 久99| 这里只有精品无码| 琪琪理论片| 五月婷婷电影院| 婷婷五月天激情基地| 9月色婷婷| 啪啪综合网| 四月婷婷丁香| 第四色婷婷日本| 白人荫道BBWBBB大荫道| 久久婷婷六月综合综合| 99热这只有| 丝袜熟女一区二区三区| 狠狠草狠狠草| 国产婷婷五月色情综合| 六月婷婷五月丁香首页| 毛v一区二区视频| 五月天色丁香| 欧美色色色色色色| 欧美综合在线五月天色婷婷| 五月伊人网| 搡BBBB搡BBB搡五十| 亚洲激情综合| 久色国产| 五月婷婷开心色伊人| 绿色小导航AV| 伊久大香蕉| 激情性爱五月天| 99福利视频| 啪啪激情综合| 亚洲午夜一区二区| 以及AA大片看看| 婷婷五月六月丁香| 狠狠操狠狠插| 韩国三级五月天婷婷。| 亚洲舔观看| 婷婷婷久久久| 色域五月丁香| 亚洲愉拍99热成人精品| 欧洲亚洲精品| 色五月琪琪| 婷婷久久综合久色| 99久久er| 91啪级电影| 丁香5月激情网| 综合色影院| 韩国三级五月天婷婷。| 国际国外精品欧洲南美洲专区无码不卡| 日本不卡中文字幕| 五月丁香色婷婷色| AVV黄| 影院久久久| 久操欧美在线观看97| 第四色五月天| 婷婷深爱五月| 天天干天天操天天爽| 影音先锋一区| 狠狠色狠狠| 五月天播播中文字幕 | 全网最新网黄大秀直播高清,主播国产录屏在线| 狠狠久久婷婷| av免费在线网站| 五月婷婷激情啪啪| 影音先锋男人AV资源站| 1024人妻无码中文字幕| 国av网| 操操操97| 丁香婷婷久久综合在线| 九月婷婷激情久久| 欧美婷婷色五月网| 十区AV| 婷婷爱五月| 五月天久草| CAOBIBI| 五月婷九月| 丁香六月成人| av在线不卡播放| 婷婷激情啪啪| 亚洲天堂大香蕉| 日韩99视频| 噜噜操操| 狠狠色色| WWW、日本色丁香、co m| 丁香婷婷激情五月| 我要射综合| 99r这里只有精品在线观看| 99热只有精| 一级黄色尤物综合视频手机在线观看| 五月婷婷视频| 五月丁香婷婷基地| 香蕉久操| 国产精品丝| 美女网黄| 日日操日日干| 五月丁香六月激情在线| 99操逼| 久久婷婷五月综合| 日韩人人操| 亚洲99在线| 夜夜 操无码| 色五月丁香总合网| 色五月女| A久久| 国产午夜成人免费看片无遮挡| WWW.HENHENL.| 超碰人人操在线| 色播五月天天| 可以免费观看的AV| AV九九| 五月婷护士| 日韩操逼大片| 婷婷十月丁香| 色色色色色色色色网站| 激情五月瑟瑟| 夜夜人妻五月天| 五月婷婷之美女图片| A片一曲| 亚洲成人AV高清字幕| 五月天婷婷色色网| 26uuu激情五月天| 婷婷五月天综合在线| 亚洲操B| 激情五月婷婷色综合| 九九99九九99偷拍视频免费看| www.日日日.com| 天天色天天日天天舔| 狠狠综合网| 97碰操| 久久久久久天天日天天爱| 日日色综合| 99自拍视频在线| 97碰成超视频免费视频| 婷婷五月天在婷| 色五月婷婷久久| 色婷婷丁香AV综合| 天色综合网站| 99热一区| 99热这里只有精品1025| 天天摸天天舔| 97碰碰免费.视频| 99亚洲精品视频在线观看| 日韩精品无码99| 综合激情五月天| 97人碰人操| 九九婷婷综合| 丁香六月在线| 专区无日本视频高清8| 激情五月综合| 日本乱子人伦在线视频| www.91热久久| 亚洲色五月婷婷| 91 九色 入口| 丁香六月啪啪啪| 婷婷五月激情网| 丁香九月婷婷| 婷婷色系婷色| 99色在线观看视频| 成人丁香| 26uuu亚洲| 精品一二三区久久AAA片| 久草热久草在线视频| 欧美成人AAA片一区国产精品| 中国女人内射6XXXXX| 五月婷婷久久大片| 婷婷七月丁香色色| 狠狠大香婷婷爱| 桃色伊人在线| 九九九九这里只有精品| 一区二区免费看| 国产午夜一区二区三区| 日韩一区二区A片免费观看| 五月美女婷婷风骚| 色婷婷久久视屏| 欧美色宗和激情| 丁香五月在线伊人| 久久免费视频62| 久久综合影院| 在线不卡视频| 天堂在线婷婷| 婷婷激情五月天综合| 九六五月天婷婷| 久久九九色| 深爱激情六月天| 日韩av一区二区在线/日产精品久久久 | 国产亚洲精品AAAA片APP| 丁香六月婷婷综合网| 婷婷五月天六月| 久久天堂| 九九九激情综合| 激情五月九九九| 五月天天堂久久| 五月婷婷与六月丁香图片激情| 婷婷五月天激情影片| 久久久无码精品成人A片小说| 五月开心久久| 婷婷丁香五月天操逼| 婷婷精品免费久久| 天天色,天天日,天天做| 色五月丁香五月| 五月丁香 狠狠爱| 色99在线视频| 深夜A片| 天天操比比| 色婷小说| 五月婷婷综合网在线播放| 婷婷五月综合视频免费播放| 99综合视频一体| 五月五月婷婷| 新五月天婷婷激情电影| 大香蕉九九| 日本天堂网站99| 无码一区二区日韩| 综合99视频| 无码 av电影| 在线视频另类| 婷婷五月天亚洲| 久久99热这里只频精品6学生| 91亚洲免费片| 99爱最新免费视频在线观看| 99色综合| aaa久久| 99热这里只有精品最新| 99热只有| 91色久| 五月丁香婷婷综合视频| 成人超碰网| 婷婷丁香五月天婷婷| 五月亭亭网成人在线视频| 中文字幕无码人妻少妇免费视频| 亚洲AV人人操| 色五月大| 成人丁香五月婷| 99热久草| 激情综合网激情五月婷婷| 婷婷色在线| 激情五月天网| 婷婷基地成人五月天| www.五月天婷婷姐姐| 99A片| 五月天婷婷操逼视频| 激情五月婷婷她| 欧美噜一噜| 亚洲AV免费在线| 色五月天丁香| 99热这里只有精品1025| 色情五月天。| 久久婷婷五月天蜜桃| 人人肏逼视频在线一区二区| 色五月天成人在线| 欧美内射AAAAAAXXXXX| 丁香五月香蕉在线| 五月丁香黄色视频| 亚洲网视屏| 亚韩在线视频| 丁香色色色| 五月天婷婷伊人| www.97干视频| 五月丁香婷婷综合视频| 人妻激情视频| 色哟哟www| 香蕉久久国产av一区二区| 亚洲五月婷婷| 伊人网啪啪| 天天日夜夜| 亚洲婷婷激情综合激情999精品| 天天舔天天摸视频| 99ri精品在线观看| 婷婷五月天综合久久| 99热久久日本| 99热| 成片免费播放| 99操碰| 都市激情蜜桃婷婷五月天| 激情婷婷五月天| 婷婷色五月激情| 99热这里只有精| 2020久久婷婷五月| 婷婷无五月无码视频| 久久人妻在线| 综合www色| 大香蕉99| 欧美激情五月综合| 国产午夜伦鲁鲁| 丁香婷婷成人在线播放| 日韩啪图| 丁香五月日韩| 五月色情婷婷开心五月天| 五月婷婷色| 五月丁香人人婷婷在线观看| 国产原创视频91九色| 丁香五月天婷婷激情| A在线观看| 五月丁香在线观看| 噜噜噜噜在线| 免费成人中文字幕| 日韩黄黄| 热99久久这里只有精品| 超碰人人操人人9| 亚洲综合久| 婷婷五月天777| 大香蕉网 久久| 在线视频99| 日本三级大片| 久热a| 踪合专区啪啪| 无码少妇高潮喷水A片免费| 99热精品免费在线观看| 五月久熟女| 99热精品在线观看| 色婷婷五月天视频网站| 久热99| 色综色网| 久久亚洲婷婷| 亚洲最大五月六月丁香婷婷| 五月婷婷AV| 激情五月丁香五月色| 丁香五月激情五月| va婷婷在线| 婷婷激情五月视频| 天天干天天拍| 婷婷五月,偷窥偷拍网| 在线区区区| 色婷婷文字幕| 国产真实乱对白精彩| 婷婷五月天av| 五月丁香在线偷拍视频| 91se在线视频| Caoub青青超碰| 五月天精品| 夜夜撸夜夜骑| 丁香五月婷婷激情123| 日本激情91| 色综合色香蕉网| 丁香五月婷久久| 最新丁香六月婷婷| jiujiu无码五区| 久久婷婷丁香视频网| 亚洲精品无人区| 日韩另类| 六九色综合婷婷五月天| 开心五月色婷| 激情网站五月| 久久久婷丁香五月天激情综合| 少妇伦子伦精品无吗| 婷婷久久亚洲| 天天综合色| 狠狠干伊人| 五月天色婷婷激情综合| 色久影院| 色色五月丁香婷婷综合| 三级片AAA久久久AAA久久久AAA | 久久香蕉网| 台湾无码A片一区二区| VfJxEwPH| 五月丁香六月停停| 久久杏爱视频| 婷婷色在线| 26.uuu丁香五月婷婷| 99精品综合在线| 日本视频久久| 色优久久| 婷婷五月婷婷| 色婷婷视频在线| 五月婷激情影院| 中文av网站| 亚洲欧美一区二区三区四区爱爱动图| 九九在线免费观看| 激情欧美婷五月| 婷婷丁香射射| av大香蕉| 一起草AV| 日韩欧美五月丁综合| 超碰9| 狠狠久久婷五月| 婷婷基地爱| 丁香五月综合在线观看| 色婷婷亚洲在线| 先锋男人99资源| 丁香五月天在线直播观看| 综合激情五月丁香9999久久精| 99小视频在线| 天天开心天天色| 91久久久久久| 九九青青草成人| 91chinese在线| 日本久久精品| 婷婷九月| 99er这里只有精品| 日日天天天| 成人五月天色天堂| 99综合婷婷五月| 婷婷丁香五月天欧美| 六月亚洲婷婷6月中文字幕| 婷婷五月天AV网| 99欧美| 精品色情一区二区三区四区| www.精品99| 亚洲日韩26uuu| 天天天天天天天操| 色色综合网络| 婷婷中文字幕| 97操在线视频| 亚洲激情另类| 久久9热好| cao视频,现在观看| se99热久久一本| 91九色在线视频| 丁香五月综合| 亚洲九九免费| 99.色| 久久婷婷综合五月天| 婷婷的色色五月天| 日本99久久| 天天爱天天操| 大鸡巴伊人网| www.97碰碰com| 另类的婷婷| 新激情五月开心五月婷婷五月丁香五月| 66精品成人免费网站在线观看| 五月婷婷啪| 91在线日| 久久视频在线视频| 五月深情久久| 成人短视频在线| 亚洲五月六丁香激情| 色五月婷婷啪啪五月| 中文av网站| 色五月婷婷丁香五月| 国产精品久久久爽爽爽麻豆色哟哟 | 五月天激情小说网| 99色综合| 91伦| 婷婷色在线| 久久久久99精品成人片| 婷婷六月天| 9+1视频网址| 91怕怕网| 性爱先锋AV| 婷婷丁香五月视频| 狠狠五月激情丁香六月| 六月婷婷无码观看| 久久精品这里只有精品免费首页| 亭亭五月色男人| 久9精品视频在线| 天天射天天干天插色综合| 国产欧美婷婷五月| 久久99热免费最新版| 超碰免费人人| 99偷拍视频在线日本| 丁香五月天色综合| 亚洲综合五月天| 香蕉AV777XXX色综合一区| 久操97| 丁香五月婷婷色五月| 99久在线精品99re5热视频| 亚洲精品99| 91AV视频| 91啪级电影| 免费亚洲婷婷中文字幕| WWW色五月| 色婷婷久久| www.婷婷五月| 欧洲电影在线观看免费版英语版| 日本欧美国产| 久热播这里只有精品| 天天做天天爱天天爽| 色99免费视频中文| 提提热五月天婷婷| 综合久| 人人超碰99| 国産精品| 色99视频| 人妻少妇色综合| 成人亚洲精品久久久久| 久久久中文| 99精彩视频| 狠狠色丁香乆乆| 超碰三级秋霞| 99热精品99| 91碰碰碰久久久久| 伊人在线婷婷草| 五月综合无码| 91综合色| 99热97| av五月天婷婷丁香| 五月丁香在线国产| 色婷婷网| 99综合网| 天天噜日日噜综合无码| 超碰色人妾| 99综合一区| 亚洲深喉aV| 这里只精品| 五月婷婷色| 亚洲激情网| 色色色在线观看| 99热在线看| 这里只有精彩视| 精品久久久中文字幕大豆网推荐理由| 丁香五月婷婷无码AV| 天天射美女| 色色激情五月| 六月婷婷视频| 五月丁香六月婷婷久久| 青草激情综合| 蜜乳AV成人| 色色色国产| 97搞在线| 欧美狠狠地| 成人国产网| 开心五月激情婷婷| 色啪久 | 伊久久婷婷| 五月天婷婷伊人| 久久婷婷人人| 五月婷婷导航| WWW免费视频碰碰碰碰| 色噜噜狠狠色综无码久久合欧美| 五月婷婷色色网址| 婷婷综合在线| 亚洲午夜一区二区| 欧美日韩成人在线网| 91久久色| 大香蕉五月婷婷| 五夜婷婷| 天天插天天日| 狠狠干天天内射| 亚洲视频一区| 五月天色婷婷图片| 丁香五月激情图片婷婷| 婷婷五月天亚洲丁香| 欧美色必爱| 丁香色婷婷五月天| www.99日本| 伊人超碰| 99 热国产在| 深爱激情五月天| 色五月激情综合| 高清免费在线视频| 天天综合网在线| 色色色婷婷五月| 婷婷五月天伊人网| 深爱激情AV| 女同在线9| 日本在线va| 久久多色| 九九热AV| 婷婷之六月丁香| 婷婷影院欧美| 日本一道久久| 99 频99热国里只有精品| 综合色色五月| 久久婷婷五月天蜜桃| 97人人做| 99∨VTV| 午夜婷婷六月天| 久久9热| 五月婷六月| 天天综合永久| 正宗黄色毛片| 丁香六月婷婷色XXXXX| 国产精产国品一二三在观看| 一本道综合网| 久久五月天免费网站| 五月丁香六月婷综合成人综合| 五月丁香六月日逼| 日韩AV成人电影| 五月婷婷av| 婷婷性爱无码视频| 4438国产免费看| 色五月婷婷亚洲| 热久久视频99| 香蕉操亚洲| 荡乳尤物3HP1V5| 夜夜躁爽日日| 免费日韩99| 啪啪色激情五月天| 思思热在线播放| 婷婷激情五月综合在线视频| 丁香九月综合| 亚洲精品一区中文字幕乱码| www.天天干| 五月婷婷五月天激情视频| av电影在线播放| 亚洲色网络| 五月婷婷激情综合网| 色色日韩| 99资源在线| 婷婷综合视频| 人人操AV| | 天天操B| 日本性视频| 人妻操逼视频| 亚洲色五月婷婷| 色丁香综合影院| 五月色婷婷影院| 九月丁香八月婷婷加勒比| 99热这里| 五月停停激情网| 五月婷婷六月丁香激情深爱| 天堂在线婷婷| 人妻丰满精品一区二区A片| 99福利导航| 五月天在线视频尤物视频在线看| 激情噜噜噜| 东北熟女视频99| 情婷婷五月天| 人人操9| 亚洲国产精品综合色区| 婷婷五月在线影院| 欧美熟女乱又伦| 色偷偷AV亚洲男人的天堂| 91精品电影18T| 五月天综合在线| 99色看这里只有精品| 婷婷五月天丁香花| 熟女激情网| 操91| 六月丁香深深爱| 日本人妻伦在线中文字幕| 五月www| 99干日日干| 五月天婷婷乱| 香蕉久久五月| 尔尔AV一区| 美欧成人视频| 日韩在线99| 亚洲无码成人| 久久人人妻| 国产阿姨日皮艹逼内射视频| 极品人妻VIDEOSSS人妻| 最新精品视频99| 亚洲182在线观看| 色色色在线播放| 久久久婷婷五月亚洲97号色| 天天操精品| 97婷婷五月| 五月婷婷香蕉视频| 亚洲V国产V欧美V久久久久久| 超碰91在线| 99爱视频在线| 婷婷六月色| 五月丁香激情综合网| 久久大香蕉同僚| 五月婷婷亚洲色视频| 婷婷五月视屏| 天天爱夜夜爽| 激情小说婷婷五月| 亚州性爱99| 热99精品视频| 五月婷婷丁香狠狠撸久久| 一级A片天天操夜夜操| 久久人妻情侣| 九九久久综合网站| 五月开心啪啪| 六月丁香婷婷在线波多| 五月天婷婷影院影院| 婷婷成人综合五月| 婷婷五月天激情视频| 99热首页在线30| 久久婷婷五月草视频| 日日做夜夜爱| 色丁香五月天婷婷| 亚洲热久久| 色婷婷狠狠| 99无码| 日本久热| 丁香五月天堂网| www.色婷婷.com| www.婷婷| ..真实国产乱子伦对白在线_欧| 搡BBBB搡BBB搡五十| 97色五月婷婷在线| 大鸡巴伊人网| 丁香五月婷婷亚洲另类| 91狠狠色丁香| 亚洲成人影视在线观看| 五月丁香六月激情综合网| 综合五月草| 深爱激情网婷婷| 久热只有这里精品| 激情五月天激情小说| 天堂综合久| 99色婷婷视频| 噼里啪啦在线观看免费完整版视频| 伊人激情| 91在线观看九区| 久久一级片| 九九热99视频| 国产色色网站网址| 丁香九月婷婷色| 五月婷视频| 99精品在线观看| 一本道在线电影| 人妻六月天| 免费亚洲婷婷中文字幕| wwW天天干| 丁香五月六月激情久久| 婷婷五月天影院| 狠狠干夜夜干| 五月婷婷黄色网址| 另类视屏| 丁香婷婷五月天色综合| 五月丁香激情在线| 99狠狠| 91超级碰| 五月丁香六月婷婷网| 婷婷五月综激情| 激情婷婷五月天| 亚洲最大视频网站| 色五月婷婷中文字幕| www.操逼comm| 激情五月天网站| 国产激情久久久| 久久婷婷电影| 婷婷丁香五月av| 九九在线这里只有精品视频| 色久九| 久久婷婷七月丁香| 9福利性视频欧美| 亚洲爱爱无码婷婷色五月| 日本婷婷五月天| 色99色| 综合色吧| 婷婷五月情色| 久久婷婷五月天激情| 8090在线影视少妇| 九九人人精品| 五月丁香六月婷婷综合网| 开心婷婷五月| 极品人妻VIDEOSSS人妻| 婷婷色五月天色| 天天日狠狠| 99人妻碰碰碰久久久久视| 国产AV一区二区三区最新精品| 91色在线 | 日韩| 777精品成人a v久久| 99九九在线观看免费| 中文字幕婷婷9月天| 久久久97| 五月婷婷婷| 国产偷人爽久久久久久老妇APP| 91超级碰在线视频| 丁香六月亚洲综合| 99色视频在线| www色婷婷com| 婷婷综合在线观看视频| www.狠狠| 色色婷婷色色| 能看的av片| 天天日夜夜拍| 久操97| 性99网站| 中文字幕按摩做爰| 婷婷五月电影院| 丁香五月在线| WWW嗯嗯啊啊啊啊| 97色色色色| 超碰日日操| www.婷婷五月天,com| 中文不卡一二三区| 99热首页| 婷婷五月大香蕉| 五月丁香另类图片| 久久A极片| 丁香五月在线伊人| 天天色丁香| 亚洲色基地| av性爱在线| 欧美叉叉叉BBB网站| 五月天日日操夜夜操| 99热在线观看精品| 六月婷婷青青青视频| 婷婷五月激情在线| 国产人妻人伦精品一区二区| 玖热精品综合视频| 色噜噜狠狠色综合网| 蜜桃婷婷狠狠久久综合| 国产精品成人av在线观看春天| 无码AV免费精品一区二区三区| 五月婷婷深深的爱| 激情性爱五月天| www.综合久久.com| 夜夜撸夜夜骑| www99xxxx五月丁| 五月之婷婷| 色婷婷很很十八禁| 天干干夜夜操| 五月婷婷激情| 婷婷丁香色五月亚洲| 97九色| 色综合久久综合中文综合网| 96丁香六月婷婷蜜桃综合久久| 97婷婷丁香五月综合| 婷婷五月天男人影院色色网| 综合欧美五月婷婷| 久久婷婷五月丁香| 国产精品18久久久| 五月丁香婷婷激情久久| 欧美丰满熟妇BBB久久久| 妻久久久久| 另类少妇人与禽zOZZ0性伦| 美女亚洲五月丁香| 色欲人妻综合aaaaaaaa网| www.狠狠| 天天色视频| 婷婷 久综合| 99久久婷婷| 婷婷色五月亚洲| 中文成人在线| www.五月天。com| 色综合视频在线| 综合激情深爱| 亚洲国产成人AV在线 | 丁香婷婷五月色成人网站| 1234操逼网| 婷婷五月丁香综合人妻| 99ri6在线视频| 色久天| 777久久久| 久色大| 四虎成人精品永久免费AV九九| 日韩无码色色| 怕怕av| 久草婷婷网| 婷婷精品综合| 久久久久久久久久久97| 天天久久狠狠色综合| 色欲人妻综合aaaaaaaa网| 中文字幕日产A片在线看| 亚洲欧洲自拍图片专区五月天| 伊人网色婷婷五月天| 五月天成人小说网| 色综合视频| 婷婷五月天电影网| 秋霞网在线观看理论91| 欧美日韩国产一二区| 99免费在线视频| 99色婷婷视频| 欧洲MV日韩MV国产| 日屌日日操日日色| 亚州操操| 久久香蕉网| 丁香五月五婷| 五月 激情视频| 五月激情小说| 九色色| av无码电影| 天天做天天爽| 婷婷五月六月丁香综合| 婷婷丁香成人五月天| 激情五月小说婷婷| 婷婷丁香人妻久久在线观看| 五月婷久久草| 日本久久99| 欧美日韩AAA| 99精品久久久| 97在线观看| 香蕉人在线香蕉人在线 | 激情五月天在线观看色婷婷| 亚洲人操亚洲人| 激情综合网五月丁香| 色狠狠伊人久久五月丁香| 九色porny在线观看激情四射| 五月天激情影院| 婷婷五月丁香五月天| 日韩黄色电影| 91啪啪| 五月婷婷视频在线观看| 综合激情网五月激情| 丁香五月婷婷激情中文| 久久丁香五月天| 开心五月深爱五月丁香五月激情五月 | 啊V视频在线观看| 俺来也狠狠| 五月大香蕉|