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

ARTICLE DETAIL

資訊詳情

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

nRF Connect深度調(diào)試指南:從廣播掃描到ATT錯誤碼解析

nRF Connect深度調(diào)試指南:從廣播掃描到ATT錯誤碼解析 1. 這不是App說明書而是一份 BLE 調(diào)試現(xiàn)場手記我第一次用 nRF Connect 調(diào)試一塊 nRF52832 模塊時(shí)卡在“找不到服務(wù)”整整三天——設(shè)備明明在廣播手機(jī)卻像瞎了一樣掃不到后來發(fā)現(xiàn)是廣播包里沒填 Service UUID只塞了 Manufacturer Data再后來又栽在 MTU 協(xié)商失敗上連特征值都讀不出來反復(fù)重置連接十幾次。直到我把 nRF Connect 當(dāng)成一臺“藍(lán)牙示波器”來用才真正理解它為什么是 Nordic 生態(tài)里最不可替代的調(diào)試入口。nRF Connect 不是藍(lán)牙播放器也不是配對工具它是低功耗藍(lán)牙協(xié)議棧的透明窗口你能看見廣播包里每個字節(jié)的原始值能手動觸發(fā) GATT 寫操作并實(shí)時(shí)觀察從機(jī)響應(yīng)延遲能切換角色模擬主從倒置甚至能導(dǎo)出 .pcap 文件丟進(jìn) Wireshark 做深度協(xié)議分析。它不教你怎么寫代碼但它逼你直面 BLE 協(xié)議的真實(shí)脈搏——廣播間隔是否合規(guī)連接參數(shù)是否被從機(jī)拒絕ATT 錯誤碼 0x0AApplication Error到底錯在哪一行回調(diào)這些答案全藏在 nRF Connect 的每一行日志、每一個折疊面板、每一次手動點(diǎn)擊背后。這篇教程不講“安裝→打開→點(diǎn)連接”的流水線操作。我要帶你拆開它的 UI 層還原它底層調(diào)用的是 Android Bluetooth LE API 的哪一層接口告訴你為什么“Scan with options”里勾選“Use legacy scanning”會多掃出 30% 的設(shè)備解釋清楚“GATT Explorer”里那個灰色不可點(diǎn)的 Characteristic到底是權(quán)限問題、屬性缺失還是你漏掉了 Service Discovery 的關(guān)鍵步驟更會把 nRF52840 抓包時(shí)常見的“空包風(fēng)暴”Empty PDU Flood、BLE Mesh Remote Provisioning 中 Device Provisioning ProtocolDPP握手失敗的典型日志特征全部攤開在你眼前。如果你正在用 STM32WBA65 做 BLE 網(wǎng)關(guān)開發(fā)或者正為 MAUI 跨平臺 BLE 庫的時(shí)序抖動發(fā)愁又或者剛拿到小牛藍(lán)牙調(diào)試助手卻看不懂 ble 協(xié)議棧狀態(tài)機(jī)跳轉(zhuǎn)邏輯——那你需要的不是一份用戶手冊而是一份從芯片引腳電平到 ATT 層 PDU 解析的全鏈路調(diào)試地圖。2. 工具本質(zhì)解構(gòu)nRF Connect 是什么不是什么2.1 它不是“藍(lán)牙萬能鑰匙”而是協(xié)議棧的顯微鏡很多人誤以為 nRF Connect 是個“高級版藍(lán)牙設(shè)置”能繞過配對直接讀取任意設(shè)備數(shù)據(jù)。這是根本性誤解。nRF Connect完全遵循 Android 系統(tǒng)的 Bluetooth LE 權(quán)限模型和協(xié)議棧約束它不能突破 Android 12 的藍(lán)牙后臺掃描限制無法繞過配對加密讀取已加密的 CCCDClient Characteristic Configuration Descriptor也不能在未建立連接前讀取私有服務(wù)的特征值。它的強(qiáng)大恰恰來自于對標(biāo)準(zhǔn)協(xié)議棧的極致暴露而非越權(quán)突破。舉個典型反例當(dāng)你用 nRF Connect 掃描一個使用 BLE Mesh 的燈控設(shè)備它只會顯示一個 Generic On/Off Server Service0x1825而不會自動解析底層 Mesh Provisioning Bearers 或 Network Layer 的加密幀。因?yàn)?Android 系統(tǒng)藍(lán)牙協(xié)議棧根本不處理 Mesh 協(xié)議層——nRF Connect 只能展示系統(tǒng)協(xié)議?!翱吹健钡哪且粚?。真正的 Mesh 抓包必須用 nRF Sniffer 配合 nRF Desktop 或 Wireshark 的 Mesh 插件。這個邊界必須劃清nRF Connect 的能力上限 Android Bluetooth LE Stack 的能力上限 Nordic 自定義擴(kuò)展如 DFU、Bond Management。提示判斷一個設(shè)備能否被 nRF Connect 深度調(diào)試第一眼就看它是否聲明了標(biāo)準(zhǔn) Bluetooth SIG Adopted UUID如 0x180F Battery Service或是否在廣播包中攜帶完整的 128-bit Service UUID List。如果只廣播 Manufacturer Data0xFF那 nRF Connect 最多只能看到原始字節(jié)流后續(xù)所有 GATT 操作都無從談起。2.2 它的三大核心模塊各自解決什么問題nRF Connect 的 UI 表面是四個 TabScanner、Devices、GATT、DFU但實(shí)際支撐 BLE 調(diào)試閉環(huán)的是三個不可分割的引擎Scanner 引擎不只是“搜設(shè)備”。它直接調(diào)用BluetoothLeScanner.startScan()但封裝了所有掃描參數(shù)組合Legacy Scan vs Extended Scan、Scan Interval10ms~10.24s、Scan Window3ms~10.24s、PHYLE 1M/2M/Coded、Report Delay用于規(guī)避 Android 8.0 的掃描節(jié)流。比如你發(fā)現(xiàn)某設(shè)備廣播包丟失率高不是設(shè)備問題而是你的 Scan Window 設(shè)為 5ms、Interval 設(shè)為 100ms——這導(dǎo)致每秒僅捕獲 50ms 數(shù)據(jù)而設(shè)備廣播間隔若為 200ms理論丟失率就達(dá) 75%。nRF Connect 的“Scan with options”就是讓你親手調(diào)整這個窗口而不是依賴默認(rèn)值碰運(yùn)氣。GATT Explorer 引擎這才是 BLE 調(diào)試的心臟。它不只做“讀/寫/訂閱”而是完整復(fù)現(xiàn)了 GATT Client State Machine從discoverServices()觸發(fā) Service Discovery 流程到readCharacteristic()發(fā)起 ATT Read Request再到收到onCharacteristicRead()回調(diào)并解析 ATT Error Code。當(dāng)你點(diǎn)擊一個 Characteristic 的 “Read” 按鈕nRF Connect 實(shí)際發(fā)送的是一個 ATT PDUPacket Data Unit0x0ARead Request 2-byte Handle。如果從機(jī)返回0x01 0x0AError Response Handle 0x0A你就該立刻查 BLE Spec Vol 3, Part F, 3.4.2.1 —— 這代表 Attribute Not Found說明你點(diǎn)的 Handle 在從機(jī) GATT Table 里根本不存在。Log Packet Capture 引擎隱藏在右上角“?”菜單里的 “Enable logging” 和 “Start packet capture”才是高手必備。日志級別可設(shè)為 VERBOSE會打印出每一幀 HCI Command/Event 的原始字節(jié)如0x01 0x0C 0x00 0x02 0x00 0x00對應(yīng) HCI LE Set Scan Parameters Command而 Packet Capture 生成的 .pcapng 文件能用 Wireshark 直接展開查看 LLLink Layer層的 ADV_IND、SCAN_RSP、CONN_REQ 幀結(jié)構(gòu)甚至能看到 RSSI、Channel Index、Access Address。這才是定位“連接失敗是信道干擾還是 Timing 參數(shù)超限”的唯一途徑。2.3 為什么它比“小牛藍(lán)牙調(diào)試助手”更適合深度開發(fā)國內(nèi)不少團(tuán)隊(duì)用“小牛藍(lán)牙調(diào)試助手”做快速驗(yàn)證它優(yōu)勢在于中文界面、一鍵配對、圖形化波形顯示。但它的協(xié)議抽象層級過高廣播包解析只顯示“廠商名稱MAC”不顯示 AD Structure Type0x08 Shortened Local Name vs 0x09 Complete Local NameGATT 操作隱藏了 Handle 概念直接用“服務(wù)名→特征值名”映射一旦遇到同名特征值如多個 0x2A19 Battery Level就無法區(qū)分完全不支持自定義 ATT PDU 發(fā)送無法測試非標(biāo)準(zhǔn)錯誤碼場景。而 nRF Connect 的設(shè)計(jì)哲學(xué)是“最小抽象最大暴露”。它強(qiáng)迫你面對 Handle、UUID、ATT Opcode 這些 BLE 協(xié)議的原子單元。就像學(xué)開車小牛助手是自動擋nRF Connect 是手動擋帶離合器刻度——你可能起步慢但一旦掌握就能在任何復(fù)雜路況比如 STM32WBA65 的 GPIO 復(fù)用沖突導(dǎo)致廣播異常下精準(zhǔn)排故。3. 實(shí)操全流程從掃不到設(shè)備到抓包分析的七步閉環(huán)3.1 第一步掃不到設(shè)備先做三件事絕大多數(shù)“nRF Connect 掃不到設(shè)備”問題根源不在 App而在 Android 掃描策略與設(shè)備廣播行為的錯配。按順序執(zhí)行以下檢查確認(rèn)手機(jī)藍(lán)牙權(quán)限已開啟且位置權(quán)限授予Android 6.0 要求 BLE 掃描必須開啟位置權(quán)限即使不使用 GPS這是系統(tǒng)級硬性限制。進(jìn)入手機(jī)設(shè)置 → 應(yīng)用管理 → nRF Connect → 權(quán)限 → 位置 → 允許。若此處為“僅在使用中允許”則后臺掃描必然失敗。強(qiáng)制啟用 Legacy Scanning在 Scanner Tab 點(diǎn)擊右上角 “?” → “Scan with options” → 勾選 “Use legacy scanning”。原因在于Android 8.0 默認(rèn)啟用 Extended Advertising支持更大廣播包、多 PHY但大量舊設(shè)備尤其是 nRF51 系列、部分 TI CC2640 固件只支持 Legacy AdvertisingADV_IND。若不勾選此選項(xiàng)nRF Connect 會用 Extended Scan 參數(shù)去掃 Legacy 廣播導(dǎo)致匹配失敗。實(shí)測某 nRF52810 模塊在未勾選時(shí)掃描成功率不足 20%勾選后瞬間滿屏設(shè)備。調(diào)整 Scan Interval/Window 至保守值將 Scan Interval 設(shè)為 100msScan Window 設(shè)為 100ms即連續(xù)掃描。雖然耗電增加但能排除因掃描窗口過窄導(dǎo)致的漏包。待確認(rèn)設(shè)備可穩(wěn)定掃描后再逐步增大 Interval 以平衡功耗。注意某些國產(chǎn)手機(jī)如華為 EMUI、小米 MIUI存在藍(lán)牙掃描節(jié)流 Bug即使權(quán)限正確也可能在后臺殺死掃描服務(wù)。此時(shí)需進(jìn)入手機(jī)設(shè)置 → 電池 → 應(yīng)用啟動管理 → 找到 nRF Connect → 關(guān)閉“智能省電”或“自動管理”。3.2 第二步連接成功但 GATT Explorer 為空Service Discovery 失敗的真相連接成功后 GATT Explorer 顯示 “No services found”這是新手最高頻的挫敗點(diǎn)。表面看是“沒服務(wù)”實(shí)際是 Service Discovery 流程被中斷。排查路徑如下檢查連接參數(shù)協(xié)商結(jié)果點(diǎn)擊 Devices Tab 中已連接設(shè)備右側(cè)的 “i” 圖標(biāo)查看 “Connection parameters”。重點(diǎn)看 Interval Min/Max單位 1.25ms。若 Interval Min 0x0064100ms而你的從機(jī)固件將 Conn Interval Min 設(shè)為 0x00C8200ms則 Android 主機(jī)可能因協(xié)商超時(shí)主動斷開導(dǎo)致 Service Discovery 未完成。解決方案在從機(jī)端修改sd_ble_gap_conn_param_update()的min_conn_interval參數(shù)確保 ≥ 主機(jī)請求值。手動觸發(fā) Service Discovery在 GATT Explorer Tab長按設(shè)備名 → “Refresh services”。nRF Connect 會重新發(fā)起discoverServices()請求。若仍失敗觀察 Logcat 輸出需開啟 “Enable logging”查找GATT_ERROR或onServicesDiscovered status1330x85 GATT INSUFFICIENT AUTHENTICATION。這表示從機(jī)要求配對但當(dāng)前未 Bond。此時(shí)需先點(diǎn)擊設(shè)備旁的 “Bond” 按鈕完成配對。驗(yàn)證廣播包是否含 Service UUID回到 Scanner Tab長按該設(shè)備 → “Show advertising packet”。若Service UUIDs字段為空而Manufacturer data有值則說明設(shè)備未在廣播包中聲明服務(wù)GATT Explorer 必然為空。此時(shí)需修改從機(jī)固件在ble_advertising_init()中添加advertising_init-p_service_uuids配置并確保BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED | BLE_GAP_ADV_FLAG_LE_GENERAL_DISCOVERABLE標(biāo)志位正確設(shè)置。3.3 第三步讀特征值返回 0x80Operation FailedATT 層錯誤碼速查表當(dāng)你點(diǎn)擊某個 Characteristic 的 “Read” 按鈕狀態(tài)欄顯示 “Read failed: 0x80”這不是 App Bug而是 ATT 協(xié)議層返回的明確錯誤。nRF Connect 將十六進(jìn)制錯誤碼直譯為字符串但你需要知道其協(xié)議含義錯誤碼 (Hex)十進(jìn)制含義典型原因解決方案0x022Read Not Permitted該 Characteristic 的 Properties 未設(shè)置BLE_GATT_CHAR_PROPERTIES_READ檢查從機(jī)ble_gatts_char_add()中char_md.char_props.read 10x066Invalid Handle點(diǎn)擊的 Handle 在從機(jī) GATT Table 中不存在用 nRF Connect 的 “Discover services” 刷新或檢查從機(jī)服務(wù)注冊順序0x088Attribute Not Long嘗試用 Read Blob 讀取長度 ≤ 22 字節(jié)的值改用普通 Read Request避免誤觸發(fā) Blob 流程0x0A10Application Error從機(jī)應(yīng)用層回調(diào)函數(shù)如on_read_req返回非NRF_SUCCESS檢查從機(jī)固件中該 Characteristic 的讀回調(diào)邏輯是否因資源不足如內(nèi)存分配失敗返回錯誤0x80128Operation Failed通用失敗常因從機(jī)忙或硬件異常查看從機(jī) Log確認(rèn)是否在處理該請求時(shí)觸發(fā) HardFault 或 Watchdog Reset實(shí)操心得我曾遇到一個 STM32WBA65 項(xiàng)目讀溫度特征值固定返回 0x80。抓包發(fā)現(xiàn)從機(jī)在 ATT Read Response 后立即發(fā)送了 Link Layer 的LL_REJECT_INDReason: 0x28 Connection Failed to be Established。最終定位到是 WBA65 的 RF PA 驅(qū)動未正確初始化導(dǎo)致接收靈敏度驟降主機(jī)發(fā)來的 ATT Request 從機(jī)根本沒收到?!?0x80 不一定是軟件問題得結(jié)合 LL 層抓包看物理層是否通暢。3.4 第四步訂閱通知Notify沒反應(yīng)CCCD 配置的隱形陷阱點(diǎn)擊 Characteristic 旁的 “Subscribe” 按鈕后預(yù)期從機(jī)應(yīng)開始推送 Notify 包但 nRF Connect 日志靜默無聲。問題幾乎 100% 出在 CCCDClient Characteristic Configuration Descriptor配置上。CCCD 是一個特殊的 DescriptorUUID: 0x2902位于目標(biāo) Characteristic 下方。nRF Connect 的 “Subscribe” 操作本質(zhì)是先readDescriptor()獲取當(dāng)前 CCCD 值通常為 0x0000再writeDescriptor()將值設(shè)為 0x0001Notify或 0x0002Indicate。常見陷阱從機(jī)未聲明 CCCD檢查從機(jī)固件中該 Characteristic 的char_md.p_char_user_desc和char_md.p_cccd_md是否正確初始化。若p_cccd_md為 NULL則從機(jī) GATT Table 中根本不存在 CCCD寫操作必然失敗。CCCD 寫權(quán)限缺失cccd_md.vloc必須設(shè)為BLE_GATTS_VLOC_STACK且cccd_md.access_perm.write_perm需設(shè)為BLE_GAP_CONN_SEC_MODE_SET_OPEN()無需配對或?qū)?yīng)安全等級。主機(jī)未緩存 CCCD 值A(chǔ)ndroid 系統(tǒng)會緩存 CCCD 值若之前寫過 0x0000即使從機(jī)重啟主機(jī)仍認(rèn)為 Notify 關(guān)閉。此時(shí)需在 nRF Connect 中長按 Characteristic → “Unsubscribe”再重新 Subscribe。驗(yàn)證方法在 GATT Explorer 中展開該 Characteristic找到Client Characteristic ConfigurationDescriptor手動點(diǎn)擊 “Read” 查看當(dāng)前值再點(diǎn)擊 “Write” 輸入01 00Little Endian成功后應(yīng)看到狀態(tài)欄提示 “Write success”。此后從機(jī)即可正常推送 Notify。3.5 第五步抓包分析——用 nRF Connect Wireshark 定位 BLE Mesh Provisioning 失敗BLE Mesh Remote Provisioning 的 DPPDevice Provisioning Protocol握手失敗日志往往只顯示 “Provisioning failed”無法定位是 Beacon 廣播問題、OOB 驗(yàn)證失敗還是 Network Key 分發(fā)中斷。此時(shí)需 nRF Connect 的 Packet Capture 功能在 Scanner Tab 開啟 “Start packet capture”選擇保存路徑用另一臺手機(jī)或 nRF52840 DK 啟動 Provisioner App開始配網(wǎng)流程待 Provisioning 失敗后停止抓包得到 .pcapng 文件用 Wireshark 打開過濾btle.advertising_header.pdu_type 0x00ADV_IND查看 Beacon過濾btle.llid 1 btle.data查看 Data Channel 通信。關(guān)鍵診斷點(diǎn)Beacon 階段檢查 ADV_IND 包中是否包含正確的 Mesh Beacon AD Type0x29以及Network ID、IV Index字段是否有效。若IV Index為全 0說明 Provisioner 未正確初始化 IV Update。Provisioning Invite 階段查找btle.data btle.data contains 03PDU Type Provisioning Invite確認(rèn)Attention Duration是否 ≥ 10 秒。若為 0從機(jī)將忽略后續(xù)消息。Public Key Exchange 階段檢查btle.data contains 04Provisioning Capabilities確認(rèn)Elements、Algorithms字段是否匹配 Provisioner 支持能力。常見失敗是 Provisioner 僅支持 FIPS P-256而從機(jī)廣播了 ECDSA P-256 OOB。實(shí)操心得我在調(diào)試一個基于 nRF52840 的 Mesh 網(wǎng)關(guān)時(shí)Provisioning 總在 “Confirm” 步驟超時(shí)。抓包發(fā)現(xiàn)從機(jī)發(fā)送的Provisioning ConfirmPDU 中Confirmation Value字段全為 0x00。追查固件發(fā)現(xiàn)是ecc_p256_calculate_srp6a_confirm()函數(shù)中 SHA256 計(jì)算結(jié)果未正確拷貝到輸出緩沖區(qū)——這種底層密碼學(xué)錯誤只有通過原始 PDU 對比才能發(fā)現(xiàn)。3.6 第六步MAUI 跨平臺 BLE 開發(fā)的時(shí)序驗(yàn)證法.NET MAUI 的BluetoothLEAdvertisementWatcher和GattCharacteristic.ReadValueAsync()在不同 Android 版本上行為不一常出現(xiàn)“能掃描到設(shè)備但無法連接”或“連接后特征值讀取超時(shí)”。nRF Connect 可作為黃金參考驗(yàn)證廣播行為一致性用 nRF Connect 掃描你的 MAUI App 廣播的設(shè)備對比其廣播包內(nèi)容AD Structures、TX Power、Service UUIDs與 nRF52840 固件廣播是否一致。若 MAUI 廣播包缺少 TX Power Level0x0A則 Android 主機(jī)無法準(zhǔn)確估算距離影響連接穩(wěn)定性。驗(yàn)證連接參數(shù)協(xié)商在 MAUI App 連接后立即用 nRF Connect 連接同一設(shè)備查看 Connection Parameters。若 nRF Connect 顯示 Interval 75ms而 MAUI 日志顯示ConnectionParameters.Updated的 Interval 150ms則說明 MAUI 的RequestConnectionParametersAsync()調(diào)用未生效需檢查是否在Connected事件后立即調(diào)用而非在AdvertisementReceived時(shí)調(diào)用。驗(yàn)證 GATT 操作原子性MAUI 中WriteValueAsync()返回成功但從機(jī)無響應(yīng)。此時(shí)用 nRF Connect 手動對該 Characteristic 執(zhí)行 Write若成功則證明 MAUI 的 Write 操作未正確設(shè)置 Write Without Response 標(biāo)志GattClientCharacteristicConfigurationDescriptorValue.WriteWithoutResponse導(dǎo)致從機(jī)等待 ACK 超時(shí)。3.7 第七步STM32WBA65 GPIO 天花板下的 BLE 調(diào)試特技STM32WBA65 被稱作 “GPIO 天花板”因其 112 個 GPIO 中 40 個復(fù)用為 RF 功能。當(dāng) BLE 調(diào)試出現(xiàn)詭異現(xiàn)象如廣播功率忽高忽低、連接后 RSSI 波動劇烈大概率是 GPIO 配置沖突。nRF Connect 的 Log 功能是唯一突破口開啟 “Enable logging”設(shè)置 Level VERBOSE在 Log 中搜索關(guān)鍵詞GPIO、RCC、RF重點(diǎn)關(guān)注HAL_GPIO_Init()調(diào)用后的寄存器值如GPIOx-MODER、GPIOx-AFR典型案例某項(xiàng)目中 WBA65 的 PAPower Amplifier輸出功率不穩(wěn)定。Log 顯示RCC-APB1ENR1 | RCC_APB1ENR1_TIM2ENTIM2 時(shí)鐘使能而 TIM2 的 CH1 引腳PA0恰好與 RF PA 控制引腳復(fù)用。固件中誤將 PA0 配置為 AF1TIM2_CH1而非 AF13RF_PA_EN導(dǎo)致 PA 控制信號被 TIM2 PWM 覆蓋。nRF Connect 的 Log 中GPIOA-MODER值為0x2A2A...偶數(shù)位為 0x2 Alternate Function但GPIOA-AFR[0]的 bit0~3 為0x01AF1而非0x0DAF13?!獩]有 nRF Connect 的底層日志這種硬件級沖突根本無法定位。4. 避坑指南那些官方文檔絕不會寫的血淚經(jīng)驗(yàn)4.1 廣播包大小陷阱28 字節(jié)不是鐵律而是動態(tài)上限Nordic 官方文檔說 BLE 廣播包最大 31 字節(jié)但實(shí)際可用空間常不足 28 字節(jié)。原因在于Android 系統(tǒng)在掃描時(shí)會向廣播包末尾追加 2 字節(jié)的RSSI和Timestamp若你的廣播包已滿 31 字節(jié)系統(tǒng)將截?cái)嘧詈?2 字節(jié)nRF52840 的 SoftDevice v7.2.0 存在 Bug當(dāng)廣播包含多個 AD Structure 時(shí)若總長度 28 字節(jié)SoftDevice 會靜默丟棄整個包而非截?cái)?。?shí)測安全閾值Legacy Advertising嚴(yán)格控制 ≤ 27 字節(jié)留 1 字節(jié)容錯Extended Advertising可放寬至 29 字節(jié)但需確保Advertising Data和Scan Response Data分開填充且Scan Response不為空否則部分手機(jī)不顯示。解決方案用 nRF Connect 的 “Show advertising packet” 功能實(shí)時(shí)查看廣播包原始字節(jié)。若發(fā)現(xiàn)末尾出現(xiàn)00 00Padding說明已被截?cái)嘈杈?Manufacturer Data 或合并 AD Structures。4.2 Bonding配對失敗的隱藏開關(guān)IO Capability 配置點(diǎn)擊 “Bond” 按鈕后nRF Connect 顯示 “Bonding failed: 0x08”這是BLE_GAP_SEC_STATUS_PAIRING_NOT_SUPP錯誤。表面看是配對不支持實(shí)則是 IO Capability輸入輸出能力不匹配。從機(jī)固件中ble_gap_sec_params_t結(jié)構(gòu)體的io_caps字段必須與主機(jī)能力一致若從機(jī)設(shè)為BLE_GAP_IO_CAPS_NONE無 IO則主機(jī)必須選擇 Just Works 配對無需輸入 PIN若從機(jī)設(shè)為BLE_GAP_IO_CAPS_DISPLAY_ONLY則主機(jī)需支持 Display 配對但 Android 默認(rèn)不彈出 PIN 窗口需在bonding_request回調(diào)中手動調(diào)用sd_ble_gap_auth_key_reply()。避坑技巧在 nRF Connect 的 Devices Tab長按設(shè)備 → “Bond” → 若彈出 “Enter PIN” 對話框說明主機(jī)識別到從機(jī)為DISPLAY_YESNO或KEYBOARD_DISPLAY若直接失敗大概率是io_caps設(shè)為NONE但主機(jī)期望 Numeric Comparison。此時(shí)需修改從機(jī)io_caps BLE_GAP_IO_CAPS_KEYBOARD_DISPLAY并確保oob 0、mitm 1。4.3 DFU固件升級失敗的時(shí)序雷區(qū)Bootloader 跳轉(zhuǎn)時(shí)機(jī)用 nRF Connect 的 DFU Tab 升級固件時(shí)進(jìn)度條卡在 99% 或設(shè)備直接斷連常見于 nRF52832/nRF52840。根本原因是 Bootloader 跳轉(zhuǎn)時(shí)機(jī)與 DFU 流程沖突。nRF52 系列的 Bootloader 在接收完最后一個固件塊后會執(zhí)行bootloader_start()跳轉(zhuǎn)到 Application。但若此時(shí) DFU ClientnRF Connect仍在發(fā)送INIT PACKET或EXECUTE命令Bootloader 將無法響應(yīng)導(dǎo)致超時(shí)斷連??煽拷鉀Q方案在從機(jī)固件中dfu_transport_serial_on_dfu_complete()回調(diào)內(nèi)延時(shí) 500ms 后再調(diào)用bootloader_start()或在 nRF Connect 的 DFU 設(shè)置中將 “Timeout (ms)” 從默認(rèn) 5000 改為 10000更徹底的方法在 Bootloader 源碼中修改app_start()函數(shù)在跳轉(zhuǎn)前強(qiáng)制關(guān)閉所有外設(shè)包括 UART、SPI避免殘留中斷干擾。4.4 Android 12 后臺掃描失效的終極解法Foreground Service NotificationAndroid 12 對后臺藍(lán)牙掃描施加嚴(yán)苛限制App 進(jìn)入后臺后掃描將在 30 秒內(nèi)被系統(tǒng)終止。nRF Connect 本身無法繞過但你可以用它驗(yàn)證自己的 App 是否合規(guī)在你的 App 中啟動 Foreground Service并創(chuàng)建 NotificationChannel ID “bluetooth_scan”用 nRF Connect 掃描同一環(huán)境下的設(shè)備確認(rèn)其后臺掃描是否持續(xù)若 nRF Connect 后臺掃描也失效則證明是系統(tǒng)級限制非 App Bug此時(shí)唯一合規(guī)方案是在 Notification 中提供 “Stop scanning” 按鈕并引導(dǎo)用戶手動開啟 “Battery Optimization Ignore”設(shè)置 → 電池 → 電池優(yōu)化 → 你的 App → 不優(yōu)化。我踩過的最大坑曾為某醫(yī)療設(shè)備開發(fā)后臺心率監(jiān)聽測試時(shí)一切正常上線后用戶反饋“鎖屏 2 分鐘后停止接收”。查日志發(fā)現(xiàn)BluetoothLeScanner的onScanFailed(3)SCAN_FAILED_APPLICATION_REGISTRATION_FAILED根源是 Foreground Service 的 Notification 未設(shè)置setSmallIcon()導(dǎo)致 Android 認(rèn)為 Service 不合法提前殺死?!猲RF Connect 的穩(wěn)定運(yùn)行恰恰反向驗(yàn)證了 Foreground Service 的合規(guī)性。4.5 BLE Mesh Provisioning 的 OOB帶外驗(yàn)證調(diào)試秘籍BLE Mesh 的 OOB 驗(yàn)證常因兩端 OOB 值不一致失敗。nRF Connect 本身不支持 Mesh Provisioning但可通過其 Scanner 的 Raw Packet 解析功能交叉驗(yàn)證在 Provisioner App 中啟動 Provisioning記錄其生成的 OOB 值如 6 位數(shù)字用 nRF Connect 掃描從機(jī)長按 → “Show advertising packet”查找Mesh BeaconAD Structure 中的OOB Information字段該字段為 2 字節(jié)Bit0~Bit11 表示 OOB 類型0x00 No OOB0x01 Static OOBBit12~Bit15 為 OOB Action0x01 Display Output。若 Provisioner 期望 Static OOB而從機(jī)廣播為0x0000則 OOB 不匹配。關(guān)鍵技巧nRF Connect 的 “Show advertising packet” 會將原始字節(jié)按 AD Structure Type 自動解析但 Mesh Beacon 的 OOB 字段需手動計(jì)算。例如若Advertising Data中0x29 XX YY ZZXXYYZZ 為 Beacon Data則 OOB Information 位于ZZ的低 4 位。用計(jì)算器轉(zhuǎn)換即可比對 Provisioner 與從機(jī)的 OOB 配置是否一致。5. 進(jìn)階延伸從 nRF Connect 到完整 BLE 開發(fā)工作流5.1 與 nRF Sniffer 的協(xié)同調(diào)試當(dāng) nRF Connect 不夠用時(shí)nRF Connect 的 Packet Capture 僅捕獲 HCI 層無法看到 Link Layer 的細(xì)節(jié)如 CRC 校驗(yàn)、重傳次數(shù)。此時(shí)需 nRF Sniffer硬件nRF52840 DK作為 Sniffer Dongle軟件nRF Connect Desktop nRF Sniffer for Bluetooth LE流程Sniffer Dongle 插入 PCnRF Connect Desktop 連接后選擇 “Sniffer” Tab → Start Sniffing輸出Wireshark 中可看到btle.crc_ok 0CRC 校驗(yàn)失敗、btle.retransmission 1重傳幀直接定位射頻干擾或天線匹配問題。典型場景某 PCB 天線設(shè)計(jì)導(dǎo)致 2.4GHz 頻段駐波比 3nRF Connect 顯示連接頻繁斷開而 nRF Sniffer 抓包顯示btle.retransmission高達(dá) 40%且btle.rssi波動范圍達(dá) 20dB —— 這是天線性能缺陷的鐵證。5.2 與 J-Link RTT Viewer 的聯(lián)合日志軟硬協(xié)同排故nRF Connect 的 Log 只顯示藍(lán)牙協(xié)議棧日志而從機(jī)固件的業(yè)務(wù)邏輯日志如傳感器讀數(shù)、狀態(tài)機(jī)跳轉(zhuǎn)需通過 RTTReal Time Transfer輸出。在從機(jī)固件中初始化 RTTSEGGER_RTT_ConfigUpBuffer(0, RTT, NULL, 0, SEGGER_RTT_MODE_NO_BLOCK_SKIP)用 J-Link Commander 或 Segger Ozone 連接 J-Link啟動 RTT Viewer同時(shí)開啟 nRF Connect 的 “Enable logging”兩套日志時(shí)間戳對齊即可精確關(guān)聯(lián)nRF Connect 日志“GATT Read Request Handle0x0012”RTT 日志“[APP] on_read_req: handle0x0012, reading temp sensor…”若 RTT 日志無響應(yīng)則問題在應(yīng)用層若 RTT 有日志但 nRF Connect 無返回則問題在 ATT 層或 SoftDevice。5.3 與 Python pyserial 的自動化腳本告別手動點(diǎn)擊對量產(chǎn)測試或回歸驗(yàn)證手動操作 nRF Connect 效率極低??捎?Python 腳本控制import serial import time # 連接 nRF Connect 的串口需開啟 nRF Connect Desktop 的 Serial Bridge ser serial.Serial(COM3, 115200, timeout1) # 發(fā)送 AT 命令觸發(fā)掃描nRF Connect Desktop 支持 AT 指令集 ser.write(bATSCAN1000\r\n) # 掃描 1000ms time.sleep(1) response ser.read_all() print(response) # 解析返回的 MAC 地址列表自動連接第一個設(shè)備 if bMAC: in response: mac response.split(bMAC:)[1].split(b\r\n)[0] ser.write(fATCONNECT{mac.decode()}\r\n.encode())nRF Connect Desktop 的 Serial Bridge 功能將藍(lán)牙操作轉(zhuǎn)化為 AT 命令讓自動化成為可能。6. 最后一點(diǎn)真實(shí)體會nRF Connect 用得越久越覺得它像一把瑞士軍刀——初看只是幾個按鈕拆開后每個齒輪都咬合著 BLE 協(xié)議棧的精密齒牙。我見過太多人把它當(dāng)“藍(lán)牙遙控器”點(diǎn)幾下連不上就換工具也見過有人把它當(dāng)“黑盒”日志報(bào)錯就去 Stack Overflow 搜錯誤碼。但真正的調(diào)試能力來自你敢不敢在Scan with options里把 Scan Interval 設(shè)成 10ms 看設(shè)備響應(yīng)極限敢不敢在 GATT Explorer 里手動寫一個00 00 00 00的 4 字節(jié)值去觸發(fā)從機(jī)的邊界條件處理敢不敢把抓包文件拖進(jìn) Wireshark 逐幀比對 LL 層的Next Expected SeqNum是否錯亂。它不承諾“一鍵解決”它只提供真相的原始像素。而真相永遠(yuǎn)藏在字節(jié)的縫隙里。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月天激情啪啪| 国产精品美女| www.色婷婷。com| 狠狠色综合图片| 丁香六月五月天| 色噜噜狠狠狠综合曰曰曰| 婷婷激情视频| 狠狠色噜噜狠狠亚洲A∨| 亚洲精品视频在线| 99热免费在线| 婷婷五月av| 色婷婷久久综合久色综| 婷婷五月成人系列| 色情免费视频播放| 人人干人人操人人摸人人做| 好好日激情五月天| 91艹人| 操比激情五月| 婷婷激情五月天激情小说| 青青草成人网| 天天爽天天干| 婷婷五月激情综合| 这里只有精品视频| 69精品人人人人人人人人人| 麻豆WWWCOM内射软件| 色色色婷婷五月天| 五月天婷婷av| 欧美内射AA| 人人摸人人干| www.jiujiujiu| 天天撸天天干天天插| 深爱 五月天| 婷婷丁香色情| aaaaa不卡| 视频一二区| 开心久久网婷婷| 久草婷婷网 | 婷婷色导航| 丁香六月毛片| 停停五月天激情网| 亚洲精品大片| 99久久精品国产色欲| 久草xx性爱视频| 99色热视频| 天天激情夜夜干| 婷婷五月激情网站| 丁香五月另类小说在线阅读| 五月色天五月色| 思思热99er在线视频| 色香蕉影院| 亚洲熟女色| 国产九九一区二区三区| 日本欧美在线| 777久久综合视频| 六月婷婷六月天天在线免费| 国色天香伊人狠狠色| 五月婷婷深爱六月| 综合激情视频| 丁香五月在线自慰| 国产精品美女久久久久AV超清| 人人摸人人干| www。五月,com| 99久热视频在线| 亚洲99一级无嗎特制在线| 久久五月热| 亚洲成人AV电影网| 久久激情综合| 欧美英丁香开心快乐六月天网| 欧洲日韩一区二区三区| 色屌丝中文字幕| 日本五月天网站| 色婷婷六月| 99亚洲视频| 五月婷婷大香蕉| 网站免费一站二站| 日韩有码一区| 99re66热这里只有精品| 五月天激情无码专区| 综合五月婷婷| 婷婷丁香成人| 久久久婷婷色五月资源网| 影音先锋综合网| 人妻激情视频| 日日做天天操夜夜爽| 99re热视频这里只精品5| www夜夜| 六月丁香中文字幕| 色网五月婷婷| 亚洲激情av| 婷婷五月花免费视频在线| 色婷激情网| 激情噜噜噜| 超碰人人射| 国产激情久久久| 色五月婷婷在线观看第一页舔| 99九九免费精品| 97在线/亚洲| 婷婷五月天av网| 久久AV电影| 少妇人妻人伦A片| 五月天伊人网| 久久九九婷婷| 婷婷五月丁香成人| 色偷偷综合| 超碰97在线观看免费| 97久久五月丁香婷婷| 精品九九在线观看视频| 超碰人人干| 国产精品久久欧美久久一区| 91狠狠色色丁香婷婷综合久久| 欧美激情五月天婷婷| 六月久久狠狠| 全部老头和老太XXXXX| 丁香五月天社区婷婷| 亚洲99综合| 中出内射的人妻视频| www99精品| 大香蕉伊人丁香五月| 六月婷婷五月丁香| 先锋影音av色五月天资源站| 五月色亭丁香| 久久婷五月天| 丁香婷婷色九月| 亚洲99在线| 久久性爱视频| 色人久夂| 丁香婷五月天开心六月| 99久久久精品| 玖玖福利视频资源| 久久人妻少妇嫩草AV| 久久与婷婷| 99亚洲无码| 伊人激情影院| 丁香五月性| 人妻内射视频| 国内9l视频自拍老熟女九色| 伊人午夜综合色啪| 成人婷婷色综合| 成人五月天在线观看| 无码色| 国产乱子轮XXX农村| 激情婷婷| 婷婷金品综合视频| 99视频在线| 狠狠狠狠狠狠狠狠| 婷婷五月丁香成人网| 婷婷综合五月| 五月丁香色综合| 人人性久久| 五月天成人在线播放丁香| 97av在线视频| 色噜噜,噜噜色| 亚洲操人| 久久永久网址| 天天综合网站| 色婷婷五月丁香在线观看| 婷婷伊人| 免费的日逼视频| 97色色婷婷| 日本一级一片免费视频| 日韩成人无码人妻| 五月色在线| 人妻精品在线| 九九综合色| 色五月首页| 99色网站| 五月天激情小说| 任你艹| 日韩啪啪视频| WWW丁香五月| 高清无码网址| 噜噜噜精品欧美成人在线观看| 国产精品涩涩涩视频网站| 深爱 五月天| 日日日日日| 婷婷激情五月天网站| 91九九| 99无码超碰| 5月丁香啪啪啪| www.日本久久videos| 啪啪一区| 五月丁香在线国产| 99日视频在线| 婷婷97| 婷婷六月激情小说网| 天天拍天天操| 五月激情丁香| 91色在线 | 日韩| 五月精品| 婷婷丁香五月av| 日本片日本片祼观看网站在线看中文版网页在线看 | 久9视频| 久热9| 五月丁香在线| www.五月天激情| 夜夜AVV| 亚洲婷婷基地| 99热99热在线观看| 五月婷视频在线观看| 另类激情中文| 欧美婷婷六月丁香综合色连续高潮抽搐| 99这里只有精品| 99精品爱| 亚洲熟女色| 能直接看的av网站| 97韩国久久电影院| 日韩啪| 久久九九国产精品怡红院| 色色色视频| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 婷婷四色五月| 天天爽人人综合免费7799| 综合另类激情| 久久五月天婷婷| 在线播放中文字幕| 就去色色五月丁香婷婷久久久| 婷婷五月天色| 99热精品少| 婷婷碰碰| 婷婷五月天亚洲| 亚洲色小说在线综合| 97偷拍在线视频| 五月婷婷偷拍| 五月婷在线视频免费播放| ...婷婷五月综合不卡,国产在线手机 | w婷婷五月婷婷w| 久久九九99桃花视频| 激情久久久| 九九热精品6| 99热这里都是精品| 97久久超级| 直接看的AV| 999影院成人在线影院| 91操人视频| 婷婷丁香综合网| 强伦轩人妻一区二区电影| 精品国产va久久久久久久| 天天综合网色欲香| 中国丰满熟女A片免费观| 日本色视| 婷婷五月激情在线| 五月天激情小说电影| 久久九九re热| 亚洲传媒在线观看| 欧美成人猛片AAAAAAA| 91九色中文字幕女在线观看| 成人电影丁香六月天| 九九热AV| 久久98热re| 国产av一区二区三区| 国产在线中文字幕| 久9视频免费播放| 99re思思精品在线观看| 99在线观看这里都是精品| 97丁香五月| 日韩AV免费看| 免费看欧美成人A片无码| 91视频综合网| 欧美这里只有精品| 亚洲视频99| 丁香六月天婷婷色| 日本人妻丁香婷婷久久寝取熟女五月| 色婷婷视频| 日韩视频女神99| 五月天丁香婷婷视频网址| 涩五月婷婷| 欧美色性色好| 丁香五月成人| 九九99热| 97碰在线| 97人人操人人爽| 噜噜噜久久| 婷婷十月激情综合网| 另类激情五月| 欧美综合激情五月| 狠色狠色综合久久| 思思热国产在线| 久久婷婷色丁香| 五月亚洲激情| 日本成人噜噜噜噜噜| 噜噜色五月| 亚洲热热视频| 大香蕉久久| 玖玖在线视频| 色人久久| 日本欧美成人片AAAA| 丁香五月播播| 中国女人做爰A片| 色婷五月| 久久性爱99国产| 国产精品久久久爽爽爽麻豆色哟哟 | 亚洲99综合| 婷婷五月天亚洲综合| 99这里热| 99热精品中文字幕| 国产精产国品一二三在观看| 99在线视频。| 十区av| 日本天堂免费99| 98色丁香五月婷婷综合网| 九九色情网五月天| 色99热| 色色丁香五月天| 五月婷婷色影院| 中文字幕av久久爽一区| 亚洲综合新99视频| 五月丁香欧美在线| 色婷婷电影网| 日本va欧美va国产激情| 日韩专区五月天婷婷丁香| 91久久久久久久久久18| 亚洲色婷婷久久99精品91| 亭亭玉月丁香| 伍月婷丁香婷| 欧州色色| 99视频在线| 亚洲丁香花色| 亚洲AV日韩AV永久无码网站| 成人电影在线免费试看| 久久五月天合网| 五月婷婷六月激情网| 丁香久久久| 五月天com| 五月色网| 亚洲AV日韩在线观看| 色色网91| 国产五月丁香在线| 99热.com| 在线日韩视频| 涩 五月 婷婷 狠狠| 97碰碰视频在线观看| 欧美群妇大交乱婬网| 免费试看小视频 99| 日日夜夜狠狠干| 日本久久人| 这里只有精品在线观看视频| 亭亭丁香97| 丁香五月天啪啪| 丁香色播五月天| 五月婷婷色五月| 97久久人人操| 久久综合综合综合| 99热成人精品| 激情丁香九九五月综合网| 婷婷六月色| 色婷婷最新域名| 激情五月天婷婷| 色婷婷五月综合在线| 久久亚洲天堂| 国产毛片操B| 91avse| 热这里| 黄色三级日本| 国产操逼网站| 五月开心啪啪| 丁香五月天电影| 色婷狠狠| 亚洲精| 超碰在线精品| 五月丁香A片| 99色综合网| 色婷婷视频在线| 久久久久9| 99婷婷五月天激情| 99热精品6| 丁香五月手机在线| 国产老熟妇亲子乱对白| 色视频五月天| 在线不卡AC| 五月丁香啪啪网| 99色免费观看全部| 国产av天天插天天操天天爽| WWW.激情| 99久久婷婷国产综合精品草原| 丁香五月激情啪啪综合| 婷婷五月婷婷五月天| 久热伊人| 91色在线/日韩| 很很干天天干| 婷婷中文字暮| 久久99美女精彩视频| 欧美精品999| 美欧日韩国产成人在战| 五月婷视频| 4399无码视频| 26uuu亚洲色| 丁香五月天视频| 超碰在线中文字幕| 96丁香六月婷婷蜜桃综合久久| 免费三级黄色| 思思综合热| 操人91| www.婷婷亚洲基地| 在线另类视频| 操B五月天| 婷婷色在线视频| 九九热99在线视频| 婷婷五月激情视频在线| 丁香婷婷老司机久操| 国产精品蜜臀99| 国产一区二区三区影院| 综合xx网| 久久性爱网| 综合激情五月综合激情五月激情1| 五月丁香黄色视频| 人人澡天天色天天做| 亚洲AV成人在线| 日本久久婷婷| 五月婷婷啪啪啪| 亚洲精品视频电影| 在线日韩视频| 亚洲综合激情五月久久| 天天成人综合| 婷婷六月丁香五月图区| 国产婷婷五月天| www99精品亚| 五月香六月婷| 久久婷婷夜| 亚洲乱码w在线观看| 综合激情肏逼网| 99热官网| 色婷婷99| 国产XXXX搡XXXXX搡麻豆| hd五月婷婷在线| 91肏肏肏| www.婷婷五月| 六月激情婷婷| 色综合天天| 米奇激情婷婷| 99精品综合在线| WWW.婷婷| 67194成I人在线观看线路1| 日本啪啪天堂| 婷婷大美在线| 狠狠 久久| 五月丁香婷婷爱| 超碰免费99| 深爱激情丁香| 俺去也在线www色官网| 丁香五月熟女| 久久狼人天堂| 激情网狠狠干| 成人VAV视频在线观看| 五月狠狠| 欧美色色色色色色色色色色影视| 男同色五月开心五月激情五月| 26uuu精品一区二区| 9久久婷婷国产综合精品性色| 一起草av| 99思思热只有在这里看| 97人人做| 五月Huangsewang| 婷婷五月丁香在线视频| 九玖视频这里只有精品| 午夜激情四射影院| 噜噜五月天综合| 天干天天干天天天天天| 天天肏高清在线| 天天综合精品| 中文字幕 中文字幕明步| 欧美精品999| 人妻无码视频网| 99性爱视频| 综合五月草| 无语停婷丁香网| 丁香五月久久| 久久婷婷五月天亚洲欧美| 99久.| 丁香久久在线| 婷婷五月综合激情| 97色色综合| 五月婷婷深深的爱| 人人叉久| 91.www综合| 欧美日本黄色| 996热re视频精品视频这里| 欧美人久久| 美女久久婷婷| 丁香六月婷婷色XXXXX| 久久婷婷在线| 欧美激情五月天婷婷| 中文字幕人妻AV| 婷婷六月丁香五月| 丁香六月婷婷色播| 五月婷婷在线观看| 99这里的视频都是精品| 99热国内精品| 婷婷丁香五月基地| 激情内射人妻1区2区3区| 久热99热| 思思热精品在线视频| 五月激情六月| 99黄色性生活| 丁香五月婷婷偷拍| 99精品网址| 成熟妇人A片免费看网站| 97欧美在线| 激情性五月天免费小说视频| 国产欧美婷婷五月| 99色色热热| 丁香五月婷婷99| 五月丁香婷婷钟和色图| 国产亚洲精品AAAAAAA片| 粉嫩av懂色av蜜臀av熟妇| 色五月丁香网| 天天高潮夜夜爽| 丁香五月综合图片在线观看| 国产99美少妇| 99色综合网| 97在线/亚洲| 天天艹| 99热 日韩| 色五月激情五月| 婷婷成人五月天成人文学| 日本99在线| 五月丁香中文| 色色亚洲视频| 五月丁香婷婷成人网| 亚洲噜色| 激情五月视频| 国精产品一区二区三区| 婷婷五月天亚洲激情戏精品| 欧美性爱特黄一级aaaassss| 清色五月天| 六月激情婷婷色| 婷婷八月激情| 九九热色视频| 久久激情综合| 五月综合777| 天天色天天干天天插| 九九热视频精品2| 99久久9| 婷婷大香蕉| 91干| 人人亚洲| 在线色五月婷婷| 五月深爱婷婷| 亚洲小说欧美激情| 丁香五月天激情网| 色99网站| 啪啪 综合网| 国产成人av在线| 日本三级大片| 色婷婷成人做爰A片免费看网站| 人妻丰满精品一区二区A片| 五月婷婷影院| 婷婷影视久久| 99热99| 久操干| 任你日视频| 五月丁香啪啪网| 五月婷婷色播视频| 久久一二三视频| 一级操逼内射在线视频| 激情婷婷六月天| 色狠狠999综合| 99在线精品观看99| 亚洲精品字幕| 久久国产高潮白浆免费观看99| 国产一区18| 人妻九九九九| 日韩一66精品| 五月在线| 婷婷爱五月天| 婷婷丁香五月综合久久| 14色综合婷婷| 五月天 综合 在线| 九九免费视频| 噜噜五月天综合| 五月激情天| 北条麻妃伊人| 97精品自拍| 99er国产| 五月激情婷婷国产精品久久久久久| 欧美99视频| 久久久精品人妻| 超PEN精品在线| 在线伦子99热| 就是色婷婷五月亚洲色| 激情二色月| 66色在线日韩| 丁香五月激情网| 1024在线一区| 欧美精品啪啪| 五六月丁香激情视频| 婷婷久久丁香| 五月婷在线| 丁香六月丁香婷婷激情| 亚洲欧美综合7777色婷婷| 色五月激情问网站| 婷婷 激情 五月| 九九热在线99| 丁香六月婷| 综合另类激情| 91碰碰碰| 婷婷五月天成人网站| 日本一道久久| 亚韩精品视频1区| 激情五月天婷婷图| 五月成人天| 欧美激情综合| 成年视频免费观看| 婷婷深爱五月天在线| 丁香五月婷婷基地| 国产又色又爽又黄又免费| 伊人大香蕉综合在线| 性色播| 久色婷婷200| 天天色情站| 五月丁香六月婷婷久久肏| 婷婷五月丁香狠狠| 免费黄色视频网址| 在线sebiav精品视频| 天天插天天插天天日| 六月丁香综合| 日本精品人妻无码77777| 久久停停超碰| 看久久性爱99视频| 激情性爱五月天网页| 91久久综合亚洲鲁鲁五月天| www.六月丁香看AV| 免费无码毛片一区二区A片| 影音先锋天天日| 久热视频这里只有精品68| 97久久久久| 伊人在线大香蕉网| 久久人人人人妻| 婷婷精品| 激情久久综合| 日本九九网| 激情久久伊人| 色色色.com| 天天爽天天操| 丁香五月婷婷啪啪| 五月丁香自拍| 色欧美日| 天天透天天爱| 五月丁香天堂| 99热这里只有精品最新网址| 亚洲亚洲人成综合网络| 欧美性爱五月天| 五月婷婷视频在线观看| 五月久久丁香| 夜夜爽天天日| 91 影音先锋| 森林影视大全,最好看的2019年视频 | 91ncm视频| 亚洲a色| 操日本99| 色婷婷丁香五月综合| 中字幕视频在线永久在线观看免费 | 无码一区二区三区四区五区| 日日夜夜天天综合| 婷婷五月激情四月综合| 激情综合五月丁香| 色啪影院| 亚洲黄色影视| 日本精品99| 狠狠色婷婷777| 操操国产| 五月天综合色| .操區COm| 99视频| 五月天激情网址| 夜夜穞天天穞狠狠穞AV美女按摩| 日本va欧美va精品发布视频| 天天日天天色| 久久草婷婷丁香网站| 国产精品99久久久久久久女警| 五月亚洲激情| 激情图片亚洲| 26uuu国产激情视频| 99ri视频在线观看| 九九激情| 婷婷色网站| 丁香五月婷婷少妇| 九九热中文| 日韩免费乱轮网站| 国产毛片精品一区二区色欲黄A片| 丁香六月色香蕉视频| 色噜噜狠狠色综合日日| 六月色日韩| 天天日天天舔| 五月天精品视频| 五月丁香趴趴| www色色com| 99久久丝| 日韩黄在免| 丁香色五月天| 亚洲在线综合| 被强行糟蹋的女人A片| 天天插天天干天天舔| 日韩有码久久| 成人日韩欧美| 久久er这里只有精品| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 久久婷婷综合网| 五月丁香好婷婷姑娘综合网| www.婷婷com| 天天爱天天吃狠天天透| 亭亭色色五月天| 极品少妇XXXX精品少妇偷拍| 九九热精品6| 久久总和99| 亚洲精品久久久无码| 涩婷婷五月天| 亚洲成人一区| 亚洲AV久久久久久久久久久久久久久久 | 天天插天天插天天日| 久久丁香| 色五月五月天色婷婷色五月| 色热久资源| 亚洲天堂青草| a网站免费观看| 欧洲高清免费久久| 六月久久婷婷| 丁香综合日产精品久久| 久久五月天网| 就爱操www com| 97黑人精品区| 国产精产国品一二三在观看| 久久9热| 思思热AV| 日韩欧洲亚洲| 99视频精品全部免费观看| 婷婷激情四射五月天| 五月丁香激情综合| 天天草天天摸| 天天草婷婷五月| 99在线热视频| 4399无码视频二区| 丁香色婷婷五月天| 色五月婷婷在线| 婷婷六月婷婷| 大香蕉天堂| 七七色综合| 五月激情在线| 外国碰视频网站97| 人人视频色| 天天色情站| 国产资源在线视频| wwww.9免费视频| 日本九九九九| 久久免费操| 五月丁香亚洲综合网| 大香蕉久| 五月丁香久久呀| 天天日色情| av国产精品| 久久伊人婷婷| 亚洲综合色网| 五月六月激情| 99久久成人| 久久五月婷婷电影| 7超碰自拍| 91伦| 91久久99久久91熟女精品| 日韩 中文 欧美| 色深爱五月| 色久激情在线| 午夜性爱影视一区77| 九九这里只有精品在线视频| 欧美三级黄色片久久| 色色色色色色色色色色色色色五月天 | 99精品丰满| 成人免费120分钟啪啪| 五月天婷婷小说| www.婷婷亚洲基地| yellow视频在线观看91| 天天日天天摸| www.日韩艹| 天天成人五月天| 第四色五月激情网| 男人天堂亚洲综合| 丁香六月色婷婷欧美| 九九这里只有精品在线视频| 婷婷丁香花五月天| 97干网站| 伊人激情综合网| 五月丁香无码| 97碰超级人人看| 婷婷五月天六点丁香五月| 99热天堂| 人妻人人操| 91精品婷婷国产综合久久| 97sese婷婷| 天天肏天天舔AV| 五月婷婷欧洲| 6 9式性爱视频在线播放| 丁香五月激情五月| 碰久久精品w| 日韩AV中文字幕在线| www.九月婷婷丁香.com| 九九久久免费视频44| se.久久视频在线观看| 综合五月丁香97| 免费人人操| 婷婷五月色惰| 久久 婷婷 五月天| 狠狠99| 色色五月丁香| 综合激情伊人影视在线| 深爱丁香网| 婷婷六月丁香激情综合| 亭亭五月激情亚洲在线| 丁香五月激情鲁| 亚洲激情五月| 五月丁香婷婷综合久久| www色色com| 中文字幕日产A片在线看| 五月久久丁香| 久久综合五月| 久99热| 五月停停直播| 激情五月天伊人av| 99九九视频| 日韩成人电影AV| 97久久超碰| 婷婷视频在线| 婷婷丁香五月天熟女丝袜| 人人九色| 五月人人丁香婷婷五月人人丁香| 五月婷婷婷婷婷婷艺术| 婷婷俺去也| 成人短视频在线| 欧美在线视频99| 五月婷婷丁香日韩在线| 超碰在线观看成人视| 九九九色综合| 五月天a婷婷伊人| 开心五月深爱婷婷| 无码区婷婷五月花开| 超碰99在线观看| 久婷狼色诱惑在线| 国产无人区大片| 欧美久久婷婷| 99热精这里只有精品| 国产美女视频久| 色99网站| 日本nghangse中文字幕| AV在线大香蕉| 亚洲经典小视频| 午夜激情综合| WWW.HENHENL.| 狼人婷婷综合| 色五月丁香激情视频| 丁香五月婷婷日本| 91热爆在线| 葵花AV在线| 天天射影| 婷婷伊人网| 激情六月婷婷| 婷婷综合偷拍| 色五月婷婷开心| 欧洲一区二区| 91九色PORNY肉丝在线| 九九精品综合| 五月丁香婷婷激情视频| 欧美成人va| 99亚洲精美视频在线观看| 97超碰欧美中文字幕| 久久狠狠高潮亚洲精品 天天摸夜夜摸夜夜狠狠摸 | 夜夜操激情| 激情伊人五月天| 996re热精品视频| 乱女乱妇熟女熟妇综合网站| 色五月亚洲| 久久婷婷青青草| 五月激情视频| 久久精品人妻| 五月丁香婷婷伊人| 丁香五月色色色色| 久久婷婷五月天激情| 91热久88| PORNY九色9l自拍视频成人| 色五月综合激情| 天天爽夜夜操| 久草性爱| 九热视频| 久久五月婷婷综合网| 99热最新| 能看的AV| Www.久久| 99福利视频| 另类天堂| 精品久久婷婷| 天天综合天综合| 99精品性爱| 五月天久久www| 国产性爱亚洲是图| 婷婷综合性爱网| 天天舔夜夜操www com| 97婷婷丁香| 婷婷五月天性爱视频| 日韩精品色| 99热久| 激情婷婷| 天天综合在线网| 91日日日| 色情五月婷| 丁香六月婷婷社区| 人人爱人人摸人人澡| 日本狠狠网| 五月丁香在线观看国产| 深爱激情AV| 五月丁香色| 日本三级韩三级99久久| 九九热中文| 991精品在线视频| 日韩AAAAA| 91VIP在线观看| 性色99| 婷婷日韩| 99这里只有精品99| 婷久久高清| 色五月色五天色情网| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 中文在线成人| 任你操精品免费| 国产毛片精品一区二区色欲黄A片| 国产精品岛国片在线观看免费| 96五月丁香熟女| 亚洲国产色婷婷| 色婷婷成人| 日本在线wwww| 开心五月天激情网站| 色综合婷婷99| 天天日天天色| 91丨九色|PRNY熟妇| 色五月大| 色婷婷激情| 91偷拍视频| 久久婷婷精品| 99热.com| 日韩 欧美 国产 一区 二区| 97精品人人A片免费看| 亚洲激情无码久久| 国产真人做爰视频免费| 亚洲五月天伊人| 超碰在线免费观看日韩| 五月天综合激情网| 欧美日本高清视频99| 丁香九月综合| 色婷婷av在线观看| AA片在线观看视频在线播放 | 亚艹艹| 亚洲婷婷久久综合| 激情久久久久| 天天舔天天插天天爱| 国产精品久久欧美久久一区| 天天干天天 亚洲| 大鸡巴伊人网| 碰97久久| 婷婷五月丁香久久| 六月天婷婷| 婷婷色五月色妇| 色五月激情综合网站| PORNY九色9l自拍视频成人| 色五月婷婷中文字幕在线观看 | 欧美精品999| 99热综合| 久久婷婷成人综合色怡春院| 99在线播放| 大香蕉婷婷五月天| 午夜 外网 精品 在线| 99在线资源视频| 五月丁香成人| 美女100%露全身无挡网站| 国内久久婷婷| 99久久网站| 丁香婷婷久久老熟女综合网| www久久久久久久久久久久久久久久久| 丁香狠狠色婷婷久久无码视频| 91人操| 成人做爰高潮A片免费视频| 五月天成人综合| 开心婷婷中文字慕| 五月婷婷性爱视频| 91中文在线| 天天综合亚洲| 色狠狠999综合网| 强奸幻女毛片| 狠狠爱综合网| 亚洲va在线∨a天堂va欧美va| 五月婷婷激情久久| 国产成人va在线| 免费啪啪亚州视频| 91人妻九色大屁股| 日韩一级片| 狠狠狠狠狠操| 婷婷91| 国产人妻777人伦精品HD| 婷婷五月六月丁香综合| 操操碰| 亚州第一黄网| 五月婷婷色播| 深爱激情综合| 色五月婷婷激情五月| 男女99免费视频| 久久9视频| 思思久久99热只有频精品66| 色色色视频免费无码| 精品无码片| 无码少妇高潮喷水A片免费| 色色国产| 五月天婷婷青青| 欧美内射AA| 久久99jiu9| 粉嫩AV久久一区二区三区| 亚洲综合色色| 99热这里只有精品国产首页| 第二色AⅤ| 99热播放| 天天操精品| 91呦呦呦| 99久久国产宗和精品1上映| 五月丁香六月婷婷久久肏| 夜夜爽天操| 噜噜噜噜噜日本视频| 色色五月丁香婷婷| 国产精品成人网站| 97热91| 色综合久久88色综合天天99| 伊人五月天在线| 99热这里只有精品23| 精品五月视频婷婷在线观看| 久久久.COM| 99久久97| 欧洲电影在线观看免费版英语版 | 在线观看中文字幕| 操逼巨乳91| 婷婷五月天激情免费在线观看| 婷婷久久夜| 大香蕉狼人久久| www.婷婷五月天.com| 91无码高清| 99免费热视频在线| 久久婷婷六月综合资源| 青草网在线观看| 激情图片婷婷| 日韩另类在线观看| 五月丁香视频色色| 成人小说色图婷婷五月| 激情九月丁香婷婷| 嫩草AV久久伊人妇女超级A| 91日韩在线| 色噜噜狠狠色综无码久久合欧美| 99色婷婷| 99热综合网| 538在线精品| 天天综合亚洲| 79精品视频在线观看,| 久久免费视频62| 婷婷六月天亚州| 综合久色五月| 五月婷婷co.m| 97色五月天| 综合狠狠五月婷婷| 婷婷狠狠五月综合| 天天干天天 亚洲| 婷婷五月天视频小说| 人人看人人草人人摸| 深爱开心五月天| AV天堂婷婷五月天| 热思思| 色在线视频网2025| 丁香五月av| 久久性爱视频| 久久综合影院| 91啪啪视频| 99色免费观看全部| 亚洲成人网站在线观看| 亚洲蜜桃精久久久久久久久久久久| 内射爽无广熟女亚洲| 国产精自产拍久久久久久蜜| 日本欧美成人片AAAA| 超极99精品| 久久五月天 91| 色婷婷亚洲在线观看| 99精品视频偷拍| 日本色色图| 五月婷婷激情刺激| 丁香六月天色婷婷| 五月丁香激情六月| 久久色亭亭五月天| 激情久久久| 九九碰九九爱97超碰| 激情图片亚洲| 五月婷婷综合影院| 婷婷五月天六点丁香五月| 五月丁香色婷婷婷基地| 伊人五月天日日夜夜久久久天天| 色五月丁香总合网| 这里只有免费精品| 五月天偷拍| 色婷婷九月| 江苏少妇性BBB搡BBB爽爽爽| 久草婷| 色色五月天丁香婷婷| 色婷婷成人丁香| 亚洲久久婷婷| 无码色色色| 五月婷婷丁香| 色婷婷激情五月天丁香| 丁香综合久久| 99色色热热| 欧美va欧美va差| 黄色AV日韩| 国产精品99久久久久久久女警| 婷婷六月天| 亚洲小视频免费看| 五月亭亭综合五码| 99热这里只有精品1025| 高潮毛片又色又爽免费| 亚洲国产另类av| 欧亚洲在线高清视频| 色久综合天天做视频| 久久久27操| 精品香蕉99久久久久网站| 大胆伊人久久| 激情影院内射| 很很干天天干| 婷婷久久五月| 日韩淑女人妻luan伦激情精品一区二| 色五月综合网| 五月天激情美女久久| 丁香婷婷大香蕉| 五月J香蕉婷婷| 色婷婷亚洲| 天天操天天爱天天玩| 久久精品性爱| 亚洲天堂制| 秋霞午夜理论| 天天舔天天摸| 少妇2做爰HD韩国电影| 五月天久久www| 久久久久久丁香五月| 九九RE视频在线精品| 日本丰满久久| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 亚洲成人免费电影| 久久婷婷青青| 天天开心天天色| 亚洲天堂aaaa| 99视频内射三四| 女人天堂久久| 国产精品视频久久99| 婷婷精品| 五月天久久综合| 五月丁香激情婷婷| AV网站免费在线| 手机激情网| 久久婷婷综| 久久99免费视频| 色情激情五月| 五月婷婷丁香| 久久丁香社| 国产一级婬片毛片| 婷婷六月丁| 91精产品自偷自偷综合| 婷婷五月婷婷五月天| www.久久爱| 免费播放片大片| 另类激情五月| 五月婷婷开心五月| 婷婷色狠狠| 9久热这里只有精品视频| 丁香五月天社区| 色就色94欧美setu| 日本婷婷综合精品| 色婷婷基地| 色玖玖综合| 99热这里只有精品在线观看| 人妻无码视频网| 亚洲天堂亚洲色色色| 99热这里有精品| 五月丁香大相交| 色播播婷婷| 色97啪啪| A久网| 中字幕视频在线永久在线观看免费| 九九色中文| 人妻aV在线| 综合一区二区三区| 99热在这里只有精品| 色色色色丁香| 色婷婷色情| 香蕉AV福利精品导航| 色噜噜伊人| 亚州操人在线视频| 五月天综合在线| 玖玖色综合网| 五月 成人 婷婷| 色婷婷中文在线| 综合视频久久| 色婷婷69| 91精品91久久久中77777久久玖玖九九| 六月婷婷激情| 青吴乐视频| WWW.99热| 日韩成人影片在线观看| 色XX综合网| 91丁香综合| 综合综合网| 五月婷九月| 综合婷婷五月丁香在线观看| 丁香婷婷六月| 少妇达人正片在线播放_ikun_福利吧| 国产日产亚系列精品版优势| 丁香五月天无码| 婷婷99视频在线| 深情五月天| 成人在线观看一区| 色五月超碰| 六月丁香综合| 色综合色综合网| 婷婷欧美激情综合| 亚洲A片成人无码久久精品青桔 | 五月天婷a在线| 五月丁香婷婷激情视频| 色吊丝中文字幕| 色综合九九色综合88| 欧美日韩一a.无| 97碰碰碰免费公开在线视频| 五月婷六月综合在线观看| 五月婷婷六月丁香| 五月天婷婷六月激情网| 天天综合精品| 日日狠夜夜狠| 五月丁香综合中文| 五月丁香黄色视频| 久久久久婷婷五月热综合| 欧美槡BBBB槡BBB少妇| 99热在线这里| 大香蕉人在线65| 91九色精品熟女内射| 婷婷五月天在线综合导航| 91九九九九九九| 激情综合五月婷婷| 日韩成人AV在线| 国产偷人爽久久久久久老妇APP| 五月婷六月丁香| 99WWW免费视频| 亚洲综合1024| 激情五月六月婷婷综合啪啪| 日日操夜夜操不卡| 婷婷欧美激情综合| 爱之国产色情综合| 五月丁香综合色婷婷| 激情人妻综合| 五月视频日本免费观看| 天天网曰日曰夜夜综合永久免费| 久久六月天| 五月综亚洲| 97热久久| 国产欧美日韩综合精品一区二区| 五月丁香婷婷啪啪综合网| 丁香五月停停基地| 亚洲综合激情五月久久| 激情q青青草在线婷婷| 96丁香六月婷婷蜜桃综合久久| 99热这里只有精品一区| 7777激情基地| 国产婷婷婷| 五月婷婷久久综合| 另类小说五月天激情|