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

ARTICLE DETAIL

資訊詳情

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

C51 Bootloader實(shí)戰(zhàn):分區(qū)、串口升級(jí)與雙備份回滾

C51 Bootloader實(shí)戰(zhàn):分區(qū)、串口升級(jí)與雙備份回滾 簡(jiǎn)介這份資源面向嵌入式開發(fā)初學(xué)者與8051平臺(tái)工程師聚焦C51 Bootloader的完整實(shí)現(xiàn)幫助讀者理解系統(tǒng)啟動(dòng)、固件更新與程序跳轉(zhuǎn)的核心機(jī)制。壓縮包共18個(gè)文件約17KB以C源碼、A51匯編啟動(dòng)文件、Keil工程配置與備份文件為主另含頭文件、初始化腳本及編譯生成的二進(jìn)制程序覆蓋從復(fù)位初始化、串口數(shù)據(jù)傳輸、校驗(yàn)和驗(yàn)證到跳轉(zhuǎn)執(zhí)行的完整鏈路。其中BOOT.C承載引導(dǎo)核心邏輯EXT.C負(fù)責(zé)外部存儲(chǔ)器交互JUMPTAB.C實(shí)現(xiàn)跳轉(zhuǎn)表STARTUP.A51等匯編文件完成堆棧與中斷向量設(shè)置工程文件則保留編譯選項(xiàng)與調(diào)試配置。目前已有1533人學(xué)習(xí)下載適合希望掌握Bootloader分層結(jié)構(gòu)、異常處理與錯(cuò)誤恢復(fù)思路的開發(fā)者參考也可作為Keil C51環(huán)境下固件升級(jí)方案的實(shí)踐模板。1. 從一次“變磚”說起C51 Bootloader 到底解決什么問題去年幫一個(gè)做工業(yè)控制的朋友救一塊板子板子用的是 STC8 系列單片機(jī)程序跑飛之后 ISP 下載口被用戶代碼占用了現(xiàn)場(chǎng)沒有專用編程器只能拆下來上編程座。那次之后我就下定決心凡是量產(chǎn)的 C51 板子必須留一條“后悔藥”通道——這就是 Bootloader 存在的意義。它本質(zhì)上是一段先于用戶程序運(yùn)行的小代碼負(fù)責(zé)判斷“要不要升級(jí)”“從哪拿新固件”“怎么把新固件寫進(jìn) Flash”寫完之后再跳轉(zhuǎn)到真正的應(yīng)用入口。對(duì) C51 這種資源緊張的平臺(tái)來說Bootloader 不是可選項(xiàng)而是產(chǎn)品能不能遠(yuǎn)程維護(hù)、能不能現(xiàn)場(chǎng)救磚的分水嶺。適合誰看手上有 8051 內(nèi)核板子、需要做串口升級(jí)或 OTA 的嵌入式工程師以及被“程序燒錯(cuò)就得拆機(jī)”折磨過的同行。下面我按自己實(shí)際落地的順序把選型、分區(qū)、通信、跳轉(zhuǎn)和踩坑一次講透。2. 存儲(chǔ)分區(qū)與中斷向量C51 Bootloader 的地基怎么打C51 的 Bootloader 和 ARM 平臺(tái)最大的區(qū)別在于它沒有統(tǒng)一的中斷向量表重定位機(jī)制也沒有現(xiàn)成的鏈接腳本概念。Keil C51 的代碼空間是 64KB 線性尋址中斷向量固定在低地址所以 Bootloader 和 App 誰占低地址誰就得負(fù)責(zé)“讓出”中斷。這一章先把分區(qū)和向量這兩件事講清楚不然后面跳轉(zhuǎn)一定翻車。2.1 為什么 Bootloader 必須放在 0x00008051 復(fù)位后 PC 強(qiáng)制指向 0x0000這是硬件行為改不了。所以 Bootloader 的復(fù)位入口必須在 0x0000中斷向量區(qū)0x0003、0x000B、0x0013 等也天然落在 Bootloader 的地址范圍內(nèi)。常見做法是把 Bootloader 放在 0x0000~0x0FFF4KBApp 從 0x1000 開始。這樣分區(qū)的好處是Bootloader 永遠(yuǎn)占據(jù)復(fù)位和中斷入口App 即使跑飛只要復(fù)位就能回到 Bootloader 的判定邏輯。但這里有個(gè)關(guān)鍵矛盾App 自己也要用中斷。如果 App 的中斷向量還在 0x0003那中斷實(shí)際會(huì)跳進(jìn) Bootloader 的向量區(qū)。解決辦法有兩種我一般用第一種向量重映射Bootloader 在每個(gè)中斷向量處放一條跳轉(zhuǎn)指令跳到 App 對(duì)應(yīng)的中斷服務(wù)函數(shù)地址。App 編譯時(shí)把中斷函數(shù)地址固定到約定位置Bootloader 啟動(dòng)時(shí)讀取并填入跳轉(zhuǎn)。App 禁用中斷向量App 不使用標(biāo)準(zhǔn)中斷改用輪詢。這種方式簡(jiǎn)單但犧牲實(shí)時(shí)性只適合低速場(chǎng)景。下面是我常用的 Bootloader 向量跳轉(zhuǎn)寫法用匯編嵌入 C 文件// boot_vector.c // Bootloader 中斷向量跳轉(zhuǎn)表放在 0x0000 起始 // 每個(gè)向量 8 字節(jié)空間足夠放 LJMP #include reg52.h // App 中斷服務(wù)函數(shù)地址由 App 編譯后固定這里用宏占位 #define APP_TIMER0_ISR 0x2100 #define APP_UART_ISR 0x2200 #define APP_EXT0_ISR 0x2300 void boot_entry(void) __interrupt 0 __using 0 { // 復(fù)位入口實(shí)際由啟動(dòng)代碼跳到這里 // 這里只做最簡(jiǎn)初始化然后進(jìn)入主判定 }上面這段只是示意向量占位真正讓向量跳轉(zhuǎn)生效需要在 Bootloader 的啟動(dòng)匯編里顯式寫 LJMP。更穩(wěn)妥的做法是Bootloader 不實(shí)現(xiàn)任何中斷服務(wù)只保留向量地址App 編譯時(shí)把中斷函數(shù)放到固定地址Bootloader 啟動(dòng)時(shí)把 App 的向量地址寫入自己的向量表。參數(shù)上要注意Keil C51 的__interrupt編號(hào)和向量地址是綁定的改不了所以 App 的中斷函數(shù)必須用同樣的編號(hào)只是地址被重定位。2.2 分區(qū)大小怎么定4KB 還是 8KB分區(qū)大小直接決定 Bootloader 能塞多少功能。我做過統(tǒng)計(jì)一個(gè)帶串口協(xié)議解析、Flash 擦寫、CRC 校驗(yàn)、超時(shí)重試的 Bootloader用 Keil C51 編譯出來大約 3.2KB~3.8KB。如果再加個(gè)簡(jiǎn)易菜單或雙備份切換很容易超過 4KB。所以我的建議是功能集典型代碼量建議分區(qū)僅串口接收Flash寫1.5~2KB2KB加 CRC16超時(shí)重試2.5~3KB4KB加雙備份版本回滾4~5KB8KB加加密校驗(yàn)5~6KB8KB 或 12KB注意C51 的 Flash 擦寫是以扇區(qū)為單位的不同芯片扇區(qū)大小不一樣。比如某些 STC 芯片扇區(qū)是 512 字節(jié)而有些增強(qiáng)型 8051 是 1KB。分區(qū)起始地址必須對(duì)齊到扇區(qū)邊界否則擦除時(shí)會(huì)誤傷相鄰區(qū)域。我一般會(huì)在 Bootloader 里加一條編譯期斷言// 確保 App 起始地址按扇區(qū)對(duì)齊 #define FLASH_SECTOR_SIZE 512 #define APP_START_ADDR 0x1000 #if (APP_START_ADDR % FLASH_SECTOR_SIZE) ! 0 #error APP_START_ADDR not aligned to flash sector! #endif這條斷言看起來簡(jiǎn)單但能擋住很多“改地址改出玄學(xué)”的問題。參數(shù)說明FLASH_SECTOR_SIZE要查具體芯片手冊(cè)APP_START_ADDR要和 Keil 的 Code Range 設(shè)置一致否則編譯出來的 App 入口和 Bootloader 跳轉(zhuǎn)地址對(duì)不上現(xiàn)象就是跳過去直接死機(jī)。2.3 Keil 工程怎么配Code Range 與中斷向量偏移Bootloader 和 App 是兩個(gè)獨(dú)立工程App 工程必須把代碼起始地址改到分區(qū)地址。在 Keil 里操作路徑是Options for Target → Target → Code Range把起始地址從 0x0000 改成 0x1000。同時(shí)Off-chip Code memory 的起始地址也要對(duì)應(yīng)調(diào)整。這一步不做App 編譯出來還是從 0x0000 開始和 Bootloader 完全重疊燒進(jìn)去必炸。還有一個(gè)容易忽略的點(diǎn)App 的啟動(dòng)代碼STARTUP.A51里會(huì)初始化中斷向量如果 App 用了中斷這些向量會(huì)被寫到 0x0003 等低地址覆蓋 Bootloader 的向量區(qū)。解決辦法是在 App 的STARTUP.A51里把中斷向量初始化關(guān)掉或者把向量地址改到 App 自己的區(qū)域。我一般直接在 App 里禁用標(biāo)準(zhǔn)中斷向量初始化改用 Bootloader 提供的跳轉(zhuǎn)機(jī)制。; App 的 STARTUP.A51 片段 ; 禁用中斷向量初始化避免覆蓋 Bootloader 向量區(qū) ; 將 IDATALEN 和 XDATALEN 保留只跳過向量寫入 ?C_STARTUP: ; 原有啟動(dòng)代碼... ; 注釋掉中斷向量初始化部分 ; MOV R0, #0x03 ; ...這段匯編不是讓讀者照抄而是說明一個(gè)原則App 的啟動(dòng)代碼不能碰低地址向量區(qū)。具體改法要看芯片和編譯器版本但思路是一致的——把向量控制權(quán)留給 Bootloader。3. 串口通信協(xié)議與 Flash 寫入Bootloader 的雙手分區(qū)和向量搞定之后Bootloader 要干兩件事從串口收數(shù)據(jù)往 Flash 寫數(shù)據(jù)。這兩件事看起來簡(jiǎn)單但 C51 的串口沒有 DMAFlash 寫入又必須按扇區(qū)擦除中間任何一個(gè)環(huán)節(jié)沒處理好升級(jí)就會(huì)卡死。這一章把協(xié)議幀格式、接收狀態(tài)機(jī)、Flash 操作時(shí)序拆開講。3.1 幀格式設(shè)計(jì)為什么我不用純文本協(xié)議很多教程用純文本協(xié)議做 Bootloader比如收到 START 就開始升級(jí)。這種方式在實(shí)驗(yàn)室能用但現(xiàn)場(chǎng)干擾一大就翻車。我一般用二進(jìn)制幀帶幀頭、長(zhǎng)度、命令、數(shù)據(jù)和 CRC。幀格式如下字段長(zhǎng)度說明幀頭2B固定 0xAA 0x55長(zhǎng)度1B數(shù)據(jù)段長(zhǎng)度不含幀頭幀尾命令1B0x01 握手0x02 數(shù)據(jù)0x03 結(jié)束0x04 重傳數(shù)據(jù)N B最大 128B減少 RAM 占用CRC162B從長(zhǎng)度到數(shù)據(jù)的校驗(yàn)幀尾1B固定 0x0D為什么數(shù)據(jù)段最大 128B因?yàn)?C51 的 RAM 通常只有 256B~1KBBootloader 還要留出棧空間和變量空間。128B 的緩沖區(qū)已經(jīng)占了不少再大就容易棧溢出。CRC16 用查表法還是計(jì)算法我一般用計(jì)算法省 Flash 空間速度對(duì) 8051 來說也夠用。// 幀解析狀態(tài)機(jī)逐字節(jié)喂入 typedef enum { STATE_HEAD1, STATE_HEAD2, STATE_LEN, STATE_CMD, STATE_DATA, STATE_CRC1, STATE_CRC2 } rx_state_t; static rx_state_t state STATE_HEAD1; static uint8_t buf[128]; static uint8_t idx 0; static uint8_t len 0; static uint8_t cmd 0; void rx_byte(uint8_t byte) { switch (state) { case STATE_HEAD1: if (byte 0xAA) state STATE_HEAD2; break; case STATE_HEAD2: state (byte 0x55) ? STATE_LEN : STATE_HEAD1; break; case STATE_LEN: len byte; if (len 128) { state STATE_HEAD1; break; } idx 0; state STATE_CMD; break; case STATE_CMD: cmd byte; state (len 0) ? STATE_DATA : STATE_CRC1; break; case STATE_DATA: buf[idx] byte; if (idx len) state STATE_CRC1; break; case STATE_CRC1: crc_low byte; state STATE_CRC2; break; case STATE_CRC2: crc_high byte; // 校驗(yàn)并處理 if (check_crc(cmd, buf, len, crc_low, crc_high)) { handle_frame(cmd, buf, len); } state STATE_HEAD1; break; } }邏輯說明狀態(tài)機(jī)逐字節(jié)推進(jìn)不阻塞主循環(huán)。參數(shù)說明buf大小要和協(xié)議最大數(shù)據(jù)段一致len超過 128 直接丟棄防止緩沖區(qū)溢出。handle_frame里根據(jù)命令做握手、寫數(shù)據(jù)或結(jié)束升級(jí)。注意CRC 校驗(yàn)失敗時(shí)不要直接復(fù)位狀態(tài)機(jī)而是發(fā)一個(gè)重傳請(qǐng)求讓上位機(jī)重發(fā)當(dāng)前幀這樣能提高弱信號(hào)下的升級(jí)成功率。3.2 Flash 擦寫時(shí)序別在中斷里寫 FlashC51 的 Flash 寫入通常需要按扇區(qū)擦除而且擦寫期間 CPU 可能無法取指。不同芯片行為不一樣有的芯片擦寫時(shí) CPU 會(huì)暫停有的需要把代碼搬到 RAM 里執(zhí)行。我踩過最狠的一次坑是在串口中斷里直接調(diào)用 Flash 寫函數(shù)結(jié)果擦除期間中斷丟失上位機(jī)以為超時(shí)反復(fù)重發(fā)最后 Flash 被寫壞。正確做法是串口中斷只負(fù)責(zé)收字節(jié)和填緩沖區(qū)主循環(huán)檢測(cè)到完整幀后關(guān)中斷執(zhí)行 Flash 擦寫寫完再開中斷。擦寫函數(shù)本身要放在 RAM 里執(zhí)行或者確認(rèn)芯片支持 Flash 擦寫期間取指。// Flash 擦寫函數(shù)放在 RAM 中執(zhí)行 // 使用 Keil 的 __ram 關(guān)鍵字或手動(dòng)拷貝到 RAM void flash_erase_sector(uint16_t addr) __ram { // 關(guān)中斷防止擦寫期間中斷丟失 EA 0; // 解鎖 Flash 控制寄存器 FLASH_CR 0x01; // 寫入扇區(qū)地址 FLASH_ADDR addr; // 觸發(fā)擦除 FLASH_CR | 0x02; // 等待完成 while (FLASH_CR 0x02); // 上鎖 FLASH_CR 0x00; EA 1; }參數(shù)說明addr必須是扇區(qū)對(duì)齊地址FLASH_CR和FLASH_ADDR是芯片特定寄存器不同廠家名字不一樣。__ram關(guān)鍵字不是所有編譯器都支持如果不支持需要手動(dòng)把函數(shù)拷貝到 RAM 執(zhí)行。注意擦除前一定要確認(rèn)目標(biāo)地址在 App 分區(qū)內(nèi)別把 Bootloader 自己擦了那就真成磚了。3.3 升級(jí)流程握手、傳輸、校驗(yàn)、跳轉(zhuǎn)完整的升級(jí)流程我一般分四步握手上位機(jī)發(fā)握手幀Bootloader 回復(fù)版本號(hào)和分區(qū)信息。如果 App 已經(jīng)在運(yùn)行需要先發(fā)一個(gè)“進(jìn)入升級(jí)”命令Bootloader 收到后復(fù)位或跳回自身。傳輸上位機(jī)按幀發(fā)送固件數(shù)據(jù)每幀帶地址偏移。Bootloader 收到后先擦除對(duì)應(yīng)扇區(qū)再寫入。寫入失敗發(fā)重傳請(qǐng)求。校驗(yàn)全部發(fā)完后上位機(jī)發(fā)結(jié)束幀帶整包 CRC 或哈希。Bootloader 讀回 Flash 計(jì)算校驗(yàn)比對(duì)成功則標(biāo)記升級(jí)完成。跳轉(zhuǎn)校驗(yàn)通過后Bootloader 跳轉(zhuǎn)到 App 入口。跳轉(zhuǎn)前要關(guān)中斷、復(fù)位外設(shè)、設(shè)置棧指針。// 跳轉(zhuǎn)到 App 入口 void jump_to_app(uint16_t app_addr) { // 關(guān)總中斷 EA 0; // 關(guān)閉外設(shè)避免 App 初始化沖突 // 具體外設(shè)根據(jù)芯片而定 // 設(shè)置棧指針到 App 約定位置 SP *(uint8_t *)(app_addr 1); // 跳轉(zhuǎn) ((void (code *)(void))app_addr)(); }邏輯說明跳轉(zhuǎn)前關(guān)中斷是必須的否則 App 還沒初始化完就來了中斷向量指向 Bootloader直接跑飛。參數(shù)說明app_addr是 App 入口地址通常是分區(qū)起始地址加 3跳過 LJMP 指令。棧指針設(shè)置要看 App 的約定有的 App 自己會(huì)初始化棧那就不用設(shè)。跳轉(zhuǎn)函數(shù)用函數(shù)指針實(shí)現(xiàn)注意 Keil C51 的函數(shù)指針要加code關(guān)鍵字否則會(huì)當(dāng)成 data 指針跳轉(zhuǎn)地址錯(cuò)誤。4. 避坑與排查那些讓我熬夜的 Bootloader 問題Bootloader 的坑大多不在代碼邏輯而在芯片行為、編譯器設(shè)置和時(shí)序配合上。這一章列 5 條我實(shí)際踩過的坑每條按現(xiàn)象、原因、解決寫希望能幫你省幾個(gè)通宵。4.1 現(xiàn)象跳轉(zhuǎn)后死機(jī)復(fù)位才能恢復(fù)原因App 的中斷向量沒有正確重定位中斷發(fā)生時(shí) PC 跳回 Bootloader 的向量區(qū)但 Bootloader 已經(jīng)不再處理中斷導(dǎo)致跑飛?;蛘咛D(zhuǎn)前沒有關(guān)中斷App 初始化過程中來了中斷。解決跳轉(zhuǎn)前執(zhí)行EA 0并確認(rèn) App 的中斷向量已經(jīng)重定位到 App 自己的區(qū)域。如果 App 不使用中斷在 App 啟動(dòng)代碼里徹底禁用中斷向量初始化。4.2 現(xiàn)象Flash 寫入后讀回?cái)?shù)據(jù)不一致原因Flash 擦除不徹底或者寫入時(shí)序不滿足芯片要求。有些芯片要求擦除后延時(shí)一段時(shí)間才能寫入有些要求寫入前先解鎖。解決查芯片手冊(cè)確認(rèn)擦寫時(shí)序在擦除和寫入之間加適當(dāng)延時(shí)。寫入后立即讀回校驗(yàn)不一致則重試。注意Flash 寫入次數(shù)有限重試次數(shù)不要太多一般 3 次足夠。4.3 現(xiàn)象串口接收丟幀升級(jí)到一半卡死原因串口中斷優(yōu)先級(jí)太低或者接收緩沖區(qū)太小高速傳輸時(shí)溢出。C51 的串口沒有硬件 FIFO全靠軟件緩沖。解決提高串口中斷優(yōu)先級(jí)增大接收緩沖區(qū)。如果 RAM 不夠用環(huán)形緩沖區(qū)邊收邊處理。另外上位機(jī)發(fā)送速率要匹配 Bootloader 的處理能力我一般用 9600 或 19200穩(wěn)定優(yōu)先。4.4 現(xiàn)象App 編譯出來大小超過分區(qū)燒錄后 Bootloader 被覆蓋原因Keil 的 Code Range 設(shè)置和 Bootloader 分區(qū)不一致或者 App 鏈接時(shí)沒有限制代碼范圍。解決在 App 工程的 Linker 設(shè)置里限制 Code Range并在編譯后檢查生成的 HEX 文件大小。我一般會(huì)在 Bootloader 里加一條檢查如果 App 大小超過分區(qū)拒絕跳轉(zhuǎn)并報(bào)錯(cuò)。4.5 現(xiàn)象升級(jí)完成后 App 運(yùn)行正常但重啟又回到 Bootloader原因Bootloader 的升級(jí)完成標(biāo)志沒有正確寫入或者標(biāo)志存儲(chǔ)位置被 App 擦除。常見做法是把標(biāo)志存在 Flash 的特定地址但 App 的擦寫操作可能覆蓋這個(gè)地址。解決把升級(jí)標(biāo)志存在獨(dú)立的 EEPROM 或 Flash 保留扇區(qū)App 不碰這個(gè)區(qū)域。Bootloader 每次啟動(dòng)先讀標(biāo)志決定是否跳轉(zhuǎn)。標(biāo)志寫入后要校驗(yàn)確保掉電不丟失。5. 進(jìn)階技巧雙備份與版本回滾的輕量實(shí)現(xiàn)單備份 Bootloader 最大的風(fēng)險(xiǎn)是升級(jí)過程中斷電App 被擦了一半既跑不了新固件也回不到舊固件。我在一個(gè)工業(yè)項(xiàng)目里被這個(gè)問題坑過現(xiàn)場(chǎng)斷電導(dǎo)致 20 多塊板子返修。后來我加了一套輕量雙備份機(jī)制不需要外部存儲(chǔ)只用芯片內(nèi)部 Flash 的兩個(gè)分區(qū)。思路很簡(jiǎn)單把 App 區(qū)分成 A 區(qū)和 B 區(qū)Bootloader 記錄當(dāng)前運(yùn)行區(qū)和升級(jí)目標(biāo)區(qū)。升級(jí)時(shí)寫目標(biāo)區(qū)寫完后校驗(yàn)校驗(yàn)通過則切換運(yùn)行區(qū)失敗則保留原區(qū)。版本回滾就是切換回原區(qū)。具體實(shí)現(xiàn)區(qū)域地址范圍用途Bootloader0x0000~0x0FFF引導(dǎo)與升級(jí)邏輯標(biāo)志區(qū)0x1000~0x10FF當(dāng)前區(qū)、目標(biāo)區(qū)、版本號(hào)、CRCApp A0x1100~0x8FFF固件備份 AApp B0x9000~0xFFFF固件備份 B標(biāo)志區(qū)用一個(gè)扇區(qū)存一個(gè)結(jié)構(gòu)體帶 CRC 校驗(yàn)。每次升級(jí)前先寫標(biāo)志區(qū)標(biāo)記目標(biāo)區(qū)升級(jí)完成后更新當(dāng)前區(qū)。Bootloader 啟動(dòng)時(shí)讀標(biāo)志區(qū)決定跳轉(zhuǎn)到 A 還是 B。// 標(biāo)志區(qū)結(jié)構(gòu)體 typedef struct { uint8_t magic[4]; // 固定 0x42 0x4F 0x4F 0x54 uint8_t current; // 0A, 1B uint8_t target; // 0A, 1B uint16_t version; // 版本號(hào) uint16_t crc; // 結(jié)構(gòu)體 CRC } boot_flag_t; // 讀取標(biāo)志區(qū)校驗(yàn)失敗則使用默認(rèn)值 void load_flag(boot_flag_t *flag) { memcpy(flag, (void code *)FLAG_ADDR, sizeof(boot_flag_t)); if (flag-magic[0] ! 0x42 || flag-magic[1] ! 0x4F || flag-magic[2] ! 0x4F || flag-magic[3] ! 0x54 || calc_crc(flag, sizeof(boot_flag_t) - 2) ! flag-crc) { // 標(biāo)志區(qū)損壞使用默認(rèn)值 flag-current 0; flag-target 0; flag-version 0; } }參數(shù)說明FLAG_ADDR是標(biāo)志區(qū)起始地址要和分區(qū)表一致。magic用于識(shí)別標(biāo)志區(qū)是否已初始化。crc校驗(yàn)整個(gè)結(jié)構(gòu)體防止掉電寫壞。注意標(biāo)志區(qū)寫入前要先擦除整個(gè)扇區(qū)寫入后立即讀回校驗(yàn)。如果標(biāo)志區(qū)損壞Bootloader 要能回退到默認(rèn)區(qū)不能直接死機(jī)。雙備份的代價(jià)是 Flash 利用率降低App 最大不能超過單個(gè)分區(qū)大小。但對(duì)工業(yè)產(chǎn)品來說可靠性比空間更重要。我一般會(huì)在 Bootloader 里加一個(gè)“強(qiáng)制回滾”命令現(xiàn)場(chǎng)調(diào)試時(shí)可以通過串口切回舊版本不用拆機(jī)。從那以后我每次做 C51 Bootloader都會(huì)先把分區(qū)表、向量跳轉(zhuǎn)、Flash 時(shí)序這三件事在紙上畫一遍再動(dòng)手寫代碼。跳轉(zhuǎn)前關(guān)中斷、擦寫前查扇區(qū)、標(biāo)志區(qū)加 CRC這三個(gè)習(xí)慣幫我省了至少三次返修。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
操逼巨乳91| 站长推荐无码播放| 亚洲成人人人操| 五月婷在线观看| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 极品人妻VideOssS人妻| 9有码中文| 五月天天天天天天天天天天天婷婷婷| 日逼影音先锋AV男人资源站| 一本久久亚洲五月婷婷| 色色五月婷婷| 久久看九九90| 丁香六月婷婷综合激情欧美| 在线99热| 99色免费视频| 色婷婷久久天天性爱| 久热精品视频| 久久婷狠狠色| 丰满少妇猛烈A片免费看观看| jiujiu热在线视频| 日韩精品视频中文字幕| 狠狠色大香蕉| 777久久精品| 99热精品在线观看| 五月丁香六月情| 大香蕉久久视频久久视频| 久久久久99精品成人片| 热99视频精品在线| 五月婷婷综合在线视频小说| 伊人激情啪啪| 五月丁香色婷婷| 九九干视频| 天天色天天日天天舔| 91九色国产熟女| 在线婷婷| 永久99免费视频网站| 五月天婷婷小说| 色玖玖综合网| 狠狠久久婷五月综合色| 五月婷婷综合丁香视频| 97在线刺激| 99久re热视频精品98| 久久九九99字幕| 秋霞九九无码| www99热| 久久99大全| 婷婷成人五月天| 伊人99热| 精品久久99码| 碰久久精品w| 亚韩在线视频| 国产乱妇乱子伦| 91seAV| 综合视频久久| 婷婷五月精品中文字幕| 九九亚洲视频| 香蕉99网| 婷婷色网| 色五月婷婷网| 激情伊人五月婷婷久久| 激情99热| 欧美碰碰| 五月婷婷香| 久久欧洲久久| 欧美激情中文字幕| 热91久| 可以直接看的av| 人人干99| 天堂伊人干| 这里只有精品视频| 五月天影院| 久久一伦| 五月天色图| 丁香五月婷婷香| 六月色日韩| 久久五月情| 亚州色色色| 丁香婷婷五月基地| 天天插天天日天天爽| 色五月av| 99久久婷婷国产综合精品电影| 五月亚洲| 色婷婷内射| 日韩天堂久久| 久久人人做人人妻人人玩精品va| 色婷婷狠狠| 激情综合色五月丁香六月亚洲| 婷婷五月综合社区| 欧美啪啪五月天| 97久久超碰| 99精品在线观看| 婷婷激情视频| 夜夜夜夜夜骑撸| 色玖玖| 97在线天堂| 婷婷久久五月| 天天日综合| 人妻性操逼中文字幕 国产| 亚洲无AV在线中文字幕| 成人看片网站| 五月天天天天天天天天天天天婷婷婷| AV五月丁香| 五月色网| 色婷婷日本| 69五月天视频| 色婷婷综合久色AV五色最新| 午夜色婷婷| 91打屁股免费看| 免费观看欧美成人AA片爱我多深| 婷婷六月色情| 欧美va亚洲va在线播放| 激情五月色综合国产精品| 亚洲区,视频区,视频区免费| 久久香蕉网| 91嫩草久久| 五月天另类小说久久小说网| 亚洲AV影片在线观看| 99re这里只有| 午夜一区| 97色干| 亚洲高清在线| 99免费| 亚洲色综合| 久久色五月| 深爱激情av| 色人久久| 婷婷五月丁香五月丁香| www.狠狠操.com| 综合激情五月四射婷婷| 五月激情四射婷婷丁香| 亚洲思思热久| 啪啪啪综合网| 久久激情五月婷婷| 婷婷九月| 91欧美| 久久青青日本视频| 丁J香六月首页| 亚洲精品久久久久久久久久飞鱼| 久久99热这里只频精品6学生| 99精品久久| 碰碰91| 五月久久婷婷天堂视频| 99re热视频这里只精品| 五月婷婷影院| 六月丁香激情网| 五月花激情| 日日夜夜爽| 丁香五月婷婷乱| 亚洲丁香婷婷五月天综合色| 五月婷俺去也| xxxx五月| 99热精品在线播放观看| 婷婷开心激情综合五月天| 婷婷丁香久久五月综合| 五月丁香激情婷婷| 丁香婷婷色色| 亚洲激情综合| 欧美黄色一级| 国产操肏网站| 丁香五月首页| 丁香色婷婷| 美女天天艹人人爽| 99er6免费视频热播| 亚洲愉拍99热成人精品| 在线综合婷婷| av中文网站| 大香蕉久久婷婷| 婷婷丁香先锋资源网站| 婷婷五月色播天| 久久99国产综合精品免费 | 婷婷色五月综合| 五婷婷综合网| 久久久.COM| 久久9久| 色色激情五月天| 好好日激情五月天| 五月丁香啪啪| 夜夜穞天天穞狠狠穞AV美女按摩| 丁香五月ⅤA久久久| 9久热在线视频精品| 久久精品爱爱| 色婷婷色五月另类综合| 天天综合天天玩夜夜玩天天玩夜夜玩 | 久久网日本| 婷婷九月丁香| 国产亚洲精品久久久久久郑州| 91超级碰| 人人操婷婷| 97AV在线视频| 五月天丁香久久综合| 丁香婷婷老司机久操| 色99日韩| 亚洲爱爱无码婷婷色五月| 桃色激情网| 婷婷激情九月| 超碰人人在线观看| 日本www免费九九| 610018岁成人视频| 亚洲av无码精品色午夜| 婷婷五月色| 国产精品视频久久99| 色五月超碰| 国产精品色情AAAAA片软件| 色色色com| 超碰人人操在线| 丁香五月亚洲综合| 一本色道久久综合狠狠躁小说| 亚洲妇女熟BBW| 人人操女人| 天天色五月| 免费看成人747474九号视频在线观看| 91成人性爱视频| 婷婷五月天天| 欧美激情五月综合| 丁香六月婷婷综合激情欧美| 欲色人妻| 天天综合色丁香| 99亚洲精品视频| 狠狠色成人影片| 国产99久9在线| 色综合性视频| 五月天天久久香| 成人视屏在线观看| 精品九九婷婷| 天天色综合网吨吧| 亚洲V国产V欧美V久久久久久| 百度4399有码精品V在线观看| 婷婷六月丁香色| 色色色99| 五月天基地| 婷婷色五月综合丁香| 婷婷 丁香 精品| 99热国产在线| 99精品7| 久久99操| 六月丁香婷婷大香蕉| 五月天激情网址| 玖玖资源在线视频| 久久五月婷| AAAA亚洲| 狠狠五月天| 色久女| 日本色色色| 中文字幕日本最新乱码视频| 亚洲第一色网站| 午夜成人AV在线| 亚洲激情五月| 六月丁香婷| 国产精品久久久海的味道| 精品牛仔裤超碰| 丁香婷婷久久| 99热这里只有精品在线播放| www色五月| 色五月五月婷婷| 99精品视频网站| 丰满少妇猛烈A片免费看观看| 亚洲综合久| 狠狠做深爱婷婷久久综合一区| 亚洲视频一区| 丁香五月六月欧美| 99免费视频| 亚洲第一成人无码A片| 亚洲中文字幕AV| 亚洲aV写真天天综合网久久| 99热黄| 亚洲、热| 99ree6| 天天色天天爱天天舔| 久久婷婷五月综合激情国产 | 日本WWW九九九| 丁香婷婷激情五月天无毒不卡蜜桃| 久久日婷婷| 五月婷婷丁香伦理网| 伊人久久婷婷| 激情美女五月天激情在线| 香蕉婷婷| 国产 亚洲 在线| 五月丁香六月婷婷精品| 丰满少妇猛烈A片免费看观看 | 日韩AAAAA| 六月婷综合| 色色免费网战视频| 久99精品视频| 久久久性爱视频| 九九热99精品| 大香蕉五月婷婷| 久久久大香蕉| 久色网| 色综合久久伊伊婷婷五月| 一本大道嫩草AV无码专区| 99热18| 色婷婷五月天在线观看| 色大综合| 色9999综合久久| 人人草人| 91九色精品熟女内射| 五月婷婷激情综合| 婷婷五月激情丁香激情| 1囯产午夜仑鲁鲁| 无码色| 九九视屏| 久久色区| 久鲁鲁色网| 激情五月天婷婷| 成人天天爽| 五月天综合久久| 五月丁欧美| 欧美私人家庭影院| 久草热在线视频| 97色婷婷五月天| 色婷婷久久| 色小说五月婷婷| 超碰在线观看caop| 五月天亭亭俺也| 婷婷五月成年人| 九九热av| 五月天激情综合网俺也去| 丁香五月天激情视频| 激情网站综合五月天| www.97视频| 激情五月天com| 九九九这里只有精品| 中字幕视频在线永久在线观看免费 | 99婷五月| 97久久草草超级碰碰碰| 自拍偷窥99热| 亚洲精品第一国产综合亚AV | 六月色婷婷色| 成人美女网| 欧美xx激情视频在线观看| 五月丁香久久网| 国产黄大片在线观看画质优化| www天天色天天射| 天天综合网、天天综合色| 成人综合视频网址| 色五月婷婷中文字幕| 人妻精品久久久久久| 另类小说五月天| 六月丁香视频网站| 99年操人人爽| 亚洲成人中心| 淫荡工a| 久久久香| 五月激情久久| 色婷婷成人做爰A片免费看网站| 俺去也综合| 九热视频免费观看| 丁香五月手机在线| 色婷婷五月天成人网| 婷婷丁香五月亚洲免费| www.激情五月| 99热1| 99热啪啪| 精品人妻伦一二三区久久| 色色色综合网| 亚洲第一精品网站| 熟女激情网| 天天干天天做| 色月视频| 婷婷自拍| 五月丁香婷婷欧美| 色色丁香五月天| 成人精品视频99在线观看免费| 久久婷婷亚洲| 激情综合网五月| 97操碰| 狠狠婷婷日韩| 五月天婷婷丁香导航| 91操碰| 五月婷婷亚洲色图| 久久精品A片777777| 日本久久高清| 超碰人人干| 96人人操人人操人人| 婷婷五月在线| 五月丁香本色在线观看| 亚洲综合五月天婷婷| 五月天综合色| 亚洲亚洲永久无码777777| 婷婷5月天激情综合| www,色综合| 久久综合九色综合97婷婷| 婷婷九九视频| 五月美女婷婷风骚| 日本久热| 欧美性爱五月天| 99热爱爱干干日| 久久综合中文字幕| 91狠狠综合久久久久久| 久久精彩视频| 色综合中文| 在热视频精品| 婷婷五月a| 2050人人操免费工开爱| 51精品国自产在线| 国外亚洲成AV人片在线观看| YJLZZJLZZ亚洲乱熟无码| 免费播放99性爱视频| 六月五月久久丁香| 激情丁香五月婷| 综合网精品99| 另类图片五月天婷婷| yirenjiqingshiping| 拍真实国产伦偷精品| 色情五月婷婷| 激情五月天社区| 欧美丁香婷婷五月| 五月色天五月色| 丁香五月六月久久综合| 丁香伊人五月色婷婷五十路| 97碰精品| 四色五月视频| 色很久综合| 免费成人网在线观看| 99久热视频在线| 做爰丰满少妇1313| 亚洲精品一二三| 五月激情啪啪| 五月天精品| 操99| 色婷五月天| 男男野外做爰全过程69| 色九九综合色| 人人播| 国产99热| AA片在线观看视频在线播放| 天堂成人A片永久免费网站| 先锋影音av色五月天资源站| 日本97在线观看| 另类小说五月天| 婷婷97| 4399无码视频| 久久婷婷的综合色丁香五月| 久久女人九九| www.久久久久久久久久久| 亚洲99在线| 九九十99视频| 那里有AV网址| 天天草天天日| 激情五月天www| 五月丁香WWW| 九九九成人在线视频| 日本在线噜噜| 丁香五月天堂网| 南京搡BBBB搡BBBB| 国产乱人偷精品人妻A片| 99er这里只有精品| 99A片| 五月婷婷新网站| A短视频免费在线观看| 激情综合色| 九九操操| 久久婷婷亚洲无码一起| 婷婷成人在线| 激情丁香五月| 玖玖福利视频资源| 亚洲天天免费| 久久 视频这里只有精总| 五月叮香啪| 久久色情| AV色色天堂中文| 97欧美在线| 日韩无码成人电影| 六月婷婷亚洲| 91日本在线观看| 亚洲经典三级| 九九综合88| 婷婷综合激情| 久久这里有精品视频| 大香蕉婷婷五月| 婷婷丁香六月天| 久久婷婷免费| 激情亭亭五月| 亚洲小说欧美激情| 五月天天天天天天天天天天天天天天天婷婷婷 | 中文字幕激情综合| 99re在线观看视频| 偷拍视频五月天| 棕合影院色色| 日本人人xxx| 99久久99久久综合| 丁香五月色激情| 婷婷丁香五月综合| 开心激情综合| 大香蕉伊人99| 电影91久久久| 国产精品色婷婷久久久精品| 99热99这里有免费的精品| 啪啪婷婷五月天激情| 五月丁香综合| 色婷婷AV在线| 91精品综合久久久久久五月丁香| 婷婷综合激情| 欧美色99| 这里只有精品9| 色综合久久中文| 日本V在线观看不卡视频网站| 久久大香免费| 日本精品。999| 九九热10| 婷婷六月香| 91操色| 天天爽天天爽| 婷婷九月丁香中文| 丁香五月婷婷88在线| 5月婷婷6月丁香aV| 99色性爰网络| 90色免费视频| 狠狠狠狠狠狠狠狠狠狠狠色宗合图片| 六月婷婷中文字幕| 久久久久久久久18久久| 亚洲愉拍99热成人精品| 色五月激情五月开心五月| 天天综合精品| 久久网日本| AV性爱网| 色偷偷人人| 久热大香蕉| 婷婷丁香五月婷婷| 8090在线影视少妇| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 中文字幕性爱视频| 狠狠爱激情网| 大香蕉久| 美欧日韩国产成人在战| 欧美成人日韩| Va另类视频| 亚洲久热| 六月婷婷色综合| 五月丁香亭亭| 五月丁香激情啪啪网| 亚洲bt丁香五月天婷婷激情小说| 亚洲这里只有精品| 碰碰碰91| 六月 丁香 视频| 99精品久久久久久| 婷婷中文字暮| 亚洲V国产V欧美V久久久久久| 亚洲激情丁香五月天色| www.夜夜| 五月丁香婷婷色| 五月丁香六月婷婷亚洲综合| 艹色18p| 六月婷婷日| 国产精品99久久久久久久女警| 日日操夜夜爽白洁| 天天做天天爱天天爽| 人人爱操| 色色五月天激情| 久久99久久久| 2017狠狠干| 五月丁香亭亭AV女优| 开心深爱激情网| 九九综合图片网| 激情综合五月婷婷| 99偷拍视频在线日本| 激情五月综合| 日本系列_4页_777FP| 开心五月深爱五月| 麻豆精品| 丁香激情五月天| 九一九九黄色| 噜一噜在线| 美女黄频aⅴ视频| 99色色网| 色色丁香| 久久视频婷婷| 99热狠狠操| www.色五月.com| 掩去也综合五月视频| 九九色综合| 丁香五月婷婷性爱| 丁香婷婷五月份| 黄色AAAAA| 9l视频自拍九色9l视频在线观看| 五月激情综合网| 色婷婷综合久久久久| 日韩九九| 99热这里只有国产精品| 久久一级片| 婷婷伊人中文字幕| 人人添人人| 婷婷亚洲在线| 毛片毛片毛片毛片| 百度4399有码精品V在线观看 | 激情五月天小说网| 五月婷婷三级| 五月天精品视频| 激情五月丁香色婷婷| 熟妇人妻中文字幕无码老熟妇| 99久久精品视频女神1| 超碰在线观看成人视| 色婷视频| 香蕉久久国产AV一区二区| 免费看欧美成人A片无码| 丁香社区婷婷五月| 野外99热| 日本精品。999| 超碰免费人妻| 大香人妻| 精品乱码久久久久| 亚洲夜五月| 欧美黄色一级| 大香蕉伊人久久| 五月色丁香综合| 91男同视频| www.五月天社区| 六月婷婷日| 久热亚洲| 丁香五月婷婷激情视频播放| 97久操| 大香蕉五月天| 狠狠操狠狠做| 成人电影AV在线观看| 日本色狠狠| 亚洲综合五月天婷婷| 色欲婷婷夜夜| 人妻体体内射精一区二区 | 亚洲精品视频在线| 色婷婷久久9.com| 婷婷五月综合激情| 99综合婷婷五月| 色婷婷亚洲综合天堂| 开心五月天激情网站| 五月丁香久久婷| 色婷婷在线视频| 天天噜| 色噜噜五月天| 色色丁香| 国产成人VA| 一级黄在线| 久久综合爱| 亚洲综合丁香五月天| 成人精品一区二区三区四区五区 | 亚洲色视频| 色亭亭五月天网扯| 狠狠 久久| 色5月婷婷色| 五月花婷婷丁香| 五月天·www·com| 久在线综合69| 丁香六月婷婷综合| 激情激情激情网| 大香蕉人人网| 超碰在线国产| 久久综合性| 开心五月网 | 啪啪亚洲综合| 欧美日韩大黄| www.久久久久久久| 超碰高清在线| 97精品人人A片免费看| 亚洲情欲| 中文无码婷婷| 色天堂在线| 日日夜夜婷婷| 婷婷综合五月激情| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 久久99精品九九久久久婷婷| 亚洲天天| 色五月天综合| 五月婷婷亚洲色图| 亚洲成人在线电影网站| 三级黄色大片视频| 亚洲精品白浆高清久久久久久| 五月婷婷av| 成人在线99| 婷婷五月天日本无码| 超碰人人99| 伊人久久婷婷| 婷婷五月天激情电影小说| 亚洲成人va| 五月婷婷色吧!| 精品一二三区久久AAA片| 任你日视频| 五月天停婷基地| 四色AVwww| 99热在线观看免费| 婷婷天天综合| 天天爽人人综合免费7799| 五月婷婷九九久久| 9久9久| 超碰色人妾| www.狠狠| 天天色天天日| 97资源碰碰| 99热这里只有精品青草| 激情网婷婷婷| 五月色无码| 激情综合婷婷五月| 在线网黄| 久久永久网址| 国产精品电影| 999婷婷综合| 91色欲综合| 野外99热| 思思99久久| 91黄址| Av免费网站在线| 9|人妻人人操| 98热精品| 大香蕉婷婷五月| WWW.99热| 综合激情五月丁香9999久久精| 亚洲欧洲色色| 国产伊人五月天| 天天日夜夜草进麻麻的子宫| 婷婷瑟五月天久久综合| 97色婷| wWw色五月| 五月婷婷无码专区| 亚洲、热| 色色丁香婷婷综合| 亚洲夜五月| 久热欧美| 欧美色色色色色色色| 综合AV在线| 久操人妻| 99热这里只有精品23| 991国产精选视频在线播放下载| 五月丁香六月激情综合| 日日干夜夜干| 五月婷婷啪啪啪啪| 丁香五月天婷婷91| 91精品国产99久久久久久天美| 丁香五月婷婷色| 婷婷丁香成人在线视频| 五月丁花色综合网| 激情六月色| 欧美久久网| 综合婷婷| 亚洲第一影院高清无码网站 | 成人在线不卡| 国精产品一区一区三区免费视频| 影院久久久| 亚洲AV成人片无码网站| 国产精品色色色色| 欧美丁香五月| 国产午夜精品一区二区三区嫩草| 五月天色欧美| 天天射影| 色色色色色色色色色色色色色色,网站| 先锋资源婷婷| 无码AV免费精品一区二区三区| 999九九九久久久99HD| YW无码| 综合九九久久| 超碰操网| 五月婷婷成人网首页| 精品51XX| 欧美五月婷婷| 青青青在线视频国产| 人人干人人操外国| 婷婷五月蜜桃成人桃色丁香| 99久久性爱| 思思热在线观看| 婷婷久久在线| 亚洲丁香五月美女| yellow视频在线观看91| 丁香五月性爱| 黑人无码一区| 99热精国产这里只有精品| 婷婷五月天视频亚洲| 丁香九月激情| 日本九九视频| 极品五月天| 五月婷婷中文字幕| 久久婷婷东京热大香樵| 很很操很很操| 色色色999| 六月婷婷日| 国产夫妻操逼内射视频| 五月综合激情| av国产精品| 91操熟女| 欧美五月婷婷| 伊人五月婷| 《诡秘之主》在线观看| 欧美精品熟女一区二区| 五月丁香色综合| 婷婷五月丁香欧洲| 六月婷婷九月丁香亚洲综合| 五月激情天| 超碰伊人碰婷婷五月| 婷婷六月天精品| 97在线精品| www,色综合| 色射婷婷五月天| 婷婷伊人网| 久久国产AV| 国际国外精品欧洲南美洲专区无码不卡| 99热在线观看精品| 免费播放片大片| 激情五婷网| 久久久久婷婷| 91婷婷丁香| 激情综合五月婷婷丁香| 丁香婷婷五月天成人| 免费AV黄在线播放| 综激情网| 第四色五月婷婷| 激情综合丁香五月| 91麻豆国产三级精品福利在线观看 | 五月香蕉综合| 久久99网站| 婷婷丁香五月色偷偷| 蜜臀综合久草| 色婷婷操逼| 五月亭亭开心网| 99热很操老逼| 综合久久9| 操人91| 五月天丁香网| 99热18| 99色视频| 日本九九九九| 五月丁香人妻| 激情图片婷婷丁香五月| 丁香婷婷六月在线资源观看| 婷婷五月天最新综合你懂的 | 91偷拍视频| 亚洲性爱AV| 久久这里只有欧美| 男人大jjc女人免费视频| 五月丁香网中文字幕| 激情五月丁香五月| 99久在线精品99re8| AV五月丁香| 密视AV综合在线| 亚洲成人婷婷| 91精品视频男人的天堂| 丁香五月成人av| 97啪在线观看视频| 99这里只有精品在线观看| 日韩aaaaa| 少妇高潮一区二区三区99欧美| 超碰大香蕉网| 91ncm视频| 色五月婷婷小说亚洲中文字幕组| 五月丁香久久网| 大香蕉婷婷丁香视频在线| 99在线免费视频| 婷婷精品在线| 天天综合精品| 日本久热| 狠狠色噜噜狠狠狠888| AV在线资源| 性生活久久人妻| 中国丰满熟女A片免费观| 精品少妇蜜臀91| 久草婷| 思思久久99| 9久久婷婷国产综合精品性色| 色色吧综合| 色婷婷婷av | 天天搡日日搡aaaaⅩ| 久久99网站| 超碰AV在线| 色 五月婷婷基地| 日本精品人妻无码77777| 情涩婷婷五月天| 婷婷丁香五月天色色| 丁香六月色婷婷| 97欧美在线| 精品九九视频| 性爱激情综合网| 99激情视频热| 久热A片| 丁香五月影院| 26UUU欧美激情一区二区| 爆乳熟妇一区二区三区爆乳照片| 欧美色图45678| 91久久久久久久久久久| 九九热这里只有精品23| 狠狠综合网| 热久久视频99| 99人人操| 丁香五月五月婷婷| 激情美女五月天激情在线| 亚州婷婷五月激情综合| 丁香花色色网| 色婷婷色久综| 黄久久久| 五月天色色色| 久久在线人妻| 91人人澡人人爽人人看| 婷婷久热| 久热这里只有精品66| 伊人玖玖网| 久操婷婷| 欧美婷婷精品激情| 五月丁香五月丁香五月丁香五月丁香91| 亚洲精品成人| 操丝袜视频影院导航| 九九成年视频| av狠狠操| 五月丁香龟婷婷| 99久在线精品99re8| 亚洲偷| 日本高清久| 人妻videos人妻高清| 综合色婷婷| 激情综合五月| 久狠狠| 婷婷5月天激情综合| 日韩大片艹艹| 欧美韩国日本| 91九色精品| 亚洲十月婷婷综合| 91操片| 北条麻妃伊人 | 99re热视频这里只精品| 五月天激情小说| 丁香五月综合在线| 99色在线观看视频| 成人国产欧美大片一区| 激情99| WWW.开心五月天.COM| www.五月婷婷久久.com| 婷婷五月天综合久久日| 91无码视频| 九九热精品视频九九| 玖热精品综合视频| 久久婷婷五月激情综合| 丁香五月五月婷婷欧美大香蕉| 色婷婷成人网| 天天综合网网欲色| 神马欧美精| 亚洲精品一二三| 天天干天天插| 天天xxxxxx天天日| 久久在线视频只有这里有精品| 色婷婷影| 丁香激情五月| 婷婷五月激情视频在线| 另类图片色五月| 性爱五月婷| 99精品视频在线观看| 色激情五月| 五月丁香av在线| 丁香五月婷婷色| 国产一级黄色影片,| 久热9| 色婷婷AV久久| 99热思思| 丁香五月色五月婷婷宗合| 婷婷第六色| 大香蕉七区| 色优久久| 久久免费精彩视频| 欧美丁香六月激情视频| 五月天激情播播网| 综合久久9| 婷婷丁香中文字幕| 五月天婷婷综合网| 激情五月天婷婷丁香| 丁香五月六月综合激情| 欧美五月丁香| 五月激情婷婷开心| 丁香婷五月| 狠狠人人| 狠狠操天天操| 97人人搞| 性爱五月丁香| 一操久久| 狠干综合| 日本熟妇乱妇熟色A片蜜桃| 天天操婷婷| 超碰在线综合| AA丁香综合激情| 丁香六月久| 丁香婷婷成人在线播放| 99久久a线观| 日韩不卡DvD| 成人婷99最新| 免费婷婷| 另类视频综合| 99色色网| 99热亚洲精品| 婷婷五月综激情| 五月婷啪| 婷婷色中文字幕| 91色久| 五月香婷婷| 久99在线视频| 久久 中文 日本| 4399欧美另类视频| 中文字幕av亚洲| 超碰在线99热| 中美月韩免费A片| 五月天色综合| 啪啪啪综合网| 狠狠色五月激情| 九九sese| 五月婷综合性中心| 可以直接看的AV网站| 天天爽日日爽夜夜爽| 国产精品成人av在线观看春天| 午夜婷婷六月天| 丁香涩涩爱| 色噜噜五月天| 激情五月综合ì香亚洲| 狠狠色官网| 九九久久综合网站| 蜜桃五月天| 射久久丁香五月| 这里只有精品视频国产| 久久婷婷六月综合资源| 第四色婷婷色五月| 99r这里| 99这里只有| 人妻啪啪啪| 99久久免费精品| 五月总合激情网| 无码髙清| 99干在线视频| 大香蕉久久综合网| 五月激情四射网站| 综合精品99| 婷婷激情综合色五月久久91| 亚洲a片免费观看| 超碰cap| 久人操| 国产AV成人精品| 影音先锋91资源站| 五月天激情综合网俺也去| 99,色| 日日夜夜狠狠婷婷色| 婷婷基地五月色| 噜噜久| 久久99久久99精品免视看婷| 99精品无码| 大鸡巴伊人网| 五月激情网站| 国产在线6| 色五月综合激情| 婷婷五月电影| 五月色综合| 五月丁香色婷婷| 国产乱人偷精品人妻A片| 久久久久久久久久久久久9| 欧美婷婷丁香社区在线播放| ′久久99一| 伊人网啪啪| 五月花综合网| 成人性爱无码| 香蕉AV777XXX色综合一区| 欧美 日韩 成人 在线| 国产美女无遮挡裸体毛片A片| 日本精品人妻无码77777| 激情五月婷婷啪啪| 超碰99热精品| 9久9久| 男人天堂AV在线一区二区| 五月丁香综合激情网| 青青草性爱视频| 99热99re6国产在线播放| 天天色天天操天天射| 可以看的av| 蜜桃婷婷丁香综合久久开心亚洲| 色婷婷AV在线| 丁香五月六月婷婷自拍| 婷婷五月天六月丁香| 99精品免费视频| 五月丁香啪啪| 婷婷五月综合免费在线| 亚洲精品国产setv| 日韩精品无码99| WWW,五月| 天天透天天干| wwW天天干| 五月天激情视频| 北京熟妇搡BBBB搡BBBB| 国产免费av在线| 色欲天天综合| 99re这里有精品手机在线| 2025色婷婷| 色五月天婷婷| wwww.色婷婷| 99 热国产在| 99久久激情视频| 99超级碰免费视频| 色护士综合| 久色视频在线| 婷婷五月天成人小说| 色色色欧美| 丁香五月婷婷欧美性爱| www.五月天色色色| 五月天成人在线| av色色国产| 色一情一乱一乱一区9| 操逼福利视频| 欧美va在线| 九月激情综合婷婷| 婷婷六月激情丁香| 九九视频在线观看| 99热婷婷| 婷婷激情综合色五月久久91| 国产夫妻操逼内射视频| 97婷婷狠狠| 五月婷色丁香| 国产一区男女| 操碰99| 国产操逼网站| 99热这里只有精品69| 天天插天天爱| 婷婷月综合| 色婷婷亚洲六月婷婷中文字幕| 激情玖玖sh| 六月丁香成人| 亚洲丁香五月天视频| 久久九久久| 色天天狠狠干| 激情丁香五月婷婷| AV在线大香蕉| 久久这里只| 婷婷中文字幕网站| 春色激情第四色| 99精品网| 7月婷婷六月丁香| 66成人网| 色婷婷精| 亚洲色激婷| 久草A片| 九九热99在线视频| 色婷婷五月天激情综合| 五月天激情小说| 玖玖婷婷五月天| 天天干天天 亚洲| 丁香六月久久| 97干在线播放| 激情婷婷丁香| 婷婷丁香综合| 日日操,夜夜撸| 超碰只有精品在线| 亚洲人人干| 蜜臀AV在线观看| 激情五月天啪啪| 激情婷婷五月天| 五月丁香网av| 久久激情五月| 天天做天天爱天天爽在| 狠狠五月天| 亚州视频九九99| 久久精品A片777777| 伊人五月久久| 99在线视频观看| 久久婷婷五月天激情唯美| 九月丁香婷婷网| 综合五月天完整| 亚洲经典三级| 操一操| 婷婷94s| 人人草人人看| 久久99激情| 97干在线| 婷婷综合另类小说| 俺去也五月| 婷婷五月激情的图片| 婷婷亚洲天堂| 色婷婷狠狠干| 久久AV无码精品人妻系列试探| 色狠狠综合网| www.99色在线| 伊人五月天在线| 91人碰| 色婷婷六月| 91超碰在线播放| 五月丁香六月在线| 亚洲九九免费| 亚洲宗合激情| 亚洲视频伍月婷婷| 五月激情婷婷国产精品久久久久久| 天天干天天爽| 成人AV在线网站| 激情五月天电影| 99在线观看视频蜜臀| 亚洲色就是色色色| 激情五月婷婷丁香综合网| 久久天堂婷婷五月| 秋霞A V毛片| 久思思热视频在线观看| http:色情日本com| 俺也高清无码高清视频| 超碰人人摸AV| EEUSS鲁片一区二区三区| 综合色图区| 成人片黄网站色大片免费毛片 | 四LLL少妇BBBB槡BBBB| 伊人网色婷婷五月天| 停停综合色色| 五月丁香激情综合网| AV伊人青草丁香六月| 国产偷人爽久久久久久老妇APP| 天堂色色色| 视频在线免费观看欧洲乱码| 另类 在线| 五月丁香亚洲校园欧美| 丁香婷婷九月在线| 婷婷丁香十月| 丁香久月| 天天舔天天爽| 婷婷五月天激情影片| 亚洲综合另类| 五月丁香激情综合网| www狠狠| A级毛片高清免费不卡播放谢谢谢谢| 日本五月婷| 久热中文字幕在线线观看 | 丁香五月网在线观看| 色播五月综合网| 色五月综合网| 激情五月天伊人av| 99精品自拍| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 激情五月天综合网| 六月激情婷婷色| 99久久五月婷婷| 激情五月天综合网| 激情久久久久久久久久| 五月丁香综合激情| 丁香婷婷大香蕉| 久久大大香| 五月丁香六月色| 色久婷婷网| 色九九九九| 色婷婷呢狠禁久禁| 亚洲综合五月天婷婷丁香| www.夜夜.com| 五月婷色色| yiqicaoav| 久久久久久欧美精品se一二三四| 五月天婷网| 色婷婷电影网| 热久91| 99色综合| 久久婷婷五月综合啪| 激情五月天婷婷视频| 丁香激情久久| 久久一级免费黄色片| 色一情一乱一乱一区91Av| 激情av在线| 色宗合久久五月婷婷| 亚洲性受XXXX五月丁香| 婷婷久久天堂网| 河北真实伦对白精彩脏话| 91人人操.COM| 开心激情五月天网| 热久久思思热思思| 久99久在线| 成片免费观看大全| 黄色热99| 丁香六月在线| 91久久九久久九久久九久久九久久| 色婷婷五月天激情综合| 第四色婷婷日本| 色狠狠综合入口| 99热97美女| 国产又黄又爽又色的免费| 91婷婷| 天天爽天天干| 丁香五月激情视频| 久久在这里有精品| 91婷婷丁香五月天免费视频网站| 久久婷婷丁香视频网| 精品视频网|