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

ARTICLE DETAIL

資訊詳情

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

基于nRF52832的寵物健康追蹤器BLE開發(fā)實戰(zhàn)

基于nRF52832的寵物健康追蹤器BLE開發(fā)實戰(zhàn) 1. 項目背景與硬件方案選型思考1.1 寵物健康追蹤設(shè)備的真實需求拆解這幾年寵物經(jīng)濟越來越火身邊做智能硬件的朋友不少都在往寵物賽道看。寵物健康追蹤器這類設(shè)備核心要解決的問題其實很明確讓主人不用去寵物醫(yī)院就能日常掌握寵物的活動量、心率、體溫、睡眠質(zhì)量這些關(guān)鍵健康指標(biāo)同時及時發(fā)現(xiàn)異常行為趨勢比如長時間不活動、心率持續(xù)偏高等。我當(dāng)時做這個項目最開始的時候需求清單列了這么幾條記錄寵物每天的活動量區(qū)分走路、跑跳、休息狀態(tài)光學(xué)心率監(jiān)測能看靜息心率的變化趨勢體溫采集發(fā)熱能第一時間提醒續(xù)航至少兩周以上最好能做到一個月主人手機端實時查看數(shù)據(jù)歷史趨勢要能存能查支持后續(xù)固件升級不能每次改功能都讓用戶換設(shè)備這里最關(guān)鍵的一個約束就是功耗。寵物不會配合你充電設(shè)備掛在項圈上或者藏在胸背帶里主人大概率不會天天記得摘下來充電。所以整個方案選型的第一優(yōu)先級就是“低功耗”這三個字。1.2 為什么最終選了Nordic的BLE SoC市面上做低功耗無線方案的選擇其實不少我當(dāng)時對比了好幾個方向方案優(yōu)勢劣勢適不適合這個項目Nordic nRF52832/nRF52840協(xié)議棧成熟、文檔全、生態(tài)好、功耗極低價格偏高、Flash/RAM相比MCU方案不算大非常適合首選ESP32-S3WiFiBLE雙協(xié)議、算力強、內(nèi)存大功耗偏大、睡眠電流較高、啟動邏輯復(fù)雜不適合純電池設(shè)備TI CC2640/CC2642射頻性能優(yōu)秀、功耗低工具鏈比較老、社區(qū)資料相對少可以做但是開發(fā)效率不如NordicST BlueNRG封裝小、價格低BLE協(xié)議棧問題排查難度大有經(jīng)驗可以新手慎選Dialog DA14531成本極低Flash資源緊張不適合做復(fù)雜應(yīng)用適合極簡產(chǎn)品不適合多功能追蹤器最終我選的是Nordic nRF52832。原因有這么幾個一個是BLE協(xié)議棧SoftDevice非常成熟而且和應(yīng)用程序代碼做了隔離應(yīng)用崩了不會把協(xié)議棧搞掛這在調(diào)試期極其重要。另一個是還有配套的DFU固件升級方案從Bootloader到手機端工具鏈都現(xiàn)成后期維護省了大力氣。還有一個是我實際測試下來nRF52832在System OFF模式下功耗不到1uASystem ON定時喚醒的運行時平均電流也能控制在10uA級別這對一款需要長時間續(xù)航的寵物穿戴設(shè)備來說是完全合格的。如果預(yù)算更充足、需要更多Flash和RAM來跑算法可以考慮nRF52840。它的Flash有1MBRAM 256KB還多了一些外設(shè)比如USB支持BLE 5.0的長距離和高吞吐模式天線調(diào)好之后實際吞吐可以到1.3Mbps左右。但就寵物健康追蹤器來說nRF52832的512KB Flash 64KB RAM完全夠用沒有必要多花錢。1.3 關(guān)于SoC芯片啟動流程和選型時的認(rèn)識做硬件的人可能對“SoC”這個詞不陌生但真正接觸射頻SoCRF SoC之后你會發(fā)現(xiàn)手機里的應(yīng)用處理器和這種BLE單芯片的啟動邏輯完全是兩回事。BLE SoC內(nèi)部集成了射頻收發(fā)前端、基帶控制器、協(xié)議棧、應(yīng)用MCU、電源管理單元啟動的時候有一套明確的順序上電或者復(fù)位后芯片內(nèi)部ROM里的固化引導(dǎo)代碼先執(zhí)行引導(dǎo)代碼加載SoftDevice協(xié)議棧鏡像到RAM協(xié)議棧初始化完成后再跳轉(zhuǎn)到應(yīng)用程序入口應(yīng)用程序調(diào)用協(xié)議棧提供的API完成BLE協(xié)議棧使能和廣播配置這個流程看起來簡單但如果你直接操作寄存器、跳過協(xié)議棧的初始化很可能會發(fā)現(xiàn)藍(lán)牙根本起不來或者空中包亂飛。所以在nRF5 SDK上做開發(fā)不管用Keil、IAR還是GCC工程配置里都一定要保證SoftDevice在前、Application在后鏈接腳本的起始地址也要對齊協(xié)議棧占用的Flash區(qū)域。這個屬于新人最容易踩的坑。2. 硬件電路設(shè)計與電源系統(tǒng)的實際經(jīng)驗2.1 供電拓?fù)渑cDC-DC的選擇nRF52832的工作電壓范圍是1.8V到3.6V典型用一顆鋰聚合物電池或者兩節(jié)紐扣電池供電。寵物追蹤器體積限制比較嚴(yán)格我沒法用太大的電池最終選的是90mAh的聚合物鋰電池整機目標(biāo)平均電流控制在100uA以內(nèi)這樣才能做到三周以上續(xù)航。供電鏈路我做了兩級。第一級是電池直接進nRF52832的VDD但這里有一個非常重要的設(shè)計點nRF52系列內(nèi)部其實是有一個可選的DC-DC降壓模式的。開啟這個模式之后芯片內(nèi)部的高頻RF PA供電由DC-DC來提供發(fā)射電流能從原來的十幾毫安降到幾毫安效果非常明顯。具體做法是在VDD與DEC引腳之間接一個10uH的電感然后在SoftDevice初始化時調(diào)用sd_power_dcdc_mode_set(1)來使能。如果不加這個電感、不用DC-DC模式整機電流會明顯偏高。我們用實際測試數(shù)據(jù)算過一筆賬同樣每100ms廣播一次、連接間隔50ms的情況下純LDO模式平均電流大約250uA而開啟DC-DC后能降到170uA左右相當(dāng)于續(xù)航直接多了快一半。這一百多微安看著不多但放大到一個月的時間維度上差別就是“一周一充”和“兩周一充”的差別。2.2 射頻鏈路與天線匹配的調(diào)試心得做藍(lán)牙BLE設(shè)備射頻調(diào)試是整個硬件環(huán)節(jié)里最考驗?zāi)托牡牟糠?。nRF52832的射頻輸出引腳ANT出來之后一般接一個π型匹配網(wǎng)絡(luò)再加天線。對于量產(chǎn)產(chǎn)品直接用芯片參考設(shè)計里的元件值是能起來的但諧振點和回波損耗不會剛好落在最優(yōu)位置需要用網(wǎng)絡(luò)分析儀實測后調(diào)整。我當(dāng)時做的是PCB天線。體積限制下PCB天線比如F型倒F天線比陶瓷天線更適合成本也低但設(shè)計上要注意凈空區(qū)天線底下不要鋪銅、周圍不要走無關(guān)的線、地平面的范圍要足夠。S11回波損耗我調(diào)到最好的時候能到-25dB以下一般量產(chǎn)只要保證在-10dB以下就夠用了。這里有一個特別容易被忽略的點天線匹配網(wǎng)絡(luò)的電容電感精度是NP0/C0G檔和繞線電感才會有穩(wěn)定的性能。如果用X5R陶瓷電容或者疊層電感溫漂和偏壓特性會讓匹配網(wǎng)絡(luò)在高低溫下飄移直接影響輻射功率和接收靈敏度。我踩過一次坑低溫測試時發(fā)現(xiàn)信號差了一截后來換掉匹配電容就好了。2.3 電源紋波對藍(lán)牙射頻和模擬采集的影響熱詞里有一條提到“rf soc器件gen3 adc電源紋波”這個點在我們這種射頻SoC加傳感器的方案里同樣非常關(guān)鍵。nRF52832內(nèi)部有12位SAR ADC可以用來采集電池電壓、NTC體溫、傳感器模擬輸出但ADC的參考電壓來自內(nèi)部VDD如果VDD上疊加了紋波采集結(jié)果會跟著一起跳。實測下來藍(lán)牙發(fā)射瞬間大概2ms-4ms的窗口電流會突然拉高電源軌上會出現(xiàn)幾十毫伏的紋波。這種瞬態(tài)紋波對數(shù)字電路沒影響但對模擬采集就是災(zāi)難。我的解決辦法是軟件上避開射頻活動窗口在ADC采樣前加一個時間同步等BLE事件結(jié)束之后再過幾個毫秒才開始采樣硬件上加大VDD的旁路電容比如4.7uF陶瓷電容并聯(lián)0.1uF高頻電容同時走線上把模擬采樣地和射頻地做好單點隔離。如果你后續(xù)想做更準(zhǔn)確的電池電量百分比可以考慮用卡爾曼濾波EKF來處理電壓數(shù)據(jù)結(jié)合庫侖計做容量校正。這個在熱詞里也有體現(xiàn)但現(xiàn)實項目中電池SOC的估算第一版往往用OCV查表法就夠了不要一上來就上EKF加了狀態(tài)矩陣的調(diào)試成本會翻倍。3. BLE協(xié)議棧與固件開發(fā)的關(guān)鍵細(xì)節(jié)3.1 nRF5 SDK與nRF Connect SDK怎么選做Nordic開發(fā)面前有兩條技術(shù)路線老的nRF5 SDK基于SoftDevice協(xié)議棧比如S132和新的nRF Connect SDK基于Zephyr RTOS。這個選擇直接決定你后續(xù)的開發(fā)體驗和可維護性。我的建議是如果項目要求快速出原型團隊熟悉傳統(tǒng)嵌入式開發(fā)用nRF5 SDK更穩(wěn)。因為資料多、示例全、踩坑記錄豐富SoftDevice的API設(shè)計也相對直觀。如果項目生命周期長、后續(xù)可能要加Matter/Thread/藍(lán)牙Mesh或者需要用到較新芯片比如nRF54系列就選nRF Connect SDK。我做寵物追蹤器的時候用的是nRF5 SDK 17.1.0 S132協(xié)議棧支持CentralPeripheral但只用Peripheral。當(dāng)時Zephyr版本還沒有現(xiàn)在這么穩(wěn)定開發(fā)效率上nRF5 SDK完勝。但如果你現(xiàn)在才起步可以仔細(xì)評估一下nRF Connect SDKNordic現(xiàn)在新出的示例基本都是基于Zephyr了再往后nRF5 SDK的更新只會越來越少。3.2 GATT服務(wù)結(jié)構(gòu)的定義與數(shù)據(jù)格式設(shè)計寵物健康追蹤器里我定義了這么幾個服務(wù)和特征值服務(wù)UUID特征值說明數(shù)據(jù)類型0x180D心率測量標(biāo)準(zhǔn)心率服務(wù)Notify方式8bit BPM 可選RR間期0x180A設(shè)備信息硬件版本、固件版本、序列號字符串0x180F電池電量標(biāo)準(zhǔn)電池服務(wù)Notify低電量8bit 百分比自定義Service (UUID 0xFF01)活動量數(shù)據(jù)自定義服務(wù)Notify方式每半小時累計步數(shù)/活動強度自定義Service (UUID 0xFF01)體溫數(shù)據(jù)自定義服務(wù)Notify方式16bit 溫度值0.01°C精度自定義Service (UUID 0xFF01)歷史數(shù)據(jù)讀取自定義服務(wù)Read方式分段返回歷史記錄自定義Service (UUID 0xFF01)設(shè)備控制自定義服務(wù)Write方式同步時間、配置上報間隔這里有一個經(jīng)驗一律先考慮標(biāo)準(zhǔn)服務(wù)。心率、電量、設(shè)備信息這些iOS和Android系統(tǒng)層面有默認(rèn)的處理邏輯用標(biāo)準(zhǔn)UUID可以省掉很多App端適配工作。自定義部分才用私有UUID而且UUID不要拍腦袋編一個最好自己定義一個固定的Base UUID比如 6E400001-B5A3-F393-E0A9-E50E24DCCA9E 這種格式后3位遞增?;顒恿繑?shù)據(jù)我用的是“每半小時一條記錄每一條是一個結(jié)構(gòu)化字節(jié)數(shù)組”。第0字節(jié)是狀態(tài)位表示當(dāng)前是走路/跑跳/休息第1-2字節(jié)是步數(shù)第3字節(jié)是活動強度等級。這樣一包數(shù)據(jù)20字節(jié)能傳40條記錄App端收到后直接解析存數(shù)據(jù)庫。3.3 廣播參數(shù)、連接參數(shù)與低功耗計算BLE設(shè)備的功耗大頭有三個廣播、連接事件、傳感器采樣。廣播間隔和連接間隔這兩個參數(shù)在設(shè)計時就要算清楚。我當(dāng)時的廣播參數(shù)是廣播間隔 100ms廣播數(shù)據(jù)包含設(shè)備名稱8字節(jié) 廠商自定義數(shù)據(jù)6字節(jié)含設(shè)備ID和電池電量發(fā)射功率 0dBm。這個配置下廣播平均電流大約是 100uA 左右占空比不高手機端掃描也能穩(wěn)定搜到設(shè)備。連接之后的參數(shù)我設(shè)置了連接間隔 30ms15個1.25ms單位從機延遲Slave Latency8個事件監(jiān)督超時 5s。這樣連接狀態(tài)下從機只在每第9個連接事件里收發(fā)一次平均電流大幅下降。來算一下每個連接事件上從機要喚醒接收主機的包、然后回一個包這段射頻活動時間大約 2ms按峰值電流 10mA開DC-DC時約 5mA算單個連接事件功耗約 20uA·ms0.02mAs。連接間隔30ms、從機延遲8意味每270ms才有一個事件平均電流 0.02mAs / 0.27s ≈ 74uA。再加上傳感器采樣的功耗整體可以控制在 120uA-150uA 以內(nèi)。這里有個容易忽略的坑從機延遲越大手機端收到數(shù)據(jù)的實時性就越差。如果主人打開App想立即刷新數(shù)據(jù)而設(shè)備還在8個連接事件后才應(yīng)答體感會很卡。所以我在代碼里實現(xiàn)了一個動態(tài)調(diào)整邏輯默認(rèn)空閑時用長連接間隔App發(fā)一個“開始同步”的命令后設(shè)備馬上把連接參數(shù)臨時切到短間隔比如 15ms同步完成后再切回來。用Nordic的sd_ble_gap_conn_param_update()可以很方便地做到。3.4 iBeacon、PAwR這些新概念該怎么看熱詞里出現(xiàn)了“ble的ibeacon”和“ble pawr”順便聊一下。iBeacon本質(zhì)上是BLE廣播數(shù)據(jù)里面的一種廠商自定義格式里面放了一個UUID、Major、Minor和發(fā)射功率。寵物追蹤器中如果要做室內(nèi)定位或者“離主人近/遠(yuǎn)”的判斷是可以參考iBeacon的思路的但我實測下來iBeacon在空曠室外能跑 50m 左右在室內(nèi)穿墻后就非常不穩(wěn)定做“防丟”提醒不如直接用連接RSSI閾值判斷來得實在。PAwRPeriodic Advertising with Responses是BLE 5.4里引入的本質(zhì)上是一種一對多的廣播通信機制可以讓一個主設(shè)備周期性地廣播數(shù)據(jù)多個從設(shè)備在指定的時隙回傳。這個技術(shù)做電子價簽這種海量設(shè)備場景非常適合但寵物健康追蹤這種“一個主人對一只寵物”的場景其實用不上了解一下即可。4. DFU固件升級的實現(xiàn)從Nordic底到手機端4.1 為什么DFU在寵物設(shè)備里是必備功能寵物健康追蹤器掛在寵物脖子上你不可能讓用戶拿線刷機。固件有Bug、算法要優(yōu)化、心率算法要調(diào)參都需要OTA升級。而且寵物醫(yī)院和主人不太可能跑到售后網(wǎng)點去刷機所以從出生開始設(shè)備就必須支持手機端無線升級。Nordic的DFUDevice Firmware Update思路是Bootloader SoftDevice Application三個鏡像分開存放升級的時候Bootloader負(fù)責(zé)接收新固件、校驗、擦除和寫入。nRF52832的Flash是512KB我當(dāng)時做了分區(qū)區(qū)域起始地址大小內(nèi)容SoftDevice0x00000152KBS132協(xié)議棧Bootloader0x2600032KBDFU引導(dǎo)程序Application0x28000200KB應(yīng)用代碼用戶數(shù)據(jù)區(qū)之后剩余歷史數(shù)據(jù)存儲DFU時手機App把固件分包比如每包 20 字節(jié)發(fā)給設(shè)備設(shè)備寫入臨時區(qū)域校驗CRC無誤后Bootloader再執(zhí)行替換和重啟。4.2 手機端DFU原生App、nRF Connect還是小程序Nordic官方提供了nRF Connect App內(nèi)置DFU功能研發(fā)階段足夠用。但給用戶交付的話必須把DFU能力集成到我們自己的App里。我自己實際做的過程中先是在自有App里集成了Nordic官方的Android/iOS DFU庫。Android端用io.runtime.mcumgr或者Nordic的Device Firmware Update庫都可以后者更貼近nRF5 SDK的協(xié)議實現(xiàn)。iOS端用NordicDFU這個Pod支持ZIP包升級模式里面包含Bootloader、SoftDevice、Application三個鏡像的合并包。這里有一個值得注意的點熱詞里有人問“只安裝shiny.bluetoothle可以實現(xiàn)BLE藍(lán)牙通信嗎”這個問題背后反映的是很多人對BLE庫的依賴關(guān)系不太清楚。如果你做的是 .NET 環(huán)境下的藍(lán)牙通信單純裝一個shiny.bluetoothle是不夠的它只是一層封裝底層還需要依賴對應(yīng)的平臺原生藍(lán)牙實現(xiàn)。在Windows上還需要底層藍(lán)牙棧驅(qū)動支持??缙脚_框架能幫你的只是API統(tǒng)一管不了系統(tǒng)底層。4.3 微信小程序?qū)崿F(xiàn)設(shè)備DFU的經(jīng)驗設(shè)備量大了之后用戶未必愿意專門下載一個App。把DFU能力塞進微信小程序理論上可以降低用戶升級門檻但實際動手會發(fā)現(xiàn)不少問題。小程序藍(lán)牙API有幾個硬限制一次writeBLECharacteristicValue最多寫 20 字節(jié)MTU默認(rèn)23上傳一個大固件包你需要非常小心地分包發(fā)送、每包間隔處理。我當(dāng)時做了這樣的邏輯先讀取設(shè)備當(dāng)前的MTU值如果設(shè)備支持MTU協(xié)商比如nRF52上可以協(xié)商到 247就先把MTU提到 247這樣每一包可以寫到 244 字節(jié)分包數(shù)量直接少了十幾倍升級速度從原來的10分鐘縮短到2分鐘以內(nèi)。另外iOS上微信小程序的BLE實現(xiàn)比較“黑盒”。掃描、連接、緩存很多系統(tǒng)行為不可控尤其是舊版本微信對藍(lán)牙緩存處理不好經(jīng)常出現(xiàn)調(diào)試時改了廣播包、手機還是連不上。我這邊是讓用戶把藍(lán)牙關(guān)閉再打開才恢復(fù)的后來在微信官方社區(qū)查到這屬于iOS系統(tǒng)藍(lán)牙緩存問題解決方案是在掃描前加一段延遲再加上設(shè)備端廣播地址變化用sd_ble_gap_address_set隨機化地址能明顯減少緩存命中的概率。如果你在微信小程序里做DFU我強烈建議固件包先走網(wǎng)絡(luò)下載到手機本地再通過藍(lán)牙傳給設(shè)備不要在小程序代碼包里直接塞固件因為小程序包有體積和更新時限的限制。另外升級過程中界面要顯示清晰進度條并提示用戶“升級期間請不要遠(yuǎn)離設(shè)備”否則中途斷開設(shè)備變磚的風(fēng)險會讓售后壓力很大。5. 手機App連接與數(shù)據(jù)解析的實操記錄5.1 Android BLE工程的核心步驟做一個Android BLE連接工程流程基本是固定的獲取藍(lán)牙權(quán)限 → 掃描設(shè)備 → 連接GATT Server → 協(xié)商MTU → 發(fā)現(xiàn)服務(wù) → 訂閱通知 → 讀寫特征值。權(quán)限這塊Android 12API 31之前要在Manifest里聲明BLUETOOTH、BLUETOOTH_ADMIN而且要ACCESS_FINE_LOCATION才能拿到掃描結(jié)果。Android 12之后引入了BLUETOOTH_SCAN、BLUETOOTH_CONNECT這兩個運行時權(quán)限邏輯跟之前的定位權(quán)限又不一樣了。如果你的App targetSdkVersion比較高這兩套權(quán)限都要處理好否則會出現(xiàn)“明明藍(lán)牙開著卻掃不到設(shè)備”的經(jīng)典問題。代碼層面有一個常見的坑直接在UI線程調(diào)用startLeScan回調(diào)里做刷新。實際上掃描回調(diào)可能在幾十毫秒內(nèi)被頻繁觸發(fā)如果不做節(jié)流UI會卡成PPT。我一般是用一個HashMap緩存掃描到的設(shè)備覆蓋更新RSSI每500ms刷新一次列表。連接之后要記得調(diào)requestMtu(247)。很多第三方設(shè)備默認(rèn)MTU只有23字節(jié)如果你不協(xié)商讀寫大一點的特征值比如歷史數(shù)據(jù)就會一直報GATT_INVALID_ATTRIBUTE_LENGTH。5.2 C#環(huán)境做BLE通信的選項熱詞里問“winforms項目對于net framework4.7.2實現(xiàn)ble藍(lán)牙通信可以用的第三方庫”我實際做過類似的工程這里直接把經(jīng)驗放出來。如果你在 .NET Framework 4.7.2 WinForms 環(huán)境里做BLE本質(zhì)上是有兩條路用Windows.Devices.Bluetooth命名空間。這個API是UWP時代的產(chǎn)物但在WinForms項目里也能用只要項目目標(biāo)平臺是Windows 10及以上并且引用了System.Runtime.WindowsRuntime相關(guān)程序集。優(yōu)點是系統(tǒng)原生、不用裝額外驅(qū)動。缺點是API是異步模型需要大量async/awaitWinForms里的消息泵配合起來有時要小心死鎖。用第三方庫。比如InTheHand.Net.Bluetooth這個老牌庫它在Windows平臺上是基于系統(tǒng)藍(lán)牙協(xié)議棧封裝支持傳統(tǒng)藍(lán)牙和BLE用起來直觀。另外一個就是shiny.bluetoothle但正如前面說過的它依賴平臺原生藍(lán)牙棧而且對.NET Framework的支持并不算好建議直接用 .NET 6/8 再考慮它。如果時間允許最省事的方案還是直接寫一個小的 UWP 后臺任務(wù)或者 WinRT 組件把BLE功能包成一個exe/serviceWinForms只負(fù)責(zé)UI展示這樣藍(lán)牙協(xié)議棧的復(fù)雜性被隔離出去。5.3 數(shù)據(jù)解析與可視化App端拿到設(shè)備Notify上來的數(shù)據(jù)后我做了兩層解析。第一層是通用協(xié)議解析把各個特征值按照約定好的字段格式拆開變成結(jié)構(gòu)化對象。第二層是業(yè)務(wù)邏輯處理比如心率數(shù)據(jù)要算滑動平均、活動量數(shù)據(jù)要按小時聚合、體溫數(shù)據(jù)要記錄異常閾值。可視化方面我在第一版用的曲線是自己用Canvas畫的曲線比較簡陋縮放和滑動體驗也不是很好。后來換成了 MPAndroidChart效果提升明顯。圖表核心指標(biāo)是24小時活動量柱狀圖、心率趨勢折線圖、體溫異常標(biāo)注。如果你的項目需要更強的交互可以看看EChartsAndroid網(wǎng)頁版集成或者AAChartKitiOS。這里有個實用的建議BLE設(shè)備傳上來的數(shù)據(jù)一定要帶時間戳而且App端收到后要重新校準(zhǔn)時間。因為設(shè)備離線期間可能沒有時鐘校準(zhǔn)數(shù)據(jù)順序錯亂會嚴(yán)重影響心率趨勢的準(zhǔn)確性。我當(dāng)時在設(shè)備端存了“累計秒數(shù) 本地時間修正值”App端收到后統(tǒng)一轉(zhuǎn)成“Unix時間戳”這樣即使斷連過、跨越時區(qū)數(shù)據(jù)還是能按時間正確排列。6. 常見問題排查與避坑實錄6.1 藍(lán)牙連不上或者掉線的排查順序我把做項目過程中遇到的典型問題整理成一個速查表有類似問題的可以按著這個順序排查現(xiàn)象可能原因解決方案手機掃描不到設(shè)備廣播間隔太長或者設(shè)備處于System OFF狀態(tài)看電流判斷設(shè)備是否活著掃描時要靠近、延長掃描時間掃描到了但連接不上上一臺手機還保持著連接設(shè)備端做多個Central管理或者設(shè)置連接白名單舊連接被踢掉后才能新連連接后馬上斷開監(jiān)督超時時間設(shè)置太短conn_sup_timeout不小于連接間隔 × (1 slave_latency) × 3連接一段時間后掉線手機藍(lán)牙棧自動清理不活躍連接定期有數(shù)據(jù)交互比如每5秒更新一次RSSI解鎖手機時掉線iOS的后臺連接策略App端申請后臺藍(lán)牙模式設(shè)備端縮短監(jiān)督超時以快速重連印象最深刻的是有一次設(shè)備長時間無故不在線測電流又發(fā)現(xiàn)睡眠模式正常。后來抓包才發(fā)現(xiàn)是室內(nèi)寵物走到金屬家具附近多徑衰弱導(dǎo)致丟包次數(shù)多了設(shè)備端重傳邏輯又在極短的監(jiān)督超時范圍內(nèi)沒來得及搶回連接。把監(jiān)督超時從4秒調(diào)到10秒后問題基本消失。但注意監(jiān)督超時不能太長否則真的斷開后重連會很慢這是一個需要平衡的參數(shù)。6.2 功耗異常的幾個隱蔽原因如果實測整機電流比預(yù)想高很多時候不是射頻的問題而是這些小細(xì)節(jié)GPIO浮空。傳感器、LED、按鍵如果有GPIO懸空未定義方向漏電流可能到幾十甚至上百微安。所有不用的GPIO一定config成輸出低或者輸入上拉不能懸空。定時器沒有關(guān)閉。nRF52的RTC1/定時器在進入System ON之前如果還在跑是不會睡眠的電流直接飆高。進入System ON前要檢查所有外設(shè)是否停止。外部傳感器供電未切斷。比如光學(xué)心率傳感器MAX30102正常工作電流能到幾百微安甚至毫安級采樣完一定要把它電源關(guān)斷。SoftDevice沒有進入低功耗模式。在System ON空閑時要調(diào)用sd_app_evt_wait()讓協(xié)議棧進入省電狀態(tài)否則CPU一直在跑while(1)電流降不下來。功耗調(diào)試最直接的辦法是串一個10歐姆采樣電阻用示波器抓電阻兩端壓降波形識別各個階段的電流峰值和時間占比。抓幾次之后心里大概就有譜了。6.3 DFU升級失敗最典型的兩種場景第一種是升級包過大導(dǎo)致Flash寫滿。nRF52832的Application區(qū)只有200KB左右如果固件編譯出來超過這個尺寸Bootloader會直接拒絕。我這邊把優(yōu)化等級從 -O0 調(diào)到 -Os再裁剪掉不需要的日志輸出之后固件從 220KB 壓到 150KB才放下了。第二種是簽名校驗失敗。Nordic的Secure DFU默認(rèn)是要求所有固件包帶上簽名密鑰的。如果手機端用了錯誤的密鑰簽名設(shè)備端校驗時就直接進入錯誤狀態(tài)表現(xiàn)就是“升級進度走到了 99%然后設(shè)備重啟固件版本還是舊的”。檢查DFU包簽名和公鑰是不是匹配是調(diào)試這個問題的首選。另外提醒一句DFU過程中如果設(shè)備沒電比藍(lán)牙斷開的危害更大。設(shè)備進入DFU后會關(guān)閉應(yīng)用邏輯只剩Bootloader在跑不充電的話電池耗盡就直接變磚。所以我量產(chǎn)前特意在DFU模式下把射頻發(fā)射功率調(diào)低到了-20dBm同時把Bootloader的廣播間隔拉到50ms費電但容易被發(fā)現(xiàn)多少能縮短一些升級窗口的時間。量產(chǎn)版還在外包裝和App里都提示“升級前確保設(shè)備電量高于50%”。6.4 關(guān)于BLE連接策略的一些額外思考寵物健康追蹤器與主人的手機并不是一直保持著連接狀態(tài)。寵物在家跑來跑去手機藍(lán)牙經(jīng)常處于“斷連-重連”的循環(huán)里。這里我用的是白名單廣播連接策略設(shè)備一直廣播但只接受已配對手機的連接請求。這樣未配對手機即使掃到設(shè)備也無法連接安全性多了一層保障同時也避免無意中干擾到鄰居的藍(lán)牙設(shè)備。配對信息Bond信息存在Flash的系統(tǒng)區(qū)域DFU升級后這些信息是不會丟的但如果你在調(diào)試階段反復(fù)擦寫整片F(xiàn)lash就要重新配對。這也是一個“設(shè)備突然連不上”的排查方向。7. 寫在最后的幾個建議如果你正打算做類似的寵物健康追蹤設(shè)備我把個人覺得最有價值的幾個經(jīng)驗總結(jié)成以下幾點不一定全面但都是真金白銀踩出來的第一方案評估階段一定要把“升級”當(dāng)成必備功能來設(shè)計不是可選功能。寵物設(shè)備掛在活物身上一旦部署出去你就沒法到現(xiàn)場改代碼了所有Bug修復(fù)和算法迭代都靠OTA撐著。硬件上預(yù)留Bootloader空間、軟件上定好固件分區(qū)方案要在第一天就想清楚后面再改分區(qū)是極其痛苦的。第二BLE的功耗優(yōu)化是一個系統(tǒng)工程硬件、協(xié)議棧、應(yīng)用、手機端四層都要配合。別指望光靠一個低功耗芯片就能做到長續(xù)航。傳感器選型、采樣策略、發(fā)射功率、連接參數(shù)、手機App的連接行為都會影響最終續(xù)航數(shù)據(jù)。第三做BLE開發(fā)尤其要注意“手機差異性”。同樣的設(shè)備iPhone和不同品牌的Android手機連接穩(wěn)定性、MTU協(xié)商結(jié)果、掃描速度表現(xiàn)完全不一樣。不要把“在一臺手機上測試通過”當(dāng)作完成了測試。有條件的話找盡量多的手機做兼容性驗證尤其是老款的Android機和不同版本的iOS系統(tǒng)。第四如果你只是做技術(shù)驗證或者學(xué)習(xí)直接買一塊Nordic官方開發(fā)板nRF52840 DK或者nRF52832 DK先把官方示例跑通再一點一點改成自己的業(yè)務(wù)邏輯。不要一上來就自己畫板子項目里的Bug十有八九是軟硬件問題混在一起很難定位。寵物健康追蹤這個方向在我看來還遠(yuǎn)沒有到天花板心率算法的精度、活動識別的智能程度、續(xù)航的進一步拉長這些都有很多可以做深的地方。希望這篇文章能給準(zhǔn)備入坑或者正在調(diào)試的朋友一些參考少走一些我走過的彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美精品偷拍| 伊人大香蕉在线| www老逼91| 免费中文综合精品| 黄色免费网页无码| 中文?日韩?免费?精品| 猛交交| 天天做天天爱| 色狠人在线99| 欧美少妇性爱网站| 国产夫妻性生活视频| 久久曰曰| 国产激情视频一区区三区| 长长久久88视频| 久久伊人最新网址视频| 丝袜美腿射精91| 97人人干人人操| 9999久久久| 超碰 另类 欧美| 草莓精品视频在线免费观看| 少妇精品久久久| 在线观看日韩av不卡| 国产精品一区在线播放| 九色 人妻 大香蕉| 亚洲av无线观看| 天天射日日干| 国产丝袜啪啪| 久久m| 天天看,天天做| 一级做受视频免费是看美女| 久久精品一区二区三区蜜桃臀| 97最新在线播放视频| 国产精品第一页国产大屁股视频免费区| 欧美色图成人网一区二区 | 男人的天堂在线2| 国产精品露脸在线观看| 毛片99-全集电影手机免费观看完整-B029AV | 欧美特大黄一级片片免费| 国产女同视频在线播放| 青青草色AV| 九月AV| 欧美制服另类丝袜| 亚洲棕合电彰| 欧美色图 人妻| 刺激性视频黄页| 五月天色图| 老司机久久| 男人天堂站| 欧美天天谢综合网| 91AV天堂| 骚货 中文字幕 av| 丝袜AV一区二区三区| 日韩懂色网| 欧美三级一级| 97超碰天天| 亚洲五区熟女| 国产性爱欧美性爱在线| 久草线上视频免费看| 亚洲美女精品| 人妻 欧美 中文| 亚码人妻| 三及片网站| 青草伊人久久| 欧美的精品的视频| 亚洲综合另类小说色区亚洲成av人片在www| 日韩特一级久久| 欧美在线电影| 日日爱99| 亚州熟女乱伦| 亚洲成人无码影院| 精品国产一区二区久久| 青青伊人加勒比海| 一级性爱视频免费观看| 久久久无码av精| 99日韩| 熟妇视频一区二区三区在线观看| 午夜毛片高清免费不卡| 天天操妹子| 91大学精品激情戏| 成人A片男人的天堂| 亚洲日韩久久精品一区| 国内一区二区三区| 九九草| 久久午夜色播影院免费高清| 婷婷综合视频| 另类综合另类| 亚洲 欧美 综合 91| 涩涩久久精品| 超碰97精品| 久久亚洲AV成人精品无码| 欧美色五月| 亚洲天堂热| 久草毛片电影怡| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 亚洲男人天堂2019| 日韩欧美女优电影| 91国精产品| 伊人网一本| 操操逼视频| 日韩亚洲美女一区久久| AV男人天堂网| 一级黄色视频网| 免费在线观看国内色片网站网址| 一区二区精品更新提醒| 亚洲综合97| 婷婷丁香五月综合| 992视频一区| 日本一本道A级黄色毛片试看60分钟| 免费在线黄片视频| 玖玖资源中文字幕制服丝袜| 久久久久九九九| 国产精品秘 福利姬在线观看| 91天天综合网,天天综合网| 夜夜嗨老熟女AV一区二区三区| 天天射天天| 天无日色综合| 蜜臀久久99精品久久久电影| 精品欧美А∨无码黑人大荫蒂| 色色色热| 亚春色色| 免费综合亚洲中文| 超碰99在线| 亚洲精品成人激情在线| 九九九一二三| 大香网伊人久久综合网eew| 五月婷婷大香蕉| 欧美淫穴| 欧美激情精品久久久久久| 久久九九国产精品| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 国产精品一区二区亚洲人成毛片| 亚洲AV无码久久精品蜜桃小说| 天天情欲宗合网| 国产精品久久久久久照片| 十八禁黄色成人网站观看| 亚洲欧美高清无码| 亚洲日韩乱码中文无码蜜桃臀网站| 日韩av性爱在线播放| 日韩精品区二区三区不卡| 精品无码不卡视频| 97超碰免费人人性爱| 亚洲最新中文字幕免费| www.亚洲成人一区| 日韩精品99999| 久久粉色| www.99热在线只有精品| 免费观看的黄色的网站| 欧美一品道| 九九伊人网| 加勒比伊人| 亚洲天堂自拍| 色99在线| 欧洲亚洲国产综合在线| 无码粉嫩白虎一线天b区| 久久精品免费| 最新中文字幕精品在线| 日本不卡在线二区三区| 狠操91,com| 亚洲色久| 精品欧美А∨无码黑人大荫蒂| 天美传媒Av在线| 91人妻Pr| 少妇厨房愉情理伦片bd在线观看| 亚洲丝袜少妇在线| 国产传媒1234区| 久久久久久九九九| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 色综合天天| 色原狠狠天天天| 人妻久热在线| 亚洲午夜未满十八勿入网站日本又色又爽又黄 | 亚洲无码AV九九九| 日韩国产不卡在线视频| 七月丁香婷婷| 婷婷丁香人妻| 亚洲揄拍网| 亚洲美乱| 免费A V在线| 中日韩免费看男女操逼大全| 天美一二三在线观看Av| 夜夜爽77777| 亚洲一级特黄大片在线播放91| 9久9久| 自拍偷拍 日韩无码| 日韩综合色网| 中文字幕人乱码中文字的预防方法 | 欧美在线电影| 久久超碰av在线| 在线啊啊啊啊| 蜜桃久久综合视频| 人妻熟女一区在| 综合操逼| 性影在线视频| 亚洲在线观看| 偷拍亚洲视频一区二区三区四区| 97精品国产手机| 91嫩草欧美| 一本久道久久综合狠狠爱| 91强热人妻| 思思热免费在线视频| 人妻少妇久久中文字幕一区二区 麻豆| 五毛骚逼极品美女怕怕| 嗯嗯啊好大| 69视频福利导航| 欧美爆操91| 人妻精品综合中文字幕在线 | 男人天堂综合| 91艹逼精品| 91老司机在线视频免费观看| 东北夫妻性偷拍| 8x福利精品第一福利视频导航| yiqicaoav| 超碰色综合| 日比av无码| 婷婷性网| 78久久| 3P丝袜熟女 色综合| 亚洲精品不卡一二三区| AV色图| 欧美综合自拍| 欧美日产国产在线成人第一区| 女性喷水高潮在线观看| 亚洲精品一区二区精品| 天天操天天舔| 日本大片日本一区二区免费高清| 九九性爱网| 男人天堂一区二区| 天天操天天谢| 午夜亚洲| 超碰在线人妻中文字幕| 日本视频在线观看污污污| 在线中文字幕极品av| 91干熟女| 国产av高清版| 97超碰资源网| 色97欧美| 亚洲欧洲中文日韩女优乱码| 国内精品伊人久久久久影院会| 色婷久久| 99国产精品久久久久久久成人热| 素人伊尹大香蕉免费下载视频| 久久久啊啊啊| 国产一级内射无挡观看| 综合五月婷婷| 日日夜夜草草草| 中文字幕精品亚洲熟女| 秋霞怕怕片| 在线看片国产精品每日更新| 嗯啊免费视频| 激情情色五月天| 啊啊啊操死我| 一本一道vs波多野结衣| 天天综合精品| 黑人在线91| 国产午夜在线观看视频| 亚洲午夜AV| 欧亚第一综合网| 日日玩天天干| av天堂精品久久| 色女女女导航| 五十路成人在线视频二区三区| 亚洲欧美首页| 蜜乳av首页| 精品国产99| 91熟女丨91老女人| 亚洲av影院在线观看| 精品久一区免费| 午夜美女诱惑电源网| 中国AV美女| se吧提供国产乱老熟视频胖女人| 欧美成人精品A片免费一区99| 日日骚 av| 夜色综合| 天天综合网站| 欧美精品不卡一二三四在线91| 精品综合久久久久久五月天| 精品妇女一区二区三区| 欧日韩一二三f区| 色天使亚洲综合在线观看| 国产suv精品一区二区四| 淫纸中9区| 成人av动漫在线观看| 欧美激情久| 日韩精品中文字幕人妻| 亚洲男人天堂网久久| 夜夜嗨一区二区三区直播内容| 国产高清成人mv在线观看| 伊人久久大香线综合无码| 超碰色老头| 久操婷婷| 操逼A∨| 亚洲国男人的天堂| 中文字幕第9页萱萱影音先锋| 亚洲最大91网| 日本熟妇浓毛hdsex| 婷婷色色网| 综合少妇网| 日韩黄色电影网站| 99视频自拍区| 超碰国产在线| 欧美色图亚洲色| 色综合五月天| 国产精品人妻免费精品| 中文字幕乱妇免费视频| 欧洲色色| 亚洲天堂五月天国产| 佐山爱中文字幕| 在线A日本| 男人精品天堂一区| 国产免费一区在线观看| 91春色| 狠狠搞 亚洲91| 国产9 9在线 | 亚洲| 96免费视频在线| 日韩 欧美 视频 在线 一区| www.久久超碰| 91爽啪| 一级二级三级黑人无码| 成人在线午夜视频一区| 99色色网| 中国操逼无码| 亚洲人久久久网| 亚洲AV无码乱码在线观看性色| 99re欧美| www.AV有限公司一区| 囯产操逼片| 国产999精品久久久| 欧美日韩情色一区二区| 性在久久久久久| 中文字暮97| 人人做,人人操,人人摸| 亚洲色综网| 久久午夜伦| 性爱综合一区二区| 国内精品久9| 宅男91视频在线播放| 激情网色| 人妻丝袜一区二区三区在线| 人妻久久久| 精品少妇999| 91中出| 97超碰巨乳| 亚洲一区中文字幕一区| 日夜精品| 性欧美| 91AV老熟女视频| 色欲蜜臀AV| 97超碰中文在线| 亚洲少妇在线影音| 熟女人妻av在线资源,黄色的资源 粉嫩国产精品久久粉嫩 | 蜜臀久久99精品久久久久久婷婷 | 久草国产在线视频| 97色亚洲| 天天干人妻视频| 五月天色电影| 操人妻丝袜高跟| 动漫爆乳3D奶水一区在线观看| 一级成人性爱| 人妻少妇久久中文字幕一区二区 麻豆 | 日本韩国五十路六十路七十路老熟女作爱视频网站 | 操美女高潮抽搐白浆| 日韩性爱免费观看视频| 蜜乳中文字幕a在线| 熟女91网站| 一二三四区操操Av| 亚洲国产中文字幕| 久久99精品国产| 青青草原综合久久大伊人精品| 九九色逼| 色婷婷五月天| 美日韩成人| 人人射人人操人人摸| 国产精品盗摄 偷窥盗摄| 偷拍精品一区二区三区| 亚洲图片欧美色| 少妇激情一区二区三区视频| 97在线观| 超碰2017| 亚洲乱码精品一区二区| 亚洲乱码精品一区二区| 97精品视频| 蜜臀久久久99久久久久| 久久 精品| 色五月av| av黄图片在线观看| 97久久精品| 精品午夜福利导航| 牛牛AV人人夜夜澡人人爽| 国产精品电影大全| 亚洲人体视频在线观看| 蜜乳视频网站| 久久男人精品| 欧美精品日韩一区二区| 五月婷婷六月激情| 国产后入精品| 亚洲情色在线| 夜夜免费视频| 熟女少妇一区二区三区| 色噜噜国产精品视频一区二区| 人妻熟妇一区二区三区| 欧美性爱第1 页| 97人人射| 人妻久久久久久久久久久久久久久| 婷婷五月天成人| 亚州色图第三区| 在线人妻熟女一区二区三区四区五区| 天天日日日射| 欧美综合自拍亚洲综合图| 亚洲色图欧美色18直播在线| 人人操人人色网| 天天操天天干一区二区 | 有码色中文字幕在线观看| 欧美大片天天看| 91视频女生| 欧美在线啊啊| 欧美劲爆视频一区二区| 日本 成 人 小说 电影 一区二区| 美日韩一卡二卡三卡免费人妻精品| 亚洲免费97免费| 狠狠爱夜夜干| 国产精品内射婷婷一级二| 欧美日韩色综合网| 97干在线视频| 熟女色图在线| 九九九九一区| 国产一级内射无挡观看| 99热最新网址| 久久噜| 91肉片| 成年人性爱日韩| 久久日韩毛| 色臀aV| 中文字幕蜜乳av| 成人三一级一片aaa| 六月色婷婷| 97久久精品国产| 大香蕉狠狠爱| 久热91| 国产高清不卡视频| 亚洲色图欧美| 日本中文字幕在线视频| 日韩ab网| 国产又粗又大硬免费色网视频| 免费看A片毛毛片在线播| 日韩中文字幕熟妇人妻| 高清无码人妻久久久一区二区三区aⅴ| 天天夜躁日日躁狠狠2002| 九九黄色网| 97伪v| 亚洲中文字幕精品一区| 大稥蕉免费视频这里只有精品| 亚洲美女黄色| 北约熟女超碰| 麻豆成人av| 中文AV制服乱伦| 91久久精品蜜臀| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 欧美日日夜夜| 精品少妇99| 超碰成人最新最好看| 西西美女视频网| 国产午夜精品理论片a大结局| 五月丁香啪| 爽 好舒服 无码刺激久久| 亚洲二区精品在线观看| 超碰 av 女人天堂| 天天夜夜rb| 亚洲国产精品无码AV久久| 五十路一区无码| 婷婷九月| 国产suv一区二区三区6| 亚洲在线综合| 日本操逼无码| 亚洲s在线观看| 欧美91精品国产自产| 亚洲麻豆精品二区三区| 综合欧美亚洲| 一二三啪啪专区| 91国产操逼视频| 中文字暮97| 久久成年片色大黄全免费网站| 女同亚洲欧美一二三区久久电影| 久久久久少妇| 禁十八久久| 777AV电影| 天操天操夜操夜月操月年年操操| 日韩女模中文造逼| 91色婷婷综合久久中文字幕二区| 夜夜中出国产| 成人五级久久| 91在线国产后入风骚翘臀美女素人| 日日操丁香五月天| 色噜噜人妻av中文字幕| 亚洲综合春色| 吖在线不卡一区二区国产剧情| 美日韩一二三区| 亚洲欧美日韩精品久久久一区二区| 人妻精品一区一区三区蜜桃91| 自偷自拍的亚洲视频| 欧美78P| 欧美三级不卡| 日韩欧美aⅴ综合网站发布| 99re热| 男人天堂婷婷五月天校园春色| 99久久久无码国产精品性啊聊| 天天日天天射天天干| 操逼操逼逼操操逼91 | 亚洲se电影| 狠狠色丁香| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 深爱伊人影院| 思思热免费在线视频| 亚洲精品一二三四区| 中国和日本人色哪个不下载能放| 香蕉久久AⅤ...| 青青草精玖玖69精品| 2019天天干| A V少妇特黄三级| 日本媚薬中文字幕在线| 婷婷五月天色| 青娱乐国产剧情av一区| 国产欧美美女免费观看视频| 天天激清| 欧美人妻中出| 国产激情在线| 69人妻精品一区二区绯色| 色网亚洲人| 久久久久久久一级黄色打同平台| 神马午夜久久| 日日夜夜青青草母狗| 一级特黄aaa大片在线观看成人一级片在线观看 | 夜夜草天天| 青青草成人视频在线观看二区| 约操熟妇| juliaann丝袜| 色综合99999| 91丨九色丨大屁股| 亚洲AV成人无码一二三久久| 老女人老91妇女老热女| 婷婷伊人网| A一区片| 北野未奈加勒比av| 女人妻一区| 天天色播亚洲综合网站| 亚洲国产美女久久久久| 日本不卡免费二区| 色婷婷成人综合| 亚洲欧美日韩综合在线尤物| 久久久久少妇| 日韩综合97p| 天天色怡春院| 超91综合网| 欧美十八禁导航成人| 九月伊人中文字幕| 亚洲激情在线| 东北操逼| 美女毛片999| 亚洲有码 欧美精品| 欧亚免费视频| 啪啪免费| 久久av一级av少妇av高潮| 78久久| 高精欧美色| 熟女久久久| 草久久久| 中文字幕人妻色偷偷久久皮| 在线啊啊啊啊| 91蜜臀在线久久久久| 97色婷| 你懂得91| 久久xxxx| 综合五月天| 婷婷激情啪啪| 在线一区| 久久日本熟女精品一区| 91久久久老司机| 亚洲s色图| 综合网亚洲1| 一级免费精品| 一区二区视频在看| 亚洲毛片基地专区| 涩综合导航| 国产一级高跟丝袜| 97人人操人人摸人人爱| 男人的天堂一区三区| 免费看日本操逼视频| av天堂5| 97色在线| 性欧美另类高清| 日本一片一区| 大香蕉欧美日韩| 国产外初女出血视频| 精品一区99999| 操熟女91| 久久性爱视频免费看| 91色色网站| 久久性爱精品一区| 国产熟女乱论| 无码9区| 打av高清| 噜噜噜亚洲精| 国产一级内射高清视频| 99re公开精品免费视频| 国产色精品午夜大片| 插欧洲美女欧美精品| 校园春色之综合网| 美日韩在线不卡人妻| 69丨亚洲丨精品丨入口免费播放| 97超碰9| 久久久一区二区三区三州| 免费一级毛片在线视频观看| 亚洲日韩AV视色| 九九九九九九九九九九九九九九九女| 色偷偷综合91久久噜噜| 亚洲精品一二牛牛| 免费A V在线| 成人一区二区三区四区| 婷婷激情四射| 少妇高潮对白在线观看| 日韩影片中文字幕一区二区三区| 日韩青久久| 伦伦成年午夜免费视频| 加勒比在线视频| 韩日欧亚a级| 欧亚性爱啪啪| 天天α片| 69少妇一区二区| 久久久9品一区二区三区| 67914在线兔费成人视频| 综合在线导航一区| 亚洲成人精品久久久| 人人爱人人乐人人操| 92福利社视频| 亚洲男人天堂AV| 久久久久久欧美精品se一二三四| 日韩99999| 成人无码影片视频在线| 人妻大香蕉| 九九这里只有精品| 久久有码视频| 亚洲天堂区| 国产在线综合福利网站| 国产精品2020| 人人操肉肉| 欧美色图在线视频少妇| 日本黄 R色 成 人网站| 78m啪啪啪| 高清不卡一二三区视频......| 国产1024在线播放| 久婷婷一区| 欧美日韩性爱无码| 在线洲亚线| 日本人妻一区二区| a一区二区三区乱码在线| 亚洲综合贴图91| 婷婷五月天伊人| 天天上日日上日韩精品| 黑人精品久久97| 久久麻豆一区二区| 欧亚性爱在线视频| 久久婷婷苹果| 金典av| 91国产精品在线看| 免费一级黄色录像影片| 欧姜老司机| 精品无码人妻一区二区免费蜜桃| 日韩中文字幕在线视频观看| 性天堂| 夜夜久久久| 99色婷婷中文字幕乱色| 天天操天天插| 熟女六十路| 成人性爱av| 超碰97网站| 亚州综| 天天综合网亚洲综合网| 午夜欧美神马久久久久| 殴美牲| 这里有精品| 人妻人人操| 性开放中文AV高清无码免费看| 欧洲在线性爱视频| 精品少妇99| 99草精| 99在线观看视频在线高清| 久久久一区二区| 五月开心久久AV官网| 九九英色视频| 一区二区 电影 亚洲| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 欧美日韩大香蕉| 日韩BBN| 欧美亚洲韩国视频十五区| 亚洲第91页| 91男同| 91亚洲丝袜熟女| 美女十八禁| 色综合大香蕉| 久久产精品一区二区三区电影| 日韩三级伊人| 免费观看网黄| 中文字幕一区电影在线观看| 国产操逼逼网| 狠狠干综合| 久久国产视频专区一二三| 亚洲熟妇熟在线电影视频| 美美91成人国产精品欧美精品久久久久久久| 青苹果影院男人的天堂| 激情人妻另类| 九九九九精品精| 蜜乳AV免费观看| 免费看黄视频亚洲网站| 2018色综合天天操| 岛国片在线观看视频亚洲| 婷婷中文字幕| 欧美97日韩精品| 婷婷激情丁香| 日韩操逼性鲍| 亚洲天堂,男人| 国产午夜视频| 久久91| 国产亚洲精品美女久久久m| 五月天婷婷基地| 夜夜嗷嗷一区二区| 97免费视频在线| 黄片免费看的| 蜜桃传媒一区二区亚洲| 日韩综合色网| 日韩一级特黄av毛片| 天综合网| 97久操| 最新三级网址| 97 国产一区| 亚洲色91| 爱爱动态120秒| 91痴汉| 激情久久久| 欧美精品久久| 最新亚洲人成网站在线影院| 嗯嗯啊啊视频在线看| 欧洲站一级二级三级h| 在线无码网站| 97在线观视频免费观看| 无码不卡亚洲成?人片| 国产在线76页| 日韩大香蕉AV影片| 丁香六月婷婷综合| 日韩女模中文造逼| 天天操人人操狠狠插| 五十路熟女人妻一区二区在线观看| 爱爱动态120秒| 中文字幕在在线观看网站| 久久99久久99精品天美传媒棢·纸:. | 亚洲人妻色图| 国产精品自拍xxxx| 粉嫩久久久极品| 国产又色又爽又舒服的三级视频| 97超碰伊人| 超碰超碰95| 中文字幕美女91| 97视频新免费| 伊人久久婷婷| 亚洲精品一二牛牛| 久草精品视频| 桃色五月天| 色在线视频导航| 无码男人天堂| 欧美激情综合色综合啪啪五月| 成人怡红院| 亚州日韩97| 五月天综合网| 国产精品嫩草久久久久| 美女爽爽爽刺痛洞洞| 97亚洲综合电影| 久久东京伊人一本到鬼色| 97久久综合网| 另类av天堂| 超碰碰碰碰| 日韩欧美成人性爱在线| 风月影院十八禁| 亚洲在钱| 久偷拍欧美日韩三区| 尹人大香蕉视频在线| 屁屁影院一区二区三区国产| 久久天堂| 欧美性91| 人妻精品一区一区三区蜜桃91| 手机看片1025| 乱伦熟妇一区二区| 国产美女高潮视频| 日本一天色道久久久精品视频| 国产91影院| 国产97色在线| 草B在线| 9长久久精品| 秋霞曰韩R级| 艹精品| 操操操五月天婷婷丁香影院| 91丝袜| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 色情五月丁香| 爆操无码| 在线观看色视频| 一级性爱视频免费在线| 欧美色999| 日韩精品一区二区人人人| 天天天操天天天爱| Aa东京男人的天堂| 亚洲中文字幕精品久久久久久直播| 青娱乐亚洲自拍| 亚洲一区二区久久久久| 天天插天天插| 天天日熟妇| 国产精品日韩在线一区| 综合自拍| 天天干人妻视频| 97超碰免费生活| 台湾佬中文娱乐网久久久久久久久久com | 福利视频网站| 97超碰色色| 国产女同在线观看视频| 一级性爱视频免费在线| 欧美亚洲首页| 1000部熟女视频在线观看| 亚洲国产成人7777| 中国大陆国产高清AⅤ毛片| 永久免费发布性爱网| 亚洲欧美在线观看免费| 操婷婷逼| 美日韩一卡二卡三卡免费人妻精品| 97人人爱人人做人人乐| 欧美,日韩,中文,另类| 91亚洲欧洲| 综合在线导航一区| 一区二区三区四区免费视频| 中文字幕一区av| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 婷婷探花久久精品一区| 热99这里有精品综合久久| 精品国产一区二区三区四区在线看| wwwcaobibi| 精品人妻一区二区三区-国产| 少妇激情AV| 久久这里只精品免费福利| 婷婷在线精品| 伦在线97| 中文字幕精品一区二| 任你草| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 久久精品欧美一区二区三区不卡| 人妻久久久久久| 青青伊人加勒比海| 欧美高清18A片| 操操操日本的逼| 色婷婷综合久久中文字幕雪峰| 男人天堂2019| 殴美大黄片| 精品国产乱码久久久久久久久久毛片| 蜜乳视频网站| 射欧美综合| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 久久青青草在线视频| 国产激情久久久| 性感美女啊啊啊在线| 人人操人人狠狠操| 后入综合久久| 夜夜草网站| 欧美亚洲中文字幕| 可以免费观看的av| 超碰91在线| 久久久久骚| 美女刺激久久国产欧美| 日本道不卡| 欧美亚洲综合999| 色哟哟-国产专区| 国语精品av| 99久久99九九99九九九| 97亚洲色图| 91色综| 婷婷av在线中文字幕| 330dv亚洲成年视频网| 国产熟女完整版中字| 日韩无码久久熟女一级片| 亚卅熟女乱色| 精品视频一区二区| 欧洲精品网| 亚洲国产日韩欧美熟妇在线| 国产精品农村妇女| 麻豆九九九| 每日更新AV| 亚欧美色| 91青青| 人妻社区男人天堂| 极品极品色影院| 欧美亚洲高清| 精品人妻高清麻豆av| 日韩激情视频| 2020视频1区2区3区| 人妻中文字幕精品无码| 久久久人妻| 超碰偷拍| 精品一久久久| 天堂资源欧美| 极品极品色影院| 粉嫩粉嫩一区性色AV片| 男人在线天堂| 亚洲天堂男人天堂网| 伊人四虎综合| 亚洲熟女乱综合一区二区三区| 国语人妻精彩刺激| 丁香五月天堂网| 蜜乳性色无码专日粉嫩骚逼AV| 十八禁啪啪视频| 久久久久久久9| 91久久婷婷| 丝袜视频网国产90| 国产成人啪一区二区| 97色色,97综合| 91亚洲影院综合| 色色五月婷婷| 日本熟妇熟色97一本在线观看| 99综合| 一区二区三区精品黑丝白丝酒店对鸡 | 二三四区精品| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 国产91啪| 粉嫩粉嫩一区性色AV片| 亚洲国产奇米影视久久| 久久成人国产| 一区三区啪啪| 色色激情五月天| 久久亚洲AV无码专区首页| 久操不卡视频| 99啪啪| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 牛黄色久午久| 久久天堂婷婷网| 91中文精品日韩欧美在线 | 超碰av在线| 9热9热综合网| 爱妻综合网| 91天天综合日韩欧美| 成人av福利在线观看| 久久久A∨| 国产精品美女久久久久AⅤ国产馆| 蜜臀久久99精品久久久久久无删减 | 91超碰碰在线| 狠久久| 精品视频免费在线一区| 久久精品小视频| 超碰97在线中文| 日产欧美电影一区二区三区| 国产午夜激片Av毛片不卡| wwwcaobibi| 97久久精品国产| 伊人四虎综合| 精品久久久av无码免费| 亚洲砖码砖专无区2023| 日韩99神马视频片| 美女性91| 免费视频a级毛片免费视频| 久久久久久性爱视频| 婷婷五月天激情四射| 国产精品久久久久中文字幕| 亚洲 图片 欧美 色图| 99av| 大香樵伊人网| 国产熟码AV| 免费看久久久性性| 婷婷香网站| 欧美姓爱综合网| 免费一级视频特黄色大片| 欧美国产操逼| 成人乱码一区二区三少妇| 密臀AV在线| 性色av网站| 国产欧美黑人丰满在线| 日韩亚洲中文字幕在线| 亚洲污一污二| 尤物视频视频官网| 亚洲中文制服诱惑| 精品无码久久久久久久杏吧| 一区二区久久天天干狠狠| 久久久久少妇| 91日日| 播播亚洲小说亚洲| 国产精品午夜福利| 色五月首页| 日韩精品在线放| 熟女一区二区三区| 中国东北熟女老太婆内谢| 欧美日韩中文字幕不卡| 999久久久精品国产| 欧美性生活男人的天堂| 精品一二三区女同 | 蜜臀av网址| 色五月婷婷麻豆在| 精品人妻av区天天看片| 日韩精品99久久久久久中文字幕 | 久草资源在线| 伊人亚洲国产一成人久久精品,久久| 17c嫩草51久久91嫩草| 久久成人午夜狠狠| 丁香六月婷婷综合| 91动漫操逼视频| 另类天堂| 亚春色色| 97超碰亚洲| 亚洲综合色男人网| 五月天婷精品激情| 久久精品国内Av熟女高清| 乱色老一区二区三区的观看方式 | 色av中文字幕| 水澄无码AV| 日韩成人性爱电影在线播放| 91色狼| 啊啊啊啊,啊啊好多水| 日韩操呦呦影院在线观看| 极品丝袜无码| 国产1769在线| ?亚洲伊人伊成久久人综合网| 亚洲小电影免费涩涩成人在线高清| julia国产在线| 超碰碰97资源站| 夜夜高潮夜夜爽| 国产区91柔拿会所技师| 高清国产无码av| 精品九九| 96久久久| 国产极品馒头逼| 精品综合久久久久久97| 久久久专区| 制服诱惑亚洲一区二区三区在线观看| 97超碰色屌| 国产一区麻豆免费观看| 北京专精特新企业招聘信息| 国产11页| 艳尻美人妻| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 天天天天天干夜夜夜夜夜操| 久久精视频美日韩在线视频| 天天色综亚洲91污| 性爱乱伦一区| 91精品综合久久久久久五月丁香| 东京热免费视频| 久久精品一区二区三区不卡| 99精品热| 免费男人的天堂| 在线视频亚洲无码| 自拍视频一区在线观看| 亚洲AV无码国产精品久久久久 | 天天操天天干美女网址导航| 成 人 A V免费视频在线观看| 肏逼福利网站| 高清成年美女黄网站免费大全| 美国aaaaa一级黄片| 草草影院在线视频| 91丝袜熟女| 亚洲色人阁| 中国探花熟女| 亚洲国产一区二区三区在线| 欧美一区二区三区成人性生活| 91bbbbbb| 国产大学生高潮在线播放 | 中文字幕视频在线观看一区二区| 久久久久久久久久久久九| 91亚洲综合在线| 亚洲综合色婷婷| 蜜臀99999| 国产亚洲性生活视频播放| 2018色综合天天操| 欧美天堂第二区| 超碰97网站| 欧美精品999| 久久九九精品一区二区 | 爱射综合| 亚洲精品99999| 日日狠狠久久偷偷色综合免费| 美女丝袜激情小说| 国产日韩精品人妻久久久久色欲网站| www.欧精品| 久久系列| 日本三级中国三级99人妇网站| 久污| 国产精品久久久久久片| 伊人久久亚洲色欲综合网站| 欧美亚洲| 亚洲一区二区av| 美女刺激久久国产欧美| 中文字幕后石码三区四区| 毛片视频白嫩| 伊人五月天婷婷| 亚洲精品一卡二卡三卡福利视频网站| 婷婷色色五月天福利| 亚洲一二三四区机械| 亚洲天天做日日做天天谢日日 | 免费精品无码一级毛片牛牛影视| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 国产精品午夜AV完会免费 | 草莓精品视频| 97在线免费观看视频| 国产亚洲日本精品在线| 乱伦a片视频| 美女上床网站| 毛片视频白嫩| 老子午夜伦不卡影院| 97超色| 中文字幕一区二区三区人妻少妇在线 | 亚洲性爱无码乱伦av| 91情色在线| 色www精品视频在线观看| 综合欧美日韩在线观看| 香蕉欧美| 亚洲情色综合网| 欧美色图亚洲色图成人在在线| 一级二级三级黑人无码| 欧美欧美少妇| 啊啊啊好大好湿| 丝袜夫妻自拍| 曰韩无码777| 日本一级特级毛片视频| 久操电影网| 久久草视频污视频| 亚洲色图大香| 久久五月综合| 无码WWW免费视频网站| 欧美福利视频啊啊啊啊| 亚洲激情在线| 色噜噜人妻av中文字幕| 亚洲综合九| 精品无码一二三四区| 国产乱码久久| 67914亚洲精品| 女人喷水视频在线观看| 污污汅18禁网站在线永久免费观看 | 99只有精品| 综合色99| 天堂8在线新版官网| 亚洲AV秘 精品久久老牛影视| 免费少妇一区二区| 男人女人18禁片免费看网站| 69天堂| 精品视频一区二区| 精品免费视频国产一区| 91老熟妇| 久久精品国产亚洲妲己影视| av亚欧| 八戒无码国产午夜福利| 93人人操人人| 樱花蜜乳av| 日本午夜久久电影| 99日韩| 亚洲国产精品久久久久婷婷青年| 国产久久一区二区午夜| 春色校园综合网| 老司机久久| 欧美色性情| 天天射夜夜操| 国模无码一区二区三区在线| 亚洲福利中文字幕在线|