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

ARTICLE DETAIL

資訊詳情

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

基于STM32F407與RT-Thread的可穿戴設備開發(fā)全流程解析

基于STM32F407與RT-Thread的可穿戴設備開發(fā)全流程解析 1. 項目緣起為什么選擇STM32F407與RT-Thread來打造可穿戴設備最近幾年可穿戴設備的熱度一直沒降下來從智能手環(huán)到專業(yè)運動手表大家似乎都想在手腕上戴點“智能”。作為一名嵌入式開發(fā)者我手癢很久了總想自己動手做一個既能滿足自己的運動監(jiān)測需求又能把玩一下最新的技術棧。市面上很多開發(fā)板功能強大但集成度太高像“黑盒子”反而失去了學習的樂趣而從頭畫板、寫驅動時間成本又太高。直到我遇到了RT-Spark開發(fā)板它基于STM32F407ZGT6這顆經(jīng)典的Cortex-M4內(nèi)核MCU并且原生搭載了RT-Thread物聯(lián)網(wǎng)操作系統(tǒng)一下子就把我的興趣勾起來了。STM32F407ZGT6大家應該不陌生意法半導體的明星產(chǎn)品主頻168MHz帶FPU和DSP指令集性能對于處理傳感器數(shù)據(jù)流和簡單的算法綽綽有余。更重要的是它外設豐富有多個USART、SPI、I2C和定時器方便連接各種傳感器。而RT-Thread作為一個國產(chǎn)的、開源、組件化程度極高的實時操作系統(tǒng)其最大的優(yōu)勢就是“小而美”的內(nèi)核和豐富的軟件包生態(tài)。對于可穿戴設備這種資源受限但又需要網(wǎng)絡連接、文件系統(tǒng)、GUI等復雜功能的場景RT-Thread的組件化設計簡直是量身定做——你需要什么就添加什么不需要的絕不占用寶貴的Flash和RAM。這個項目的核心目標就是利用RT-Spark板載的資源包括WiFi模塊打造一個功能完整的可穿戴活動追蹤器原型。它要能實時采集運動數(shù)據(jù)如步數(shù)、距離、卡路里通過WiFi將數(shù)據(jù)同步到云端或手機App我們計劃做一個簡單的Android端進行數(shù)據(jù)可視化并且具備低功耗運行的潛力。這不僅僅是把傳感器數(shù)據(jù)讀出來那么簡單它涉及到嵌入式端的多任務調度、傳感器驅動、數(shù)據(jù)濾波算法、網(wǎng)絡協(xié)議棧集成以及移動端與嵌入式端的通信協(xié)議設計是一個典型的物聯(lián)網(wǎng)全棧小項目。2. 硬件平臺深度解析RT-Spark開發(fā)板與核心傳感器選型工欲善其事必先利其器。在動手寫代碼之前我們必須對硬件平臺有透徹的了解。RT-Spark開發(fā)板可以看作是為STM32F407ZGT6和RT-Thread量身定制的一個“示范平臺”它把很多物聯(lián)網(wǎng)應用需要的模塊都集成在了一起。2.1 RT-Spark開發(fā)板核心資源盤點首先看主控STM32F407ZGT6擁有1MB的Flash和192KB的RAM。在RT-Thread的典型配置下內(nèi)核加上基礎組件可能只占用幾十KB的Flash這為我們后續(xù)添加網(wǎng)絡協(xié)議棧、文件系統(tǒng)、甚至輕量級GUI留下了巨大的空間。192KB的RAM對于運行多個線程和處理數(shù)據(jù)緩沖區(qū)也完全足夠。板載的資源是項目的基石WiFi模塊通常是ESP8266或類似型號這是實現(xiàn)數(shù)據(jù)無線傳輸?shù)年P鍵。模塊通常通過UARTAT指令或SPI接口與主控連接。RT-Thread的at_device軟件包對這類模塊有非常好的支持可以快速實現(xiàn)Socket網(wǎng)絡通信。運動傳感器可穿戴設備的“心臟”。RT-Spark板可能板載了MPU6050六軸陀螺儀加速度計或更先進的傳感器。如果沒有板載我們就需要外接。我選擇的是MPU9250九軸包含三軸加速度計、三軸陀螺儀和三軸磁力計和BMP280氣壓/溫度計。MPU9250通過I2C或SPI通信能提供更豐富的姿態(tài)和運動數(shù)據(jù)BMP280則用于氣壓檢測可以輔助計算海拔變化對于登山、爬樓等運動很有意義。顯示單元為了有更好的交互我額外添加了一塊1.3英寸的OLED屏幕SSD1306驅動I2C接口。它功耗低顯示效果清晰適合顯示步數(shù)、心率、時間等關鍵信息。電源管理可穿戴設備對功耗極其敏感。雖然原型階段我們可以用USB供電但必須考慮未來的電池供電方案。STM32F407本身支持多種低功耗模式結合RT-Thread的電源管理框架可以實現(xiàn)在無活動時進入睡眠由傳感器中斷喚醒MCU。注意在連接外部傳感器時務必仔細查閱RT-Spark的原理圖確認你打算使用的I2C或SPI引腳沒有被板載其他設備占用并注意電平匹配和上拉電阻。2.2 傳感器電路連接與調試要點以我使用的MPU9250和BMP280為例它們都支持I2C。我將它們掛載在了STM32F407的I2C1總線上PB6-SCL PB7-SDA。接線看似簡單但調試時最容易出問題。首先確保I2C總線上有正確的上拉電阻通常4.7kΩ雖然開發(fā)板可能已經(jīng)集成但外接模塊時仍需檢查。其次STM32的I2C時鐘配置需要謹慎。STM32F407的I2C外設比較“嬌氣”時鐘配置不當極易導致通信失敗。在RT-Thread Studio或使用CubeMX初始化時我建議I2C時鐘速度不要一開始就設得太高先從100kHz標準模式開始通信穩(wěn)定后再嘗試提升到400kHz快速模式。調試I2C設備最好的方法是先寫一個簡單的掃描程序。利用RT-Thread提供的I2C設備框架幾行代碼就能掃描總線上所有設備的地址。這能快速幫你確認硬件連接是否正確、傳感器是否上電正常。#include rtdevice.h #define I2C_BUS_NAME i2c1 int i2c_scan(void) { struct rt_i2c_bus_device *i2c_bus; rt_uint8_t ret; rt_uint8_t i; i2c_bus (struct rt_i2c_bus_device *)rt_device_find(I2C_BUS_NAME); if (i2c_bus RT_NULL) { rt_kprintf(Cant find %s device!\n, I2C_BUS_NAME); return -RT_ERROR; } rt_kprintf(Scanning I2C bus %s...\n, I2C_BUS_NAME); for (i 1; i 128; i) { struct rt_i2c_msg msgs; rt_uint8_t buf; msgs.addr i; msgs.flags RT_I2C_RD; msgs.buf buf; msgs.len 1; if (rt_i2c_transfer(i2c_bus, msgs, 1) 1) { rt_kprintf(Device found at address 0x%02X\n, i); } rt_thread_mdelay(10); } rt_kprintf(Scan complete.\n); return RT_EOK; }如果掃描不到設備依次檢查電源、地線、SCL/SDA線是否接反、上拉電阻、MCU的I2C引腳配置模式需配置為開漏輸出模式等。3. 軟件架構搭建在RT-Thread上構建多任務應用硬件準備就緒后接下來就是構建軟件的“骨架”。在裸機編程中我們可能會用一個超級循環(huán)配合中斷來處理所有事務但隨著功能增加這種代碼會變得難以維護。RT-Thread的實時操作系統(tǒng)特性讓我們可以優(yōu)雅地用多線程任務來劃分功能模塊。3.1 利用RT-Thread Studio快速創(chuàng)建工程對于新手我強烈推薦使用RT-Thread Studio這個IDE。它基于Eclipse專為RT-Thread開發(fā)優(yōu)化圖形化配置極大地降低了入門門檻。你不需要手動編寫復雜的SConscript構建腳本。創(chuàng)建新工程時選擇“基于開發(fā)板”然后找到RT-Spark對應的型號。Studio會自動為你生成一個包含RT-Thread內(nèi)核、FinSH控制臺一個強大的命令行shell、以及對應板級支持包BSP的基礎工程。這個基礎工程已經(jīng)配置好了系統(tǒng)時鐘、串口用于打印日志等直接可以編譯下載運行。3.2 設計應用層的多線程模型我們的活動追蹤器至少需要以下幾個獨立的線程傳感器數(shù)據(jù)采集線程這是一個高優(yōu)先級、周期性運行的線程。它負責以固定的頻率例如50Hz從MPU9250和BMP280讀取原始數(shù)據(jù)。為了避免I2C總線被長時間占用影響其他設備這個線程的職責應僅限于“讀取”和“暫存”復雜的計算交給其他線程。讀取的數(shù)據(jù)可以放入一個環(huán)形緩沖區(qū)RT-Thread提供了ringbuffer組件或直接通過消息隊列發(fā)送給處理線程。運動算法處理線程這是核心算法所在。它從采集線程獲取原始加速度數(shù)據(jù)進行步數(shù)檢測、姿態(tài)解算等。步數(shù)檢測算法相對簡單可以通過設定閾值檢測加速度波峰波谷的模式來計數(shù)。更復雜的如姿態(tài)解算獲取俯仰角、翻滾角可能需要用到傳感器融合算法如Mahony或Madgwick濾波這些算法有開源C實現(xiàn)可以集成進來。這個線程的計算負荷較大但實時性要求稍低。數(shù)據(jù)上傳/網(wǎng)絡線程當需要同步數(shù)據(jù)時此線程被喚醒。它從處理線程獲取處理好的結果如步數(shù)、距離封裝成JSON或自定義二進制格式通過AT指令控制WiFi模塊連接指定的服務器如MQTT Broker或HTTP服務器并上傳。這個線程是阻塞式的涉及網(wǎng)絡等待所以優(yōu)先級可以設低一些避免影響傳感器采集的實時性。顯示與用戶交互線程負責刷新OLED屏幕顯示信息并檢測按鍵如果有事件。刷新頻率可以低一些比如10Hz。在RT-Thread中創(chuàng)建線程非常簡單。以下是一個傳感器采集線程的示例框架#include rtthread.h #define THREAD_PRIORITY 8 // 優(yōu)先級數(shù)字越小優(yōu)先級越高 #define THREAD_STACK_SIZE 1024 #define THREAD_TIMESLICE 10 // 時間片 static rt_thread_t sensor_thread RT_NULL; /* 線程入口函數(shù) */ static void sensor_thread_entry(void *parameter) { while (1) { // 1. 讀取MPU9250原始數(shù)據(jù)加速度、陀螺儀、磁力計 // 2. 讀取BMP280氣壓和溫度 // 3. 將數(shù)據(jù)放入環(huán)形緩沖區(qū)或發(fā)送消息隊列 // 4. 線程掛起等待下一個周期 rt_thread_mdelay(20); // 50Hz延時20ms } } int sensor_thread_init(void) { /* 創(chuàng)建線程 */ sensor_thread rt_thread_create(sensor, sensor_thread_entry, RT_NULL, THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE); /* 如果創(chuàng)建成功啟動線程 */ if (sensor_thread ! RT_NULL) { rt_thread_startup(sensor_thread); rt_kprintf(Sensor thread started.\n); } else { rt_kprintf(Failed to create sensor thread!\n); return -RT_ERROR; } return RT_EOK; } /* 導出到自動初始化可選 */ INIT_APP_EXPORT(sensor_thread_init);使用rt_thread_mdelay進行延時而不是忙等待這樣線程會在延時期間主動讓出CPU提高系統(tǒng)效率。線程間的通信我推薦使用消息隊列它是RT-Thread中一種高效、線程安全的通信機制。處理線程可以阻塞在消息隊列上一旦采集線程放入新數(shù)據(jù)處理線程立即被喚醒執(zhí)行響應非常及時。4. 核心功能實現(xiàn)從數(shù)據(jù)采集到云端同步軟件框架搭好各個線程就能各司其職了?,F(xiàn)在我們來深入每個核心模塊的實現(xiàn)細節(jié)和踩過的坑。4.1 傳感器驅動與數(shù)據(jù)濾波RT-Thread的另一個巨大優(yōu)勢是其組件倉庫。很多常用傳感器的驅動已經(jīng)由社區(qū)貢獻我們可以直接通過Env工具或RT-Thread Studio的包管理器在線添加。例如搜索并添加mpu6xxx和bmp280軟件包。添加后它們會自動集成到工程中并提供統(tǒng)一的傳感器設備接口。初始化完成后我們可以像操作文件一樣操作傳感器rt_device_t accel_dev rt_device_find(acce_mpu); // 加速度計設備 rt_device_t gyro_dev rt_device_find(gyro_mpu); // 陀螺儀設備 rt_device_t baro_dev rt_device_find(bar_bmp280); // 氣壓計設備 struct rt_sensor_data accel_data, gyro_data, baro_data; rt_size_t r_size; /* 以只讀方式打開設備 */ rt_device_open(accel_dev, RT_DEVICE_FLAG_RDONLY); // ... 打開其他設備 while (1) { r_size rt_device_read(accel_dev, 0, accel_data, 1); if (r_size 1) { // accel_data.data.acl.x/.y/.z 即為三軸加速度值 // accel_data.timestamp 為時間戳 } rt_thread_mdelay(20); }但是直接讀取的原始數(shù)據(jù)是不能用的。傳感器存在零偏、溫漂和噪聲。以MPU9250的加速度計為例即使靜止放置其輸出也不會是完美的(0, 0, 1g)。因此必須進行校準和濾波。校準最簡單的是六面校準法。將傳感器六個面分別朝下靜止放置記錄每個面的輸出計算出零偏和比例因子。這個過程可以做成一個上電后的校準流程。濾波對于運動數(shù)據(jù)常用的有滑動平均濾波或一階低通濾波LPF。一階LPF在代碼中實現(xiàn)非常簡單且能有效平滑數(shù)據(jù)#define ALPHA 0.2f // 濾波系數(shù)0~1之間越小越平滑但延遲越大 float filtered_value 0; float lpf_filter(float new_sample) { filtered_value filtered_value ALPHA * (new_sample - filtered_value); return filtered_value; }將三軸加速度數(shù)據(jù)分別進行濾波能顯著提升后續(xù)步數(shù)檢測的準確性。4.2 步數(shù)檢測與簡單算法實現(xiàn)步數(shù)檢測的算法有很多從簡單的閾值法到復雜的機器學習模型。在嵌入式端我們追求在有限算力下達到可接受的精度。這里介紹一種經(jīng)典的波峰波谷檢測法。核心思想人走路時垂直方向的加速度會呈現(xiàn)周期性的起伏。我們可以計算加速度矢量的模sqrt(ax^2ay^2az^2)減去重力加速度約9.8得到動態(tài)加速度。對這個動態(tài)加速度序列進行檢測。算法步驟數(shù)據(jù)預處理對三軸加速度濾波后計算矢量模并減去靜態(tài)重力分量可通過校準獲得。尋找波峰和波谷設定一個最小幅度閾值如0.3g和時間窗口如連續(xù)兩次有效步伐至少間隔300ms。當動態(tài)加速度超過正向閾值時標記一個候選波峰當?shù)陀谪撓蜷撝禃r標記一個候選波谷。步數(shù)判定一個有效的步伐通常由一個波峰和一個緊隨的波谷或反之構成。當檢測到“波峰-波谷”或“波谷-波峰”這樣一個完整的周期且周期時間在合理范圍內(nèi)如0.2s~2s計為一步。這個算法在RT-Thread的處理線程中實現(xiàn)。需要注意閾值需要根據(jù)實際佩戴位置手腕、口袋和個人步態(tài)進行微調。一個實用的技巧是增加一個自適應閾值機制在設備靜止一段時間后自動重新計算背景噪聲水平動態(tài)調整檢測閾值以提高在不同環(huán)境下的魯棒性。4.3 WiFi連接與數(shù)據(jù)上傳RT-Spark板載的WiFi模塊通過AT指令控制。手動拼接AT指令既繁瑣又容易出錯。幸運的是RT-Thread的at_device軟件包為我們封裝了一切。我們只需要在RT-Thread Studio的包管理中搜索at_device選擇對應的模塊型號如ESP8266添加即可。添加后需要在rtconfig.h或通過menuconfig工具進行配置#define AT_DEVICE_NAME esp0 // 設備名稱 #define AT_DEVICE_ESP8266_SAMPLE // 啟用ESP8266示例 #define ESP8266_SAMPLE_WIFI_SSID Your_WiFi_SSID #define ESP8266_SAMPLE_WIFI_PASSWORD Your_WiFi_Password配置完成后系統(tǒng)初始化時會自動連接WiFi。連接成功后我們就可以使用標準的BSD Socket API進行網(wǎng)絡編程了就像在Linux下一樣簡單。數(shù)據(jù)上傳策略對于活動追蹤數(shù)據(jù)我們不需要每秒上傳??梢圆捎镁彺娑〞r/觸發(fā)上傳的策略。例如在本地緩存每5分鐘的運動數(shù)據(jù)步數(shù)、平均心率等然后一次性打包上傳。這能節(jié)省網(wǎng)絡流量和功耗。協(xié)議可以選擇輕量級的MQTTRT-Thread有paho-mqtt軟件包或者簡單的HTTP POST。這里給出一個使用Socket進行HTTP POST的簡化示例#include sys/socket.h #include netdb.h void upload_data_thread_entry(void *param) { int sock; struct hostent *host; struct sockaddr_in server_addr; char *request_fmt POST /api/upload HTTP/1.1\r\n Host: %s\r\n Content-Type: application/json\r\n Content-Length: %d\r\n\r\n %s; char json_buffer[256]; char request_buffer[512]; // 1. 構造JSON數(shù)據(jù) sprintf(json_buffer, {\steps\:%d,\distance\:%.2f}, total_steps, total_distance); int json_len strlen(json_buffer); // 2. 解析服務器域名 host gethostbyname(yourserver.com); if (host RT_NULL) { rt_kprintf(DNS resolve failed!\n); return; } // 3. 創(chuàng)建Socket if ((sock socket(AF_INET, SOCK_STREAM, 0)) 0) { rt_kprintf(Socket create failed!\n); return; } // 4. 配置服務器地址 server_addr.sin_family AF_INET; server_addr.sin_port htons(80); // HTTP端口 server_addr.sin_addr *((struct in_addr *)host-h_addr); rt_memset((server_addr.sin_zero), 0, sizeof(server_addr.sin_zero)); // 5. 連接服務器 if (connect(sock, (struct sockaddr *)server_addr, sizeof(struct sockaddr)) 0) { rt_kprintf(Connect failed!\n); closesocket(sock); return; } // 6. 構造并發(fā)送HTTP請求 sprintf(request_buffer, request_fmt, yourserver.com, json_len, json_buffer); send(sock, request_buffer, strlen(request_buffer), 0); // 7. 可選接收響應 char recv_buffer[128]; recv(sock, recv_buffer, sizeof(recv_buffer)-1, 0); recv_buffer[127] \0; rt_kprintf(Server response: %s\n, recv_buffer); // 8. 關閉Socket closesocket(sock); }重要提示在實際產(chǎn)品中務必使用HTTPS而非HTTP以保證數(shù)據(jù)傳輸安全。RT-Thread的MbedTLS軟件包可以提供TLS/SSL加密支持。同時網(wǎng)絡操作connect,send,recv都是阻塞調用必須放在獨立的、低優(yōu)先級的線程中執(zhí)行并設置合理的超時時間避免因網(wǎng)絡問題導致整個系統(tǒng)“卡死”。5. 移動端數(shù)據(jù)可視化一個簡單的Android App嵌入式端的數(shù)據(jù)需要有一個出口來展示一個簡單的Android App是絕佳的伴侶。我們不需要開發(fā)復雜的功能核心就是接收數(shù)據(jù)通過WiFi直連或經(jīng)由服務器轉發(fā)并展示。這里我們假設嵌入式設備將數(shù)據(jù)通過HTTP POST發(fā)送到了我們搭建的一個簡單服務器App則從服務器輪詢或使用WebSocket獲取數(shù)據(jù)。5.1 Android端開發(fā)環(huán)境與基礎框架使用Android Studio進行開發(fā)。創(chuàng)建一個新的Empty Activity項目。我們需要的主要權限是網(wǎng)絡權限在AndroidManifest.xml中添加uses-permission android:nameandroid.permission.INTERNET /為了快速實現(xiàn)我們可以使用一些優(yōu)秀的開源庫網(wǎng)絡請求RetrofitOkHttp這是處理HTTP請求的事實標準。圖表繪制MPAndroidChart功能強大且易用的圖表庫。JSON解析Gson與Retrofit搭配極佳。在app/build.gradle的dependencies中添加這些庫的依賴。5.2 定義數(shù)據(jù)模型與網(wǎng)絡接口首先定義與嵌入式端約定好的數(shù)據(jù)模型。例如服務器返回的JSON可能是這樣的{ steps: 12560, distance: 8.5, calories: 420, heart_rate: 78, timestamp: 1689056789 }對應的Kotlin數(shù)據(jù)類如下data class FitnessData( val steps: Int, val distance: Double, val calories: Int, val heart_rate: Int, val timestamp: Long )然后使用Retrofit定義一個網(wǎng)絡接口ApiServiceinterface ApiService { GET(api/latest) // 假設這個接口返回最新的數(shù)據(jù) suspend fun getLatestData(): ResponseFitnessData GET(api/history) // 假設這個接口返回歷史數(shù)據(jù)用于繪圖 suspend fun getHistoryData(Query(hours) hours: Int): ResponseListFitnessData }5.3 實現(xiàn)數(shù)據(jù)獲取與圖表展示在MainActivity中我們使用ViewModel和LiveData來管理數(shù)據(jù)這是Android Jetpack推薦的架構模式。初始化Retrofit和ApiService。在ViewModel中發(fā)起網(wǎng)絡請求。使用Kotlin協(xié)程viewModelScope.launch在后臺線程執(zhí)行避免阻塞UI。使用LiveData觀察數(shù)據(jù)變化。當網(wǎng)絡請求返回數(shù)據(jù)后更新LiveData。在Activity中觀察LiveData。當數(shù)據(jù)更新時刷新UI界面將步數(shù)、距離等顯示在TextView中。集成MPAndroidChart。在布局文件中加入LineChart視圖。當獲取到歷史數(shù)據(jù)getHistoryData后將數(shù)據(jù)如過去12小時每小時的步數(shù)構造成Entry列表并設置給LineData最后刷新圖表。一個簡單的圖表更新代碼片段private fun updateChart(historyData: ListFitnessData) { val entries ArrayListEntry() historyData.forEachIndexed { index, data - // 假設timestamp是秒轉換為小時偏移。data.distance作為Y值 entries.add(Entry(index.toFloat(), data.distance.toFloat())) } val dataSet LineDataSet(entries, 運動距離 (km)) dataSet.color Color.BLUE dataSet.valueTextColor Color.BLACK val lineData LineData(dataSet) binding.lineChart.data lineData binding.lineChart.invalidate() // 刷新圖表 }5.4 確保App與嵌入式設備的通信安全在原型階段我們可能用HTTP進行快速測試。但一旦涉及真實數(shù)據(jù)安全必須放在第一位。使用HTTPS在服務器端如Nginx配置SSL證書啟用HTTPS。Retrofit中只需將Base URL從http://改為https://即可。身份認證嵌入式設備上傳數(shù)據(jù)和App拉取數(shù)據(jù)時都應進行身份驗證。最簡單的方式是使用Token認證。嵌入式設備在首次連接時使用預置的ID和密鑰向服務器申請一個有時效性的Token后續(xù)所有請求都在Header中攜帶此Token。服務器和App端也需驗證Token的有效性。數(shù)據(jù)加密可選對于極度敏感的數(shù)據(jù)可以考慮在應用層對JSON payload進行額外加密但HTTPS通常已提供足夠的安全保障。6. 系統(tǒng)集成測試與功耗優(yōu)化當所有模塊都開發(fā)完成后必須進行系統(tǒng)集成測試確保從傳感器到手機屏幕的數(shù)據(jù)鏈路是通的并且穩(wěn)定可靠。6.1 端到端測試流程單元測試在RT-Thread端使用FinSH命令行手動觸發(fā)傳感器讀取、算法計算、模擬數(shù)據(jù)上傳查看串口打印日志是否正確。鏈路測試將嵌入式設備上電觀察它是否能自動連接WiFi并周期性地向測試服務器發(fā)送數(shù)據(jù)。使用網(wǎng)絡調試工具如nc命令或Wireshark抓包確認數(shù)據(jù)格式和內(nèi)容無誤。移動端集成測試運行Android App確保它能從測試服務器正確獲取并顯示數(shù)據(jù)。測試不同網(wǎng)絡環(huán)境下的表現(xiàn)WiFi、4G/5G。壓力與穩(wěn)定性測試讓設備持續(xù)運行24小時以上觀察是否有內(nèi)存泄漏通過RT-Thread的list_mem命令、線程卡死或網(wǎng)絡重連失敗等問題。模擬網(wǎng)絡中斷后再恢復看系統(tǒng)能否自動重連。6.2 低功耗設計與實測可穿戴設備的靈魂是續(xù)航。STM32F407雖然性能強但功耗相對較高我們需要利用其低功耗模式。利用RT-Thread的電源管理框架RT-Thread提供了pm組件。我們可以注冊一個設備告訴電源管理框架我們允許進入低功耗模式。當所有線程都處于掛起狀態(tài)例如都在等待延時或信號量時空閑線程會調用我們注冊的suspend回調在這里我們可以讓MCU進入睡眠模式。動態(tài)頻率調整STM32F407可以在運行時降低主頻。當處理任務不重時可以通過降低系統(tǒng)時鐘來節(jié)能。但要注意外設如UART、I2C的時鐘可能依賴于系統(tǒng)時鐘降頻前需確認。外設模塊化管理不用時徹底關閉傳感器和WiFi模塊的電源。例如在兩次數(shù)據(jù)上傳間隔期間可以通過GPIO控制一個MOSFET管徹底斷開WiFi模塊的供電。實測功耗使用萬用表或功耗分析儀測量設備在不同狀態(tài)下的電流。全速運行模式所有傳感器、屏幕、WiFi全開可能達到100mA以上。數(shù)據(jù)采集屏幕刷新WiFi關閉電流會顯著下降。深度睡眠模式只有RTC和喚醒電路工作電流可以降到1mA以下。一個可行的功耗策略是事件驅動間歇喚醒。大部分時間MCU處于深度睡眠。運動傳感器如MPU9250可以配置為“運動中斷”模式當檢測到一定閾值的運動時產(chǎn)生一個硬件中斷信號連接到MCU的外部中斷引腳將MCU從睡眠中喚醒。MCU喚醒后快速采集并處理一批數(shù)據(jù)如果需要則開啟WiFi上傳完成后再次進入睡眠。7. 項目總結與進階思考通過這個項目我們完成了一個從嵌入式硬件感知、RTOS多任務處理、無線數(shù)據(jù)傳輸?shù)揭苿佣藨谜故镜耐暾锫?lián)網(wǎng)鏈路。它麻雀雖小五臟俱全涵蓋了嵌入式開發(fā)中的驅動、RTOS、網(wǎng)絡、功耗優(yōu)化等多個核心領域。我個人在實現(xiàn)過程中的幾點深刻體會RT-Thread的生態(tài)價值at_device、sensor驅動框架、pm等軟件包節(jié)省了大量底層調試時間讓我們能更專注于應用邏輯。學會利用menuconfig或RT-Thread Studio的圖形化配置工具管理組件是提升開發(fā)效率的關鍵。線程間通信是關鍵設計點消息隊列、信號量、郵箱等機制用好了程序結構會非常清晰。要避免共享全局變量盡量使用這些RTOS提供的通信原語。功耗是設計出來的不是調出來的必須在項目初期就考慮功耗架構。是始終在線還是間歇喚醒傳感器是否有低功耗模式WiFi連接能否聚合數(shù)據(jù)后再發(fā)送這些決策對最終續(xù)航影響巨大。調試能力至關重要RT-Thread的FinSH組件是“神器”可以動態(tài)查看線程狀態(tài)、內(nèi)存使用、設備列表甚至在線執(zhí)行函數(shù)極大方便了問題定位。務必熟練掌握ps、free、list_device等命令。這個原型還可以從多個方向進行擴展和深化加入更多生物傳感器例如心率傳感器MAX30102、血氧傳感器向更專業(yè)的健康監(jiān)測設備邁進。實現(xiàn)藍牙連接除了WiFi可以增加BLE藍牙低功耗模塊實現(xiàn)與手機的近場直連用于實時數(shù)據(jù)查看和設備配置功耗也更低。開發(fā)更復雜的算法集成更先進的步態(tài)分析算法甚至嘗試用TensorFlow Lite Micro在MCU端運行輕量級AI模型進行活動類型識別跑步、騎行、游泳。設計外殼與電源使用3D打印為它設計一個美觀實用的外殼并集成一塊鋰電池和充電管理電路讓它真正變成一個可以佩戴的原型產(chǎn)品。這個項目就像一把鑰匙打開了基于RT-Thread和STM32進行物聯(lián)網(wǎng)設備開發(fā)的大門。其中的設計思路、遇到的問題和解決方案對于開發(fā)其他類型的智能硬件如環(huán)境監(jiān)測器、智能家居控制器等都具有很高的參考價值。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产肏屄大片| 亚洲色就是色色色| 97婷婷丁香五月天激情图片| 五月婷婷狠狠干| 成人片黄网站色大片免费毛片| 色五月综合激情| 精品激情| 91免费看片| 丁香激情网| 国产成人亚洲综合A∨婷婷| 成人短视频在线| 丁香婷婷五月色综合| 五月天综合网| 久久六月综合| 婷婷的色色五月天| 欧美日韩色色| 9久久狠狠的| 成人一级片| 婷婷五月天亚洲丁香| 99热综合| 超碰99在线观看| 在线91日韩| 色一情一乱一伦一区二区三区| 中文色婷婷| 亚洲色综合性| 久久99久久99精品免观看软件| 成人在线精品| 国产成人av在线| 99色免费观看全部| 秋霞少妇AV网站| 狠狠穞A片一區二區三區| 另类激情综合| 五月丁香六月婷婷激情网| 伊人五月天久久| 被强行糟蹋的女人A片| www.五月天婷婷| 久香草视频在线观看| 丁香五月婷婷基地| 亚洲综合字幕色色| av大香蕉| 99'无码| 五月天丁香成人社| 人人综合久| 超碰啪啪网| 色色色色色色综合网| 99精品网| 亚洲第一成人无码A片| www.夜夜操| 91久久久久久久久18| 99热在线观看| 九九这里都是精品| 99色在线| 99a级片| 97婷婷五月天| 亭亭五月丁香五月天激情| 五月花亭亭| www.五月天婷婷姐姐| 丁香色六月婷婷| 久热这里只有国产| 六月婷婷狠狠做| 日本五月丁香| 深爱婷婷丁香五月激情| 综合伊人久久| 丁香婷婷色五月| 超碰在线99| 伊人激情| 好叼操在线观看| 婷婷五月综合国产精品| 五月丁香综合影院| 婷五月丁香俺| 婷婷射婷婷舔| 色色色色色色色综合| 五月天激情国产综合婷婷婷就去爱 | 99热这里只是精品| 79精品视频在线观看,| 婷婷成人五月天成人文学小说| 日韩成人精品一区久久久久| 色情五月综合婷婷| 99精品热| 粉嫩AV久久一区二区三区 | 五月天激情国产综合婷婷婷| 婷婷五月天激情小说| 天天爽天天爽| 色99色| 99久久久久| 五月丁香六月婷| 五月激情小说| 超碰成人影视| 九九久久综合| 婷婷五月天a| 婷婷性爱五月天丁香网| 久久婷婷色情7777网站| 免费AV黄在线播放| 五月丁香啪啪综合| av在线资源| 9+1视频网址| 亚洲六月婷婷| 激情五月天色色色| 就要去操亚洲成人精品五月天丁香婷婷| 婷婷六月激情小说网| 五月婷婷激情综合在线| 婷婷噜噜| 久久五月天综合| 极品少妇XXXX精品少妇偷拍| 欧美日韩国产一区二区| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 深爱网深爱综合网| 婷婷五月天国产在线播放| www.狠狠狠狠| 99免费在线视频| 婷婷午夜综合| 97超碰,人人舔,人人操,人人摸| 青吴乐视频| 亚洲色综久久五月| 国产永久一二一起草| 日日干夜夜撸夜夜骑| 天堂AV在线看| 婷婷丁香色五月| 能看的AV| 亚洲情色一区| 婷婷五月色网| 婷婷亚洲色| 五月天综合在线网| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 亚洲情色一区| 国产精品久久久久久五月天加勒比 | 五月天婷婷激情六月久久| 丁香激情五月天| 99ri国产在线| 欧美爆乳一区二区三区| 色色欧美色色色| 色五月婷婷激情基地| 色五月天影视| 久re热视频| 免费视频WWW在线观看网站| 婷色综合| 五月婷伊人| 婷婷五月无码| 婷婷伊人欧美| 亚洲激情电影五月天色婷婷丁香一起草 | 五月丁香A∨在线| 另类图片色五月| 呦呦v线| 久久免费精彩视频| 另类丁香五月天区图| 99色视频| 黄色激情久久| 激情五月天婷婷五月天| WwW色婷婷| 色婷婷久久综合| 综合久久六月| 久久九九99视频| 久久婷婷五月天激情新地址| www.色9| 精品热九九| 日本久久精品| 丁香婷婷九月| 欧美三级黄色片久久| 五月丁香婷婷婷婷综合网| 色五月婷婷av| 91婷婷色| 九九色逼| 国产免费AV在线| 久久性爱视频这里只有精品| 五月婷婷很很色| 婷婷不卡基地| 日本九九热| 人人摸人人摸| 婷婷天堂站| 亚城区在线| 三十熟女| 99热骚货| 丁香六月天婷婷色| 九色视频这里只有精品| 亚洲12p| 五月激情婷婷图片基地| 99热66| 五月丁香久久网| 色婷五月天| 波多野结衣不卡AV| 九热视频| 色狠狠综合入口| 噜噜色com| 色视频色综合91| 99亚洲综合| 狠狠狠狠狠操| 国产3p露脸普通话对白| 婷婷综合色五月天| 9精品一区| 五月丁香六月婷婷a v| a久久| 无码一区二区日韩| 久久久天堂国产精品女人| 色小说婷婷五月天天天| 97啪在线观看视频| 午夜激情五月天| 天天干天天日蜜臀av| 婷婷五月天天| 婷婷影院欧美| 激情九月综合| 欧洲亚洲免费视频9| 久久免费精彩视频| 五月婷无码| 99碰碰| 人妻系列久久久久久久久久久| 96丁香六月婷婷蜜桃综合久久| 337p大胆噜噜噜噜噜91Av| .操區COm| 亚洲AV成人一区二区在线观看| 亚洲丁香网| 五月丁香婷婷钟和色图| 五月综合激情| 五月丁香婷成人网| 男同色五月开心五月激情五月| 99re视频精品| 婷婷综合色色| 婷婷丁香五月社区亚洲| 久久总和99| 九九久久综合| 亚州成人综合在线| 国产9色在线/日韩| 色偷偷狠狠| 九九九九中文字幕| 五月婷婷六月丁香在线| 可以直接看的AV网站| 五月天色色色网| 激情六月婷婷| 久久在线视频只有这里有精品| 天天日天天插| 深爱激情网五月| 亚洲国产精品VA在线看黑人| 丁香六月久久| tingtingjiqingwuyue| 天天干天天拍| 九九亚洲| 678五月丁香亚洲综合| 五月亭亭色| 人妻中文在线| 九九久热| 婷婷五月天影视网址| 亚洲AV成人精品网站在线播放| 人妻少妇色综合| 婷婷伊人网| 屁股翘好撅高迎合跪趴| 九九精品亚洲| 婷婷激情区| 色爱99| 五月丁香网站| 久久伊人9| 婷婷丁香综合在线| 五月激情六月丁香| 久久少妇视频| 五月天婷婷乱| 色综合网上班开心婷婷久久| 亚洲人成网站999久久久综合| 国产精品电影| 亚洲熟妇无码乱子AV电影| 九九热视频精品2| 校园春色亚洲色| 色婷婷综合久久久久| 天天爽综合| 玖玖爱资源站| 99WWW免费视频| 中字幕视频在线永久在线观看免费| 五月天婷婷激情| 亚洲精品乱码久久久久久综合| 五月色亚洲| 亚洲妇女熟BBW| 操逼视频一区| 国产激情综合五月久久| 久热这里只有精品66| 亚洲三A| 五月色丁香| 免费久久这里只有精品99| 久久婷婷五月丁香网| 国产av天天插天天操天天爽| 欧美在线| 九月色婷婷| 综合色影| 五月婷婷导航| 青草激情综合| 婷婷王月天影院| 深爱激情AV| 久操无码| 91热在线| 色欲天天综合| 人妻激情在线| 91在线视频综合| 久草丁香婷婷1024| 亚洲午夜成人av电影网| 成人美女网| 99热首页| 久久久久这里只有精品| 开心五月网| 97碰碰视频| 色播激情五月天| 激情五月五月五月婷婷| 天天干-天天日| 亚洲色婷婷婷婷人人爽| 亚洲婷婷丁香五月亚洲| 五月丁香六月婷婷不卡免费无码 | 欧美色婷婷| 国产精品电影网| 中文字幕不卡视频| 婷婷丁香综合| 蜜桃婷婷狠狠久久| 婷婷五月,偷窥偷拍网| 久热精彩视频98| 亚洲中文字幕AV在线| 亚洲丁香花色| 激情网五月天| 超碰2021| 五月开心久久| 六月丁香综合| 五月丁香六月在线欧美| 激情五月激情综合网一级丸片| 久久久久妻| 成人丁香五月| 久久视频这里都是精品| 思思久久思思| 五月天婷婷在线播放| 骚货艹网站视频| 激情综合色播| 99色色色色| 99亚洲视频| 婷婷伊人综合中文字幕| 人人摸人人| 久久免费精彩视频| 99热10在线高清播放| 操日本99| 婷婷激情人妻| Av狠狠色丁香婷| 五月天亚洲最大成人| 丁香五月天婷婷中文| 九九爱看亚洲| 色色色网站| 五月丁香成人小说| 九九综合| 婷婷五月综合中文字幕| 99re久热只有精品6在线直播.com| 丁香五月婷婷AV| www.99色| 激情五月丁香六月婷婷| 人妻激情综合| 久色精品| 色五月婷婷操逼| 996er在线观看| 在线VA视频| 六月丁香好婷婷| 丁香六月激情综合啪啪| 婷香五月激情视频| 婷婷激情五月天桃花网| 91人妻人人做人碰人人爽九色| 色婷婷狠狠干| 91精品久久久久、久五月天| 91九色首页| 五月停性愛| 色婷婷操逼网| 秋霞三级影视资源| 五月天婷婷乱论小说| 丁香五月自拍| 中文字幕综合色| 亚洲精品影视| 有哪些A片网站| AV在线观看网站| 无码人妻精品一区二区蜜桃色欲| 色婷婷四色| 色丁香五月天射婷婷爱婷婷| 婷婷六月情| 久久精品99| 日韩AV中文在线观看| 欧美毛卡| 俺去也在线官网| 激情五月天在线视频| 国产一级黄色影片,| 91色涩| 狠狠干总合| a久久| 日逼AV影音先锋男人资源站| 120分钟婬片免费看| 婷婷六月天亚州| 超碰人人艹| 五月婷婷激情在线| 丁香五月婷婷色五月| 很很干天天干| 99re欧美精品| 婷婷六月久久| 日本色色色| 亚洲午夜一区二区| 亚洲最大五月天成人网| 日日夜夜干| 九热免费视频| 97日在线视频| 天天干天天日天天操| 亚洲人妻av伦理| 日本97在线视频| 天天拍夜夜爽日日| 亚洲亚洲人成综合网络| 五六月婷婷| 婷婷丁香综合成人| 欧美大道不卡| 五月天婷婷激情网| 色婷婷激情| 91人妻九色大屁股| 亚洲无码成人性爰网| 久久综合激情| 婷婷激情在线| 久久精品系列| 婷婷六月综合| 亚洲成人超碰| 日韩亚洲视频| 九九成人| 台湾综合丁香五月蜜桃| h在线看免费版在线看| 五月婷婷导航| 人人摸人人| 变态另类色图 | 99视频在线看| 久久久精品色| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 91夫妻视频| 婷婷五月天视频| 婷婷丁香五月天婷婷| 九九爱激情| 九色91视频| 丁香五月婷婷色五月| 亚州第一A片| 六月丁香久久| 99热这里有精品| 轮奸综合网| 久久婷婷午夜| 色婷婷丁香| 啪啪六月婷婷| 天天摸天天爽| 色色色综合色| 五月婷九月| 99精品热| 日熟女| 梁铮版蜘蛛女在线观看| 久久婷狠狠色| 成人VAV视频在线观看| 色婷婷视频在线| 亚洲亚洲亚洲AAAAAA| 亚洲AV免费在线| 五月丁香综合网| 久久婷婷视频| 激情五月天色色网| 婷婷色综合| 五月婷婷免费| 99re在线观看视频| 99re这里只有精品视频6| 99.N在线视频| 日韩啪图| 熟妇天天综合| 日本www免费九九| 免费观看的av| 狠狠干五月天| 九九热在线视频观看| 可以直接看的AV| 丁香久久五月天视频在线观看 | 丁香五月精品| 色婷婷五月天激情综合| 色五月激情问网站| 亚洲综合在线视频| 伊人激情啪啪| 成人一级片| 天天婷婷综合亚洲亚洲| 97 A I色色| www.狠狠干com| 桃色激情婷婷伊人网| 五月丁香亚洲校园欧美| 色婷婷五月天激情| www.天天干.com| 狠狠干婷婷| 国产ava| 久久婷婷五月综合色丁香| 五月婷婷大香蕉| 99热成人| BBWCUCKOLD精品熟妇| 婷婷丁香五月综合| 色婷婷视频在线| 开心五月综合激情网| 婷婷综合视频| 大香蕉五月天婷婷| 成人va在线播放| 亚洲色婷婷五月天| 色婷婷电影网| 婷婷五月综合免费在线| 丁香六月激情综合网| 久热爱大香蕉在线蜜臀悦色 | 91fuliwang| 岛囯综合激情网| 亚洲色区17| 久久午夜丁香| 九九色人| 五月亭亭六月色| 婷婷成人综合五月| 免费在线观看欧美激情xx小视频| 丁香久久五月婷综合| 婷婷色操| 伊人在线视频| 激情四射亚洲| 国产激情在线| 精品无码av丁香五月激情| 精品久久99| www.五月婷婷久久.com| 可以直接看的av| 色碰碰| 九九久久精品| 婷婷激情五月天桃花网| 大香蕉五月| 久久99网站| 婷婷五月天777| 成人丁香婷婷五月天| 日本色狠狠| 五月婷婷丁香| 91 久热| 99在线观看精品| av 一区三区四区| 狠狠色激情综合| 五月丁香中文字幕| 成片免费播放| 天天透天天干| 六月丁婷婷| 婷婷激情丁五月| 97人人操| 97日韩无套内| 婷婷五月色综合| 丁香五月色情| 天天五月天综合网址| 99热这里只有精品首页| 色婷婷综合在线| 久久久思思热| 色婷久久| 色色色色色色色色综合网| 爽极品色| 99在线一区| 丁香五月激情六月| 色婷婷婷婷| 色9999综合久久| 五月丁香六月综合情在线观看 | 天天干天天爽| 亚洲色人妻| 色色网站免费观看| 高清无码视频网址| AAA久久久AAA久久久AAA| 乱女乱妇熟女熟妇综合网站| 色偷偷色婷婷| 日日操无码| 草美女在线观看视频在线播放| 99久久6| 中文字幕欧美日韩VA免费视频| 91视频免费后入强操| 亚洲天堂AAA| 丁香六月婷婷| 1024操逼视频| 婷婷综合网| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | www,8050,午夜三级| 欧美xx激情视频在线观看| 精品久热| 婷婷色五月噜噜| 人妻爽爽爽久久久久久久久| 可以直接看的AV| 国产乱妇乱子在线播视频播放网站 | 一区三区视频有限公司| 欧美婷婷五月丁香| 色九月丁香婷婷蜜桃在线观看| 久久久人妻久久久| www久| 99操碰| 9久久婷婷国产综合精品性色| 欧美,日韩成人在线| 婷婷黄色五月天在线视频| 五月丁香色情| 天天开心天天色| 欧美日韩123| 大香蕉人人网| 啪啪激情综合| 激情五月天色| 激情婷婷丁香| 亚洲综合丁香五月| 色婷婷呢狠禁久禁| 五月丁香激情深爱婷婷| 狠狠色婷婷综合开心影视| 很很干在线视频| 激情婷婷五月丁香啪啪啪| 26UUU欧美激情一区二区| 大香蕉综合网| 狠狠操狠狠狠| 丁香八月综合激情| 丁香婷婷五月天在线视频| www久久久久久久| 狠狠狠夜夜夜| 97热九九| 天天日天天插| 99视频精品全部免费观看| 综合狠久久| 亚洲精品午夜国产va久久成人| 97婷婷五月丁香| 精品亚洲VA网站| 99精品高潮| 性视频久久| 任你日视频| 五月天婷婷色| 夜丁香五月婷婷| 激情丁香五月天图片| www.99热| 丁香五月婷婷五月天在线| 深爱五月天| 亚洲综合网激情五月天| 中文字幕在线人妻| 天天做天天爱天天爽| 五月丁香婷婷国产精品综合| 91九色 熟| 91丨九色丨熟女丰满| 超碰99热| 99riAV成人在线视频| 久久99网| 五月丁香综合激情在线观看| 国产小网站| 久久激情视频| 婷婷五月色亚洲| 丁香婷婷色情| 色综合五月天| 丁香婷婷月| 丁香五月在线人妻| Av在线不卡一区| 天天插综合| 婷婷五月天激情影片| 97色操| 婷色五月天| 日韩无码色色| 欧洲亚洲免费视频9| 色五月开心久久网| 综合五月婷婷| 久久九九国产精品怡红院| 五月丁香狠狠爱婷婷综合| 日本情色一区二区| 婷婷成人基地| 超碰人妻在线| 色婷婷五月天偷拍| 久久九九99字幕| 九九干视频| 日本熟妇乱妇熟色A片蜜桃| 五月色丁香| 色狠狠色狠狠| 色99亚洲| 午夜免费试看| 五月花激情网| 亚洲久久天堂| www.99热| 五月婷视频| 六月久久婷婷| 色视频五月天| 五月丁香999| 婷婷丁香宗合888| 国产免费性爱| 亚洲精品久久久久久久久久吃药 | 天天精品视频免费观看| 婷婷久久久久| 狠狠摸狠狠摸| 久久欧洲综合网| 狠狠干激情五月| 99er这里只有精品视频| 任你擦免费视频| 一级黄色片看看| 夜夜撸天天操| 成人av播放| 天天婷婷| wwccc久久久| 丁香六月婷婷缴情欧美| 亚洲成人免费电影| 97综合在线| 久久视频婷婷| 91久久18| 51XX嘿嘿午夜无码| 狠狠色婷婷色| 欧美婷婷综合网| 色爱爱综合网| 九一牛视频探花| AV片一区在线观看| 97日本在线播放| 免费无码毛片一区二区A片| 婷婷五月色| 色色色图| 丁香五月天啪啪| 99re久久| www.狠狠操| 婷婷五月天伊人| 99亚洲视频| 五月丁香在线观看| AV九九| 年轻的妺妺伦理HD中文| 欧美在线| 色天堂婷婷| 天天操天天国产三级片处女学生妹| 婷婷影院A成人| 五月天天丁香婷婷| 免费观看日韩成人av| 国产女人十八水真多1| 色碰97| 99 福利 导航| 色综合婷婷| 久久精品爱爱| 另类小说五月天激情| 97色色色视频| 99爱视频在线观看| 九九久久99精品免费观看www| 92久久| 国产成人精品123区免费视频| 成人做爰黄A片免费看直播室男男 久草热8精品视频在线观看 | AV九九| 三级毛片视频| 色九九九九| 婷综合| 五月天伊人av| 丁香五月亚洲| 丁香六月啪| 久久精品99国产精品日本| 99精品视频免费观看近期发布| 色色影院黄大片| www.婷婷五月| 天天色五月婷婷91久久久久久久| 99热色婷婷| 婷婷久久大香蕉| 五月综合婷婷网| 五月婷婷激情久久| 午夜色婷婷| 午夜AV网| 玖玖婷婷五月天| 日韩av干| 大香蕉婷婷色| 日韩成人精品中文字幕电影| 97在线日本| 嫩草AV久久伊人妇女超级A| 婷婷五月天激情综合深爱| 99热这里只有精品在线| 久热91| www.婷婷五月天,com| 99综合视频一体| 三十熟女| 99热精品在线| 99国产视频网| 婷婷久久视频| 91九色国产在线| 啪啪操超碰| 另类图片婷婷五月天| 婷婷天堂综合| av五月丁香| 538在线精品| 激情婷婷五月| 丁香五月色欲| 另类图片激情五月天| 踪合专区啪啪| 九月性爱网| 色婷婷99| 婷婷综合| 五月天婷婷AV| 色婷婷综合中心| 色婷婷狠狠| 午夜日韩久久久网站| 久久精品国产精品| 人人干av| 五月丁香91| 色五月婷婷色五月| 99热这里只有精品无码| 激情婷婷综合| 激情小说五月天社区丁香| 久久最新色| 久草婷婷视频| 婷婷色影音天| 99丁香婷婷综合网| BBWCUCKOLD精品熟妇| 日本一级黄色电影| 久久九九@| 99精品视频网| 亚洲色另类| 婷婷五月天久久久| www.成人婷婷综合| 久热只有这里精品| 狠狠干伊人| 呦呦v线| 亚洲精| 丁香五月婷婷六月婷| 丁香六月激| 99激情网| 91黄址| 色色色婷婷五月| 荡乳尤物3HP1V5| 久久久这里有精品| 97久久视频| 91热99| 色天堂在线| 欧美激情凹凸丁香网| 国产高清精品色| 六月天无码网址| 啄木鸟黑丝一区二区| 丁香五月婷婷性爱| 99国产小视频免费观看| 五月欧美色播| 久热最新视频 | 99久久综合精品五月天| AV大片在线播放| 怡红院院久久| www九九免费视频| 丁香六月无码| 久久最新色| 中文字幕婷婷| 婷婷国产综合| 无码激情AAAAA片-区区| 1995年关宝慧版蜘蛛女| 狠狠一日| 久久婷婷内射| 九玖视频这里只有精品| 国产精品a无线| 少妇人妻凹凸视频| 亚洲视频在线网| Av九九| 影音先锋xfplay资源男人网| 青青草视频免费观看| 日本熟女一区二区| 在线99精品| 任你爽免费视频| 日本ww亚洲| 五月丁香六月停停停| 天天爱综合网| 亚洲超碰在线| 国产成人精品一区二区三区视频 | www夜夜操com| 91丨九色丨白浆| 色偷偷五月天| 色五月色五天免费视频| 五月婷婷色影院| 五月丁香影院| 99re这里只有精品视频了| 九九色院| 无码色色色| 丁香六月婷婷激情| 色香蕉影院| 中文字幕网伦射乱中文| 激情久久丁香| 日本狠狠爽| www.婷婷,com| 51精品国自产在线| 精品久久人妻| 五月婷婷亚洲天堂激情在线| 超级碰 久久9| 伊人五月天| 人妻久久久久久久| 五月婷婷偷| 天堂亚洲 在线| 99日韩| 日逼免费视频| 久久丁香| 99久久高清视频| 久久婷婷色| 激情综合网五月| 日操| 亚洲综合成人网| 五月婷婷欧洲| 五月丁香六月婷| 五月婷婷激情中文字幕| 天天草婷婷五月| 丁香五月亚洲AV| 亚洲欧洲小视频9| 疯狂做受XXXX高潮A片| 九九99热| 99色免费视频| 婷婷五月激情欧美大胆视频| 99久久婷婷国产综合| 亚洲精品444久久久久久| 无码99| www.婷婷亚洲基地| 小视频久久久aaa| 欧美综合婷婷欧美综| 99精品视频偷拍| 五月黄色婷婷| 国产av一区二区三区| 五月天激情影院| 中文字幕在线免费| 五月天四色房丁香亭亭| 开心五月综合激情综合五月| 538午夜激情| 天天综合网~91| 丁香五月婷婷少妇| 婷婷五月激情四射手| 久久久中文| 婷婷色影院| 99色精品| 九九婷婷网五月天| 五月丁香六月婷婷综合网缴情| 色婷婷4| 五月丁香手机在线| 久色激情| 乱码操操| 色五月激情| 午夜婷婷久久| 亚洲XX网| 婷婷五月天性爱视频| 99资源人人| 狠狠色婷| 色婷婷精| 1024久婷| 日本色色网站| 五月婷婷六月丁香首页| 亚洲激情五月| 色婷婷香蕉丁丁网| 激情五月婷婷她| 久久综合中文字幕| 91超级碰在线视频| 丁香五月婷婷亚洲综合精品| 人人九色| 亚洲啪视频| 六月丁香啪| 99热这只有| 六月婷婷日| 亚洲久久婷婷| 另类图片激情五月天| 婷婷六月久久| 99久久精品网| 五月婷婷在线综合| 综合成人小说婷婷| 99热精品在线播放| 伊人婷婷五月天| 色婷婷五月天| 综合色色五月| 久久久色情| 激情黄色小说色五月| a色色色色色| 天天插天天日天天爽| 这里只有九九精品| www.激情五月天com| 久久久久婷| 婷婷五月天六月丁香| 丁香六月久久| 99热这里只有精品9| 六月婷婷激情| 91啪啪| 亚洲乱码日产精品BD| 五月丁香六月激情网站| 丁香五月婷婷操逼| 4399在线观看免费毛片| 热无码A∨| 99日韩网站| 九九黄色网| 色婷婷在线视频| 一区操| 国内一级精品| 99er国产| 丁香五月六月婷婷综合| 婷婷五月情| 天堂久久丁香| 丁香婷婷五月综合影院| 精品福利911| 五月丁香六月婷婷网| 91精品久久久久久| 91妻人人爽人人看片| www.99婷婷| 婷婷丁香视频| 97操碰在线视频| 丁香六月啪啪| av首页在线| 亚洲五月丁香综合网| 色综合天天天天做夜夜| 色色色成人网| 亚洲人成播放网站| 这里只有精9| 天天干天天插| 青柠影视免费高清电视剧| 2021日韩无码| 东北婷婷五月天| 91一起艹| 综合久久五| 狠狠干狠狠色| 殴美综合激情五月天免费视频| 超碰碰碰碰| 高清国产一级婬片a免费| 五月天激情综合网站| 五月丁香啪啪综合| 丁香五月婷婷五月基地| 五月六月播婷婷| 五月激情婷婷丁香| 俺也去色| 激情四射婷婷| 激情小说视频图片网| 五月天激情婷婷| 中文字幕AV网址| 深爱激情网综合| 婷婷五月天成人网| av国产精品偷| 久久精品66| 无码成人AAAAA毛片AI换脸| 五月丁香无码| 亚洲婷婷免费| 成人片黄网站色大片免费毛片| 综合啪啪| 超碰99热精品| 日韩欧美性爱| 天天干-天天日| 五月丁香六月婷| 久久xx| 久久久大香蕉| 69人人操人人爽| 人人草人人爱手机视频看看| 五月激情综合网| 操一区| 激情五月久久| sewuyuetingtingiii| 思思久热| 久久五月婷6 9| 99热这里只有精品一| 啊v视频在线观看| 亚洲AV网站| 人人妻人人澡| 色综合久久天天综合网| 丁香五月情| 在线观看亚洲AV| 综合色播| 六月丁香六月婷婷欧美| 99热精品中文字幕| 婷婷中文字暮| 桔色成人在线| 六月色激情| 在线观看婷婷5月| 99视频91| 久久九九免费视频| 色色色区| 五月天婷婷网站888| 2015超碰| 97色碰| 丁香五月激情宗合网| 能直接看的av网站| 99亚色色色| 熟女少妇内射日韩亚洲| 人妻久久久久久久久妻久久久久| 国产午夜精品一区二区三区嫩草| 十月丁香婷婷| 五月天激情小说网| 成人必爱视| 亚洲精品又粗又大又爽A片 | 五月天婷婷社区| 欧美日韩成人高清在线| 婷婷性爱| 草操AV在线| 国产精品第一国产精品| 久久深爱激情网| 午夜丁香六月婷| 国产精品社区| 99久久免费性爱视频`| 碰97 久| 婷婷五月天成人综合网| 色婷大香蕉| 色播五月综合网| 五月天伊人av| 九色综合网| 五月丁香免费看| 操操国产| 丁香婷婷色五月| 色五月综合网| 超碰9在| 丁香五月天社区| 五月婷婷六月婷| 婷婷五月,偷窥偷拍网| 久久五月丁香| 丁香六月婷婷综合在线| 久久视频婷婷| 狠狠穞A片一區二區三區| 影音先锋人妻出差| av线电影| 激情开心五月天| 丁香五月综合AV在线| 久久五月网| 极品人妻VIDEOSSS人妻| 激情5月婷婷| 秋霞午夜理论| 91免费试看| 99九色视频在线观看| 丁香五月av在线| 九九热自拍| 国产av一区二区三区| 五月丁香六月婷婷综合网站| 丁香色五月婷婷17C| 亚洲天堂色| 久99| 丁香五月天之婷婷影院| 天天拍夜夜撸| 伊人9草在线观看| 国产欧美精品AAAAAA片| 天天在线XXX| 色五月天天| 久久六月天| 亚洲色99综合天堂| 久久婷五月| 国产VA亚洲VA96| 成人婷婷五月天| 性高潮久久久久久-九九九九九九九九九九热-成人AV | www,色综合| 思思热在线播放| 激情六月婷婷| 国产99视频永久免费| 99热网址| 91无码色色| 97色色色色色| www五月| 婷婷五月深深的爱| 狠狠第四色| 丁香五月婷婷激情完整版| 97五月天| 99人妻碰碰碰久久久久禁片| 能看的av网站| 五月丁香激情在线| 激情五月深爱五月| 婷婷久久五月天| 九九www| 中文字幕丰满乱孑伦无码专区 | 综合色图婷婷| 色噜噜狠狠色综无码久久合欧美| 色婷精品91| 婷婷激情小说| 99re热视频这里只精品5| 激情99热| 婷婷五月天最新综合你懂的| 91人人爽狠狠狠| 热久久色| 免费观看高清无码| 99热黄| 热热色色五月天婷婷| 激情久久久| 五月丁香六月激情| 五月天开心激情综合网| 色域五月婷婷丁香| 91九色丨国产丨爆乳| 婷婷丁香五月色| 五月丁香六月婷婷亚洲视频| 九九无码视屏| 婷婷五月天亚洲精品| 五月丁香六月激情综合啪啪| 色。 婷婷婷| 男人天堂亚洲综合| 开心婷婷五月激情网小说 | 久久久人妻| 亚洲中文字幕av| 香蕉综合网| 色噜噜狠狠色综合日日| 婷婷五月天综合网| 精品久久99码| 人妻丰满精品一区二区A片| 婷婷久久五月| 成人看片网站| 99re欧美精品| 深夜婷婷 丁香| 九九九激情网| 婷婷色偷拍| 婷婷综合影院| 五月天婷婷网站888| 99亚色色色| 第2色五月婷| 五月天激情小说婷婷| 噜噜噜噜噜日本视频| 色小说婷婷五月天天天| 色婷精品91| 最新热中文字幕| 久久精品在线| 亚洲另类噜噜| 人人播| WWW99热| 99自拍视频| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 琪琪色综合网站| 丁香五月天堂亚洲社区| 在线成人av播放| 91精品久久久久| 色综久久久| 五月丁香龟婷婷| 99热这里只有精品青草| 美女激情综合| 乱精品一区字幕二区| 亚洲中文AV| 色五月大| 丁香六月婷婷久久综合八月| 五月天婷婷开心| 五月天激情日色在线| 99爱视频| 色五月激情网| 婷婷五月综合免费在线| 九九热re99re6在线精品| 五月天激情小说| 婷婷丁香综合成人| www.99热精品| 亚洲五月婷婷| 午夜福利8055| 丁香婷婷久久| 丁香五月大片| 婷婷无码五月天| 九九99精品视频在线观看| 69天堂99| 丁香五月欧美成人| 另类丁香五月天区图| 丁香激情四射| 天堂成人A片永久免费网站| 久久伊人9| 亚洲人人96@| 成人开心五月天| 五月天色不卡| 97婷婷五月丁香| 大香蕉综合在线| 午夜色丁香| 激情久久久| 色月丁| 玖玖在线资源视频| 天天激情欧美美女| 91在线就要啪| 在线观看亚洲视频影院| 五月婷婷激情综合视频| 九九碰九九爱97超碰| www.夜夜爱.com| 99热久只有精品首页| 亚洲五月天综合色| 九九九这里只有精品| 婷婷五月天成人综合网| 五月丁香婷爱在线| 欧美丰满熟妇BBB久久久| 久久九精品| 久久人妻高清中文| 色五月六月| 9 9热这里有精品| 亚洲精品小视频| 超碰人人色| 99碰| 久久这里只有精品1| 色播婷婷五月天| 久久婷婷资源| 嫩BBB槡BBBB搡BBBB视频| 亚洲婷婷五月天| 超碰99热精品| 五月天婷婷久色| 天天插天天插| 六月丁香婷婷综合狠狠爱夜夜爱| 狠狠色综合五月| 伊人久久婷婷| 99碰碰中文| 激情婷婷五月天日本系列| 99色综合| AV激情五月| 色婷婷激情| 婷婷五月综合丁香久久| RenRenSe在线视频网站| 激情五月天在线视频| 五月丁香性爱| 日韩aaaaa| 99热这里只有精品首页| 中文字幕av在线| 激情综合激情综合| AV网址大全在| 亚洲性色XXXXX| 丁香五月影| 桃色激情婷婷伊人网| www.色婷婷.com| 26uuu视频欧美| 九月婷婷久久久| 粉嫩av蜜桃av蜜臀av| 五月婷婷啪啪| 久久98热re| 丁香五月激情网| 欧美激情久|