欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

Mixly 自制庫開發(fā):從拖積木到造積木的完整實戰(zhàn)

Mixly 自制庫開發(fā):從拖積木到造積木的完整實戰(zhàn) 簡介這套 Mixly 自制庫專為 ESP8266 開發(fā)設(shè)計聚焦物聯(lián)網(wǎng)原型制作中最常用的幾個環(huán)節(jié)EEPROM 斷電保存與字符復(fù)制、WiFi 自動配網(wǎng)、數(shù)據(jù)類型轉(zhuǎn)換以及基于 U8G2 的液晶屏驅(qū)動。壓縮包共 68 個文件核心代碼是 6 個 JavaScript 模塊配以 60 張 PNG 圖解另有 TXT 說明和 XML 配置整體 446KB輕量且容易遷移到不同項目。已有 5786 人學(xué)習(xí)使用尤其適合剛接觸 ESP8266 的愛好者以及想在課堂上演示圖形化編程的教師。借助說明文檔和模塊源碼可以弄清如何在 Mixly 中寫入/讀取 EEPROM 數(shù)據(jù)、實現(xiàn)設(shè)備自動聯(lián)網(wǎng)并掌握整數(shù)與字符串的相互轉(zhuǎn)換U8G2 部分則展示了在 OLED/LCD 上繪制文本和簡單圖形的方法。自制庫對模塊邊界的劃分和組織方式也為讀者擴展自己的圖形化積木提供了清晰范本。1. 自制 Mixly 庫從只會拖積木到能造積木的那道坎第一次從前輩手里拿到一個 mixly庫 文件夾時我還在老老實實拖官方積木。把文件丟進米思齊的庫目錄重啟模塊區(qū)憑空多出一排 WiFi 配網(wǎng)、EEPROM 存儲的積木那一刻就意識到能用積木的人和能造積木的人中間隔著的不過是一份 XML 描述文件加一堆代碼模板。自制庫這件事說白了就是把你已經(jīng)寫好的 Arduino 函數(shù)包裝成 Blockly 認識的積木塊讓不懂代碼的人也能用。這篇筆記會把庫結(jié)構(gòu)、配網(wǎng)庫實戰(zhàn)、數(shù)據(jù)類型轉(zhuǎn)換和 EEPROM 的坑一次講完。2. 自制庫的內(nèi)部結(jié)構(gòu)XML、代碼模板與參數(shù)映射的三層關(guān)系2.1 一個庫文件夾的解剖先搞清每個文件是干嘛的市面上能下載到的 mixly 自制庫包拆開看基本都是同一個骨架。先別急著寫代碼把文件認全。以 Mixly 1.x 生態(tài)為例一個完整庫文件夾通常長這樣文件/目錄作用是否必須MyWifi.xml定義積木的外觀、參數(shù)類型、返回形狀必須_code.txt代碼模板決定積木生成什么 Arduino 語句必須MyWifi.h/MyWifi.cpp函數(shù)實現(xiàn)真正干活的部分強烈建議zh-cn.json積木名的中英文映射部分版本識別可選images/積木分類的圖標(biāo)可選注意一個容易踩的坑Mixly 1.x 和 2.x 對庫的定義方式不一樣。1.x 用 Blockly 風(fēng)格的 XML2.x 改成了 JSON 塊描述。從網(wǎng)上下載的舊庫放到 2.x 里經(jīng)常不識別不是文件壞了是格式換代了。所以下載任何庫之前先確認對方標(biāo)的是哪個版本。我目前講的是 1.x 的主流寫法2.x 的遷移問題放到最后一章說。文件放哪也很關(guān)鍵。Mixly 啟動時會掃描 Arduino 用戶目錄下的libraries文件夾找到里面帶 XML 的子目錄解析后生成積木分類。放錯路徑的表現(xiàn)不是報錯而是模塊區(qū)一片空白很多新手在這卡半天。正確做法是把整個庫文件夾不是 XML 文件本身丟進libraries重啟 Mixly。2.2 block 類型與代碼模板占位符是如何把積木變成代碼的自制庫的核心機制就一句話積木上填的參數(shù)通過占位符拼進代碼模板最終生成 Arduino 代碼。先看一個最小的例子。假設(shè)我要做一個讓 LED 閃一下的積木XML 里這樣描述block typeled_blink_once value namePIN block typemath_number field nameNUM13/field /block /value /block對應(yīng)的代碼模板_code.txt里是pinMode(%1, OUTPUT); digitalWrite(%1, HIGH); delay(300); digitalWrite(%1, LOW);邏輯說明typeled_blink_once是積木的唯一標(biāo)識必須有且不能和別的庫重復(fù)否則會導(dǎo)致積木覆蓋。value namePIN聲明了一個參數(shù)插槽嵌套的math_number表示這個插槽只接受數(shù)字輸入field nameNUM是積木上默認顯示的值。MNemonic%1就是第一個參數(shù)槽位Mixly 生成代碼時會把用戶填的數(shù)字替換進去。如果積木有兩個參數(shù)模板里用%1、%2依次對應(yīng)順序按 XML 里value的排列。參數(shù)說明%1替換的是用戶填的字面值不是變量名。如果用戶填13生成的就是pinMode(13, OUTPUT)如果用戶在積木上改了數(shù)字重新生成代碼時%1也會跟著變。這里有一個血淚經(jīng)驗%1替換后是裸值字符串類型積木會帶引號數(shù)字不會。所以寫模板時不要手抖加引號否則會出現(xiàn)pinMode(13, OUTPUT)變成pinMode(13, OUTPUT)這類編譯報錯或運行時詭異行為。2.3 參數(shù)類型聲明數(shù)字、字符串、布爾與下拉的選用原則寫模板前先想清楚每個參數(shù)允許填什么。Mixly 的 XML 通過嵌套 block 類型來約束參數(shù)類型常見對應(yīng)關(guān)系如下積木控件XML 嵌套 block 類型生成到模板的內(nèi)容適用場景數(shù)字輸入框math_number裸數(shù)字如115200波特率、引腳號、延時文本輸入框text帶引號字符串如MyWiFiSSID、密碼、服務(wù)器地址布爾開關(guān)logic_booleantrue或false功能開關(guān)、高低電平選擇下拉選擇自定義field或映射成數(shù)字選中項對應(yīng)值模式枚舉、通道選擇這里重點說下拉選擇。Mixly 1.x 不同小版本對下拉的實現(xiàn)寫法差異很大有的用dropdown類型有的要求你自定義一個帶options屬性的 block 類型。我踩過一輪坑之后形成了一套保守方案不用花哨的下拉直接把枚舉映射成math_number在.h文件里用switch解析。比如配網(wǎng)模式積木上是一個數(shù)字框填 0 表示 SmartConfig填 1 表示 SoftAP代碼模板里把這個數(shù)字傳給函數(shù)函數(shù)內(nèi)部判斷。雖然積木不夠「傻瓜化」但換版本時最不容易翻車。2.4 加載機制為什么庫放對了目錄還是看不到積木Mixly 對自定義庫的掃描是有緩存的。第一次啟動時解析 XML之后如果不重啟你改了 XML 它也不會重新讀取。更隱蔽的是如果 XML 文件有語法錯誤比如標(biāo)簽未閉合、字段名拼錯Mixly 會靜默跳過整個庫模塊區(qū)不出現(xiàn)任何新積木。我的排查習(xí)慣是三步走先重啟 Mixly再看 XML 有沒有被編輯器標(biāo)紅最后把 XML 里非 ASCII 的中文標(biāo)簽臨時改掉因為 1.x 某些版本對編碼敏感。這三步解決了我 90% 的「庫不顯示」問題。參數(shù)類型的選用直接決定后面類型轉(zhuǎn)換的坑多坑少所以這塊值得花時間想清楚。能用math_number就絕不用text能限定枚舉就絕不放任用戶輸入這是自制庫參數(shù)設(shè)計的黃金法則。3. ESP8266 WiFi 自動配網(wǎng)庫EEPROM 存儲與三個積木塊的完整實現(xiàn)3.1 為什么必須做自動配網(wǎng)從燒死 SSID 到存進 EEPROM開發(fā) ESP8266 項目時最煩的就是每次換 WiFi 環(huán)境都要改代碼重?zé)碳?。固?SSID 的寫法適合演示不適合產(chǎn)品。自動配網(wǎng)的標(biāo)準做法是設(shè)備上電先嘗試連接上次保存的 WiFi連不上就進入配網(wǎng)模式收到手機下發(fā)的 WiFi 信息后存入 EEPROM下次開機直接連。這樣就實現(xiàn)了「一次配網(wǎng)永久記憶」。方案優(yōu)點缺點適用場景固定 SSID 燒死實現(xiàn)最簡單換網(wǎng)絡(luò)必須重?zé)龑嶒炇夜潭ōh(huán)境SmartConfig 一鍵配網(wǎng)用戶操作快需要手機 App 支持阻塞等待有超時坑現(xiàn)場配網(wǎng)、批量部署SoftAP 配網(wǎng)不依賴 App瀏覽器可配開發(fā)量大交互復(fù)雜產(chǎn)品化設(shè)備我選擇 SmartConfig EEPROM 組合原因很實際ESP8266 官方 SDK 直接支持beginSmartConfig()代碼量最小配合 EEPROM 緩存后體驗接近成品路由器。這次的庫設(shè)計成三個積木塊積木塊類型生成代碼作用WiFi 自動配網(wǎng)語句塊wifi_auto_config(30000)讀 EEPROM 嘗試連接失敗則進入配網(wǎng)保存 WiFi 信息語句塊wifi_save_config(%1, %2)將 SSID 和密碼寫入 EEPROM讀取已保存 SSID表達式塊wifi_get_ssid()返回字符串方便 OLED 等顯示3.2 底層實現(xiàn)EEPROM 讀寫和 SmartConfig 配網(wǎng)邏輯先寫庫的核心頭文件MyWifi.h#ifndef MYWIFI_H #define MYWIFI_H #include ESP8266WiFi.h #include EEPROM.h #define WIFI_MAGIC 0xA5 struct WifiConfig { char ssid[32]; char pwd[32]; uint8_t magic; }; extern WifiConfig g_cfg; void wifi_load_config(); void wifi_save_config(const String ssid, const String pwd); bool wifi_auto_config(uint32_t timeout_ms); String wifi_get_ssid(); #endif邏輯說明結(jié)構(gòu)體WifiConfig用定長char[]而不是String存 SSID 和密碼這是 EEPROM 讀寫的基本素養(yǎng)——String內(nèi)部是堆指針斷電重啟后指針指向的內(nèi)存早就不在了只有char[]才能穩(wěn)定序列化。magic字段是校驗位寫固定值0xA5讀出來如果不是這個值就說明 EEPROM 里沒有有效配置從而避免用垃圾數(shù)據(jù)去連 WiFi。所有函數(shù)聲明為extern方便不同代碼模板文件引用#ifndef防止多個積木重復(fù) include 時重定義。接下來是MyWifi.cpp的實現(xiàn)#include MyWifi.h WifiConfig g_cfg; void wifi_load_config() { EEPROM.begin(sizeof(WifiConfig)); EEPROM.get(0, g_cfg); if (g_cfg.magic ! WIFI_MAGIC) { memset(g_cfg, 0, sizeof(g_cfg)); } } void wifi_save_config(const String ssid, const String pwd) { memset(g_cfg, 0, sizeof(g_cfg)); ssid.toCharArray(g_cfg.ssid, sizeof(g_cfg.ssid)); pwd.toCharArray(g_cfg.pwd, sizeof(g_cfg.pwd)); g_cfg.magic WIFI_MAGIC; EEPROM.begin(sizeof(WifiConfig)); EEPROM.put(0, g_cfg); EEPROM.commit(); } bool wifi_auto_config(uint32_t timeout_ms) { wifi_load_config(); if (g_cfg.magic WIFI_MAGIC strlen(g_cfg.ssid) 0) { WiFi.mode(WIFI_STA); WiFi.begin(g_cfg.ssid, g_cfg.pwd); uint32_t start millis(); while (WiFi.status() ! WL_CONNECTED) { if (millis() - start timeout_ms) return false; delay(100); } return true; } WiFi.mode(WIFI_STA); WiFi.beginSmartConfig(); uint32_t start millis(); while (!WiFi.smartConfigDone()) { if (millis() - start timeout_ms) return false; delay(100); } while (WiFi.status() ! WL_CONNECTED) { delay(100); } wifi_save_config(WiFi.SSID(), WiFi.psk()); return true; } String wifi_get_ssid() { wifi_load_config(); return String(g_cfg.ssid); }邏輯說明wifi_load_config()每次調(diào)用都執(zhí)行EEPROM.begin(sizeof(WifiConfig))這是 ESP8266 的規(guī)矩。ESP8266 的 EEPROM 庫是拿 Flash 模擬的不調(diào)用begin(n)直接get會得到全0xFF。beginSmartConfig()啟動配網(wǎng)后smartConfigDone()返回 true 只代表手機 app 已經(jīng)把 WiFi 消息發(fā)過來了此時WiFi.SSID()和WiFi.psk()才能取到有效值所以要再等WL_CONNECTED。參數(shù)說明timeout_ms默認傳 30000 毫秒這是配網(wǎng)等待的上限。很多庫卡死就是因為沒這個超時后面避坑章節(jié)專門講。wifi_save_config接收兩個const String引用避免拷貝開銷toCharArray時第三個參數(shù)傳sizeof是復(fù)制上限防止超長密碼把結(jié)構(gòu)體后面的字段沖掉造成內(nèi)存踩踏。3.3 XML 與代碼模板把三個函數(shù)包裝成積木塊底層函數(shù)寫好了剩下的工作是讓這些函數(shù)從積木區(qū)長出來。新建MyWifi.xml:block typewifi_auto_config value nameTIMEOUT block typemath_number field nameNUM30000/field /block /value /block block typewifi_save_config value nameSSID block typetext/block /value value namePWD block typetext/block /value /block block typewifi_get_ssid value nameRETURN block typetext/block /value /block對應(yīng)_code.txt代碼模板wifi_auto_config(%1); wifi_save_config(%1, %2); wifi_get_ssid();邏輯說明注意第三個積木wifi_get_ssid的類型是表達式塊它嵌套了一個text類型的 value表示這個積木塊最后要返回一個字符串值可以塞進 OLED 顯示或串口打印等其他積木的參數(shù)槽里。_code.txt里的三行分別對應(yīng)三個積木塊的生成代碼wifi_get_ssid()沒有參數(shù)所以生成的就是一條函數(shù)調(diào)用。頭文件的 include 建議加在第一個積木的模板第一行#include MyWifi.h因為頭文件帶了#ifndef防重入多個積木重復(fù) include 不會報錯只是多一次預(yù)處理檢查。參數(shù)說明XML 中block typewifi_save_config的type屬性必須和_code.txt里生成的函數(shù)調(diào)用保持一致否則會出現(xiàn)積木拖出來了、編譯卻報undefined reference。value nameSSID的name屬性是積木內(nèi)部識別槽位用的改不改不影響生成代碼但建議寫成和參數(shù)含義相關(guān)的名字方便你三個月后回來維護時看懂。3.4 在 Mixly 里加載與驗證從模塊區(qū)到串口輸出把MyWifi.xml、_code.txt、MyWifi.h、MyWifi.cpp放在同一個文件夾文件夾命名MyWifi整體丟進 Mixly 的libraries目錄重啟 Mixly。驗證步驟模塊區(qū)出現(xiàn)「MyWifi」分類拖出三個積木到編程區(qū)。燒錄前先打開串口監(jiān)視器波特率設(shè) 115200。上電后觀察串口先打印[WiFi] try saved config...接著嘗試連保存的 WiFi。如果之前沒保存過配置設(shè)備會進入 SmartConfig 配網(wǎng)狀態(tài)此時用支持 ESP-Touch 協(xié)議的手機 App 發(fā)送家庭 WiFi 信息。配網(wǎng)成功后串口打印[WiFi] connected, save config斷電重啟后應(yīng)能看到設(shè)備直接連接 WiFi不再進入配網(wǎng)。這里有一個很多人忽略的驗證點斷電前要確認已經(jīng)走到wifi_save_config。SmartConfig 收到信息到執(zhí)行保存之間有個時間差如果在WiFi.status() ! WL_CONNECTED等待循環(huán)里就斷電設(shè)備會拿不到完整配置下次開機又回到配網(wǎng)流程。這是硬件調(diào)試里典型的「看起來配網(wǎng)成功實際沒存住」問題。4. 自制庫避坑排查數(shù)據(jù)類型轉(zhuǎn)換、EEPROM 與編譯失敗的四個現(xiàn)場4.1 字符串轉(zhuǎn)數(shù)字看似能編譯一跑就出錯現(xiàn)象積木上填的波特率9600生成的代碼是Serial.begin(9600)編譯不報錯串口輸出全亂碼?;蛘甙盐谋緟?shù)轉(zhuǎn)成int后判斷出錯比如空字符串轉(zhuǎn)出來是0導(dǎo)致邏輯誤判成「合法」。原因text 類型積木生成的是字符串字面量9600Arduino 的Serial.begin有l(wèi)ong重載字符串字面量能隱式轉(zhuǎn)換但轉(zhuǎn)換結(jié)果是內(nèi)存地址而不是數(shù)值。更隱蔽的是String(abc).toInt()在解析失敗時返回0這會和真實數(shù)值0混淆沒法區(qū)分「用戶填了 0」和「用戶填了非法字符」。解決模板里顯式轉(zhuǎn)換// 錯誤寫法依賴隱式轉(zhuǎn)換 wifi_send_command(%1); // 正確寫法String 包一層再轉(zhuǎn)明確意圖 wifi_send_command(String(%1).toInt());邏輯說明String(%1)先構(gòu)造臨時 String 對象再調(diào)用toInt()把字符串解析成int。這樣無論用戶填的是不是純數(shù)字語義都明確。參數(shù)說明如果這個參數(shù)本身就是數(shù)字框math_number不用擔(dān)心這個問題只有 text 框才會產(chǎn)生字符串字面量。4.2 EEPROM 寫入靜默失敗重啟后配置全丟現(xiàn)象第一次配網(wǎng)成功斷電重啟后又進入配網(wǎng)模式或者串口打印讀出來的 SSID 是\xFF\xFF...一串亂碼。原因三個高頻根因。第一沒調(diào)EEPROM.begin(n)直接putESP8266 的模擬 EEPROM 不初始化就是全0xFF第二begin(n)的 n 小于實際寫入的結(jié)構(gòu)體大小比如結(jié)構(gòu)體 65 字節(jié)卻begin(64)最后一個字節(jié)寫越界commit 時被丟棄第三寫入后忘記commit()數(shù)據(jù)留在緩存沒刷進 Flash。結(jié)構(gòu)體里直接放String類型的同學(xué)字符串內(nèi)容存在堆上序列化到 Flash 的只是指針的碎片斷電后必丟。解決統(tǒng)一用下面的寫法// 結(jié)構(gòu)體定長、帶 magic 校驗 struct WifiConfig { char ssid[32]; char pwd[32]; uint8_t magic; }; // 寫入前計算真實大小 EEPROM.begin(sizeof(WifiConfig)); EEPROM.put(0, cfg); EEPROM.commit();邏輯說明sizeof(WifiConfig)在這里是 65 字節(jié)begin必須傳 65 或更大。參數(shù)說明ESP8266 的 EEPROM 庫上限是 4096 字節(jié)Flash 扇區(qū)大小超過 4096 的寫入會被截斷別想著拿它當(dāng)大容量存儲用存幾百字節(jié)的配置信息才是它的本分。依靠 magic 字段判斷有效性的好處是第一次上電 Flash 是干凈的0xFFmagic 不等于0xA5讀出來就主動清零避免一堆亂碼 SSID 去連 WiFi 造成長時間假死。4.3 編譯報 undefined referenceblock 類型和函數(shù)名脫節(jié)現(xiàn)象積木拖出來了代碼也生成了編譯報undefined reference to wifi_auto_config(unsigned int)。最氣人的是函數(shù)明明寫在.cpp里了就是鏈接不上。原因函數(shù)聲明和定義的簽名不一致或者 block type 生成的調(diào)用函數(shù)名和庫文件里的定義不是一個名字。我見過最離譜的一次是 XML 里 block type 寫的wifi_auto_config代碼模板寫的也是wifi_auto_config但.h里聲明的是bool wifi_auto_config(int timeout)傳參類型不同C 符號修飾后就不是同一個函數(shù)了。解決先看生成代碼再核對簽名# 把 Mixly 生成的臨時 sketch 目錄打開搜函數(shù)名 grep -rn wifi_auto_config generated_sketch/邏輯說明這行命令把生成目錄里所有引用wifi_auto_config的地方標(biāo)出來。重點看聲明、調(diào)用、定義的參數(shù)類型是否一致。參數(shù)說明const String和String是兩個不同的函數(shù)簽名C 的符號表會對參數(shù)類型做名稱修飾一個字符不匹配都會導(dǎo)致鏈接失敗。建議庫內(nèi)部統(tǒng)一用const String傳參模板生成調(diào)用時就不用關(guān)心副本開銷。4.4 SmartConfig 卡死拿不到 WiFi 信息時程序原地等待現(xiàn)象設(shè)備上電后不執(zhí)行任何后續(xù)邏輯卡在配網(wǎng)等待或者配網(wǎng)成功后重啟依然進配網(wǎng)模式。原因beginSmartConfig()之后庫進入一個等待循環(huán)如果一直沒收到手機下發(fā)信息這個循環(huán)就是死循環(huán)。另外有些版本的 ESP8266 在smartConfigDone()返回 true 后立刻讀WiFi.psk()會讀到空值如果不等待WL_CONNECTED就保存存入 EEPROM 的是空密碼。解決所有等待循環(huán)都加超時并且保存前確認連接狀態(tài)uint32_t start millis(); while (!WiFi.smartConfigDone()) { if (millis() - start timeout_ms) { Serial.println([WiFi] smartconfig timeout); return false; } delay(100); }邏輯說明timeout_ms由積木參數(shù)控制默認 30000 毫秒用戶自己可以在積木上改。超時后返回false程序就有機會走其他分支比如進入 SoftAP 模式或者重啟重試而不是死等。參數(shù)說明delay(100)不能省沒有這個延時millis()讀到的值變化太快循環(huán)空轉(zhuǎn)消耗 CPU 且可能觸發(fā)看門狗復(fù)位。配網(wǎng)完成后的while (WiFi.status() ! WL_CONNECTED)同樣要帶超時把這一層思考基本就避開大多數(shù)配網(wǎng)卡死現(xiàn)場了。5. 讓自制庫更耐用的三個進階習(xí)慣5.1 給庫加調(diào)試開關(guān)把串口輸出留在現(xiàn)場調(diào)試階段沒有串口打印出了問題只能盲猜。但正式使用時滿天飛的Serial.printf又影響性能。我的習(xí)慣是在頭文件里加一個編譯開關(guān)#define WIFI_DEBUG 1 #if WIFI_DEBUG #define DBG(...) Serial.printf(__VA_ARGS__) #else #define DBG(...) #endif邏輯說明WIFI_DEBUG設(shè) 1 時 DBG 宏映射到Serial.printf設(shè) 0 時映射為空操作連參數(shù)求值都被優(yōu)化掉。發(fā)布庫之前把開關(guān)改成 0 即可不用刪代碼。參數(shù)說明所有調(diào)試輸出統(tǒng)一走DBG不要在代碼里裸寫Serial.printf否則后期清理就是一場惡夢。從那以后我每次寫庫都會先鋪好這層宏省掉無數(shù)「這里怎么還有個 print」的尷尬。5.2 留一個清空配置的隱藏積木EEPROM 存了錯誤配置后調(diào)試時想回到配網(wǎng)流程總不能每次拔 Flash 或者改代碼。我在庫里額外加了一個wifi_clear_config()函數(shù)專門把 magic 字段改掉void wifi_clear_config() { g_cfg.magic 0; EEPROM.begin(sizeof(WifiConfig)); EEPROM.put(0, g_cfg); EEPROM.commit(); }邏輯說明把 magic 寫成0下次wifi_load_config()讀出來校驗不通過自動清空結(jié)構(gòu)體設(shè)備重啟后就會重新進入配網(wǎng)。這個函數(shù)不在正式積木區(qū)展示測試時臨時拖出來用也可以綁一個物理按鍵「長按 5 秒恢復(fù)出廠」比重新燒固件快一個量級。5.3 兼容 Mixly 2.x底層邏輯復(fù)用積木描述重寫遷移到 2.x 時MyWifi.h和MyWifi.cpp這兩個底層文件可以原封不動復(fù)用真正要重寫的是 XML 塊描述——2.x 改成了 JSON 格式描述積木的槽位、顏色、類型。一次遷移的經(jīng)驗是把 XML 里的每個block type對照著翻譯成 JSON 塊定義參數(shù)類型、默認值和代碼模板的對應(yīng)關(guān)系不變兩個小時就能完成。不要試圖用兼容層去騙 2.x 讀 1.x 的 XML,這條路我沒走通直接重寫反而快。寫庫這幾年最大的教訓(xùn)來自一次室外驗收設(shè)備配網(wǎng)成功、重啟后總掉線折騰一下午最后發(fā)現(xiàn)是EEPROM.begin長度比結(jié)構(gòu)體小 1 字節(jié)magic 校驗位被丟在 Flash 扇區(qū)外。從那以后我每次寫完庫都強制走一遍完整驗證流程清空 EEPROM、冷啟動進配網(wǎng)、配網(wǎng)成功后斷電、再上電看是否自動連接。這四步走完庫才算真正能交付。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亭亭丁香aV| 操丝袜视频影院导航| 五月婷婷丁香| 五月综合激情视频| 亚洲中文乱字字幕在线永久| 九九99香蕉在线视频播放| 丁香五月无码| 婷婷情色五月天| 99热在这里只有精品| 高清无码入口| 五月天成人综合| 婷婷色色综合| 色情综合| 五月丁香六月婷婷姐| 婷婷丁香综合成人| 人人干av| 婷婷娌伦网| 日韩成人无码人妻| 色婷婷五月色| 精品丁香五月天在线播放| 99爱视频免费看| 五月丁香六月欧美综合网站| 四色五月婷婷| 92久操视频| 99精品高潮| 99色色网| www.1024久久| 9人人操人人看| 麻豆忘忧草午夜| 亚洲成人AV在线| 久久久久久久五月婷婷六月丁香综合,开心激情综合网 | 超碰9| 亚洲精99| 丁香五月av| 五月婷啪| 丁香六月啪啪啪| 婷久久高清| 五月 激情视频| 五月婷婷播| 色色六月| 可以直接看的AV网站| 亚洲婷婷成人五月天| 激情五月天综合网| 久久婷婷五月综合激情国产| rr天天操| 丁香五月香蕉| 久久99精品久久只有精品| 亚洲午夜Av| 天天碰夜夜操| 香蕉婷婷色五月| 激情综合五月| 久久精品在线| seuuu婷婷| 欧美搡BBBBB摔BBBBB| 久久激情五月天| 激情久久久久久久久久久| 久久婷婷啪啪视频| 精品人人操| 亚洲图色五月天| www.com任你艹| 性小说五月天| 婷婷射图五月天| 精品一区久热| 综合激情网五月激情| 欧美槡BBBB槡BBB少妇| WWW.激情| 色综合色色色| 96性爱视频| 国产无套精品一区二区| 婷婷深爱五月天| 蜜桃婷婷狠狠久久| 丁香婷婷性爱| 天天爽天天摸天天爱| 久久98| 伊人玖玖网| 成人网站免费sxj| 亚洲精品久久久久久久久久吃药| 天天日日| 丁香五月综合AV在线| 亚洲婷婷五月天| 人妻性爱av网站| 五月丁香婷婷激激激综合网色播| 婷婷久久在线| 久99久视频| 四虎成人精品永久免费AV九九| 碰碰女| 天天做天天干天天综合网| 色青青五月| 99精品偷自拍| 婷婷五月天首页| 色综色网| 欧美色性色好| seav天堂| 66色在线日韩| 狠狠色情婷婷| 日韩视频女神99| 五月婷婷九九热| 久久在线92| 丁香啪啪| 99热在线观看这里只有精品| 婷婷五月天AV在| 99热99这里免费的精品| 丁香五月激情五月| 夜夜爱网站| 五月婷婷丁香深深爱| 激情四射五月天| 婷婷激情视频| 同性gv国产精品一区二区| 欧美五月停| 久久精彩视频| 婷婷丁香69精华| 久久只有18视频| 91精选国| 天天精品视频免费观看| 久久er免费视频| 超碰婷婷五月| 香蕉久久国产AV一区二区| 激情綜合網址| 色色9 9| 色欲一区二区三区精品A片| 99re这里只有精品免费| 亚洲成人av在线| 开心激情站| 开心五月激情五月丁香五月婷婷| 色插综合网| 久操大香蕉| 色婷婷视频综合| 日韩欧美成人片| 免费看欧美成人A片无码| 欧美日韩aaaa| 人妻肉射免费观看| 美女婷婷六月色| 丁香青青五月天| 天天射网站| 26uuu亚洲| 婷婷激情视频| 99热6精品| 五月天久久婷婷| 欧美爆乳一区二区三区| 国产色色色色| 激情五月天之五月婷婷| 南京搡BBBB搡BBBB| 色婷婷综合五月| 亚洲激情亚洲激情| 五月深爱婷婷| www.五月丁香| 五月天成人免费视频| 五月婷婷成人| 五月丁香激情啪啪| 深夜婷婷 丁香| 亚洲精品白浆高清久久久久久 | 狠狠做婷婷| 香蕉AV777XXX色综合一区| 97色色色视屏| 亚洲行行色色| 这里只有精彩视频| 99这里| 色五月五月婷婷| 狼友超碰| www.99热国产| 99丁香五月婷婷在线| 久草婷婷视频| site:wpjngj.com| 婷婷五月丁香五月天| 天天精品视频在线观看视频| 婷婷五月丁香五月综合网| AV操操操| 色婷视频| 9月色婷婷| 久鲁鲁色网 | 开心激情网五月天| 欧美丰满熟妇BBB久久久| 九九九九九999999| 狠狠大香婷婷爱| 五月综合激情视频| 婷婷六月丁香五月| 99色免费| 狠狠操狠狠狠| 五月丁香91| 色欧美一级| 色久女| 99久久综合网| 99久久国产宗和精品1上映| 性做爰1一7伦| 成久综合视频| 久久综合婷婷五月| 婷婷五月欧美| 五月久久综合| 久月丁香爱婷婷综合| 天天综合网站| 丰满少妇猛烈A片免费看观看 | 色五月婷婷操逼| 欧美日韩精品人妻狠狠躁免费视频| 五月综合视频| 色色色在线观看| 色色网站免费| 精品久久久中文字幕大豆网推荐理由| 五月丁香久久久久| 五月婷婷六月丁香在线| 92久操视频| 丁香色六月婷婷| 2017狠狠干| 新激情婷婷| 天天色一道本综合婷婷| 久久a热| 久草婷妨| 亚洲婷婷婷| 激情六月综合| 玖玖资源站国产| 久久综合99| 可以直接看的av网站| 五月综合丁香婷婷| 一二线视频 另类| 色婷婷在线视频观看| 久综合色| 婷婷五月俺要去| 可以免费观看的av网址| 夜夜爱网站| 九月丁香婷婷网| 五月色导航| 国外亚洲成AV人片在线观看| 99在线看片| 我爱大香蕉| 狠狠色丁香五月婷巨| 另类视频综合| 六月激情婷婷综合| 日韩av在线播放综合网| 人人摸人人澡人人| 99er6免费视频热播| 97干在线| 国産精品| 丁香婷婷丁香五月欧美人| 香蕉AV福利精品导航| 欧美激情xxxXX| 婷婷色在线| 五月婷婷开心亚洲无| 99ER热精品视频| 亚洲婷婷免费| 大香蕉啪啪啪| 色很久综合| 99色五月| 97色伦另类图片小说视频 | 亚洲综合色成丁香五月色| 久久婷婷六月综合资源| 激情色五月天| 天天色天天| 热99只有里视频| 91人人操.COM| 国产女人十八水真多1| 色拍九九九| 91丨九色丨高潮丰满日本| 思思热久久爱| 99激情网| 老师把我爽高潮了免费A片| 日韩aaaaa| 丁香五月亚洲| 五月丁香亭亭天天舔| 婷婷丁香六月| 99精品视频播放| 99热66| wWwCom夜操wwW| 婷婷五月天激情诱惑| 丁香五月激情网| 激情婷婷五月社区| 色婷婷久久9.com| 熟女人妻一区二区三区免费看| 狠狠色大香蕉| 99超级碰免费视频| 99综合久久| 伊人网碰碰| 亚洲精品久久久久久久久久吃药| 性 色 婷婷| 激情五月婷| 久久嘟嘟丁香| 丁香五月婷婷偷拍| 婷婷丁香五月亚洲免费| 另类小说五月天综合网| oumeisesewang| 国产女生爱爱AA| 999热在线观看视频| 国产69久久久欧美黑人A片| 激情久久久| 97久久视频| 丁香五月av在线| 欧洲激情五月天婷婷| 99热这里只有精品16| 激情5月舔| 玖玖视频福利| 久久九九综合| 久热一本| 亚洲精品久久久久久久久久吃药| 在线另类| 婷婷五月娱乐在线| 97干欧美| 五月丁香久久久日婷婷久久婷婷日 | 日本综合久久| 欧美日韩一区二区三区四区| 婷婷丁香五月激情| 九九综合影音先锋| 桔色成人在线| 夜夜骑天天操| 五月天婷婷小说| 九九中文色色| 99色综合网| 婷婷金品综合视频| 日日夜夜天天| 天堂亚洲 在线| 七七九色| 久热网在线视频| 丁香婷婷六月天| 九色成人AV在线| 九九大香视频| 日本 @ va 免费| 色墦五月丁香| 亚洲欧洲国产精品| 色五月婷婷狠狠撸| 九月色婷婷综合| 免费看欧美成人A片无码| 色综合久网| 啪啪啪大香蕉| 97caop| 超碰成人AV| www色婷婷久久综合久色 | 97色色色| 噜噜噜噜噜日本视频| 五月99久久| 色婷婷狠狠18yy| 少妇AB又爽又紧无码网站| 色综合五月天| 国产日产亚洲系列最新 | 亚洲1区| 免费观看2018www黄色操逼网站| 五月婷婷丁香伦理网| 国产 亚洲 在线| wwww.色婷婷| 久久成人天| 双性美人被调教到喷水A片| 4399在线观看免费毛片| 天天狠狠夜夜狠狠2023| 免费观看2018www黄色操逼网站| 激情的五月| 欧美成人在线观看| 日韩不卡123| 色噜噜狠狠色综合伊人| 丁香色色网| 九九视频免费| 中文字幕日产A片在线看| 日日干日日色| 操老逼综合网| 91人人操人人看| 婷婷五月花免费视频在线| 91大神操美女| 99热在线播放| 99热这里只有精品66| www.99色| 久久久亚洲精品一区二区三区浴池 | 天天在线久久综合 | 人妻第九页| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 五月丁香免费看| va亚洲中文在线| 久色激情| 丁香五月天av| 五月停性愛| 五月天婷婷在线观看| 狠狠色噜噜狠狠狠狠综合| 亚洲综合五月天婷婷| 亚洲熟妇AV乱码在线观看| 丁香六月婷婷开心婷婷网| 激情婷婷五六月天| 大香蕉在线99热| 亲子乱AV一区二区三区下载| 99精品视频免费在线播放| 日产精品一线二线三线芒果 | 久久 婷婷 五月天| 色狠狠色噜噜AV天堂五区| 91视频久久久| 免费成人va| 婷婷成人五月天| 国产乱子轮XXX农村| 成人AV网站在线| 99热大片| 亚洲成人丁香花| 日韩狠狠色| 超碰在线国产| 久久精品五月天| 丁香五月综合在线播放| 人妻AV在线| 免费AV播放| 人人操AV| 五月天婷婷av| 五月丁香影院| www色中色综合| 亚洲精品久久久无码| 激情五月图| 久久只有18视频| 4399在线观看免费高清黄色视频| 日本人人xxx| www.激情五月天.com| 天天干天天干天天操| 91人人网| 九色七七| 色婷婷色五月综合| WWW.五月com| 热91久| 五月丁香影视| 激情五月综合网| AV在线大香蕉| 狠狠色成人影片| 极品人妻VideOssS人妻| 久久伊人五月天| 狠狠狠狠狠狠| 99re视频精品| 五月婷婷自拍| a色色片| 激情综合视频| 六月丁香深深爱| 婷婷五月天va| 淫视馆aV二区一区| 激情六月丁香综合| 久久性爱视频这里只有精品| 天天舔天天爽| 99在线热| 人妻丰满精品一区二区A片| AA片在线观看视频在线播放| 精品影院| 玖玖婷婷色| 思思热久久艹| 婷婷五月色网| 涩综合网| 五月色丁香| 婷婷丁香综合网| 五月色情婷婷| 5月激情天| 人妻尝试久久久久久久久久久久| 第四色婷婷丁香五月| 色婷婷的五月天| www.五月丁香| 91中文在线| 亚洲视频在线观看| 色99网| 99热精品在线| 色欲五月婷婷| 婷婷综合爱| 亚洲色久| 4399欧美另类视频| 综合五月丁香久久| 香蕉AV777XXX色综合一区| 亚洲色频| 丁香六月成人| 天堂成人A片永久免费网站| 国产特黄色精品一区二区三区精品无广告| 日韩 中文 欧美| 爱婷婷久久视频| 婷婷五月天激情综合深爱激情| 亚洲AV久久久久久久久久久久久久久久 | 五月天婷婷丁香视频| 人人摸人人搞| 噼里啪啦完整版中文在线观看| 激情综合丁香| 嫩草AV久久伊人妇女超级A| 国产精品涩涩涩视频网站| 一区无码| www.26uuu.com亚洲电影| 婷婷激情六月综合| 婷婷五月天最新网址| 色情丁香五月天| 91九色丨国产丨爆乳| 国产综合丁香五月天| 很操日本7| 久久人妻视频| 天天日日人| 婷婷六月色开| 中文字幕在线播放视频| 月婷婷婷婷五月| 色欧美色色色| 六月色丁香中文字幕| 粉嫩av蜜桃av蜜臀av| 久青操| 最新丁香六月婷婷| 中文字幕av在线播放| AV人人操| 色婷婷五月天天天干天天操天天爽| 天天日夜夜草进麻麻的子宫| 白天AV月月| 欧亚洲在线高清视频| 久久99热这里只有精品| 欧美、日韩、中文、制服、人妻| 岛国av网| 1024你懂的欧美曰韩| 亚洲色激婷| 久久精品99国产精品日本| 五月婷婷综合色啪首页| 99九九这里有免费视频| 婷婷开心激情| 色婷婷超碰| 久久人操| 婷婷丁香色五月天久久88| 思思久热| 热久久91| 午夜天堂一区人妻| 色综合色综合色综合| 人妻激情网| 色色色综合色| 色婷婷六月综合| 91九色白丝| 九九九热精品| 色婷婷丁香五月综合| 一本色道久久88加勒比—| 超碰人人干| 风流少妇A片一区二区蜜桃| 激情都市五月天| 成人在线视频男人的天堂4399| 精a品a| 久久综合中文| 色综合色综合色综合高潮| 激情六月婷婷| 97碰人人操| 激情五月婷婷丁香| 五月丁香六月婷婷成人| 色色操| 婷婷婷婷婷婷婷五月丁香| 日韩精品呦呦va| 色情五月综合婷婷| 婷婷五月天免费视频| 狠狠色激情在线| 亚洲成人影视在线观看| 精品自拍97| www.夜夜操.com| 亚洲色综合性| 華人性愛AV在線| 乱精品一区字幕二区| 97碰久久| 婷婷五月综合啪| 永久的网站AAAA| 99久re热| 性爱五月婷| 五月婷婷黄网站大全| 青青草成人网| 大香蕉五月天婷婷| 超碰爱爱爱| 九九热精品6| 99热20| 成人一级片| 久久爱综合| 九月av在线| www,setingting| 国产毛片精品一区二区色欲黄A片| 在线网黄| 五月天婷婷中文字幕在线播放| 99热久久最新地址| 日韩无码人妻一区二区三区综合| 五月色亭丁香| 五月婷丁香花| 伊人综合网4| 99爱在线免费视频| 丁香五月影视| 五月天激情丁香| 99热这里是精品| av在线超清中文| 激情丁香五月激情婷婷| 亚洲噜色| 五月婷婷激情综合| 大地资源色婷婷视频在线| 久99在线视频| 色色五月天激情| A片试看120分钟做受图片| 婷婷六月丁香在线| 日本69日人视频| 99综合视频| 婷丁五月| 激情五月色播五月| 欧亚成人A片一区二区| 人妻激情视频| 伊人碰碰婷婷| 色婷婷婷av| 婷婷五月天亚洲丁香| 五月丁香婷婷深深爱| 亚洲精品婷婷| 亚洲精品一区中文字幕乱码| 热热99爱爱| 99在线观看免费精品视频| 五月婷婷激情| 六月五月天婷婷涩播在线| 丁香五月综合婷婷| 五月丁香久久网| 五月婷婷成人| 六月色婷婷| 97自拍视频网| 久久久五月激| 九九99九九精品免费 | 69人妻人人澡人人爽久久| 亚洲舔观看| 久久少妇视频| 九九成人电影婷婷| 97色五月天| 一起草AV| 婷婷综合网站| 五月天综合激情网| 99久在线精品99re5热视频| 国产精品成av人在线视午夜片| 六月丁香婷婷色狠狠久久| 久久久久思思热| 亚洲狠狠爱婷婷| 亚洲欧洲自拍图片专区五月天| 婷婷 色 丁香 夜| 久久资源综合| 婷婷色色婷婷| 神马欧美精| 蜜臀99精品| 超碰93在线观看| 久久玖玖综合| 热久久91| 97色久| 人妻综合网| 久久99热这里只频精品6学生| 久操热| 九九伊人网| 亚洲色欲欧美一区二区三区| 搡BBBB搡BBB搡五十| 99精品7| 中文AⅤ大全| 丁香婷婷天堂| 可以免费看AV网站| 91在线操| av狠狠操| 婷婷激情五月综合丁| 潮汕成人AV片在线| 97碰久久| 亚洲 小说 欧美 激情 另类| 97超级碰碰碰久久久| 久久综合丁香| 丁香五月宝贝激情网| 国产女人十八水真多1| 97九色视频| 伊人九九热| 久久久久8888| 精品色色| 欧美搡BBBBB摔BBBBB| www.婷婷五月天.com| 极品五月天| 激情小说婷婷五月| 色色色欧美| 久久久人妻不卡| 天天舔天天爽| 婷婷中文无码| 99精品在线观看| Av九九| a久久| 91人操| 婷婷五月色亚洲| ...婷婷五月综合不卡,国产在线手机| 激情综合五月激情| 全部老头和老太XXXXX| 婷婷五月黄色激情在线| 99精品久久| 五月丁香婷婷综合在线| 婷婷成人AV| 天天综合久久| 成人做爰A片免费看视频| 五月天天天综合| 丁香五月大香蕉| 天天爱天天做天天舔| 五月婷婷 激情按摩| 婷婷五月天天aV| 97色天堂| www久久99| 超碰狠狠操| 丁香五月天啪啪| 日本久热| 日本欧美国产| 丁香五月婷婷香| 天天激情欧美美女| 五月激情天| 成人五月天丁香| 嫩草AV久久伊人妇女超级A| 五月婷六月婷婷| 91偷拍视频| 久草 tingting| 婷婷色基地| 丁香六月激情综合网| 丁香五月色网| 色狠狠色狠狠| 一级性感黄色内射视频| 噼里啪啦在线观看免费完整版视频| 日 日干 日日做| 五月色婷婷影院| 99ri视频在线观看| 五月丁香六月欧美综合网站| 五月天婷婷爱| 五月丁香激情综合| 婷婷五月天综合激情| 99色.com| 成功精品影院| 婷婷色五月天在线| 99视频网| 情情五月天色| www.久久| av在线激情| 色五月婷婷在线观看第一页舔| 思思热在线播放| 五月色亭丁香| j五月香在线| 丁香五月婷婷六月| 精品九九视频| 色5在线| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 精品九九九久| 色婷婷五月天偷拍| 五月丁香婷婷啪啪| 天天爱天天做天天| 99热免费精品| 婷婷丁香五月网| 丁香五月婷婷视频| 国产日韩欧美性爱| 美女主播野战视步页| 激情五月天综合网站网站网站| 天天激情5月天亚洲| 五月丁香六月婷婷精品| 五月天婷婷激情六月久久| 爱操天堂| 人妻操日日| 99热高清在线| 7777精品伊人久久久大香线蕉最新版| 婷婷激情四射五月天| 日韩欧美一道四区中文字幕| 日本三级日本三级三级人妇四虎| 婷香五月网在线| 人人综合久| yellow视频在线观看91| 丁香五月婷婷色| 亚洲精品色| 9l视频自拍9l视频自拍九色学生| 岛国AV网| 4399精品一区二区| 99热日本| 成人精品网站在线观看| 97人人妻人人艹| 成人短视频免费观看| 久操操| 成人在线99| 五月天开心网| 免费无码毛片一区二区A片| www九九免费视频| 色综合99无码| 大香久久伊人网| 丁香五月色| 丁香5月婷婷| 99A片| www.金莲av| 色婷婷av在线观看| 深爱激情丁香五月| 成人视频网| 五月刺激丁香月综合| 99热综合| 五月丁香六月综合激情无码软件亮点| 日本色图综合| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 婷婷激情社区| 色婷婷呢狠禁久禁| 国内久久婷婷| 九九蜜臀精品| 婷婷伊人久久| 亚洲色综久久五月| xxxx五月激情| 狠狠的日| 97亚洲婷婷| www99热| 777影视理论片大全在线观看| 综合色图区| 婷婷五月天狠狠| 极品少妇高潮啪啪AV无码| 亚洲无码11| 99这里都是精品6| 久久五月天激情| 久久五月婷| 综合久久综合久久| 超碰av在线| 色婷婷综合久久久久| 97婷婷狠狠久久综合9色| 激情五月天 婷婷| 欧美色男人网站| 色人妻五月| 天堂婷婷五月在线| 亚洲熟妇AV乱码在线观看| 婷婷94s| www.99成人视频| 综合久久十三| 五月婷婷官网色| 七七色综合| 呦呦视频无码播放| 欧美性爱丁香五月| 五月天婷婷在线视频| 日本三级中国三级99| 综合久| 九九99视频精品| 99精品成人无码A片观看金桔| 五月天丁香网| 色五月丁香激情| 大香蕉综合| 97视频.干com| 五月丁香婷婷欧美色图视频五月丁香777电影| 国产亚洲精品人人| 亚洲综合婷婷| 蜜臀九九九九| 九九99热| 99色| 久久欧洲综合网| 久久婷婷五| 色墦五月丁香| 99热6精品| 综合激情开心五月| 超碰免费人人肏| 久婷五月| 思思久久青草热| 婷婷91| 婷婷丁香五月天之开心少妇| www.99在线| 天天插天天干天天舔| 久久九九@| 日日操,夜夜撸| 五月天婷婷基地综合网| 玖月婷婷爱丁香| 久久五月婷婷丁香| 五月黄色婷婷| 这里只有精品视频免费在线观看| 日本狠狠爽| 久久综合五月天激情小说网站| 婷婷开心久久| 色婷婷免费观看| 99久久婷婷| 俺去也在线www色官网| 九九色院| 婷婷久久婷婷| 天天揷综合网| 99视频自拍| 五月丁香色婷婷色| 激情综合激情五月| 欧美激情综合色综合啪啪五月| 日日操天天操| 人妻久久婷婷| 激情五月婷婷综合视频| 天天摸天天舔天天爽| 激情综合国产| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 亚洲色啪| 婷婷色色五月天| 久久99热这里只有精品| 99热偷拍| 99热这里是精品| 91在线日| 五月天精品| 五月丁香成人网| 最新高清无码专区| 一本色道久久综合狠狠躁一二三| 五月天.com| 丁香五月天电影| 色五月激情网| 五月天婷婷丁香成人网| 九九无码| 色色色色色色色色色影院| 婷婷五月在线影院| 丁香六月婷| 色婷五月天| 亚洲第一成人无码A片| 亚洲亚洲人成综合网络| 五月停停大香蕉| 成人精品视频99在线观看免费| 激情久久综合网| 婷婷日日天天| 免费播放片大片| 91日本在线| 国产亚洲精品AAAAAAA片| 婷婷狠狠干| 久久香蕉福利| 678五月丁香亚洲综合| 日日操,夜夜爽| 亚洲色五月| 天天天天干| 五月天小说激情| 中文精品在| 五月丁香激情综合网官网| 成人美女网| 99热在线观看| 五五月丁香花激情综合网| 亚洲网在线观看| 4438成人电影| 五月六月婷婷| 九九色网专区| www.91有码.com| 色婷综合| 丁香五月激情视频在线| 国产日韩欧美| 日本九九九九九九| 金桔一区二区ab地址| 亚洲熟妇无码乱子AV电影| 色色亚洲视频| 丁香六月婷婷色播| www.久久爱.com| 亚洲AV激情五月综合网| 日本色五月婷婷| 国产暴力强伦轩1区二区小说 | 亚洲精品白浆高清久久久久久| www久久艹| 狠狠插日日干撸| 涩五月婷婷| 99精品偷拍视频| 狠狠婷婷爱| 色综合久久88色综合天天99| 久久综合55| 久色国产| 少妇性按摩无码中文A片| 婷婷五月丁香av网站| 99精品在线| 九九热精品99| 天天干天天日天天操| 日本久碰| 亚洲色五月婷婷| 欧美碰碰| 一本久道综合色婷婷五月| 美女五月天| www.sebowuyue| 久久少妇视频| 五月天婷综合| 丁香婷婷月| 丁香六月婷婷综合欧美| 九九热视频99| 激情婷婷亚洲五月| 婷婷色播婷婷| 丁香激情网| 久色精品| 丁香六月婷婷基地| 狠狠综合久久| 另类少妇人与禽zOZZ0性伦| 综合色色婷婷| 国产做爰视频免费播放| 就爱干 在线| 欧美三级大片AA在线看| 日本色色网站| 色色五月天婷婷| www.五月天婷婷| 亚洲无码猫咪| 色五月91| 性爱在线播放av| 免费成人网在线观看| 五月婷婷激情综合| 久久国产性爱A V| 婷婷情色五月| 婷婷丁香色情| 五月人人丁香婷婷五月人人丁香| 任你草| 99热这里只有精品无码| 国产精品人妻在线网址| 伊人激情AV一区二区三区| 色婷婷视频在线| 69精品人人人人| 超爽内射| 另类图片五月天| 青草网在线观看| 久久五月天激情| 五月婷丁香| 五月情涩综合婷婷| av在线超清中文| 久99热在线观看| 成人美女网| 影音先锋91| 五月熟妇婷婷久久| 五月婷婷激情性爱| 国成人网| 99精品国产乱码久久久人妻| 色色色婷| 五月丁香六月激情啪| 二级黄色毛片| 婷婷色五月大香蕉在线观看| 99视频在线| 五月天激情国产综合婷婷婷| 色婷婷综合视频| 丁香桃色网| 五月丁香六月综合激情| 五月婷婷天| 99视频在线精品免费观看2| 天天综合 99久久婷婷| 久久人人看| 日韩久综合| 九九视频在线观看视频6 | 开心激情站婷婷五月天| 好好干Av| 久久草中文日韩欧美| www.久久9| 大香蕉啪啪啪啪啪啪| 99噜噜噜在线播放| 亚洲爆乳无码精品AAA片蜜桃| 精品爱欲五| 丁香婷婷九月在线| 五月天激情四射| 亚洲五月花| 激情色色色| 丁香六月伊人| 情趣视频66| 久久婷婷五月天激情四射| 婷婷五月六月丁香| 色综合久久88色综合天天99| 国产精品激情五月天色婷婷| 狠狠色狠狠色综合日日91| 亚洲成人乱码av网站| 五月之婷婷| 婷婷五月天播播| 五月丁香色婷婷色| 婷婷精品视频| 亚洲超碰中文字幕| 五月天基地| 日本色久| 日韩高清成人| 天天噜天天爱| 五月婷婷亞洲中文| 五月天婷婷綜合院| 色婷婷基地| 99这里只有精品| 色香久久| 内射丰满人妻| 综合久久99| 五月丁香成人网| www91色网站| 久久婷婷五月综合| 久久五月天激情| 五月婷婷综合网| 久久日本wwww色| 欧美六月| 五月天色区| 丁香五月天色婷婷| 婷婷丁香五月天之开心少妇| 激情q青青草在线婷婷| 天天天天天天天操| 久久婷婷五月天激情| 丁香五月激情网| 在线观看日韩12345区| 国产xxxxx在线观看| 亚洲丁香五月| 99久久久99久久91熟女| 强壮公让我夜夜高潮A片视频| 丁香五月婷婷久久久| 五月花成人网| 丁香六月婷婷色XXXX| 大战熟女丰满人妻AV| 五月婷婷导航| 99精品22| 影音先锋91网站在线观看| 婷婷四色五月| 99riAV国产精品视频| 色色五月丁香婷婷综合| 婷婷五月蜜桃成人桃色丁香| 五月婷婷大香蕉| 九九AV在线| 99热这里只有精品5| 男同91| 激情五月图| 久久久人妻| 丁香桃色综合网| 另类小说五月天| 丁香5月激情网| 婷婷精品性性性性性性性| 亚洲亚洲人成综合网络| 99色激| 狠狠色噜噜狠狠狠狠综合| 伊人久久五月天| 激情久久久| 激情五月婷婷丁香六月| 欧美日韩99| 亚洲99在线| 成片免费观看大全| 久久五月激情| 婷婷五月丁香综合桃花色网| 六月丁AV| 久操干| 婷婷五月天亚洲| 99热这里只有精品一| 1024亚洲无码| 婷婷色六月| 91精产品自偷自偷综合| 亚洲AV网址| 婷婷丁香六月| 精品香蕉99久久久久网站| 丁香六月爱综合| 熟妇无码乱子成人精品| 激情网婷婷婷| 99伊人性爱在线影院| YJLZZJLZZ亚洲乱熟无码| 丁香激情久久| 97在线观视频免费观看| 五月丁香人妻| 99热99思午夜精品| 婷久久久| 99久久综合| 思思国产99| 日日噜噜夜夜狠狠久久丁香六月| 国产国产乱老熟女视频网站97| 婷婷香五月天| 五月丁香六月久久| 成人网页在线观看| 久久九九网| 五月天最新网| 性爱电影科技贸易有限公司| AV成人在线播放| 在线五月婷| 99综合网| www.五月丁香| 国产日韩欧美性生活| 4399精品一区二区| 久久xx| 婷婷五月激情的图片| 婷婷五月天影视| 五月天综合网| 色婷婷A| 激情婷婷99| 爽tv | 色婷婷影视| AV网站免费在线| 婷婷色五月色| 日撸夜撸日操| 丁香桃色综合网| 欧美va精品va老师va| 中文字幕AV网址| 91亚洲免费片| 99re资源在线视频导航| 无码人妻AV久久久一区二区三区| 中文色婷婷| 精品网站:999WWW| 色色99| 99热6精品| 五月开心激情| 丁香五月六月综合欧美| 五月开行婷婷色五月| 五月综合六月婷婷| 婷婷激情五月天小说校园| 五月丁香在线精品| w婷婷五月婷婷w| 五月丁香狠狠| 天天拍天天操| 国产精品色婷婷99久久精品| 五月婷婷开心网| 久久久18| 日本一级黄色电影| 精品一二三区久久AAA片 | 99精品视频在线观看| 国产精品美女久久久久AV超清| OYIWbGcPu8H| 美女伊人久久| 激情六月婷婷| 婷婷综合另类小说| 性爱在线播放av| 婷婷五月精品中文字幕| 六月丁香久久| 99热欧美在线观看| 五月激情丁香五月宗合| 日本性激情色播| 婷婷综合激情| 久99热| 五月丁香久久久| www热久久yy9| 色情五月天视频网| 丁香亚洲婷婷五月| 激情综合网婷婷五夜| 99riAV成人在线视频| 色色草97| 亚洲99综合| 婷婷婷五月天最新综合你懂的| 99热在这里只有精品| 91九色精品熟女内射| 97人妻超级碰碰碰碰碰| 久久五月天视频| 六月婷婷七月丁香| 91人人操人人爱| 婷婷五月丁香青青草在线| 久久精彩综合视频| 色婷婷五月天视频在线| 五月天婷婷色色| 色综啪啪| 精品在线| 亚洲天堂啪啪| 久久婷婷五月综合色和| 99热只有精品综合| 色偷偷五月天| 碰超亚洲| 五月丁香久久| 婷婷五月色丁香在线看| 天天日,天天插| 人人性久久| 五月婷婷丁香婷婷| 日99网站| 青草视频在线蜜臀| 久久综合婷婷| 婷婷色网| 9久久精品| 看全色黄大色大片| 深爱激情六月| 色啪久| 超碰精品手机在线| 操操天堂| 91久久综合亚洲噜噜成人在线 | AV伊人青草丁香六月| 91久久精品无码一区二区三区| 99热 在线播放| 日日爽日日| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 久热只有精品| 在线中文字幕免费视频| 先锋男人99资源| 色婷婷视频| 99在线观看视频| 婷婷丁香宗合888| 九九人人自拍| 五月社区婷婷激情| 无码91中文字幕| 99热这里只有的精品视 | 91919191919久久成人视频| 99热这里只有精品13| 亚洲九九99精品视频在线播放| 亚洲色小说在线综合| 七七婷婷综合| 婷婷五月天免费视频在线观看| 日本一级黄色电影| 99热99成人| 97在线观视频免费观看| 天天五月情| 操日视频| 激情小说五月天| 五月激情婷婷开心| 98永久精品| 97色色视频| 激情综合六月| 丁香激情四射| 99精品视频在线观看| 丁香五月区| 色播六月| 在线超碰免费| 婷婷欧美综合| 天天操夜夜夜夜爽| 狠狠狠狠狠狠狠狠| 天天撸夜夜爽| 五月天操逼网| 少妇伦子伦精品无吗| www.五月婷婷.com| 五月天激情无码高清| 婷婷五月天黄色| 亚洲国产网站| 精品夜夜澡人妻无码AV| 国产午夜精品一区二区| 二人电影免费版在线观看| 激情久久网| 99婷五月| 激情深爱五月天| 超碰二区| 99色在线视频| 丁香婷婷人妻综合网| 久热99热| 99久久婷婷国产综合精品| 丁香五月影视| 婷婷五月天高清无码| 日日干夜夜撸夜夜骑| 大香蕉久久| 超碰99资源站| www.玖玖婷婷在线| 五月婷婷啪啪啪啪| 天天肏在线| 丁香五月花| 三年高清大片免费观看国语|