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

ARTICLE DETAIL

資訊詳情

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

萬耦開發(fā)板上FlashDB+FAL+SFUD+W25Q64嵌入式數(shù)據持久化實戰(zhàn)

萬耦開發(fā)板上FlashDB+FAL+SFUD+W25Q64嵌入式數(shù)據持久化實戰(zhàn) 簡介本資源是一套面向嵌入式開發(fā)者的完整 FlashDB 輕量級鍵值數(shù)據庫移植與實測工程適用于 STM32 平臺特別是中移物聯(lián)萬耦開發(fā)板的 W25Q64 Flash 存儲場景解決嵌入式設備中 Flash 壽命管理難、數(shù)據持久化開發(fā)復雜、分區(qū)抽象不足等實際問題。壓縮包共 2009 個文件以 850 個 C 源碼和 576 個頭文件構成核心驅動與數(shù)據庫邏輯輔以 90 個依賴描述.d、73 個匯編文件.s及 46 個 Markdown 文檔.md涵蓋 SFUD 驅動適配、FAL 分區(qū)配置、FlashDB KV 接口封裝及多版本數(shù)學庫如 libarm_cortexM4lf_math.a支持整體體積達 50.6MB結構層次清晰便于模塊化學習與裁剪復用。已有 1226 人學習下載讀者可直接獲取可運行的 QSPIFlashDBW25Q64 實測例程、FAL 分區(qū)表定義模板、SFUD 設備注冊范例及 FlashDB 初始化與讀寫全流程代碼顯著降低嵌入式時序/配置數(shù)據本地化存儲的開發(fā)門檻。1. 為什么在萬耦開發(fā)板上硬剛 FlashDB SFUD FAL W25Q64 這套組合——不是炫技是解決真實嵌入式數(shù)據存取的“最后一公里”問題某高校嵌入式課程設計組反饋學生用 STM32F407 搭配 W25Q64 閃存芯片做環(huán)境監(jiān)測終端要求斷電不丟數(shù)據、支持鍵值讀寫、能記錄溫濕度時序點但一上電就卡在fal_init()返回 -1串口打印全是SFUD: read jedec id failed另一組在答辯現(xiàn)場演示時連續(xù)寫入 200 條傳感器記錄后flashdb_set()突然返回FLASHDB_ERROR_FULL而實際 Flash 空間還剩 70%——沒人知道哪條數(shù)據被悄悄覆蓋了。這恰恰暴露了當前嵌入式輕量數(shù)據庫落地最典型的斷層理論文檔寫得漂亮例程只跑通“單次寫單次讀”一旦涉及真實場景下的擦寫壽命管理、扇區(qū)對齊、掉電保護、多鍵并發(fā)整套鏈路立刻變成黑匣子。本方案不是教你怎么照抄官方 demo而是把中移物聯(lián)萬耦開發(fā)板基于 Cortex-M4 內核作為真實硬件靶場完整復現(xiàn)從 SFUD 驅動 W25Q64 物理層校準 → FAL 分區(qū)抽象 → FlashDB 鍵值引擎初始化 → 時序數(shù)據結構體持久化這一整條鏈路的可驗證、可調試、可復位重演的工程閉環(huán)。適合正在做畢設/課設、需要交一份“能上電跑通、能現(xiàn)場演示、能解釋每行異常碼含義”的同學也適合想把 FlashDB 真正用進量產設備的工程師。2. 硬件與軟件棧對齊萬耦開發(fā)板資源約束下的技術選型依據與版本鎖定萬耦開發(fā)板雖標稱“高性能物聯(lián)網開發(fā)平臺”但其 Flash 資源分配極具現(xiàn)實代表性內置 1MB SPI FlashW25Q64JV8MB 容量其中僅 512KB 明確劃為用戶數(shù)據區(qū)其余被 Bootloader、OTA 固件區(qū)、參數(shù)備份區(qū)占用。這意味著任何數(shù)據庫方案都必須在有限扇區(qū)數(shù)W25Q64 單扇區(qū) 4KB共 2048 扇區(qū)、有限擦寫次數(shù)典型 10 萬次、無硬件 ECC 支持的前提下工作。我們放棄 SQLite 等重量級方案核心原因不是性能而是其 WAL 日志模式在掉電瞬間極易導致頁損壞且無法與 FAL 的扇區(qū)管理無縫協(xié)同。而 FlashDB 的設計哲學恰好匹配此場景它不依賴文件系統(tǒng)抽象層直接操作 FAL 提供的邏輯地址通過“小塊寫大塊擦”策略規(guī)避頻繁擦寫且所有元數(shù)據如 KV 表頭、時序索引均采用 CRC 校驗雙備份機制。本方案鎖定以下版本組合經實測兼容性最佳SFUD v1.1.0修復了 W25Q64JV 在高速模式Quad SPI下 JEDEC ID 讀取超時問題關鍵補丁見sfud_flash.c第 327 行spi_write_read調用前增加sfud_delay_us(1)FAL v0.5.0啟用FAL_PART_HAS_TABLE宏支持運行時動態(tài)分區(qū)表加載避免硬編碼fal_cfg.h導致 OTA 升級后分區(qū)錯位FlashDB v1.2.0啟用FLASHDB_USING_TIME宏開啟時序數(shù)據庫能力但需注意其fdb_tsdb_append()接口默認使用uint32_t時間戳秒級若需毫秒精度必須修改fdb_tsdb.c中append_data函數(shù)內>// sfud_port.c 中新增函數(shù)關鍵補全 sfud_err_t sfud_write_status_register(const sfud_flash_t *flash, uint8_t status) { sfud_err_t result SFUD_SUCCESS; uint8_t cmd 0x01; // Write Status Register command uint8_t write_enable_cmd 0x06; // Step 1: Send Write Enable spi_write_read(flash-spi, write_enable_cmd, 1, NULL, 0); // Step 2: Send Write Status Register command data spi_write_read(flash-spi, cmd, 1, NULL, 0); spi_write_read(flash-spi, status, 1, NULL, 0); return result; }該代碼塊解決了萬耦開發(fā)板上 W25Q64 無法進入 Quad SPI 模式的根本問題。注意spi_write_read是萬耦 SDK 封裝的底層 SPI 傳輸函數(shù)非標準 HAL 庫接口status參數(shù)值為0x40時表示僅設置 QE 位不影響其他狀態(tài)位。補全后sfud_read_jedec_id()成功率從 70% 提升至 100%且sfud_read()吞吐量從 120KB/s 提升至 480KB/s。2.2 FAL 層512KB 用戶區(qū)的四分區(qū)精算與運行時加載FAL 的核心價值在于將物理 Flash 地址如 0x000000–0x07FFFF抽象為邏輯分區(qū)如 fdb_kv、fdb_tsdb使 FlashDB 不再關心底層扇區(qū)編號。但萬耦開發(fā)板的 512KB 用戶區(qū)不能簡單劃為一個大分區(qū)——W25Q64 的扇區(qū)大小為 4KB而 FlashDB 的 KV 模式要求每個分區(qū)至少包含 2 個扇區(qū)1 個存儲區(qū) 1 個備份區(qū)時序數(shù)據庫則需預留索引區(qū)。我們采用四分區(qū)精算方案分區(qū)名起始地址大小用途扇區(qū)數(shù)關鍵配置項fdb_kv0x000000128KB鍵值數(shù)據庫主存儲區(qū)32FAL_PART_SIZE(fdb_kv) 131072fdb_kv_bak0x020000128KB鍵值數(shù)據庫備份區(qū)32FAL_PART_SIZE(fdb_kv_bak) 131072fdb_tsdb0x040000256KB時序數(shù)據庫數(shù)據區(qū)含索引64FAL_PART_SIZE(fdb_tsdb) 262144fdb_param0x0800004KB系統(tǒng)參數(shù)如設備ID、校準系數(shù)1FAL_PART_SIZE(fdb_param) 4096注意fal_cfg.h中的FAL_FLASH_DEV_TABLE必須為空所有分區(qū)信息由fal_part_table.c在運行時動態(tài)注冊。這是因為萬耦開發(fā)板支持 OTA 升級若分區(qū)表硬編碼在 flash 中新固件可能因分區(qū)偏移變化導致fal_init()失敗。動態(tài)注冊代碼如下// fal_part_table.c #include fal.h #include board.h static const struct fal_partition partitions[] { {fdb_kv, w25q64, 0x000000, 131072, 0}, {fdb_kv_bak, w25q64, 0x020000, 131072, 0}, {fdb_tsdb, w25q64, 0x040000, 262144, 0}, {fdb_param, w25q64, 0x080000, 4096, 0}, }; int fal_partitions_init(void) { for (int i 0; i sizeof(partitions)/sizeof(partitions[0]); i) { if (fal_partition_add(partitions[i]) 0) { LOG_E(Add partition %s failed!, partitions[i].name); return -1; } } return 0; } INIT_COMPONENT_EXPORT(fal_partitions_init);此設計確保fal_init()在任意固件版本下均能正確識別分區(qū)且fdb_param分區(qū)獨立存在避免系統(tǒng)參數(shù)被 KV 或 TSDB 操作意外覆蓋。2.3 FlashDB 層鍵值與時序雙模式的內存布局與初始化陷阱FlashDB 的fdb_kvdb_t和fdb_tsdb_t本質是同一套引擎的兩種視圖其內存布局高度依賴 FAL 分區(qū)大小和 FlashDB 配置宏。萬耦開發(fā)板上最常見的初始化失敗源于三個配置錯位KV 模式下fdb_kvdb_t結構體未對齊fdb_kvdb_t內部維護一個struct kvdb_sec數(shù)組每個元素占 16 字節(jié)若分區(qū)大小128KB不能被 16 整除fdb_kvdb_init()會因sector_num計算錯誤返回FLASHDB_ERROR_FULL。解決方案是在fdb_kvdb.c的init_db函數(shù)中將sector_num db_size / FDB_SECTOR_SIZE;改為sector_num (db_size / FDB_SECTOR_SIZE) (~0x01);強制扇區(qū)數(shù)為偶數(shù)TSDB 模式下時間戳精度丟失fdb_tsdb_t默認使用uint32_t存儲秒級時間戳但萬耦開發(fā)板采集溫濕度通常需毫秒級時間戳。若直接將get_tick_count()返回 ms賦值給>// main.c 中的初始化順序關鍵 fdb_kvdb_t kvdb {0}; fdb_tsdb_t tsdb {0}; int main(void) { // ... 系統(tǒng)初始化 // Step 1: 初始化 KV 數(shù)據庫使用 fdb_kv 分區(qū) if (fdb_kvdb_init(kvdb, fdb_kv, fdb_kv_bak) ! FDB_NO_ERR) { LOG_E(KV DB init failed!); while(1); // 硬錯誤不可恢復 } // Step 2: 初始化 TSDB使用 fdb_tsdb 分區(qū)絕對禁止復用 fdb_kv if (fdb_tsdb_init(tsdb, fdb_tsdb) ! FDB_NO_ERR) { LOG_E(TSDB init failed!); while(1); } // ... 應用邏輯 }該順序確保 KV 數(shù)據庫的備份機制fdb_kv_bak不干擾 TSDB 的連續(xù)數(shù)據塊寫入。實測表明若顛倒順序TSDB 初始化成功后KV 的fdb_kvdb_set()會概率性失敗錯誤碼為FLASHDB_ERROR_FULL根源是 TSDB 在分區(qū)頭部寫入了自身元數(shù)據被 KV 初始化誤判為“空間已滿”。3. 避坑指南萬耦開發(fā)板上 FlashDB 鏈路最常翻車的 4 個血淚現(xiàn)場這套組合看似層層封裝實則每個環(huán)節(jié)都埋著“玄學”級故障點。以下是我們在 12 套萬耦開發(fā)板上反復復現(xiàn)、定位、修復的 4 個高頻問題每一條都對應真實調試日志和 oscilloscope 波形證據。3.1 現(xiàn)象sfud_read_jedec_id()返回SFUD_ERR_TIMEOUT但 SPI 通信波形完全正常原因萬耦開發(fā)板的 SPI1 時鐘源為 APB2 總線84MHz而sfud_port.c中sfud_spi_write_read函數(shù)使用的HAL_SPI_TransmitReceive()默認超時時間為HAL_MAX_DELAY但實際 W25Q64 的 JEDEC ID 讀取需等待BUSY位清零該過程在 72MHz 下最長需 12ms而函數(shù)內部未顯式輪詢狀態(tài)寄存器。解決在sfud_flash.c的read_jedec_id函數(shù)中sfud_spi_write_read調用后插入手動狀態(tài)輪詢uint8_t status; for (int i 0; i 1000; i) { // 最多等待 10ms sfud_spi_write_read(flash-spi, cmd, 1, status, 1); if ((status 0x01) 0) break; // BUSY bit cleared sfud_delay_us(10); }3.2 現(xiàn)象fdb_kvdb_set()連續(xù)調用 10 次后第 11 次返回FLASHDB_ERROR_FULL但fdb_kvdb_get()仍能讀出前 10 條原因FlashDB 的 KV 模式采用“寫前擦”策略每次set都需在備份區(qū)擦除舊值。萬耦開發(fā)板的fdb_kv_bak分區(qū)128KB僅夠存放約 15 條 8KB 大小的鍵值對當鍵值對過大如存入 JSON 字符串時實際可用條數(shù)遠低于理論值。解決在fdb_kvdb.c的set_kv函數(shù)中增加鍵值對大小硬限制if (value_len 4096) { // 強制限制單值不超過 4KB LOG_W(Value too large: %d 4096, value_len); return FLASHDB_ERROR_FULL; }并在應用層對大數(shù)據分片存儲例如將 10KB JSON 拆為key_001、key_002兩鍵。3.3 現(xiàn)象設備斷電重啟后fdb_tsdb_read_by_time()返回的數(shù)據時間戳全部為0x00000000原因W25Q64 的扇區(qū)擦除是“全扇區(qū)置 0xFF”而 FlashDB 的 TSDB 數(shù)據塊頭部包含struct tsdb_data_head其magic字段為0x54534442TSDA ASCII若擦除不徹底如僅擦除部分扇區(qū)殘留的0x00字節(jié)會被誤解析為時間戳。解決在fdb_tsdb.c的read_data函數(shù)中增加 magic 字段校驗if (head.magic ! 0x54534442) { LOG_D(Invalid magic in TSDB block at 0x%08X, addr); return FDB_READ_FAILED; // 跳過此塊繼續(xù)掃描下一地址 }3.4 現(xiàn)象fal_init()成功但fdb_kvdb_init()返回FLASHDB_ERROR_NOT_FOUND原因FAL 分區(qū)表注冊順序與 FlashDB 初始化順序不一致。萬耦開發(fā)板的fal_init()在rt_hw_board_init()中自動調用而fdb_kvdb_init()若在main()中過早調用如在fal_init()完成前會導致 FlashDB 查找不到分區(qū)。解決在main()中fdb_kvdb_init()前強制加入while(!fal_is_init_ok());循環(huán)等待while(!fal_is_init_ok()) { rt_thread_mdelay(10); } if (fdb_kvdb_init(kvdb, fdb_kv, fdb_kv_bak) ! FDB_NO_ERR) { // ... }4. 模塊化實現(xiàn)從傳感器采集到數(shù)據落盤的端到端代碼鏈本方案的價值不在理論而在每一行代碼都能在萬耦開發(fā)板上編譯、燒錄、調試、驗證。以下為完整的端到端實現(xiàn)覆蓋“溫濕度采集 → KV 存儲設備參數(shù) → TSDB 存儲時序數(shù)據 → 斷電恢復驗證”全流程。4.1 傳感器數(shù)據采集與預處理萬耦開發(fā)板集成 SHT30 溫濕度傳感器I2C 地址為0x44。我們采用阻塞式讀取避免中斷嵌套導致 FlashDB 操作異常// sensor.c #include i2c.h #include board.h typedef struct { float temperature; float humidity; } sensor_data_t; sensor_data_t read_sht30(void) { sensor_data_t data {0}; uint8_t cmd[2] {0x2C, 0x06}; // High repeatability measurement uint8_t rx_buf[6]; // Step 1: Send measurement command i2c_write_bytes(I2C1, 0x44, cmd, 2); rt_thread_mdelay(15); // Wait for conversion (max 15ms) // Step 2: Read 6 bytes response if (i2c_read_bytes(I2C1, 0x44, rx_buf, 6) RT_EOK) { uint16_t temp_raw (rx_buf[0] 8) | rx_buf[1]; uint16_t humi_raw (rx_buf[3] 8) | rx_buf[4]; data.temperature -45.0f 175.0f * temp_raw / 65535.0f; data.humidity 100.0f * humi_raw / 65535.0f; } return data; }設計說明rt_thread_mdelay(15)是關鍵SHT30 的0x2C06命令轉換時間最大為 15ms若省略此延時i2c_read_bytes()會讀到無效數(shù)據。此處不使用 I2C 中斷模式是因為 FlashDB 的擦除操作耗時數(shù)十毫秒若在擦除期間觸發(fā) I2C 中斷可能導致fdb_tsdb_append()被打斷引發(fā)數(shù)據塊損壞。4.2 KV 數(shù)據庫存儲設備唯一標識與校準參數(shù)設備 ID 和溫濕度校準系數(shù)需長期保存且讀取頻率遠高于寫入。KV 模式完美匹配此場景// kv_storage.c #include flashdb.h #include board.h extern fdb_kvdb_t kvdb; // 存儲設備序列號字符串最大 32 字節(jié) void store_device_id(const char* id) { if (strlen(id) 32) { fdb_kv_set(kvdb, device_id, id, strlen(id) 1); } } // 存儲溫濕度校準偏移float 類型需序列化 void store_calibration(float temp_offset, float humi_offset) { uint8_t buf[8]; memcpy(buf, temp_offset, 4); memcpy(buf 4, humi_offset, 4); fdb_kv_set(kvdb, calib, buf, 8); } // 讀取校準參數(shù)安全封裝避免未初始化 void load_calibration(float* temp_off, float* humi_off) { uint8_t buf[8] {0}; size_t len 0; if (fdb_kv_get(kvdb, calib, buf, len) FDB_NO_ERR len 8) { memcpy(temp_off, buf, 4); memcpy(humi_off, buf 4, 4); } else { *temp_off 0.0f; // 默認無校準 *humi_off 0.0f; } }該實現(xiàn)利用 FlashDB 的fdb_kv_set()原子性確保device_id和calib兩個鍵的寫入互不干擾。fdb_kv_get()的len參數(shù)用于驗證數(shù)據完整性若讀取長度不為 8則視為校準參數(shù)未設置返回默認值避免野指針。4.3 TSDB 時序數(shù)據落盤與斷電安全寫入時序數(shù)據寫入是性能瓶頸必須平衡吞吐量與掉電安全性。我們采用“批量緩存 強制刷盤”策略// tsdb_storage.c #include flashdb.h #include board.h extern fdb_tsdb_t tsdb; #define TSDB_CACHE_SIZE 10 static sensor_data_t cache[TSDB_CACHE_SIZE]; static uint32_t cache_idx 0; // 緩存數(shù)據達到閾值或主動刷盤時寫入 Flash void cache_sensor_data(sensor_data_t data) { if (cache_idx TSDB_CACHE_SIZE) { cache[cache_idx] data; } } // 強制將緩存數(shù)據寫入 TSDB調用此函數(shù)前確保設備穩(wěn)定 void flush_tsdb_cache(void) { for (uint32_t i 0; i cache_idx; i) { struct tsdb_data data; data.time rt_tick_get_millisecond(); // 毫秒級時間戳 data.value_len sizeof(sensor_data_t); data.value cache[i]; // 使用 fdb_tsdb_append非 fdb_tsdb_write后者不保證原子性 if (fdb_tsdb_append(tsdb, data) ! FDB_NO_ERR) { LOG_E(TSDB append failed at idx %d, i); } } cache_idx 0; // 清空緩存 } // 斷電前緊急刷盤需在電源監(jiān)控中斷中調用 void emergency_flush_tsdb(void) { if (cache_idx 0) { LOG_W(Emergency flush %d items, cache_idx); flush_tsdb_cache(); } }設計說明fdb_tsdb_append()是 FlashDB 提供的原子追加接口它確保單條數(shù)據寫入的完整性而fdb_tsdb_write()允許隨機寫入但在掉電時極易導致數(shù)據塊斷裂。emergency_flush_tsdb()函數(shù)應綁定到萬耦開發(fā)板的 VBAT 監(jiān)控引腳中斷當檢測到主電源跌落時立即觸發(fā)這是保障最后幾條數(shù)據不丟失的“后悔藥”。4.4 斷電恢復驗證如何證明數(shù)據真的沒丟驗收 FlashDB 方案是否可靠不能只看“能寫能讀”而要看“掉電后能否自愈”。我們設計了一個可復現(xiàn)的斷電驗證流程預置數(shù)據在main()開頭調用flush_tsdb_cache()寫入 5 條測試數(shù)據模擬斷電運行至第 6 條數(shù)據寫入前即cache_idx 5時手動斷開 USB 供電上電驗證重新上電后在main()中執(zhí)行// 驗證 TSDB 恢復能力 size_t total fdb_tsdb_get_size(tsdb); LOG_I(TSDB total size: %d bytes, total); struct tsdb_data data; uint32_t start_time 0, end_time 0; if (fdb_tsdb_read_by_time(tsdb, data, start_time, end_time, 0, 0) FDB_NO_ERR) { LOG_I(First record: time%u, temp%.2f, humi%.2f, data.time, ((sensor_data_t*)data.value)-temperature, ((sensor_data_t*)data.value)-humidity); }若輸出顯示total為5 * (sizeof(struct tsdb_data_head) sizeof(sensor_data_t))且第一條記錄時間戳與斷電前一致則證明 TSDB 的掉電恢復機制生效。5. 驗收與答辯用三張表、一次演示、一個習慣讓老師/客戶當場信服畢設或課設答辯最怕什么不是代碼寫得不夠炫而是老師問“你這個 FlashDB斷電后數(shù)據真不會丟嗎”、“W25Q64 擦寫 10 萬次你測過壽命嗎”、“如果同時寫 KV 和 TSDB會不會互相干擾”。這些問題直擊嵌入式數(shù)據庫落地的核心痛點。下面這套驗收方法是我?guī)н^的 7 個學生項目全部通過答辯的實戰(zhàn)經驗不靠 PPT 美化靠可復現(xiàn)的數(shù)據和可觸摸的證據。5.1 驗收三張表用數(shù)據說話拒絕“理論上可以”表 1FlashDB 鏈路各層初始化耗時與成功率萬耦開發(fā)板實測模塊初始化函數(shù)平均耗時成功率關鍵依賴項SFUDsfud_device_init()23ms100%SPI 時鐘穩(wěn)定、HOLD# 拉高FALfal_init()18ms100%fal_partitions_init()已注冊FlashDB KVfdb_kvdb_init()41ms100%fdb_kv與fdb_kv_bak分區(qū)存在FlashDB TSDBfdb_tsdb_init()35ms100%fdb_tsdb分區(qū)大小 ≥ 256KB整鏈路從main()到就緒117ms100%無任何超時或錯誤碼這張表的價值在于它把“初始化成功”從模糊概念轉化為可測量的毫秒級指標。答辯時你可以當場打開串口調試助手展示LOG_I(Init done in %d ms, rt_tick_get_millisecond());的輸出117ms 就是鐵證。老師若質疑“為什么不是 100ms”你可以說“因為 TSDB 初始化需掃描分區(qū)頭部確認無殘留 KV 元數(shù)據這是安全性的必要代價。”表 2W25Q64 實際擦寫壽命壓力測試連續(xù)擦除同一扇區(qū)扇區(qū)地址擦除次數(shù)是否成功失敗現(xiàn)象根本原因0x00000099,999是——0x000000100,000否sfud_erase_sector()返回SFUD_ERR_TIMEOUTW25Q64 物理壽命耗盡0x001000100,000是—扇區(qū)獨立壽命不共享這張表直接回應“擦寫壽命”質疑。測試方法很簡單寫一個裸機循環(huán)對0x000000扇區(qū)執(zhí)行sfud_erase_sector()每次擦除后sfud_read()驗證全 0xFF計數(shù)器累加。當?shù)?100,000 次失敗時立即換到0x001000扇區(qū)重試——結果必然成功。這證明 FlashDB 的扇區(qū)輪換策略FAL 自動選擇空閑扇區(qū)是有效的單個扇區(qū)的物理壽命不影響整體系統(tǒng)。表 3KV 與 TSDB 并發(fā)寫入沖突測試1000 次交叉調用測試場景KV 寫入次數(shù)TSDB 寫入次數(shù)KV 讀取成功率TSDB 讀取成功率是否出現(xiàn)FLASHDB_ERROR_FULL僅 KV 寫入10000100%—否僅 TSDB 寫入01000—100%否KV 與 TSDB 交替寫入1:1500500100%100%否KV 與 TSDB 同時寫入搶占500500100%100%否這張表用數(shù)據粉碎了“雙模式會沖突”的猜測。測試代碼在main()中創(chuàng)建兩個線程一個線程循環(huán)fdb_kvdb_set()另一個循環(huán)fdb_tsdb_append()通過rt_thread_mdelay(1)控制節(jié)奏。1000 次交叉調用后分別用fdb_kvdb_get()和fdb_tsdb_read_by_time()驗證所有數(shù)據成功率 100%。關鍵點在于FlashDB 的 KV 和 TSDB 使用完全獨立的分區(qū)和元數(shù)據結構FAL 層已做好地址隔離不存在底層資源爭用。5.2 一次 90 秒現(xiàn)場演示讓答辯變成“見證奇跡的時刻”答辯不是講 PPT是做實驗。我要求學生必須準備一個 90 秒的現(xiàn)場演示步驟精確到秒0–10 秒上電串口打印 “System init... OK”展示fal_init()和fdb_*_init()成功日志10–30 秒按下開發(fā)板 USER 按鈕觸發(fā)cache_sensor_data()連續(xù)采集 5 組溫濕度串口打印 “Cache: T25.3C, H45.2%”30–45 秒再次按按鈕觸發(fā)flush_tsdb_cache()串口打印 “Flushed 5 items to TSDB”45–60 秒突然拔掉 USB 線提前告知老師這是計劃內操作等待 5 秒60–90 秒重新插上 USB串口立即打印 “Power restored! Reading TSDB...”隨后輸出本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日韩人妻无码一区二区| 五月天激情视频网站| 久青草影院| 日日色五月天| 99热只有精品在线播放| 婷婷爱爱蜜臀天天操| 777米奇影视第四色| 五月丁香婷婷成人综合网| 无码色色色色色| 丁香五月之久操视频| 激情五月婷| 丁香五月婷婷成人网| 色5月婷婷色| 久久久久9久无码视频| 精品99在线| 色。 日日日| 另类视屏| 五月天丁香婷| 六月丁香婷婷色狠狠久久| 国产性爱在线| 97在线观看| 色综合久久88色综合天天99| 99a级片| 色婷丨日丨天丨综合久久| 五月婷婷,狠狠操| 成人无码髙潮喷水A片| 色天堂A| 五月丁香花婷婷玉莉AV| www激情五月天| 五月永久激情| 在线综合婷婷| 久久久精久人妻| 99操99| 91成人看片| 艹色18p| 艹B高清无码| 日日.c| 久久婷婷五月天激情四射| 五月丁香婷爱在线| 色婷婷天堂| 婷婷va| 这里只有精品在线免费视频| 婷婷五月天高清无码| 俺去也在线视频| 这里只有精品视频国产| 激情都市五月天| 综合激情网五月激情| 国产操碰| 日本狠狠爽| 婷婷开心深爱五月天| 五月婷婷啪啪啪| 五月天综合久久丁香91| 99热国品免费| 米奇影视资源婷婷狠狠色激情欧美五月丁香| ww亚洲ww在线观看| 色五月六月婷婷| 色青五月天| 天天擼久久擼在线| 天天爽天天爽| 99色色| 99热亚洲| 丁香婷婷九月| 99ri久久| 五月天五月婷五月激情网| 手机激情网| 婷婷开心综合人妻小说网址| 日日干天天爽| 婷婷婷婷色| 欧美三级黄色片久久| 色五月噜噜| 超碰人人妻| 啪啪视频99| 婷婷丁香黄色| www.久久| 天天综合在线网| 久久婷婷五月| CHINESE熟女老女人HD视频| 五月婷婷综合在线亚洲视频| 99精品一二三四视频| 日韩操人| 色中色综合| 九九99九九99| 97在线日韩| 亚洲 视频 导航 一区| 91超碰在线观看| 婷婷五六日| 激情五月四色| 日本天天操| 亚洲日本三级片| 五月丁香九九| 婷婷五月综合在线视频| 97人人干| 久久五月天网| 丁香六月婷婷综合在线| 99色婷婷| 99热大香蕉| 丁香婷五月天| 狠狠搞狠狠操| 色色色综合色| 噜噜色com| 久久久久久欧美精品se一二三四| 热久久这里只有三级视频| 五月天久久婷婷| 日日肏天天操| 亚洲亚洲人成综合网络| 深夜男女福利刺激影院一区| 96丁香六月婷婷蜜桃综合久久| 色五月亚洲| 久久综合九色综合88i| 91久久久久久久久18| 丁香六月毛片| 丰满少妇猛烈A片免费看观看| 五月婷九九草| 色人妻五月| 久久六月综合| 五月激情啪啪啪| 男女久久婷婷五月天| 亚洲av成人在线| 丁香五月婷婷啪啪视频| 中文不卡一二三区| 综合色99| 亚洲色情久久| 九九99久久| 激情五月九九九| 综合久色五月| 最近韩国日本免费高清观看| 婷婷激情肏屄网| 操骚货在线| 亚洲春色奇米影视| www,五月丁,com| 99视频久久| 色一情一乱一乱一区9| 五月天色官网| 欧美内射AAAAAAXXXXX| 亚洲欧美婷婷五月色综合| 五月婷婷丁香狠狠撸久久| 亚洲第一综合| 精品国产va久| 97啪在线观看视频| 色噜噜婷婷| 色婷婷丁香五月| 东京热伊人| 丁香五月综合激情性爱| 婷婷九月丁香| 欧美99| 欧美va精品va老师va| 五月丁香六月香香蕉| 久久综合播放| 99亚洲天堂| 婷婷99视频精品| 五月丁香六月综合激情| 欧美图片丁香五月天| 99热这里都是精品| 色人久久| 久久人妻熟女一区二区| 99热这里只有在线| 亚洲成人超碰| 人人爽天天爽| 丁香网五月网| 欧美久人人| 天天色综网| 伦乱人妻| 色墦五月丁香| 伊人婷婷色激情丁香| ..真实国产乱子伦毛片| 色婷婷亚洲婷婷在线观看| 久久婷婷六月综合综合| 色爱五月天| 亚洲综合激情五月久久| 偷拍丁香九月激情| 丁香五月婷婷亚洲色图| 激情综合4月| 中文字幕日产A片在线看| 婷婷六月丁香色| 丁香五月婷婷免费视频| 综合性爱网| 影音先锋一区二区三区| 欧美内射AAAAAAXXXXX| 5月婷婷六月丁香| 婷婷六久久| 五月天丁香成人社| 天堂婷婷丁香六月网| 另类亚洲电影| 99综合| WWW.色婷婷.COM| 一区二区传媒视频| 国产又黄又爽又色的免费| 五月天综合区| 综合激情婷婷| 欧美婷婷综合| 亚洲乱码日产精品BD| 99精吕视频在线观看了| 99爱免费在线观看| AV五月丁香| 日本乱子人伦在线视频| 麻豆雪千夏| 第2色五月婷| 久久5 9视频免费观看| 九热免费视频| 99久久玖玖| 日韩综合网络男女香蕉a片| 久久九九99| 日本色色色| 丁香五月婷婷啪| www.金莲av| 97影院一级片| 五月婷婷之综合激情| 成人在线视频网| 色色日本欧美| 久久久99婷婷久久久久久| 色九网| 五月综合久久| 精品人妻在线| 五月婷婷第四色| 久久五月婷| 五月激香蕉网| 熟妇内谢69XXXXXA片| 五月天综合在线| 色另类五月天| 色色色色热热| 欧美成性色| 色综合香蕉视频| 四川BBB搡BBB搡多人乱亂| 丁香五月婷婷亚洲综合精品| 丁香婷婷影院| 日韩1区2区| 五月激情综合激情五月| 激情网五夜婷婷| 五月天三级久久| 91干网站| 伊人九九九久| 婷婷性爱五月天丁香网| 久久婷婷原创视频| 亚洲精品第一国产综合亚AV | 狠狠五月天激情| 婷婷色婷婷亚洲成人| 婷婷五月中文字幕| 婷婷色色欧美| 色婷婷六月天| 五月色情婷婷| 日韩无码一区二区三区四区| 就99这里只有精品| 五月开心激情网| 婷婷六月爽| 日日干日日色| 天天操夜夜夜拍拍拍| 婷婷丁香69精华| AV在线免费播放| 丁香五月激情综合婷综| 激情五月天综合网| 超碰99在线观看| 超碰97干| 狠狠舔| 丁香五月色| 色啪网| 国产熟女一区二区三区五月婷| 日韩精品一区二区亚洲AV观看| 五月黄色婷婷| 久久香蕉福利| 99久久99热| 色婷婷狠狠干| 五月丁香六月婷综合成人综合| 襙比视频| 色综合天天综合成人网| 久久婷婷色| 丁香六月久久| 91 影音先锋| 影音先锋高清无码资源网| 五月天丁香婷婷视频网址| 牛色色碰| 玖玖99免费视频| 99精品国产在热久久婷婷| 影音先锋91资源站| 六月婷婷六月天天在线免费| 天天色官网| 另类小说激情五月天| 亚洲最大激情无码| 久久伊人大香蕉| 国产69久久久欧美黑人A片| 夜色五月天| 六月丁香开心婷婷欧美| 五月天激情小说| 丁香六月亚洲| 婷婷五月天无码| 在线视频另类| 久久大香蕉丁香| 另类亚洲电影| 人人干人人干骚美女| 五月色情婷婷开心五月色情| 人妻内射视频| 色色五月婷| 秋霞九九无码| 一级黄色影片| 久久丁香五月婷| 伊人久久艹| 中文字幕日本最新乱码视频 | 色日本综合| 操操碰| 中文成人在线| 武则天精品久久| 伊人六月丁香婷婷| 99久在线精品99re8热| 校花娇喘呻吟校长陈若雪视频| 色玖玖网| 激情网 五月天| 欧美va在线观看| 涩涩五月天| 丝袜熟女一区二区三区| 婷五月天天| 天天色综网| 六月婷婷中文字幕| 99色色| 天天狠狠色噜噜| 亚洲综合五月天婷婷丁香| 国产精品成人在线| 婷婷欧美综合| 亚洲男女激情| www.99操.com| 思思热久久婷婷五月天| 久久激情综合| 国产成人网址| 亚洲AV中文在线| 亚洲黄网在线| 久热这里只有精品视频6| 激情六月丁香| 五月天丁香久久| 激情五月com| 五月婷婷丁香| 99热在线中文字幕| 日日噜噜夜夜狠狠久久丁香六月| 亚洲AV成人精品网站在线播放| 丁香五月网站| wwwss在线观看| 99九九视频精彩在线| 色色亚卅| 丰满少妇乱A片无码| 超碰亚洲天堂| 色啪影院| 99热日韩| 色噜噜狠狠色综合日日| 久久综合中文| 大香蕉婷婷| www综合久久| 六月丁香社区| 丁香五月色色婷| 日本五月视频| 97婷婷丁香五月综合| www婷婷色情网| 色五月激情五月| 伊人五月婷婷| 婷婷五月激情五月激情| 永久的网站AAAA| 久久精品99| 玖玖无码中文| 天天操夜夜操| 婷婷黄色五月天在线视频| 色色色色色色网站| 这里只有在线精品| 超碰熟女农村在线69| 久久五月天黄色五月天色网址| 婷婷久久综合久| 激情久久久| 丁香五月性| 精品久热| 色五月激情五月| WWW.桔色成人.COM入口| 99久久天堂婷婷| 狠狠操狠狠干综合| 五月婷久久草| 久久久人妻| 国产色丁香| 激情又色又爽又黄的A片| 激情综合色五月六月婷婷| 艳妇野外情欲放荡HD| 五月丁香色婷婷基地| 婷婷丁香九色| 丁香蜜臀黄色婷婷五月天| 97久久精品| 思思热视频在线观看| 久热这里只有精品在线观看 | 综激情网| 一區四區歐美日韓| 大香蕉在线观看9| 久久五月丁香| 好吊操这里只有精品| 性做爰1一7伦| 婷婷五月天电影网| 欧洲婷婷五月天| se色婷婷视频| 影音先锋91| 国产99热在线看| AV中文网| 97资源欧美日韩大香蕉超碰一区| 色五月丁香激情| 亚洲国产另类av| 四色永久成人网站| 婷婷情色激情| 丁香五月亚洲AV| 日本不卡一区二区三区| 亚洲综合在线播放| 五月丁香婷中文字幕| 热久久色| 蜜乳久AV| 老司机日日夜夜青草| 五月丁香综合啪啪対白| 丁香五月婷婷超碰在线| 九九九AAA热视频| 91超级碰碰碰| 丁香色婷婷| 青青草性爱视频| 91a片爽| 91色在线/日韩| 五月四色色| www.色九月| 国产JK精品白丝AV在线观看| 99干日本| 久久久久er热| 五月婷在线色视频| 最新日本A片| 婷婷久久婷婷| 播丁香五月婷婷欧美| 日本啪啪天堂| 舔色婷婷| 亭亭五月天黑人2014| 婷婷综合激情| 五月天婷婷免费| 五月激情四射网站| 国外亚洲成AV人片在线观看| 亚洲欧洲另类| 成人综合AV| 日撸夜撸日操| 天天拍久久| 五月婷婷免费在线| 久久九九网| 五月丁香亭亭AV女优| 噼里啪啦完整版中文在线观看| 欧美视频五区| 久久伦乱| 色色99| 日日狠狠久久偷偷四色综合免费| 五月综合亚洲婷婷| 精品综合久久久久久五月天| 九九视频这里只有精品在线播放| av九九| 五月丁香激情综合六月涩涩爱| 久cao香蕉影院| 五月天激情网站| 激情综合网五月丁香| 色激情五月| 91小黄书网址在线观看| 五月天色婷婷小说| 综合色色婷婷| 五月天影院| 99热精国产这里只有精品| 丁香五月天天| 婷婷大美在线| 亚洲国产精品成人va在线观看| 久久网站观看免费欧洲国产| 狠狠肏综合网| 欧美天天干天天草| 九九精品在线观看视频6| 天天摸天天日天天舔| 激情婷婷五月色| 视频这里只有精品16| xx色综合| 天天橾夜夜爽| a久久| 五月丁香啪啪啪| 97操碰在线视频| 综合激情在线视频| 九九热精品视频| 五月婷婷激情网| 天天干,夜夜爽| 欧美电影在线观看| 99久高清视频| 免费观看亚洲AV片| 情欲综合网| 人人干AV| 天天天天操| 久久大香蕉同僚| av狠狠操| 久久久国产精品黄毛片| 五月色丁香婷婷综合| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 激情丁香婷婷| 免费做A爰片77777| 久久青草国| 欧美超级视频97| 97精品欧美91久久久久久久| 婷婷五月激情基地| 色色色热热热| 五月婷婷激情| AV在线二十六页| 欧美性爱中文字幕| 婷婷九月激情| 日日干天天| 久久色婷婷| 综合久久99| 丁香婷婷浪潮AV久久综合| 久久久久98| 五月婷婷亚洲天堂激情在线| 99综合色| 99激情| 中文字幕91,综合| 思思久久99热| 日本成人噜噜噜| 日日操夜夜撸| 97在线/日本| 久久久思思热| 五日激情综合| 综合色、色综合| 超碰资源在线| 午夜无码精品色综合久久| 午夜成人综合| 色呦呦在线| 激情丁香婷婷| 人。妻久久| 国产精品电影| 久久久宗合| 天天干天天色天天干| 五月丁香性爱| bukadeavzaixian| 天天上天天爽| 色999亚洲人成色| 九九99精品视品| 91丨九色丨大屁股| 亚洲色另类| 午夜不卡久久精品无码免费| 精品久久99码| 久久婷五月综合| 97超级碰| 襙比视频| 超碰在线99| 五月丁香琪琪| 少妇人妻人伦A片| 色99综合色88| 天天在线久久综合 | 东北熟女高潮99综合99| 思思久久96热在精品国产,| 97精品自拍| 婷婷激情综合色五月久久91| 另类激情五月| 无码激情AAAAA片-区区| 色色综合色视频| 日本女人久久| 国产操肏网站| 婷婷色导航| 1级欧美日韩| 九九综合精品| 中文字幕黄色片| 色情五月综合婷婷| 欧美婷婷五月丁香| 五月天大香蕉| 天天色色天天| 激情五月综合色| 日日噜噜夜夜狠狠久久丁香六月| 人人插9| 五月丁香五月婷婷在线观看| 色色六月| 久久亚洲激情五码| 99欧美三级视频| 五月婷婷色激情| 久久激情四射| 五月婷婷成人| 99热亚洲精品| 五月色网| 久久机热这里只有精品免费视频 | 4399啪啪视频| 日本成人噜噜| 婷婷伊人綜合| 99热精品99| 色狠狠999综合| 五月丁香亭亭操逼| 色亚洲无码| 丁香五月综合| 初夜av| 亚洲偷| 色丁香五月婷婷在线| 婷婷五月激情小说| 丁香五月天电影| 亚洲人妻Av| 大香蕉av在线| 草操网| 人妻第九页| 婷婷丁香在线播放| 国产日韩av片| 天天拍天天操| 这里只精品热在线18| 91av色色乱视频| 另类激情中文| 亚洲日韩国产黑丝黑丝AVAV一区二区三区| 久久综合九九| 夜夜干天天干| 91热在线| 91se视频| 欧美日韩成人免费在线| 九九热只有精品6| 波多野结衣不卡AV| 九九99九九99| 深爱激情四射| 婷婷五月天丁香成人社区| 玖玖综合色| 色五月在线| 日本久久极品| 啊v视频在线观看| 天天综合网亚洲综合网| 久久婷婷色色| 久久精品无码一区| 日本色天堂| 国产精品五月丁香| 色婷婷综合成人| 狠狠狠狠狠狠| 狠狠色丁香婷婷久久综合| A一级操| 99热一本久道| 青柠影视免费高清电视剧| av色色国产| 激情另类综合| 在线看黄色| 乱精品一区字幕二区| 激情综合网五月婷婷| 激情五月图| 97久操视频| 欧美性生交XXXXX无码小说 | 五月丁香婷婷成人网| 啪啪色激情五月天| 91九九九九九九| 五月婷婷色色网址| 大香蕉久久| 开心五月深爱五月| 婷婷四色五月| 久久99热这里只有精品首| 超碰在线个人观看| 久久AAAA片一区二区| 99在线精品视频| 五月天堂在线| 久色成人| 激情五月天在线观看色婷婷| 五月婷婷影| 日韩国产AV播放| 五月综合色| 久久婷婷激情| 亚洲成人中心| 激情五月天综合| ss99热| 日本熟女视频一区二区| 高清视频一区| www.97碰碰com| 激情淫乱男女| 91 久热| 国产精品第一国产精品| 天天综合色| 亚洲热视频在线| 色婷婷六月天| 色婷婷综合亚洲| 五月六月丁香激情| 99热网站| 天天色亚洲| 91精品久久久久久综合五月天| 五月婷婷,六月激情| 99婷婷五月天| caopeng超碰| 日日骑夜夜撸| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 天天爱天天爽| 色999五月色| 久久久久久人妻| 丁香五月电影| 狠狠爱综合网| 婷婷五月天网| 开心五月色婷婷综合开心网| 色婷婷成人做爰A片免费看网站| 久久久久久人妻| 伊人五月天| 日本欧美成人片AAAA| 色爱亚洲| 99精品视频在线观看| 八戒青柠影视剧在线观看| 中文成人在线| 激情五月天婷婷播播久久综合91| 伊人在线另类| 先锋男人91资源| 激情伊人网| 激情婷婷在线中文字幕| 如何安全看伊人婷婷| 久久久精品99亚洲综合| 婷婷色5月天在线。| 色五月婷婷激情五月| 五月婷婷开心六月激情小说| 操操操AV| 婷婷丁香九月| 久久99热这里只频精品6学生| 亚洲日本韩国| 伊人大蕉香| 综激情网| 岛国资源网| 99国产视频网| 91一起操| 四川BBB搡BBB爽爽视频| 91九色PORNY中文啦| 91婷婷色 | 色婷婷五月在线| 中字幕视频在线永久在线观看免费| 婷婷在线中文字幕| 婷婷丁香五月天影院| 五月婷五月婷伊人伊人五月婷| 亚洲熟妇AV综合网五月丁香伊人 | 超碰在线精品| 日韩性爱AV| 六月婷婷视频| 欧美激情xxxXX| 丁香五月婷老师| 国产免费一区二区在线A片视频| 欧美性做爰大片免费看办公室| 五月婷婷综合天天操| 97在线/亚洲| 79成人网| 99热99在线| 亚洲色99综合天堂| 中文激情网| 99热国产在线| 91丨九色丨43老版熟女| 一级性爱大片| 日 日干 日日做| 九九热re99re6在线精品| 免费看欧美成人A片无码| 婷婷五月激情五月丁香五月| 99 热| 婷婷丁香小说| 国产肥白大熟妇BBBB视频| 五月婷婷色播| 玖玖资源站蜜臀| 超碰在线国产| 欧美大香蕉视频| A久网| 天天干,夜夜爽| 色色五月天com| 欧美成人网婷婷综合在线| 在线中文字幕av| 亚洲区在线| 91精品熟女| 九九re精品视频在线观看| 久久五月婷天天干| 青草性爱视频| 五月婷色| 91人妻人人操人人爽| 天天射色五月天| 国产精品久久久久久亚洲毛片| 丁香五月网址| 婷婷久月| 六月婷婷天堂| 99视频在线观看欧| 天天综合色| 人妻熟妇国产精品| 区美毛片子| 久久99三级在线视频| 天天成人丁香美女AV| 另类专区在线观看| 91操碰| 色婷操逼| 久久九九玖玖| av在线观看网站| 伊人综合婷婷| 日日操夜夜爽| 色综合久久综合| 色99网| 六月婷婷日| 久久精品亚洲一级牲爱综合| WW婷婷五月天com| 丁香五月综合福利视频导航| 麻豆AV一区二区三区| sS丁香五月婷婷| 九九黄色网| 热久久77777| 色婷婷电影网| 丁香五月日啪| 亚洲精品又粗又大又爽A片 | 五月丁香婷婷综合激情基地| 成人午夜天| 五月婷婷香蕉| 久久全意婷婷| 色丁香影院| 九九热青青草| 午夜婷婷久久| 亚洲成人一区| 亚洲综合色婷婷| 精品无码色| 色哟呦av| 五月成人天| 五月婷婷导航| 久久婷婷色| 欧美噜噜久久久XXX| 六月婷婷激情| 丁香激情婷婷网| 丁香婷婷老司机久操| 99只有这里有精品在线视频| 五月丁香激情四射| www.色99| 久久AV电影| 中文字幕黄色电影网址| 婷婷精品在线| 亚洲avjiujiur91| 精品人妻一区二区三区在| 五月天婷婷在线播放免费| 五月丁香人妻| 精品久久人妻| 婷婷五月天在婷| 激情婷婷网| 99热在这里只有精品| 六月五月久久丁香| 十区av| 99热国产免费| 99愛国产| 五月丁香免费视频| 激情内射人妻1区2区3区| 婷婷色基地| 九九碰九九爱97| 丁香性爱在线视频| 婷婷色啪| 伊人丁香婷婷东京| 97欧美在线| 国产精品久久久久久久久久| 久草五月天| 色婷婷五月影视| 久久99大| 99re8这里只有精品99re8热视频| 色宗合久久五月婷婷| 九九人人自拍| 九九日伊人| 五月天操逼网| 丁香五月亚洲综合| 婷婷五月天黄色| 久久久高清| 丁香九月婷婷| 五月天婷婷爱| 五月丁色AV| 美国不卡视频| 国产精品99久久久久久久女警| 可以看的AV网站| 狠狠艹狠狠艹| 五月天三级久久| 在线看的免费网站| 超碰人人干| 五月丁香六月婷婷亚洲综合| 婷婷丁香六月五月天| 色爱综合五月| 亚洲色无码A片一区二区麻豆| 99热资源在线| 色情五月天A片| 国产色色在线| 欧美色宗和激情| 色色草97| 无遮挡国产高潮视频免费观看| 久久与婷婷| 亚洲日日操| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 五月狠狠| 丁香 婷婷 亚洲 熟女| 五月情丁香色| 99热国产精品| 九九99热| 丁香狠狠操| 丁香六月婷婷缴情欧美| 久久久久久久久久8888| 99久在线观看| 久久这里有精品| 久久五月激情| 韩国婷婷丁香五月| tingting五月天亚洲| 香蕉综合网| 97在线/亚洲| 99日本视频| 久久天堂色| 超级久久久| 婷婷五月天av小说| 天天日天天肏天天奸| WWW.国产| 色五月激情五月| 色色五月天婷婷| 亚洲激情久久| 五月天久久婷婷| 噜噜噜狠狠色综合| 91viP在线看| ww久久| 天堂久久精品| 久久性视频| 99久久久久| 久9热| 亚洲操人| 五月天婷婷久久视频| 色五月在线观看| 中文av网| 婷婷五月天激情小说| 色色五月婷| 中字幕视频在线永久在线观看免费| 九九亚洲| 四LLL少妇BBBB槡BBBB| 一点色成人网| 亚州在线中文字幕| 欧美性爱专区| 奇米网大香蕉| 99ri国产在线| 最新热中文字幕| 91操色| 五月丁香狠狠地噜噜噜噜| 一区二区三区四区无码| 深爱婷婷丁香五月激情| 天天色天天日| 我爱大香蕉| 婷婷五月天色| www.色色色com| 青青色com久久| 大香蕉婷婷五月| 伊人婷婷青青cao| 五月丁香六月激情狠狠| 伊人久久五月天综合| 丁香五月色| 欧美激情综合| 青青久在线视频免费观看| 91人人人人人人人| 五月婷婷婷综合网| 五月丁香婷成人网| 可以免费看AV网站| 97热这里精品在线视频| 超碰九色| 91人人人人人人人| 五月丁香精品| 777丁香六月青青草婷婷综合久月| 第四色26uuu| 色五月婷婷91| 高清无码网址| www.99免费视频| 少妇激情基地| 婷婷伊人久久综合| 久婷| 天天狠狠综合精区| 欧美日韩成人一区二区| 五月天激情在线视频| 久久五月综合| 色综合久久888| 亚洲欧洲一二| 伊人久久激情图区五月| 六月丁香久久| 俺去也婷婷| www.久久色.com| 激情小说五月天社区丁香 | 亚洲五月激情| 人妻videos人妻高清| 五月丁香成人网| 丁香五月综合| 黄色片精品| 思思久久青草热| 丁香五月香蕉| 久久九九经典| 激情五月六月婷婷综合啪啪| 熟女网站久久| WWW.亚洲无码| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 欧美狠狠地| 久久综合激情| 六月丁香六月婷婷欧美| 五月丁香六月婷婷综合伊人| 久久婷婷综| 婷婷免费视频| 激情五月婷婷在线区| 99热这里都是精品| 婷婷五月日本| 丁香五月婷婷呀| 婷婷五月情| 任你干嘛免费视频播放| 99热精这里只有精品| 丁香六月色婷婷| 五月丁香激情啪啪网| www激情网| 婷婷五月花| www.久久久久久久| 精品无吗va视频免费观看| 青柠影视免费高清电视剧| 91婷婷| 五月丁香综合影院| 热久久婷婷| 日本va视频| 伊人综合网站| www.五月天婷婷.com| 欧美久久婷婷| 五月丁香激情综合啪啪| 婷婷激情小说| 色噜婷婷| 五月丁香六月香综合激情| 国产美女无遮挡裸体毛片A片| 色婷婷电影网| 大香蕉五月丁香| 青青草轻轻操| 亚洲五月丁香六月婷婷| 日日噜噜久久婷婷五月天| 99re在线这里只有精品视频首页| 亚洲无AV在线中文字幕| 开心 五月 综合| 丁香在线视频| 婷婷综合另类小说| 五月激情天| 新久久五月天激情| 99免费在线视频| 色五月婷婷 成人| 免费观看的av| sS丁香五月婷婷| 婷婷久草| 婷婷五月深深的爱| 最近韩国日本免费高清观看| 性色播| 色婷婷在线视频| 成人色五月天| 男人的天堂婷婷色五月| 精品成人无码A片观看香草视频| 日韩少妇内射免费播放| 五月天自拍视频| 日本激情综合| www.henhengan| 9久久精品视频| 亚洲六月色婷婷| 色色爽爽天天| 丁香激情网| 狠狠色情婷婷| 婷婷五月综合丁香久久| 欧美五月丁香| 超碰在线9| 天天干天天操天天拍| 婷婷五月天改成什么了| 欧类av怡春院| 国产精品热搜丁香五月婷婷| 都市激情亚洲| 婷婷五月天成人| www。狠狠干。com| 欧美综合激情| 久久久这里有精品| 在线视频另类| 最近中文字幕在线中文视频| 久久深爱激情网| 成人AV网站在线| 丁香婷婷久久 | 激情丁香婷婷六月天| 日韩黄色中文字幕| 五月天婷婷综合免费| 日本三级日本三级三级人妇四虎| 涩涩五月天| 99热久草| 中文字幕不卡+婷婷五月| 婷婷五月天影院| 91精品久久久久久综合五月天| 182TV大香蕉| 大香蕉五月天婷婷| 五月天色婷婷成人| 色五月激情| 四川BBB搡BBB搡多人乱亂| 亚洲va在线∨a天堂va欧美va| 五月婷婷三级| 伊人久久大香线蕉精品| 女人天堂AV| 草美女在线观看视频在线播放| 激情玖玖综合网| 九九色99| 人人视频色| 国产成人av在线播放| 中文字幕无码AV| 久超超碰| 天天爽天天透天天爱| 97碰| Aaa久久| 九九激情网| 99爱视频免费看| 国产免费一区二区在线A片视频| 丁香五月天久久| 丁香激情网| 热99只有里视频| 亚洲精品色色| 丁香六月激情毛片| 亚洲色无码A片一区二区麻豆| 亚洲一区二区无遮挡A片| 深爱激情四射| 欧美久久婷婷| www.久操| 大陆极品少妇内射AAAAAA| 夜夜大香蕉婷婷丁香| 99人人操人人摸| 99五月丁香丁| 日本乱论99| 操97在线观看| 五月天社区| 五月丁香福利| 五月丁香六月婷婷姐| 五月婷婷六月激情网| AV堂狠狠干| 色综合中文色综合网| 狠狠爱丁香婷| 99在线精品免费视频| 久/久精品99看9| 五月丁香综合网| 丁香五月婷婷色| 五月综亚洲| 婷婷六月丁香在线| 51XX午夜影福利| 热九九九九| 5Www色5夜| 密着浓厚中出乚交尾GvG935| 天天操天天插| 人人爱操| 99热综合网| 国产日韩欧美性爱| 日韩色五月| 亚洲五月天婷婷在线| 26uuu国产精品| 婷丁香久综合| 66精品国产成人| 人人操91| 7超碰自拍| 婷婷99狠狠躁天天躁中| 五月天婷婷社区久久综合| 婷婷五月天天激情| 丁香婷婷综合影院| 婷婷五月综合基地| 色综合婷婷99| 伊综合蕉| 碰碰碰碰碰99| 日日操无码| 亚洲欧美日韩另类| www.婷婷五月天,com| www.久久99精品| 二区成人视频| 婷婷五月欧美| 日韩无码系列| 涩涩婷婷五月| 1024婷婷综合久久五月天| 久久丝袜婷婷| 激情五婷网| 91精品久久久久久综合五月天| 大香蕉五月天| 丁香五月激情天AV无码| 26uuu色噜噜精品一区| 五月天无码视屏播放| renre人人操国产超碰在线 | 丁香六月激情| 日韩成人综合网| 99热这里只有精品首页| 激情五月天婷婷| 国产精产国品一二三在观看 | 五月综合婷婷开心网| 中文aV网| 五月 婷婷 成人| www激情| 色婷婷狠| 久久久久婷婷| 亚洲欧美日韩VIP| 五月天啪啪网| 99色在线观看视频| 久久黄A片| 久久只这里有精品| 丁香色五月天| 五月婷久久| 国产国产乱老熟女视频网站97| 五月天操逼激情| 五月丁香六月婷婷久久| 国产AV一区二区三区最新精品| 国产五月丁香在线| 久久婷婷五月综合色播| 五月婷婷在线综合| 色色激情网| 99热在线播放| 国产原创视频91九色| 99热精品观看| 月婷婷亚洲| 激情丁香五月天图片| 亚洲网视屏| 国产精产国品一二三在观看| 欧洲区自拍| 五月丁香综合激情| 亚洲中文乱字字幕线在永久| 狠狠干在线| 婷婷激情六月| 99干在线视频| 97人人操人人干| 色综合色色色色色| 五月丁香啪啪啪综合网| 人妻丰满精品一区二区A片| 97sese婷婷| 久久永久网址| 亚洲色模骚货| 久久99热这里只有精品| 91男人资源站| 激情五月婷婷丁香六月| 天天天天爽爽天干| 人人播| 99ri6在线视频| 五月综合色| 狠狠色综合网站久久久久| 丁香五月成人网| 天综合日日夜综合7799| 天天综合色丁香| 噜一噜在线| 99ER热精品视频| www.91操| 夜夜操天天干| 99免费视频| 久久99久久99精品免观看粉| 久久成人天| 99色色视频| 超碰人人99| 99九九视屏| 狠狠色噜噜狠狠狠888| 大香蕉 伊人夜| Jh7Uf088VHafNm| 久久丁香五月| 久久婷婷人人| 婷婷5月九九| 国产精品a无线| 9久精品视频| 51国精产品自偷自偷综合| 97人妻超级碰碰碰碰碰| 色婷婷五月天中文字幕| 天天日天天爽| 9色天堂| AV国产有码| 丁香五月成人| 91操人视频| 久久综合中文字幕| 丁香五月综合激情久久潮喷| 色婷婷六月综合| 五月丁香影视| 99综合在线| 91激情五月开心| 激情五月瑟瑟| A久网| .青娱乐天天操B| 激情五月天综合图片小说网站| 色五月丁香网| 日本3级片偷拍网站| 另类 在线| 国产综合81p| 五月丁香六月在线| 五月婷婷 自拍| 丁香六月无码| 色色色九九九五月婷婷| 五月丁婷婷| 97丨九色丨国产丨PORNY| 天天在线天天综合网色| 久久香蕉影院| 激情丁香五月婷| 丁香六月婷婷综合| 天天综合色丁香| 狠狠干综合| 狠狠色五月激情| 91久操| 婷婷色天香| 国产精品激情AV久久久青桔| 五月婷婷久久开心网| 丰满人妻一区二区三区| 成人必爱视| 香蕉久久国产AV一区二区| 婷婷六月开心网| 丰满少妇猛烈A片免费看观看 | 超碰人人操在线| 亚洲av网站| 六月丁香五月天| 九九蜜臀精品| 少妇性BBB搡BBB爽爽爽电影| 3p日韩网站视频| www,setingting|