免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

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
返回資訊列表
艹天天射| 九九综合九九| 五月婷婷色| 丁香六月婷婷综情欧美| 五月天激情亚洲| 久久婷婷五月天激情| 色六月丁香婷婷啪啪啪| 日本三级网址| www.ywav| 久久久久久人妻| 热99精品视频| 亚洲综合干| 9 大屁股在线视频精品| 夫妇交换刺激做爰| 色色热| 丁香婷婷五色月| 亚洲AV成人无码电影| 九九99免费视频| 色色婷婷综合网| 亚洲av综合网| 天堂在线9| 伊人综合网站| 碰碰人人漕| 影音先锋女人AA鲁色资源| 日日日天天干| 99综合一区| 日本精品在线噜噜噜| 色婷婷色综合| 停停六月 综合| 中文字幕按摩做爰| 日韩免费视频| 五月天综合网| 男女啪啪做爰高潮无遮挡| 色色色色色色网站| 激情婷婷五月| 婷婷狠狠色| 日韩激情婷婷五月天| 丁香婷婷啪啪| 色婷婷九月| 精品国产a| 日韩婷婷| 欧美性生交XXXXX无码小说| 日本久久精品| 丁香婷婷激情| 欧美色综合天天久久综合精品| 国产性爱亚洲是图| 狠狠干,狠狠操| 激情黄色五月天| 婷婷色在线观看| 99久久99久久| 蜜臀A∨在线水帘洞| 中文字幕丰满乱孑伦无码专区| 9l视频自拍9l视频自拍九色学生| 婷婷五月激情图片| 久综合| 噜啊噜在线| 丁香五月天在线| 天天操夜夜夜拍拍拍| 亚洲精品乱码久久久久久按摩观| 欧美在线视频免费播放| 色婷婷av在线| 亚洲激情电影五月天色婷婷丁香一起草| 国产白丝在线一区| 97久久草草超级碰碰碰| 性爱网久久| 热99一二三| 日韩一区二区A片免费观看| 久热这里只有| 色婷婷色丁香色欲av| 久久婷婷东京热大香樵| 91chinese在线| 成人片在线播放| 99久热在线精品| 久久99热这里只有精品23| 激情综合五月色在线| 色综合久久伊伊婷婷五月| 五月色婷婷综合丁香精品无遮挡| 色久五月天| 天天爱天天做天天操| 性爱视频久久| 操B视频在线播放| 色婷婷在线视频观看| 九九九AAA热视频| 天堂中文国产| 就爱日五月天| 色婷婷基地在线| 无码G高清天| 五月天激情啪啪| 九九热免费视频| 久色视频| 熟女91九色| 色~性~乱~伦~噜| 丁香五月狠狠在线观看| 色情五月婷| 五月亭亭开心网| 色婷婷亚洲婷婷| 五月丁香婷婷激情图片| 亚洲AV激情五月综合网| 中文字幕人妻在线| 四川操逼站| 欧亚洲在线高清视频| 天天爽日日搞| 免费精品99| 丁香五月激情综合久久| 激情婷婷综合| 26uuu亚洲| 91婷婷视频| 久久免费9| 婷婷五月天亚洲综合网| 欧美交换配乱吟粗大25P| 久久久人人操A V| 久久综合九九| 五月丁香啪啪啪综合网| 丁香五月天狠狠操| 九九热99热| 涩五月婷婷| 殴美日韩成人| 久久一伦| 激情文学五月丁香六月婷婷| 不卡在线视频| 天天爱天天做综合| 超碰99在线观看| 亚洲有码在线视频| 99激情视频| 激情又色又爽又黄的A片| 99人人干人人| 久久婷婷五月综合色奶水99啪| 欧美色色色| 五月丁香激情综合啪啪| 99热8| 日日影院 | 大香蕉五月婷婷| 99热日韩| xxxx五月天色色| A A色色| 日本高清久久| 久草五月天电影网| A片试看50分钟做受视频| 99色综合网| 亚州操操| 色五月激情视频在线综合| a久久| 9l视频自拍九色9l黑人| 五月婷婷六月丁香在线| 香蕉网久久| 亚洲a色| 蒲京久久无码视频| 五月天四色房丁香亭亭| 99ri精品视频在线观看| 日本99久久| 丁香五月性| 大香蕉婷婷色| 久热这里只有精品在线观看| 99久| 九九成人| 久久er视频6| 久久久婷婷婷| 26uuu亚洲色| AAA级久久久精品| 免费看欧美成人A片无码| 99视频超级精品| 激情五月小说婷婷| 丁香五月综合福利视频导航| 色婷婷在线视频观看| 亚洲精品五月| 婷婷五月大香蕉| 综合色久| 婷婷五月色亚洲| 久久综合55| 舔色婷婷| 99色这里| 色和综合网| 天天操天天草天天草天天| 射满了还射免费在线观看 -午夜版全集-新视觉影院| 99.色| 9久9久9久女女女九九九一九| 色五月综合婷婷| 97碰精品| 五月天播播| 丁香五月狠狠综合欧美| 婷婷久久影院| 亚洲妇女熟BBW| 26uuu亚洲色| 热婷婷久| 激情综合网激情五月天| 激情文学五月丁香六月婷婷| 九九人妻福利| 99九精品| 婷婷综合中文字幕| 欧美精品99| 久久综合热17c| 国产原创视频91九色| 激情综合五月| 亚洲婷婷成人五月天| 二区成人视频| 九热视频| 四色永久成人网站| 天天狠狠六月婷丁香影院| 91九色熟女| 国产亚洲精品久久久久久郑州| 婷婷深爱网| 另类激情五| 九九热AV| 天堂久久精品| 亚洲99精品欧美一区| 久久人操| 综合色吧| 日韩操啪| 久婷婷视平| 婷婷的99视频网站| 综合色五月| 九九日本视频| 色九月婷婷综合| 欧美怡红院黄站| 午夜亚洲国产精品av一区二区| 久久五月丁香六月婷| 亚洲无码11| 日日影院 | 激情九月综合| 色五月色五天色情网| 五月婷婷乱| 亚洲愉拍99热成人精品| 婷婷天堂视频| 色色丁香五月| 97精品综合久久内射| 嫩草AV久久伊人妇女超级A | 色人妻五月| 色婷婷基地在线| 婷婷五月天丁香久久| 五月丁香综合啪啪| 色五月婷婷在线| 五月天色不卡| 日本婷色| 九九在线视频| 久久最新色| 色色色色色色色色综合网| 69堂午夜视频最新地址| 六月欧美综合色情| 婷婷成人综合免费视频| 激情的五月| 99久久99九九99九九九| www.99视频| 久久婷婷五月综合色奶水99啪| 久久99大| 九九精品婷| 五月丁香色停停啪啪啪| 色播jjjj| 色久一| 午夜AV网| 色情开心五月| 丁香花五月天激情| 最新日本A片| 五月丁香婷婷色色| 思思久ren热| 五月激情日本在线| 国产一级婬片毛片| 五月婷天天搞视频| 国产激情在线| a久久| 日本五月婷| 丁香五月婷婷色| 九九综合精品| 在线理论片| 国产乱子轮XXX农村| 99色视频| 91精品久| 五月丁香香蕉| 五月天开心色情网| 999热在线视频| 岛国AV网站| 激情五月天激情五月天| 亚洲人妻av| 可以直接看的av| 婷婷另类开心| 激情小说视频图片| 操一区| 五月天偷拍| 国产亚洲精品AAAAAAA片| 国产成人精品一区二区三区视频| 色婷婷激情五月天丁香| 精品久久婷婷| 婷婷爱综合| 五月丁香另类网| 五月天天爽| 久久亚洲无码| 久久se 综合网| 五月丁香六月停停停| 婷婷激情五月视频| 思思热在线视频观看精品| 久热这里精品免费| 五月天成人综合| 99热这里只有精品9| 中文字幕无码人妻少妇免费视频| 久久久9久| 国产.亚洲.欧洲视频在线| 99热啪啪| 99看片| 天天干 夜夜爽| 久久五月婷综合| 九九热re99re6在线精品| 色色色精品无码区| 婷婷五月色色| 成人龟情网丁香五月| 久99久视频免费观看| 丁香五月天信号| 99在线亚洲| 五月丁香黄色视频| 久久久久久99精品无码| 色婷婷基地| 欧美99热| 久久精品系列| 色色色色色色色色综合网| 欧美婷婷五月丁香| 国内一级精品| se影音资源在线观看| 人人摸人人| 五月丁香偷拍| 日本不卡五月婷婷丁香| 久久久久久人妻| 国产免费av在线| 五月激情偷拍婷婷| 超碰99在线观看| 182TV大香蕉| 久久人人人人妻| 久久久久er热| 亚洲无码播放| www.91在线观看| 男女av免费看| 丁香五月婷婷色播艳门照| 激情av| 国产精品99久久久久久猫咪| 9九色首页| 久久月天堂| 婷婷五月天xxx| 婷婷丁香97| ady狠狠入| 精品综合五月| 久久婷婷丁香花综合网| 色色色.com| 99无码视频| 色婷婷色九月| 开心五月婷婷| 99内射视频| 亚洲激情区| 亚洲精品国产熟女久久久| 97色永久免费视频| 神马欧美精| 婷婷丁香大香蕉| 中文AV在线播放| 国产午夜精品一区二区| 亚洲人妻电影| 久操97| 91日婷婷在线| 色色色色色综合| 在线不卡AC| 丁香久久五月天视频在线观看| 涩五月婷婷| 9久久久久久久久久久| 亚洲色模骚货| 丁香香蕉婷婷| 婷婷丁香五月激情密臀av| 色天使久久综合| 99色 色| αv中文字幕在线观| 天天舔夜夜操www com| 91精品久久久久久77777| 婷婷五月天网址| 久久综合五月天| 人操91在线| 99综合免费视频| 成人αV视频免费观看| 综合色天天| 成人做爰高潮A片免费视频| 丁香五月天在线观看视频| 91久操| 婷婷久久久久久久| 激情婷婷激情在线不卡| 六月天婷婷| 五月天婷婷丁香花| 狠狠狠狠狠干| 婷婷丁香色五月亚洲| 婷婷久久色| 台湾综合丁香五月蜜桃| 九九综合影音先锋 | 婷婷久久图片| 五月丁香综合激情网| 欧美在线97| 日韩性视频| 亚洲超碰在线| 性生生活大片又黄又| 99日韩网站| 99热www| 丁香婷婷六月天| 丁香五月天堂| 97人人操人人插| www.com五月天| 91要啪| 久操操| 婷婷色Av| 超碰免费99| 亚洲成人免费在线| 丁五月激情视频免费| 黄色三级日本| 丁香五月婷婷综合啪啪| 综合色影院| 五月丁香少妇网| 色综合婷婷99| 可以看的av网站| 亚洲日韩26uuu| se99热久久一本| 婷婷久久五月天| 婷婷一本和五月丁香| 五月婷婷激情在线| 极品少妇XXXX精品少妇偷拍| 色色a| 久久婷婷成人视频| a色婷婷| 国产毛片精品一区二区色欲黄A片| 日日艹思思热| 亚洲va日| 激情五月,激情综合网| 熟惀91九色在线| 久久婷婷五月综合激情国产 | 五月婷婷色综图片| 丁香五月婷婷六月| 婷婷色5月天在线。| 六月激情网| 国产亚洲99久久精品| 色婷婷五月天在线观看| 中出内射的人妻视频| 成人欧美日韩| 丁香色影院| co超碰在线观看| 亚洲啪啪啪啪| 久色激情| 99久久er| 五月婷婷无码专区| se色99| 久碰婷婷视频| 久久综合中文字幕| 在线综合91| 欧洲电影在线观看免费版英语版 | 久9精品| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 婷婷五月天久| 欧美色激情四射| 裸体做A爰片毛片A片免费| 日日噜噜夜夜狠狠久久丁香六月| 日日狠狠久久偷偷四色综合免费| 99超在线| www,欧美干干干干干干| 六月婷婷成人| 性韩日色婷婷五月天激情啪啪XXX| 成年视频免费观看| 婷婷五月色花丁香社区| 玖玖@三月天天丁香婷婷| 色五月婷婷五月天| 99网| 中文中文在线| 亚洲精品久久久无码| 五月天婷婷激情在线色图| 综合大香蕉| www.久久99热地址发布| 久久hd| 亚洲五月花| 俺也去在线视频| www激情网| 五月青青草综合| 97五月天婷婷午夜| 丁香五月天五码婷婷| 婷婷五月丁香狠狠| 九九久久99| 五月天婷婷爱丁香中文字幕| 婷婷伊人久久综合| 99视频网| 丁香五月天婷婷激情| 91婷婷丁香五月| 操逼六区| 五月丁香六月婷婷网| 狠狠综合| 日韩在线观看网址| 大香蕉久久伊人网| 久久婷婷五月天激情| 久久久五月天网站| 欧美丁香婷婷天天操| 99 热| 久久精品在线| 色爱综合视频| 激情五月天 婷婷| 日韩啊啊啊| 婷婷在线播放| 国产亚洲精品久久久久久牛牛| 五月天丁香| 荡乳尤物3HP1V5| 中文字幕丰满乱孑伦无码专区| 五月婷婷碰碰| 日韩操逼大片| w婷婷五月婷婷w| 五月天停停成人网| 91凹凸在线| www.天天日| 婷婷丁香91综合| 成人 九九九九| 91色噜噜狠狠狠狠色综合| 大香蕉精品视频| 日韩激情人伦人| 婷婷五月另类网站| 精品久久人妻| 婷婷激情四射五月天| 狼人婷婷综合| 亚洲五月综合色播| 91丨九色丨熟女丰满| 97综合在线| 北条麻妃伊人| 五月婷婷新网站| 天天搞天天色综合| 99精品在这里| 丁香亚洲色综合| 男人天堂AV在线一区二区| 欧美色图45678| 婷婷五月丁香六月天亚洲综合| 色婷婷狠狠| 色五月在线观看| 超碰在线资源| 六月丁香婷婷亚洲中文玖玖| 亚洲人成色A777777在线观看| 免费亚洲婷婷| 9伊人网| 欧美性丁香色色五月天综合爱爱| 人人操av| 大香人妻| AV五月丁香| 天天天在线观看| AV大片在线播放| 香蕉狠狠爱视频| 影音先锋人妻出差| 99综合视频一体| 婷婷97碰碰| 精品三区影院| 久久婷婷影院| www.五月婷婷久久.com| 激情网五月| 95精品区一区二| 黄网在线播放| 中文字幕av久久爽一区| 婷婷色基地在线看| 99热这里只有精品热| 五月天综合网| 五月天婷婷色色网| 丁香五月天在线观看| 国产又爽又猛又粗的视频A片| 丁香五月停停基地| 99热久| 久久久av久av久片一区二区| 亚洲激情高潮| 婷婷亚洲综合| www.婷婷五月天,com| 丰满人妻一区二区三区| 大香蕉狠狠爱主页| 亚洲天堂aaaa| 色99无码| 一区二区免费看| 天天操天天国产三级片处女学生妹| 婷婷 久综合| 五月天婷婷基地| 91丨九色丨国产在线| 丁香五月av在线| 日本人妻伦在线中文字幕| 日本熟女三区| 丁香激情五月| 狠狠久久婷五月综合色| 日韩久久成人| 日日懆天天懆| 亚洲AV无码成人电影| 看婷婷五月天网| 五月天婷婷久久| 五月天无码| 五月天婷婷无码| 人妻久久久久久久久妻久久久久久久久 | 日本激情ⅩXX免费视频| 午夜69成人做爰视频| 日韩一区二区在线播放| 天天干天天干天天| 思思视频精品| 97干干干丁香| 婷婷五月美女直播| 极品九九九九九九| 天天干天天色综合| 成人色站,在线视频,看片-SS1AV| 五月天激情国产综合婷婷婷| 草婷婷在线| 在线不卡AC| 五月婷婷六月丁香在线视频| 五月激情网站| 激情五月天网| 五月丁香六月情婷婷久久| 欧美成人精品A片免费一区99 | 九九色影视| 色色婷婷五月天| 五月天激情在线视频| 日韩AV无码影片| 中文AV网| 色5月婷婷| 日本熟妇乱妇熟色A片蜜桃| 久久aaaa片一区二区| 婷婷丁香五月基地| 色伊人啪| 色丁香五月| 这里只精品| 68热超碰在线| 欧美精产国品一二三区| 五月天欧美 另类小说| 婷婷大香焦| 五月天婷婷成人| 五月开心婷婷网| 五月婷婷色欲| 色婷婷超碰| 天天日夜夜夜操操操操| 亚洲超级碰| 色99在线| 狠狠99| 婷婷五月天无码熟女| 五他月天啪啪啪| 97人人射| 五月天成人在线播放| 婷婷丁香视频在线观看免费| 国产69久久久欧美黑人A片| 亚洲va成人va成人va在线观看| 色色色婷婷五月天| 日韩三级高清无码| 亚洲色婷婷| 亚洲色五月天| AV五月丁香| 激情九月综合| 97操碰免费视频| 极品人妻VideOssS人妻| 97人人搞| 99成人精品视频| 天天弄天天爽| 久久9精品| 色吊丝99| 色伦专区97中文字幕| 五月婷婷丁香| 亚洲国产精品VA在线看黑人| 激情综合网亚洲色图| 丁香五月亚洲激情婷婷射| 欧美三级大片AA在线看| 中字幕视频在线永久在线观看免费| 五月婷婷五月天| 五月丁香 啪啪啪| 亚洲色久| 99热最新| 久久综合影院| 亚洲成人中文字幕| www.激情五月天.com| 最近韩国日本免费高清观看| 色欲天天综合网| 国产无人区大片| 思思热久久爱| 99亚洲大片精品永久在线观看| 日韩操人| 操操国产| 色婷婷久久天天性爱| 亚洲操B视频| 亚洲日比视频| 狠狠干.com| 伊人婷婷福利网| 能看的av| 狠狠穞A片一區二區三區| 五月婷婷av| 欧洲毛片基地c区| 久色激情| 99操逼视频| 婷婷久久综| 综合啪啪| 天天激情站| 99热最新| 99热手机在线精品| 人妻AV在线| 天天干天天干天天操| 九色视频91疯狂| 色色色欧美| 亚洲免费看片| 99爱视频| 天天激情站| 嫩模草| 丁香六月成人| 日韩淑女人妻luan伦激情精品一区二 | 99热这里只有精品2| 狠狠色噜噜狠狠狠狠综合| 婷婷色在线视频| 久久婷婷视频| 婷婷伊人綜合中文字幕小说| WWW.国产| 日日噜噜久久婷婷五月天| 99天堂网最新| 91色综合网| 99热啪啪| 五月激情开心婷婷| 五月六月伦理| 丁香六月综合激情| 这里只有精品视频| 亚洲狠狠色丁香婷婷综合久久| 这里只精品| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 夜夜嗨一区二区三区直播内容 | 就去色色五月丁香婷婷久久久| 色综色网| 99热网址| 情五月亚洲婷婷| 狠狠色噜噜色狠狠狠综合久久成人波 | 99热国产| 亚洲无码影片| 996er热| 激情播丁香| 丁香六月激情综合啪啪| 婷婷五月天视频亚洲| 开心激情五月天网| 99热在线免费| 五月色婷婷中文字幕| 天天日天天插| 伊人婷婷色| 色婷婷五月天亚洲 | 久久婷婷五月| 超碰妻人人| 99热在线播放精品| 色婷婷狠狠干| AV操操操| 国产性爱在线| 美欧日韩国产成人在战| 亚洲色婷婷婷婷人人爽| 婷婷情色五月天| 国产精品久久久久久久久久久久| 玖玖@三月天天丁香婷婷| 九九黄色网| 。久久久久久久久久久久久久人妻| 五月丁香色婷婷基地| 激情五月丁香五月| 丁香激情网| 中文字幕丰满乱孑伦无码专区 | 国产精品久久久久久久久久| 中文在线成人| 久久婷婷老| 婷婷激情五月天综合| www.色五月.com| 亚洲天天| 色婷婷a| 天天综合亚洲综合| 久久狠狠干| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 婷婷五月色综合| 五月丁香六月婷婷网| 激情五月综合久久| 亚州精品久久久久AV无码| 色婷婷色99国产综合精品| www.激情com| 五月婷婷六月激情网| 久久538| 亚洲AV成人一区二区在线观看| 一级精品999WWW| 欧美这里只有精品| 色婷插| 无码一区二区三区四区五区| 成人av免费观看| 1囯产午夜仑鲁鲁| 天天天久久久| 成人丁香| 大香蕉av在线| 激情综合网五月激情| 丁香五月网| 丁香涩涩爱| 91人人人人人人人| 狠狠色 综合色区| av免费在线看不卡无毒| 五月天色丁香| 超碰人人射| 五月色网| 免费观看亚洲AV片| 婷婷五月天激情网站| 欧美日本国产| 青青草原99热| 丁香五月 激情文学| 九月色婷婷综合| 天天色综网| 思思热再线视频| 青草视频在线播放| 婷婷五月天免费小说| 亚洲成人综合在线| 丁香五月天啪啪| 丁香激情网| 亚洲日本激情| 国产成人+综合亚洲+天堂| 色色成人網| 五月丁香色综合| 99热99免费| av在线婷婷| 欧美成人精品老美女噜噜噜| 91久久国产综合久久| 丁香五月五月婷婷| 另类精品视频在线观看| 婷婷久久网| 99热只有精品在线播放| 91中文狠狠综合| 天天日天天干天天插天天射| 色婷婷综合在线| 少妇人妻人伦A片| 五月天婷婷免费| 九九在线视频| 99热日本| 狠狠综合区| 久碰婷婷视频| 久久er视频6| 九九视频在线观看视频6| 五月激情综合深爱| 久久婷五月综合| www.婷婷五月天.com| 精品久久99码| 超极99精品| 99热在线观看免费精品| 538午夜激情| 久久精品国产AV一区二区三区 | 五月丁香爱婷婷深深| 婷婷丁香熟女| 五月婷婷六月激情| 一根材五月婷成人| 狠狠色噜噜色狠狠狠综合色 | 久久精品系列| 日韩好吊操| 色吊丝av中文字幕| 草草视频91| 久久久久99精品成人片| 九热久| 狠狠操狠狠插| 成人va视频| 丁香女人五月天| 久草婷妨| 免费AV播放| 激情婷婷五月社区| 婷婷日在线观看| 第四色色六月色综合| 丁香六月激情综合| 丁香五月电影| 丁香六月天AV| 大香线蕉伊人| 五月天婷婷导航| 91精品婷婷国产综合久久| 人妻丰满精品一区二区A片| 能看的av片| 在线视频另类| 一级片无码| 婷婷五月成人| 成人丁香色| www.五月天激情| 天天摸.天天mo| 99噜噜噜| 丁香五月伊人| www色色色com| 99碰碰| 思思热视频在线观看| 亚洲丁香五月深爱五月| 九九99九九99偷拍视频免费看| 欧美成人精品A片免费一区99| 久久综合影院 | 特黄三级片| 丁香五月婷综合网| 五月天三级| 激情五月天婷婷激情| 久久狠婷婷| AV网址大全在| AⅤ网站在线看| 99热| 99热这里只有精| 久久色五月| 2020日日干| 色欲色香伊人| 99日这里只有精品| 色天天久婷婷| 亚洲 精品 综合 精品| 99九九热在线观看| 97人妻碰碰碰久久| 五月丁香婷婷啪啪网| 久久六月婷婷| 久久婷婷九月国产精品| 成人精品视频99在线观看免费| 伊人久久婷婷| 丁香六月狠狠干| 色综合丁香婷婷| 日本婷色| 五月婷婷69| 99视频只有精品| 久草热视频在线观看| 婷婷.com| 精品A√| 五月丁香婷婷六月| 夜夜夜夜夜操| 99国产视频网| 色J香五月天| 久久久久思思热| 六月色播| 久久久噜噜噜久久人妻| 这里有精品| 亚洲午夜一区二区| 五月婷婷AV| 久久婷综合| 97人人超| 成人综合网站| www日本熟妇99在线视频| 成人 在线观看国产| 亚洲成人AV高清字幕| 91在线资源| 变态另类色图 | 丁香五月婷婷成人色区| 99久久久国产大片区| 综合久久婷婷五月丁香| 亚洲avjiujiur91| 婷婷热婷婷色| 热的无码综合视频| 色五月色五天免费视频| 欧美成人va| 丁香六月色婷婷| 日韩 中文 欧美| 久久99久久久久久| 日韩成人综合网| 天天干天天av天天射| 色丁香五月婷婷综合久久| xxxx久| 九九精品视频免费在线| 丁香五月天精品| 亚洲六月色| www热久久yy9| 97香蕉碰碰人妻国产欧美| 少妇被躁爽到高潮无码文| 日本操B片| 中文精品在| 天天天天天操| 色播播五月| 久久思思热| 久777| 色99网| 中文字幕簧片| www.久久爱.com| 香蕉综合网| 成人综合视频网址| 成人精品网站在线观看| 1024你懂的欧美曰韩| 91狠狠综合久久| 狠狠色无码| 伊人婷婷综合| 国产亚洲精品AAAAAAA片| 五月丁香婷婷老司机| 超碰免费99| 亚洲婷婷激情888精品久| 五月丁香综合中文| 538在线精品| 中文久久婷婷| 九九爱看亚洲| 激情综合99| 亚洲网站观看视频| A1片久久久| 婷婷五月色丁香在线看| 美女精品一级不卡视频| 婷婷六月激情综合| 中文字幕人妻在线| 亚洲综合网激情小说| 伊人网碰碰| 91919191919久久成人视频| 97香蕉碰碰人妻国产欧美| 五月丁香婷婷婷婷综合网| av网址在线| 九九热这里只有精品9| 都市激情久久| 亚洲综合另类| 婷婷六月香| 99在线精品视频免费| 国产精品色婷婷久久久精品| 91人在线观看| 六月色日韩| 国产激情在线| 91精品综合久久久久久五月天| 99热99ai| 超碰亚洲天堂| 色五月天丁香婷婷色| 婷婷五月伦理| 丁香五月色| 国产人妻操逼| 综合色影| 婷婷五月激情五月丁香五月| 99热网精品| 久久天天天| 激情综合五| www.婷婷com| 色综合色欲综合天天免费| 丁香九月综合| 久久WW| 久久丁香五月婷| 老师高潮流白浆喷水的A片| 99色精品视频| www.天天日| 黄色五月婷婷| 美女激情综合| 高清国产AV| 亚洲成人五月| 日韩精品一曲二曲三曲四曲五曲| 伊人六月无码视频| 婷婷成人五月天成人文学| 亚洲综合99| 香蕉国产2013| 人人操插| 久操激情| VA色婷婷| 天天干夜夜谢| 久久综合色情网站| 视色综合| 五月黄色婷婷| 天天澡天天狠天天天做| 久久性爱激情| 99久久这里只有精品| 一起操 91N.com| 另类综合色| 99小视频在线观看| 久久在线大香蕉| 亚洲无码yw| 婷婷九月丁香| 久婷婷| 激情五月天婷婷| 五月丁了香蕉综合| 国产又爽又猛又粗的视频A片| 六月99天天婷婷激情综合| 桃色五月天| 电影爱拉战争免费观看| 美国少妇性做爰| 99色1| 婷婷久久色| 亚洲va国产va天堂va综合va| 激情五月天的婷婷| 综合久久9| 婷婷五月天美女| 色爱综合网| 亚洲色A| 精品热九九| 人人干av| 大香蕉啪啪啪| 欧美精品XXXXBBBB| 丁香婷婷视频一区二区| 一级七香蕉| 五月丁香婷婷综合| 色五月婷婷激情综合网| 丁香五月婷婷国产av| 五月天婷婷视频| 超碰成人在线观看| 99这里有精品视频| 99成人免费热视频| 大香蕉狼人久久| 久久久人妻| 六月丁香VA| 99九九在线| 五月天激情色色| 国产偷人妻精品一区| 天天做天天爱高潮片| 草草夜夜操| 99re热在线观看| 伊人青草成人| 久久九九九九| 五月婷婷六月丁香在线| 亚洲精品五月| 香蕉婷婷色五月| 91|疯狂丨高潮丨对白| 激情av在线| 99久久99热| 一起肏在线视频| 天天操综合网| 激情综合网五月激情| 久久综合性| 热99.com婷婷| 99ri国产| 九九九九这里只有精品| 99ri精品| 桃色五月婷婷| 99热综合| 婷婷丁香激情五月天色色| 久操热| 1024成人免费看| 日本婷婷五月天| 综合五月网| 凹凸探花电影| 色婷操逼| 天天日夜夜操五月| 色九九综合| 另类婷婷五月天啪帕帕| 免费观看的av| 日狠狠| 爱婷婷五月| 日本色频| 狠狠狠狠狠狠色| www.婷婷激情网.com| 久机视频这只有精品| 久久婷婷视频| 91啪级电影| 婷婷五月天成人在线视频| 色丁香五月婷婷综合久久| 51精品国自产在线| 日本三级日本三级99| 日夜夜久久| 亚洲综合激情五月天婷婷| 色婷婷69| 婷婷五月综合免费在线| 蜜桃婷婷丁香综合久久开心亚洲| 婷婷涩五月| 另类小说色婷婷| www,av好吊操| 五月激情综合婷婷| 激情五月天综合网站网站网站| 无码九九九九| 色级婷婷| 国产精品美女久久久久AV超清| 99自拍视频在线| 玖玖婷婷综合| 久久精品视频在这里有| 婷婷五月伦理| 狠狠狠人妻| 久草五月天电影网| ay2区| 五月婷婷色播视频| 婷婷五月天免费小说| 99热在线精品播放| 激情婷婷久久| 99精品超在线播放| 狠狠爱婷婷丁香| 天天操天天曰天天射| 亚洲亚洲人成综合网络| 色色五月婷| 色噜噜狠狠色综无码久久合欧美| 激情五月婷婷| 99热天堂| 99色在线视频| 99久视频| 五月天丁香| 九九视频在线| 久草狼人| 五月激情天| 五月婷婷综合久久| 91viP在线看| 操久久网| 激情丁香五月天| 五月天婷婷色色| 久久人人妻| 欧美在线| 精品一二三区久久AAA片| 色婷青青| 色99久草在线| 中文字幕亚洲-区久久99婷婷| 99资源人人| 婷婷丁香综合| 天天肏在线观看| 大香蕉啪啪| 这里只有精品视频国产| 91大屁股| 五月丁香六月婷婷开心网| 99热这里只有精品在线| 激情综合五月婷婷丁香| 91久久1118| 天天弄天天操| 超碰成人公开| 成人一区在线观看| www.五月天色色色| 天天插天天狠| 色婷婷先锋| 亚洲精品国产精品乱码视99| 九色自拍| 六月丁香久久| 丁香99| 四虎成人精品永久免费AV九九| 久久婷婷激情| 亚洲综合婷婷| 99热精品一| 天天摸天天舔| 五月天丁香| 色青青电影色五月| WWW免费视频碰碰碰碰| 丁香五月婷婷婷婷欧美综合| 九九热思思热| 啪啪色区| 99噜噜| 少妇AB又爽又紧无码网站| 色月丁| 九九RE视频在线精品| 第四色婷婷色五月| 91丨九色丨熟女丰满| 九九无码| 99玖玖精品| 99九九中文字幕视频| 色婷婷视频| 夜夜爽天操| 五月丁香婷婷久久| 激情综合网激情五月俺也去| 97在线刺激| 夜夜天天久久婷婷| 九九大香蕉黄色影院| 99噜噜噜在线播放| 97色啪| 色婷婷九月综合| 棕合影院色色| 5月丁香美女影院| 99热99在线| 人人视频色| 久久丁香五月天| 日本黄色在线观看| 日本在线免费中文com.| 久久综合影院| 182tv992tv人之初午夜免费观看| 久久综合首页| 亚洲免费99| 亚洲色网络| 香蕉AV777XXX色综合一区| 操碰99| 色婷婷裸体色性在线| 六月激情婷婷| 天天天天天天天操| 亚洲午夜视频| 91综合色噜噜| 精品色色网| 久久性爱视频| 久久五月天网| 婷婷丁香五月亚洲综合网在线视频观看| 激情六月天婷婷| 日本欧美成人片AAAA| 丁香五月欧美色综合| 国产精品日韩十五区| 成人国产欧美大片一区| 大香蕉99| 五月丁香影视| 影院久久久| 初夜av| 婷婷五月丁香五月| www.zbzhongsen.com| 五月亭亭性| 婷婷六月偷拍| 色情五月天婷婷| 另类专区在线观看| 亚洲超碰在线| 五月丁香啪啪激情| www色婷婷com| 激情五婷网| 色情婷婷久久五月天| 97色五月天| 粉嫩AV久久一区二区三区| 97色色色色| 久久婷婷五月丁香网| 激情五月天的婷婷| 久久婷婷五月草视频| 婷婷爱五月| 青青草a在线| 亚洲热视频在线| 欧亚中文A V| 俺去也综合| 色色网站日本91| 欧美韩日AAA网站| 精品国产一区二区三区四区阿崩| 天天弄天天爽| 色婷婷www| 日本一级黄色电影| 五月亭亭性| 久9视频免费播放| 久热 91| 全亚洲最大的婷婷五月天网站COM| 超碰在线观看9|