免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

STM32F103 IAP升級(jí)實(shí)戰(zhàn):官方AN2557例程拆解與避坑指南

STM32F103 IAP升級(jí)實(shí)戰(zhàn):官方AN2557例程拆解與避坑指南 簡(jiǎn)介STM32F10x系列官方IAP升級(jí)程序面向嵌入式開(kāi)發(fā)與維護(hù)人員提供基于Cortex-M3內(nèi)核微控制器的在應(yīng)用編程方案用戶(hù)無(wú)需外部編程器即可通過(guò)串口完成固件更新與遠(yuǎn)程維護(hù)。壓縮包共350個(gè)文件大小約1.63MB以C/H源文件、匯編啟動(dòng)文件、Keil與IAR工程文件及鏈接腳本為主覆蓋從啟動(dòng)代碼到應(yīng)用層的主要模塊方便直接對(duì)照工程進(jìn)行二次開(kāi)發(fā)。程序支持Ymodem協(xié)議傳輸固件可讀取現(xiàn)有閃存內(nèi)容并配合中斷向量表重定位、閃存分區(qū)等機(jī)制為升級(jí)過(guò)程提供錯(cuò)誤檢測(cè)與穩(wěn)定保障。工程包內(nèi)包含AN2557相關(guān)參考配置適合正在搭建IAP引導(dǎo)程序或需要處理固件升級(jí)流程的開(kāi)發(fā)者參考。該方案的常見(jiàn)使用場(chǎng)景包括產(chǎn)品量產(chǎn)時(shí)的固件灌裝、設(shè)備現(xiàn)場(chǎng)升級(jí)與遠(yuǎn)程維護(hù)開(kāi)發(fā)者可從中獲得完整的串口IAP實(shí)現(xiàn)思路。目前已有622人學(xué)習(xí)下載適合熟悉STM32基礎(chǔ)開(kāi)發(fā)、希望進(jìn)階掌握Bootloader與固件更新技術(shù)的讀者。 做單片機(jī)開(kāi)發(fā)的人遲早要面對(duì)一個(gè)問(wèn)題設(shè)備已經(jīng)發(fā)出去了客戶(hù)現(xiàn)場(chǎng)說(shuō)程序要加功能怎么辦派人出差刷寫(xiě)固件成本高得離譜讓客戶(hù)自己拿調(diào)試器燒客戶(hù)不會(huì)也不放心。這時(shí)候Stm32F10x系列官方IAP升級(jí)程序就是最經(jīng)典的解法。IAPIn-Application Programming讓設(shè)備通過(guò)串口、CAN、USB這些現(xiàn)成接口在運(yùn)行狀態(tài)下完成固件自升級(jí)不用拆機(jī)不用調(diào)試器整個(gè)流程對(duì)操作人員的要求也極低。這篇文章我就拿STM32F103這個(gè)最普及的型號(hào)開(kāi)刀把官方AN2557例程的工程結(jié)構(gòu)、Flash分區(qū)、中斷向量表、YMODEM協(xié)議這些核心東西全部拆開(kāi)講清楚再附上我自己移植和量產(chǎn)過(guò)程中踩過(guò)的坑。適合剛接觸IAP的嵌入式新人也適合正在把IAP往產(chǎn)品里落地的老手參考。1. 項(xiàng)目?jī)r(jià)值拆解為什么盯著官方IAP例程不放1.1 IAP到底解決什么問(wèn)題現(xiàn)場(chǎng)升級(jí)不再拆機(jī)IAP的核心思想是在設(shè)備里燒兩段程序一段是Bootloader負(fù)責(zé)接收升級(jí)數(shù)據(jù)并寫(xiě)入Flash一段是真正的App應(yīng)用代碼負(fù)責(zé)干實(shí)際業(yè)務(wù)。設(shè)備上電后先跑Bootloader判斷有沒(méi)有升級(jí)需求沒(méi)有就直接跳轉(zhuǎn)到App執(zhí)行。以后要升級(jí)只需要把新固件通過(guò)串口發(fā)過(guò)去重啟之后設(shè)備就跑新程序了。我見(jiàn)過(guò)不少團(tuán)隊(duì)一開(kāi)始自己寫(xiě)升級(jí)邏輯結(jié)果各種翻車(chē)有的把Flash擦寫(xiě)時(shí)序搞錯(cuò)有的忘了處理中斷向量表升級(jí)一次死一次。其實(shí)ST官方早就把整套方案做成了一對(duì)現(xiàn)成的例程配套應(yīng)用筆記AN2557代碼量不大但該有的環(huán)節(jié)全都覆蓋了。對(duì)絕大多數(shù)產(chǎn)品來(lái)說(shuō)與其自己從零寫(xiě)不如先在官方例程基礎(chǔ)上跑通再按產(chǎn)品需求做裁剪和加固。1.2 “官方”二字的價(jià)值文檔、協(xié)議、代碼都能兜底官方例程最大的優(yōu)勢(shì)不是代碼寫(xiě)得有多華麗而是它把“正確性”替你驗(yàn)證過(guò)了。ST給的這套IAP方案默認(rèn)走USART1使用YMODEM協(xié)議做文件傳輸Flash寫(xiě)入、擦除、跳轉(zhuǎn)邏輯全部基于標(biāo)準(zhǔn)外設(shè)庫(kù)實(shí)現(xiàn)。YMODEM是個(gè)帶CRC校驗(yàn)的文件傳輸協(xié)議能傳文件名、文件大小還支持128字節(jié)和1024字節(jié)兩種包長(zhǎng)比裸傳裸收要可靠得多。另外這套例程對(duì)STM32F10x全系列F103、F105、F107等都做了兼容不同容量的Flash扇區(qū)大小也仔細(xì)處理過(guò)。你不需要自己翻幾百頁(yè)參考手冊(cè)去看扇區(qū)結(jié)構(gòu)代碼里已經(jīng)替你整理好了。這一點(diǎn)在量產(chǎn)項(xiàng)目中非常值錢(qián)因?yàn)榇a出錯(cuò)可以改硬件上電變磚的代價(jià)可沒(méi)人愿意承擔(dān)。1.3 從標(biāo)準(zhǔn)外設(shè)庫(kù)到Cube生態(tài)這一套還值得學(xué)嗎我估計(jì)有人會(huì)問(wèn)ST現(xiàn)在主推的是STM32CubeMX加HAL庫(kù)標(biāo)準(zhǔn)外設(shè)庫(kù)都停止維護(hù)了學(xué)這套老例程還有意義嗎我的看法是對(duì)F103這個(gè)型號(hào)來(lái)說(shuō)這套例程仍然是繞不開(kāi)的參考。Cube生態(tài)里對(duì)應(yīng)的東西叫X-CUBE-IAP是個(gè)基于HAL庫(kù)的IAP擴(kuò)展包支持F4、F7、L4這些后來(lái)的型號(hào)你下載X-CUBE-IAP之后可以找到不少新的示例工程。但對(duì)F1系列很多人還在用標(biāo)準(zhǔn)外設(shè)庫(kù)維護(hù)存量產(chǎn)品AN2557這套例程的協(xié)議流程、Flash操作邏輯、跳轉(zhuǎn)細(xì)節(jié)依然值得逐行讀一遍。更重要的是你如果理解了這套老代碼里的原理再去看X-CUBE-IAP會(huì)輕松很多。IAP這個(gè)東西的難點(diǎn)從來(lái)不在哪個(gè)庫(kù)而在分區(qū)規(guī)劃、中斷向量表、通信協(xié)議穩(wěn)定性和異常兜底這些知識(shí)是通用的。2. 核心原理看懂這三個(gè)點(diǎn)IAP就通了一半2.1 Flash分區(qū)給Bootloader和App劃好地盤(pán)STM32F103的Flash從0x08000000開(kāi)始容量根據(jù)型號(hào)從16KB到512KB不等。做IAP第一件事就是把這片空間切成幾個(gè)區(qū)常見(jiàn)分區(qū)是Bootloader區(qū)、App區(qū)和預(yù)留數(shù)據(jù)區(qū)。Bootloader區(qū)放升級(jí)程序本身App區(qū)放業(yè)務(wù)代碼中間最好留出一點(diǎn)空間不分配防止邊界溢出互相踩踏。我舉個(gè)例子假設(shè)芯片是STM32F103ZET6512KB FlashFlash起始0x08000000。Bootloader一般給16KB到32KB就足夠了因?yàn)樯?jí)邏輯本身不復(fù)雜加上協(xié)議和串口驅(qū)動(dòng)也就幾KB。App區(qū)從0x08004000偏移16KB或0x08008000偏移32KB開(kāi)始剩下的空間全部給App。如果還想做“先下載到暫存區(qū)校驗(yàn)通過(guò)后再搬移”的安全策略還得專(zhuān)門(mén)留一個(gè)備份區(qū)。分區(qū)起始地址大小用途Bootloader0x0800000016KB~32KB引導(dǎo)、接收升級(jí)包、Flash寫(xiě)入App0x08004000或0x08008000剩余Flash的前大部分業(yè)務(wù)應(yīng)用代碼備份區(qū)/參數(shù)區(qū)Flash末尾可選暫存升級(jí)包、保存版本號(hào)等參數(shù)分區(qū)大小這里面有個(gè)細(xì)節(jié)STM32F10x不同容量的Flash扇區(qū)大小不一樣。小容量和中容量的扇區(qū)是1KB大容量和互聯(lián)型是2KB。擦除只能按扇區(qū)整塊擦所以App區(qū)和Bootloader區(qū)的邊界最好對(duì)齊到扇區(qū)邊界否則你擦一個(gè)扇區(qū)會(huì)把鄰居的代碼也擦掉。官方例程在flash_if.c里放了一個(gè)扇區(qū)大小表不同型號(hào)會(huì)自動(dòng)匹配這是它想得周到的地方。2.2 中斷向量表重映射讓App“認(rèn)住”新家這是IAP最容易出事的地方我當(dāng)年第一次移植就被這個(gè)坑搞到懷疑人生。Cortex-M3內(nèi)核的中斷機(jī)制是每次中斷響應(yīng)CPU都去地址0x00000000區(qū)域讀取中斷向量表找到對(duì)應(yīng)的中斷處理函數(shù)入口。在STM32F10x上0x00000000默認(rèn)映射的是主Flash也就是0x08000000。問(wèn)題來(lái)了如果App編譯時(shí)設(shè)置起始地址為0x08004000它的中斷向量表也編譯到了0x08004000但CPU發(fā)生中斷時(shí)還是去0x08000000找向量表。這個(gè)地址放的是Bootloader的向量表里面根本沒(méi)有App的中斷處理函數(shù)地址結(jié)果就是中斷一觸發(fā)程序直接跑飛或者進(jìn)HardFault。解決辦法是在App啟動(dòng)早期把向量表偏移到App區(qū)。標(biāo)準(zhǔn)外設(shè)庫(kù)的misc.c里提供了NVIC_SetVectorTable函數(shù)本質(zhì)是操作SCB-VTOR寄存器。在實(shí)際的F103工程里我一般直接在SystemInit或main最開(kāi)頭寫(xiě)上#define APPLICATION_ADDR 0x08004000 SCB-VTOR APPLICATION_ADDR;這就是把CPU的中斷向量表從默認(rèn)的0x08000000指向App區(qū)。需要提醒的是F1是老內(nèi)核早期某些A版、B版芯片對(duì)VTOR的支持不完美如果遇到設(shè)置VTOR仍然不起作用的情況就得考慮在Bootloader里做中斷轉(zhuǎn)發(fā)或者干脆把App設(shè)計(jì)成盡量少用中斷。不過(guò)我在后期C版芯片上實(shí)測(cè)SCB-VTOR寫(xiě)法是穩(wěn)定有效的。2.3 升級(jí)流程設(shè)計(jì)與YMODEM協(xié)議數(shù)據(jù)怎么安全地流進(jìn)Flash官方AN2557的升級(jí)流程總體分四步Bootloader啟動(dòng)后初始化串口并主動(dòng)發(fā)送字符C等待握手上位機(jī)用支持YMODEM的軟件打開(kāi)文件并發(fā)送Bootloader逐包接收、校驗(yàn)CRC、擦寫(xiě)Flash全部收完后跳轉(zhuǎn)App。這套流程里YMODEM協(xié)議承擔(dān)了“可靠傳輸”的職責(zé)。它把一個(gè)文件拆成128字節(jié)或1024字節(jié)的塊每塊都帶塊編號(hào)、塊編號(hào)反碼和CRC校驗(yàn)。接收方收到一個(gè)包后先驗(yàn)證塊編號(hào)連續(xù)再算CRC任何一個(gè)環(huán)節(jié)不對(duì)就回復(fù)NAK要求發(fā)送方重傳。YMODEM還在正式數(shù)據(jù)之前先傳一個(gè)包含文件名和文件大小的頭部信息包Bootloader可以利用這包信息判斷固件大小是否超過(guò)App區(qū)容量提前攔截錯(cuò)誤升級(jí)。官方跳轉(zhuǎn)函數(shù)的實(shí)現(xiàn)很經(jīng)典直接看代碼typedef void (*pFunction)(void); void Jump_To_Application(uint32_t app_addr) { uint32_t JumpAddress; pFunction Jump_To_Application; /* 檢查棧頂指針是否落在SRAM區(qū)間防止App區(qū)為空導(dǎo)致跳飛 */ if (((*(__IO uint32_t*)app_addr) 0x2FFE0000) 0x20000000) { JumpAddress *(__IO uint32_t*)(app_addr 4); Jump_To_Application (pFunction)JumpAddress; /* 先關(guān)閉全局中斷再設(shè)置MSP棧指針 */ __disable_irq(); __set_MSP(*(__IO uint32_t*)app_addr); Jump_To_Application(); } }跳轉(zhuǎn)前的那個(gè)if判斷很多人不理解其實(shí)它是在檢查App起始地址處的第一個(gè)4字節(jié)值。如果App區(qū)真有程序這個(gè)位置存放的是初始棧頂指針必然落在SRAM地址范圍內(nèi)0x20000000開(kāi)頭如果App區(qū)是空的或者數(shù)據(jù)無(wú)效這個(gè)值就大概率不是合法的SRAM地址。這個(gè)判斷能有效避免程序跳到一個(gè)空白區(qū)域然后跑飛是官方例程里非常實(shí)用的一筆。3. 實(shí)操用官方例程搭建最小可用的IAP升級(jí)3.1 官方工程結(jié)構(gòu)梳理先搞清楚每個(gè)文件的作用從ST官網(wǎng)下載AN2557的配套例程后解壓看到的工程是以標(biāo)準(zhǔn)外設(shè)庫(kù)為基礎(chǔ)的多個(gè)子工程。核心文件其實(shí)就四個(gè)common.c負(fù)責(zé)公共數(shù)據(jù)結(jié)構(gòu)和串口收發(fā)輔助函數(shù)iap.c是Flash擦寫(xiě)和跳轉(zhuǎn)的主邏輯ymodem.c是實(shí)現(xiàn)YMODEM協(xié)議收包和解包的協(xié)議棧main.c是串口初始化和升級(jí)狀態(tài)機(jī)的入口。文件職責(zé)學(xué)習(xí)優(yōu)先級(jí)common.h / common.c文件信息結(jié)構(gòu)體、串口字節(jié)收發(fā)高iap.h / iap.cFlash扇區(qū)擦除、寫(xiě)入、跳轉(zhuǎn)App高ymodem.h / ymodem.cYMODEM協(xié)議處理、CRC校驗(yàn)、分包組包高main.c初始化、主循環(huán)狀態(tài)機(jī)高flash_if.h / flash_if.c部分版本提供Flash底層操作封裝中stm32f10x_xx.c標(biāo)準(zhǔn)外設(shè)庫(kù)外設(shè)驅(qū)動(dòng)低很多人剛開(kāi)始看ymodem.c會(huì)被變量名和狀態(tài)分支搞得頭暈我的經(jīng)驗(yàn)是先不要逐行摳協(xié)議代碼先把main.c的流程走通再回頭理解YMODEM的收包狀態(tài)機(jī)效率會(huì)高很多。協(xié)議本身只是工具真正的核心是Flash操作和跳轉(zhuǎn)邏輯。3.2 關(guān)鍵代碼逐段拆解跳轉(zhuǎn)、擦寫(xiě)、接收一個(gè)都不能少看芯片手寫(xiě)Flash是這個(gè)例程最核心的動(dòng)作。STM32F103的Flash寫(xiě)入前必須先解鎖、擦除扇區(qū)再按16位半字為單位寫(xiě)入。官方封裝好的寫(xiě)函數(shù)思路非常清晰最終調(diào)用庫(kù)函數(shù)完成寫(xiě)入uint32_t FLASH_If_Write(uint32_t destination, uint8_t *p_source, uint32_t length) { uint32_t i; FLASH_Status status FLASH_COMPLETE; FLASH_Unlock(); for (i 0; (i length) (status FLASH_COMPLETE); i 2) { status FLASH_ProgramHalfWord(destination, *(uint16_t *)p_source); destination 2; p_source 2; } FLASH_Lock(); return 0; }寫(xiě)Flash有幾個(gè)硬性規(guī)則寫(xiě)入地址必須是偶數(shù)寫(xiě)入數(shù)據(jù)長(zhǎng)度必須是半字對(duì)齊寫(xiě)入?yún)^(qū)域必須是已經(jīng)擦除過(guò)的狀態(tài)否則結(jié)果不可預(yù)期。官方例程在接收YMODEM包之前會(huì)先把目標(biāo)扇區(qū)全部擦掉這是正確姿勢(shì)千萬(wàn)不要圖省事跳過(guò)擦除。再往深處講接收循環(huán)是在main.c里完成的。主循環(huán)里調(diào)用了YMODEM協(xié)議的接收函數(shù)每拿到一批數(shù)據(jù)就通過(guò)FLASH_If_Write寫(xiě)入到App區(qū)地址。這里有個(gè)很多人忽略的小技巧YMODEM的包大小是128字節(jié)或1024字節(jié)但Flash最小擦除單位是扇區(qū)所以最好把接收緩沖區(qū)大小設(shè)置為扇區(qū)大小的整數(shù)倍避免每次收到一個(gè)包就頻繁切換擦寫(xiě)狀態(tài)影響效率和Flash壽命。整個(gè)升級(jí)完成后上位機(jī)軟件會(huì)發(fā)送一個(gè)EOT結(jié)束符YMODEM協(xié)議棧處理完EOT后會(huì)把文件的信息填入一個(gè)結(jié)構(gòu)體里。Bootloader拿到這個(gè)結(jié)構(gòu)體確認(rèn)文件長(zhǎng)度和校驗(yàn)都沒(méi)問(wèn)題就可以執(zhí)行跳轉(zhuǎn)了。官方代碼里還給了一層CRC校驗(yàn)做確認(rèn)這是量產(chǎn)固件最后的一道保險(xiǎn)。3.3 App工程配合修改鏈接地址和中斷向量偏移Bootloader單獨(dú)能跑還不夠App工程那邊也必須配合改兩個(gè)地方否則跳轉(zhuǎn)過(guò)去還是白搭。第一處是鏈接腳本或者IDE里的ROM起始地址第二處是中斷向量表偏移。在Keil MDK里App工程的Options for Target中Linker標(biāo)簽頁(yè)里要把IROM1的Start地址從0x08000000改成0x08004000對(duì)應(yīng)你Bootloader的實(shí)際占用大小Size相應(yīng)改小。如果用的是STM32CubeIDE或GCC就改鏈接腳本.icf或.ld文件里的Flash起始地址。這一步是告訴編譯器App的代碼和只讀數(shù)據(jù)都要放到偏移后的地址上。改完鏈接地址還要在App初始化代碼里加上向量表重定向。最簡(jiǎn)單的辦法是在SystemInit函數(shù)開(kāi)始處直接調(diào)用標(biāo)準(zhǔn)外設(shè)庫(kù)的NVIC_SetVectorTableNVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x4000);第二個(gè)參數(shù)就是App區(qū)相對(duì)Flash起始地址的偏移量。如果你的芯片版本對(duì)VTOR支持不友好就要考慮把向量表復(fù)制到SRAM再用SYSCFG重映射到0x00000000這樣做兼容性更好但代碼復(fù)雜度更高。基礎(chǔ)產(chǎn)品建議先試SCB-VTOR方案跑不通再上SRAM映射或者中斷跳板。還有一件事容易被忽略Bootloader跳轉(zhuǎn)前要關(guān)閉自己用到的外設(shè)時(shí)鐘和中斷別把一堆打開(kāi)的串口、定時(shí)器狀態(tài)帶給App。官方例程的跳轉(zhuǎn)函數(shù)里雖然只做了關(guān)中斷和重設(shè)MSP我的習(xí)慣是在跳轉(zhuǎn)前把用到的串口顯式去初始化把外設(shè)中斷標(biāo)志位全部清掉確保App起來(lái)時(shí)外設(shè)是干凈狀態(tài)。4. 常見(jiàn)問(wèn)題與排查經(jīng)驗(yàn)4.1 跳轉(zhuǎn)后死機(jī)先查向量表再查時(shí)鐘和外設(shè)跳轉(zhuǎn)后死機(jī)是IAP最典型的問(wèn)題我在無(wú)數(shù)論壇帖子里看到過(guò)這種求助最后九成都是向量表偏移沒(méi)設(shè)置對(duì)。判斷方法很簡(jiǎn)單把App單獨(dú)直接燒到0x08000000地址如果App能正常運(yùn)行說(shuō)明代碼自身沒(méi)問(wèn)題問(wèn)題出在Bootloader跳轉(zhuǎn)或者向量表偏移上。排查順序我一般是這樣先確認(rèn)App鏈接地址和Bootloader分區(qū)邊界是否一致再確認(rèn)App里是否確實(shí)執(zhí)行了SCB-VTOR偏移最后檢查Bootloader跳轉(zhuǎn)時(shí)是否關(guān)閉了外設(shè)中斷。另外如果Bootloader里用了操作系統(tǒng)或者復(fù)雜的定時(shí)器跳轉(zhuǎn)前光關(guān)全局中斷還不夠一定要把SysTick和NVIC里掛的異常入口都清理干凈。4.2 升級(jí)中途變磚分區(qū)策略和校驗(yàn)兜底官方例程的升級(jí)策略是直接往App區(qū)寫(xiě)這有一個(gè)隱患如果升級(jí)到一半串線斷了、斷電了App區(qū)已經(jīng)被擦掉一部分設(shè)備就變磚了。官方代碼在演示場(chǎng)景沒(méi)問(wèn)題但量產(chǎn)產(chǎn)品不能這樣裸奔。我的做法是把Flash多分一個(gè)備份區(qū)升級(jí)包先完整下載到備份區(qū)接收過(guò)程中每個(gè)包都做CRC校驗(yàn)全部接收完成后再對(duì)整體做校驗(yàn)校驗(yàn)通過(guò)才把備份區(qū)的內(nèi)容整體搬到App區(qū)。代價(jià)是App可用空間會(huì)少了備份區(qū)那一塊換來(lái)的是“升級(jí)失敗設(shè)備還能接著跑老程序”的安全體驗(yàn)。如果硬件允許也可以用外部Flash存升級(jí)包邏輯一樣。4.3 YMODEM傳輸異常115200只是看起來(lái)穩(wěn)不少人復(fù)現(xiàn)官方例程時(shí)發(fā)現(xiàn)用SecureCRT或XShell發(fā)送文件有時(shí)候傳輸?shù)揭话刖涂ㄗ』蛘咛崾綜RC錯(cuò)誤。這種問(wèn)題絕大多數(shù)不是協(xié)議本身的問(wèn)題而是上位機(jī)軟件沒(méi)有選對(duì)YMODEM模式。一定要確認(rèn)發(fā)送端選的是YMODEM而不是XMODEM或ZMODEM三者的幀格式和握手方式差異很大。波特率方面官方默認(rèn)115200但具體能不能穩(wěn)定跑還得看你板子的晶振精度和串口線質(zhì)量。ST-Link的虛擬串口一般沒(méi)問(wèn)題但一些PL2303、CH340山寨線在高波特率下丟包率很高。我一般量產(chǎn)產(chǎn)品用115200如果發(fā)現(xiàn)丟包嚴(yán)重就降一檔到57600或38400IAP本來(lái)就不是追求速度的場(chǎng)景穩(wěn)定壓倒一切。問(wèn)題現(xiàn)象常見(jiàn)原因解決辦法發(fā)送文件后Bootloader無(wú)反應(yīng)握手字符C發(fā)送時(shí)序不匹配確認(rèn)上位機(jī)選YMODEM先手動(dòng)發(fā)送一次字符C傳一半卡死串口丟包或USB轉(zhuǎn)串口線質(zhì)量問(wèn)題降低波特率、換線檢查接線距離CRC錯(cuò)誤頻繁波特率誤差大、數(shù)據(jù)線干擾用外置晶振檢查地線降低波特率接收完成后跳轉(zhuǎn)死機(jī)向量表偏移未設(shè)置App內(nèi)加SCB-VTOR確認(rèn)鏈接地址升級(jí)失敗重啟跑不了老程序直接寫(xiě)App區(qū)無(wú)備份策略增加備份分區(qū)先校驗(yàn)后搬移4.4 從例程遷移到產(chǎn)品時(shí)要注意的幾件事官方例程本身就只是“最小可用”的參考實(shí)現(xiàn)離產(chǎn)品還有幾段路要走。第一串口協(xié)議要加固YMODEM雖然自帶CRC但最好在應(yīng)用層再加一包版本信息和固件大小校驗(yàn)防止客戶(hù)傳錯(cuò)文件。第二固件版本管理要做起來(lái)Flash里存一個(gè)版本號(hào)Bootloader升級(jí)時(shí)判斷新版本是否比當(dāng)前版本新太老的要拒絕。第三升級(jí)入口要設(shè)計(jì)好常見(jiàn)做法是App運(yùn)行中收到升級(jí)指令設(shè)置一個(gè)標(biāo)志位到備份寄存器或Flash然后軟復(fù)位進(jìn)Bootloader而不是每次上電都傻等幾秒讓Bootloader超時(shí)再跳App后者在開(kāi)機(jī)速度敏感的產(chǎn)品上體驗(yàn)很差。最后再補(bǔ)充一點(diǎn)個(gè)人經(jīng)驗(yàn)我們?cè)谝豢頕103的儀表產(chǎn)品上用了這套方案最初也是直接在官方例程上改后來(lái)發(fā)現(xiàn)量產(chǎn)時(shí)有兩臺(tái)設(shè)備升級(jí)完卡死。排查到最后原因是那批芯片的Flash扇區(qū)邊界和我在代碼里寫(xiě)的扇區(qū)表不完全一致因?yàn)锽ootloader容量占得比較小App區(qū)的起始扇區(qū)算錯(cuò)了一位。從那以后我給自己定了個(gè)規(guī)矩開(kāi)發(fā)階段一定先把扇區(qū)表用調(diào)試器讀出來(lái)核對(duì)一遍不要盲目相信記憶里的編號(hào)。IAP這種功能平時(shí)用不上一用就是遠(yuǎn)程救命的通道值得把每一處細(xì)節(jié)都較真到底。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
超碰二区| 91|疯狂丨高潮丨对白| 九九视屏| 日本人妻伦在线中文字幕 | 99,色| 五月婷婷综合网| 99ri精品| 色狠狠综合入口| 成人片在线播放| 久久婷婷五月天| 久久婷婷综合五月天| 婷婷中文字幕版| www.99精品视频| 99久久这里只有精品| 亚洲九九九九| 人人色婷婷五月天| 国产免费一区二区三区三州老师F1F1.CC | 成人免费黄色短视频| 五月色色激情网| 9久精品视频| 99久久综合狠狠综合久久| 99在线精品视频| 激情精品久久| 深爱五月婷婷开心中文字幕| 五月天久草| 天天干狠狠| 婷婷五月天狠狠| 日韩色色色色色| 亚洲综合色婷婷文学| 天天搡日日搡aaaaⅩ| 成人欧美Va| 色综合丁香| 九色视频九色九色91jiuseshipin| 中文字幕AV在线播放| 午夜电影网VA内射| 久热只有这里精品| 99re热视频| 激情综合啪啪啪| 亚洲色色五月| 久久免费操| 中文字幕综合色| 久久AAAA片一区二区| 国产成人综合在线| 亚洲成人五月| 大香蕉久久婷婷| 26UUU精品一区二区c〇m| 成人婷99最新| 激情深爱五月婷婷| 丁香五月天色| 狠狠88综合久久久久噜噜噜| 色综合色色| 婷婷日本色| 色五月激情五月| 综合网五月| av在线观看网站| 丁香五月天激情视频| 超碰AAAAAAV| 婷婷激情中文综合| 久久6这里只有精品| 97人人干人人操| 日本久久性| 超碰色天堂| 色婷小说| 玖玖色综合网| 性视频久久| 9久久精品视频| 丁香五月激情五月色综合| 中文成人在线| 婷婷激情五月天激情小说| 一本久久婷婷| 五月丁香久| 久久天堂| 色色色在线播放| 777.色色| 丁香五月婷婷影院| 色综合九九色综合88| 亚洲成人超碰| 六月婷婷激情| 99国产97在线,| 五月丁香婷婷狠狠操| 色级停停| 97五月久久丁香婷婷| 91久久综合| 久久xxxx| 成人AV中文字幕| 五月天婷婷爱| 欧美综合丁香网| 另类国产综合| 操操天堂| 丁香五月花影院| 久久99jiu9| 97久久久免费福利网址| 开心五月丁香综合久久| 激情亭亭五月| 亚洲国产精品VA在线看黑人| 五月 成人 婷婷| 啪啪91| 99热精品在线播放观看| 天天舔天天摸| 亚洲亚洲人成综合网络| 九九久久污| 黄色五月婷婷| 婷婷99狠狠躁天天久久久九九九| 丁香五月激情五月| 五月丁香怕啪啪| 午夜婷婷五月天| 婷婷五月天亚洲五码| 狠狠爱综合| 久久婷婷五月综合色和| 99热99热在线观看| 色五月色图| 九九成人视频| 97超碰人人操| 日本久久人| 4399成人黄A片| 色播色丁香五月| 激情久久久| 激情九九这里只有精品| 九九热精品| 激情啪啪五月天| 99热这里只有99| 天天摸色吧天天摸色吧| 精品欧美性爱超级爽| 97人妻碰碰碰久久久久-最近国语高清| 欧美日韩成人| 这里只有久久精99| 97caop| 久久久久久97| 九九热这里只有精品6| 香蕉久久国产AV一区二区| 久99久精品| 五月在线婷色| 岛国AV网| 67194成I人在线观看线路1| 米奇影视资源777狠狠色婷婷五月天激情网 | 丁香六月激情| 色播五月婷婷综合| 丁香五月天之婷婷影院| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 八戒青柠影视剧在线观看| 色婷婷九月综合| 亚州操操| 中文字幕精品在线观看| 久久99精品久久久久久噜噜| 国产99久| 骚货艹网站视频| 狠狠狠狠狠| 黄久久久| 人妻九九九九| 久久激情视频99| 99.N在线视频| 婷婷激情综合| 91久久久久久| 六月丁香深深爱| 日本欧美成人片AAAA| 97五月婷| 色五月婷婷亚洲| 97很鲁在线视频| 五月六月丁香婷婷在线观看| 久久99久久99久久99| 99热欧| 99精品无码| 超碰人人艹| 色五月五月婷婷| 91疯狂操操操操| 99精在线| 五月丁香婷中文| 国产性爱一级| aaa丁香五月天| 色五月人妻| 91精品久久久久久77777| 色婷婷丁香五月| 日韩黄色AV无码| 99视频这里有精品| 久久综合爱| 五月丁香天堂网| 丁香五月婷婷啪啪| 四季8848精品成人免费网站| 丁香久久| 婷婷色激情网| 日本波多野结衣视频| 影音先锋 婷婷| 99综合| 天天色综合色色色色色。| 99精品偷自拍| 色爱亚洲| 任你擦免费视频| 美女激情综合| 五月丁香综合伦理片| 精品无码久久久久久久久| 婷婷永久在线| 婷婷激情人妻| 欧美槡BBBB槡BBB少妇| 五月丁香六月婷婷不卡免费无码 | 久久XX| 久久这里在精品视频| 五月婷丁香| 激情综合网,婷婷五月天| 五月丁香亭亭A片| 月婷婷婷婷五月| 国产亚洲av片| 亚洲精品久久久久久久久久吃药| 97色伦另类图片小说视频| 超碰免费人人肏| 丁香婷婷六月天| 亚洲无码免费看| 原琪琪色影院| 中文字幕性爱丰满| 色色五月天婷婷| 精品国产一区二区三区四区阿崩| 超碰99资源站| 岛国av网| 秋霞免费三级片| 久草热8精品视频在线观看 | 99久久色| 无码人妻少妇色欲AV一区二区 | 久久免费试看120秒| 91碰超| 狠狠五月天婷婷| 黄网在线免费观| 性色天| 亚洲五月天天| 中文字幕在线不卡视频| 玖玖在线视| 美女婷婷六月色| 日韩久综合| 粉嫩AV久久一区二区三区| 色天五月天在线观看视频| 色婷婷色五月另类综合| 人妻aV在线| 乱乱av| 丁香婷婷视频在线| 日本特黄aaaaa| 丁香六月婷| 强辱丰满人妻HD中文字幕| 婷婷五月天AV在线| 狠狠干五月天| 中文乱子伦视频| .操區COm| 亚洲人成网亚洲欧洲无码久久| 99情色五月天| 婷婷五月天亚洲综合网| 丁香婷婷天堂| 婷婷丁香九色| 一本色道久久88综合日韩精品| 伊人五月婷婷| 婷婷色五月开心五月| 综合图区激情| 国产精品蜜臀99| 99热6这里只有精品6| 色情久久久| 七月激情六月婷婷综合在线播放| 五月丁香六月停停停| 五月婷婷之综合激情| 十月色综合| 综合网激情| 综合婷婷| 色色色com| 五月婷婷,狠狠操| 婷婷精品性性性性性性性| 五月婷婷成人w| 深情六月婷婷综合久久| 日本丁香五月婷婷| 婷婷开心激情综合五月天| 玖玖伦理电影| yazhouzonghesese| 亚洲色在线观看| 5月丁香六月婷婷| 久久综合五月天| 99热九九在线| 另类专区在线| 五月婷婷丁香啪啪| 九九婷婷五月天影视| 天天做天天爱天天搞| 91色噜噜狠狠狠狠色综合| 久久九⑨| 91操片| 日韩久操婷婷| 日韩在线观看亚洲| 久久伊人五月天| 丁香六月啪啪| 能看的av片| 五月永久激情| 九热视频| 久久机热/这里只有精品| 色五月婷婷av| 婷婷五月花| 亚洲国产精品SUV| 亚洲中文字幕AV| 二色av| 日本九九九九| 丁香五月激情啪啪啪| 久久中国毛毛片爱久久| 色婷婷五月影视| 99热热九九| tingtingzonghewang| 插插五月天| 五月婷婷婷| 丁香六月婷| 狠狠色婷婷7777久| 以及AA大片看看| www色综合亚洲92| 久久激情五月| 99视频只有这里精品| 99性爱视频| a在线观看| 九九视频在线观看视频6| 六月丁香啪| 色呦呦免费观看| 99精品国产在热久久| 激情开心五月婷婷| 97操碰在线视频| 婷婷综合五月天| 丁香六月啪| 人妻熟女一区二区AV| 亚洲无AV在线中文字幕| 91在线操| 国产日批视频免费播放| 狠狠色情婷婷| 婷婷丁香18| 99丁香五月| 色综合中文色综合网| 99热这里只有精品268| 伍月婷丁香花全集| 99综合视频一体| 婷婷五月丁香综合桃花色网| 五月婷婷综合色啪首页| 依人大香蕉| 日本五月婷| 日韩丁香涩| AV在线免费播放| 五月天电影网| 少妇综合网| 激情婷婷综合网| 美女亚洲五月丁香| 天天操天天操天天操天天操天天操天天操| 能看的av网站| 超碰免费人妻| 婷婷成人AV| 噢美99| 91视频综合网| www.色五月.com| 五月婷婷丁香| 五月天合网| 综合激情在线| 激情五月天的婷婷| 五月婷婷激情日本| 大香蕉七区| 五月丁香网中文字幕| 色停停香蕉视频| 秋霞网在线免费基地五月婷婷丁香| 欧美大奶熟女噜噜噜噜| 丁香午夜天| 丁香五月婷婷综合啪啪| 五月天激情婷婷五月天久久| .精品久久久麻豆国产精品| 天天综合网91| 91久久久久久久| 狼友超碰| 99综合视频| 狠狠狠狠狠狠色| 色性日本| 国产女人十八水真多1| 影音先锋激情网| 九九综合| 色播播之激情五月婷婷| 9999久久久久| 99丁香五月婷| 99网| 人妻操在线看| 色综合久久无码| 97色色色色色色色色色色色色色| 亚洲12p| 亚洲俩性性爱图片久久第六页| 五月婷婷综合网| www.黄色片-久久成人国产精品在线播放-999AV| 天天婷婷| 色五月天激情| 丁香五月天堂网| 爱性综合网| 综合色播| 99re热视频| 亚洲情综合五月天| 色婷婷小说| 婷婷综合干| 免费不卡狠操美女视频网 | 开心五月网| 久天综合| 久9热| 六月丁香激情最新更新| 91大神操美女| 六月激情婷婷色| 99ree6| 99热这里只有精品搜| 日日夜夜亚洲一区| 九九99精品视频在线观看| 亚洲综合激情五月久久| 人妻熟女一区二区AV| 蜜桃五月天色| 婷婷九月综合| 99国产在线精品视频| 久久色五月天综合网| 久久婷婷六月综合综合| 日本婷色| 狠狠色丁香99| 啪精品| 99热9| 色 免费网站视频| AV九九| 五月天激情婷婷小说| 92久操视频| 九九色影院| 五月激情另类| www.日韩国产| 玖玖99婷婷| 91九色视频在线观看| 热久久77777| 五月婷婷激情啪啪| 婷婷久久色| 亚洲va欧美va国产综合久久久| 91人碰| 色色国产| 另类视在线| ,99视频久久| 久久3级片| 91成人性爱视频| 五月天俺去也| 天天色伊人| 亚洲va久久久噜噜噜久久天堂| 天堂久久婷婷| 五月丁香淫淫婷婷婷| 亚洲黄色影视| 97精品人人A片免费看| 夜夜撸夜夜骑| 中文不卡一二区| 久久HD| 九九精品丁香花| 五月天激情综合| 天天日天天摸| 青青草原精品久久| 7月婷婷六月丁香| 色九月综合网| 久久探花91swag| 五月天婷婷基地| 婷婷婷婷婷开心无码播放| 99噜噜噜在线播放| 丁香激情久久| 日本97在线视频| W色综合| 开心五月天激情网| 中文字幕综合网| 天天久综合| 九九九九九九九热| 五月丁香网站在线播放| 妻久久久久| 色婷婷欧美| 色婷婷最新域名| 五月天亭亭俺也| 丁香六月婷| 凹凸操Av| 色色色色色色色色色色色色色色,网站| 婷婷丁香六月五月天| 123草逼网| 人人操AV| 99激情| 九月婷婷| 桃色五月天| 激情五月激情综合网| 乱轮A片| 五月丁香久久综合精品| 婷婷色五月激情| 五月激情丁香五月| 色五月婷婷狠狠撸| 99这里只有免费的小视频在线观看| 日本九九九九| Av性爱网站| 丁香婷婷综合精品六月初| 婷婷久久五月天丁香| 99玖玖精品| 天天综合色99| 九九色婷婷Av| 久久 无毛。| 亚洲AV无码影院| 色一情一乱一乱一区9| 丁香五月综合激情久久潮喷| Www.sesese丁香| 九九色色| 91re色综合视频| 欧美在线视频99| 办公室少妇激情呻吟A片在线观看| 九九色色| 色婷婷丁香女女| 五月婷婷先锋| 婷婷射图| 99精品热| 开心五月婷婷在线视频免费观看| 丁香五月天天日| 婷婷丁香一月| 色五月婷婷在线| 久久电影4399| 九九色色网| 狠狠操.COM| 久久免费婷婷视频| 在线观看的av| 搡BBBB搡BBB搡18| 五月婷三级片| 91精产品自偷自偷综合| 综合激情啪啪| 99在线观看视频免费| 五月婷婷六月丁香| 五月丁香六月欧美| 五月丁香色婷婷色| 五月综合激情婷婷六月色窝| 91精品视频男人的天堂| 性爱先锋AV| 99热在线99| 噜噜噜噜噜色| 婷婷丁香六月天| 99精在线| 99操不停| ...婷婷国产成人亚洲日韩| 国产精品日韩十五区| 可以直接看的av| 色中色综合| 婷婷在线中文字幕| 久久婷婷激情四射五月天| 丁香 婷婷 激情 综合 五月| 天干夜夜操| 久草婷婷| 人人操操| 色区域网站视频| 中文字幕成人| 亚洲免费在线观看岛国| 色九网| 婷婷五月天狠狠| 亭亭五月丁香五月天激情| 超碰免费人人肏| 久久久久9999| 丁香五月婷婷五月天| 日本不卡高字幕在线2019| 99久久新视频| 久久五月婷天天干| 在线中文av| 在线综合啪| 99热这里只有精品手机在线观看| 91色在线/日韩| 丁香五月婷婷香| 欧美成人Va| www.激情| 熟美女麻豆| 五月天自拍视频| 欧美激情VA永久在线播放| 亚洲12p| 久9久成人精品视频| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 91五月天| 午夜丁香| 日日噜噜夜夜狠狠久久丁香六月| 午夜色丁香| 开心五月深爱五月婷| 天天操天天操天天操天天操天天操 | 亚洲成av人影院| 五月婷免费视频| 五月天色网站| AV中文网| 综合性视频99| 亚洲精品国产熟女久久久| 操人久久| 九九人人精品| 欧洲一区二区| 琪琪色五月天| 91九色|疯狂|高潮|对白|| 精品久久久人妻| 色婷婷yy久| 婷婷丁香五月天亚洲| 色婷婷视频在线| 草一草avb| 九九这里只这里只有精品| 99热精品中文字幕| 婷婷久久性爱| 五月婷婷AV| 成人精品网站在线观看| 吉澤明步Av一區二區| 九九色婷| 色五月天综合网| 97碰碰人人视频| 日本成人噜噜噜| 五月天婷婷久草丁香| 99视频只有精品| 99re在线播放| 丁香五月激情性色郤| 啪啪日本欧美| 五月天婷婷小说| 在线观看996精品| 黄色成人网站在线播放| 9有码中文| 91美女被操| 思思久久网| 久久综合性| 9l视频自拍九色9l视频在线观看| 色婷婷社区| 99精品视频推荐| 这里只有精品免费观看网占| 亚洲黄3级片网站欧美| 玖玖午夜视频| 亚洲 激情 中文| 色人久久| 99超碰在线观看| 色欧洲| 日本成人噜噜噜噜噜| av婷婷丁香| 五月丁香婷婷激情视频| 丁香五月欧美激情| 丁香五月综合激情性爱| 五月天日日操夜夜操| 日本少妇裸体做爰高潮片 | 蜜桃人妻无码AV天堂三区| 五月四色婷婷| 久久婷婷丁香| 久九男女天堂| www.夜夜.com| 久久婷婷五| 99视频自拍| 丁香五月天av| 99精彩视频在线观看| www久久艹| 婷婷五月丁香在线观看| 六月丁香激情| 成人无码精品1区2区3区免费看 | 狠狠操.com| 久久天堂女人| 亚洲无码99| 久热这里只有精品在线| 开心五月六月婷婷| 亚洲99热| 久久精热| 99er6| 欧美日韩成人在线网| 欧洲毛片基地c区| 26UUU在线观看| 婷婷综合色色| 丁香五月天激情综合| 久久97| 操骚货在线| 天天狠狠六月婷丁香影院| 婷婷五月天综合激情| 九热视频免费观看| 成人中文网| 97久久视频| 久久人妻伦理| 婷婷放心五日爱| 婷婷五月精品中文| 五月天丁香久久综合 | 亚洲高清在线| 五月天婷婷社区| 日亚二欧美| 性无码专区无码| 久99视频在线观看| 激情五月天视频| 伊人狠狠操| 超黄亚洲瑟瑟网站| 国产综合81p| 成人电影一区| 婷婷99中文字幕| 玖操97| 激情综合网之激情五月| 玖玖在线视频| 五月丁香在线观看99| 91人人看| 极品少妇XXXX精品少妇偷拍| 亚洲成人高清在线| 色欲午夜无码久久久久久张津瑜 | 五月天色综合| 99爱视频在线| 亚洲精品永久久久久久| 天天婷婷色六月| 99热中文字幕久久| 五月丁香六月婷婷视频| 九九色热视频| 99爱免费视频| 亚洲mm色| 天天情色五月天| 激情综合网亚洲色图| 99热在线里有精品| 久久久18| 激情美女五月天| 久热在线观看视频9| 婷婷五月综合丁香久久| 操比激情五月| 亚洲丁香婷婷| 激情五月天第四色| 久久狠狠干| 激情久久肏屄视频| 99玖玖免费视频| 亚洲精品va| 欧美精品啪啪| 99热这里只有精品268| 九九视频这里是精品五月| 丁香六月高清视频| 婷婷爱五月| anquye五月| 亚洲丁香花色| 久久亚洲婷婷| 一本色道久久88加勒比—| 丁香五月综合激情性爱| 亚洲精品色色| 亚洲欧美成人在线观看| 免费啪啪亚州视频| 亚洲精品操一操、噜一噜、摸一摸、爽 | 五月天激情影院| 丁香五月色| 五月丁香六月婷婷综合| 九色自拍| 丁香五月婷婷啪| 婷婷五月天Av| 91久女| 五月丁香久人妻中文| 五月丁香婷婷综合在线| 亚洲不卡123| 久久久久9| 日日懆天天懆| 久久sp免费视频| 99热亚洲| 深爱五月激情五月| 亚洲人人操| 白人荫道BBWBBB大荫道| 天天日天天舔| 日日干干天天干| www.日韩国产| 亚洲婷婷五月天| 久久这里只有精品99| 九九热10| 丝袜激情网| 极骚大香蕉伊人| 99精品福利视频| av久热| 色五月婷婷亚洲| 开心五月综合激情综合五月| 丁香婷婷性爱| 青青草网武则天| 极品少妇XXXX精品少妇偷拍 | 午夜在线成人网站免费观看| 成人网址在线观看| 亚洲mm色| 久热久| 亚洲另类毛片| www.丁香六月婷婷久久天堂影院.con| 婷婷五月色激情欧美激情| 五月婷婷香蕉| 91欧美| 五月丁香婷婷婷激情爱爱| 国产亚洲精品久久久久苍井松| 热久国产| 色婷婷狠狠| 操逼福利视频| 激情五月天婷婷免费观看| AV在线免费观看不卡| 人妻久久久| www.狠狠艹| 甈吧vv| 激情五月天激情网| 99视频内射三四| 久久成人亚洲欧美电影| 久久婷婷视频| 综合伊人久久| 可以直接看的av| 午夜性爱影视一区77| 天天色综和网| 午夜在线成人网站免费观看| 亚洲综合在线视频| 99热免费| 99精品视频免费观看| 国产资源91在线| 最新av在线观看| 操人精品| 国产精产国品一二三在观看 | 丁香五月婷婷88在线| 亚洲操逼片| 激情人妻综合| 成年视频免费观看| 色九月综合网| 成人国产网站| 五月天丁香综合在线| 五月天婷婷色综合| 免费无码毛片一区二区A片| 久色| 久草热8精品视频在线观看| 人妻啪啪啪| 天天狠天天叉| 狠狠色狠狠操| 五月天婷婷激情| 激情六月天| www色色色com| 国外亚洲成AV人片在线观看| 色丁香五月婷婷| 色五月首页| 欧美精品99久久久| 日本少妇裸体做爰高潮片 | 午夜婷婷久久 | 99WWW免费视频| 久久天堂| 久草大| 亚洲色精彩| 3pAV| 欧美综合激情五月| 丁香五月开心婷婷| 俺去也五月天婷婷| 99操免费视频| www婷婷| 91丨九色丨熟女|新版| 26uuu在线观看| 婷婷月综合| 婷婷香蕉| 亚洲国产精品SUV| 超碰人人摸人人操| 91久久久久久久久久18| 婷婷久久爱| 综合久久十| 强壮的公次次弄得我高潮A片日本 | 亚洲色无码A片一区二区麻豆| 97日本在线播放| 亚洲国产黄色电影| 丁香五月人妻| 丁香六月婷婷综合激情欧美| 五月婷婷香蕉| 色婷婷色情| 亚洲激情高潮| 色亚洲欧洲| 97碰碰视频在线观看免费| 亚洲综合激情五月久久| 黄色热99| 婷婷成人在线| 性色欲情 网站| 五月天五月婷五月激情网| 欧洲亚洲精品| 五月婷色| 五月综合激情网| 99热1| 丁香六月中文| 五月天激情国产综合婷婷| 色情五月丁香| 丁香六月婷婷久久综合| 狠狠色噜噜狠| 一区视频网站| 性爱先锋AV| 伊人五月成人| 色激情五月| 665566 无码| 婷婷激情在线| 新激情五月开心五月婷婷五月丁香五月| 日本色爽| 日本人妻伦在线中文字幕| 久久五月天丁香花| 99精品国产在热久久| 激情综合色五月丁香六月亚洲| 五月天伊人综合| 开心五月婷婷| 精品亚洲国产成AV人片传媒| 五月综亚洲| 午夜九九九九九九九九九九九九九| 噜噜噜狠狠色综合| 久久五月天网| 亚洲综合视频天天精品| 五月天婷婷丁香| 99在线精品观看99| 综合网啪| 婷婷涩五月天综合| 欧美性爱五月天| 裸体做A爰片毛片A片免费| 婷婷久久精品| 五月婷婷欲色| 日韩人妻无码专区| 大香蕉Av在线| 五月天中文网| 日韩一级片| 9l视频自拍9l视频自拍九色学生| 超碰碰碰碰| 精品一区二区三区木瓜| 五月天激情亚洲| 狠狠色综合网站久久久久| 青草久久五月婷伊人| 丁香六月啪啪啪| 色伦专区97中文字幕| www.henhenl| 999热在线视频| 夜精品无码A片一区二区蜜桃| 九月婷婷综合网| 婷婷丁香综合成人| 无码人妻丰满熟妇奶水区码| 久久9久| 狠狠狠狠操| 嫩草AV久久伊人妇女超级A| 午夜成人网站在线观看| 激情五月丁香五月| 亚洲六月综合激情久久下卡| 色九月| 五月丁香激| 墨西哥毛片内射精| 激情五月天免费视频| 九九热超碰| 99热综合在线| Av大香蕉| 99热老网站| 97人人操| 婷婷丁香五另类网站| 欧美日韩成人高清在线| 98色丁香五月婷婷综合网| 五月婷婷人妻| 久久九九一區| 婷婷五月天激情基地| 色色热| 第2色五月婷| 永久精品| 九九色热| 夜夜爱网站| 91日韩在线| 欧美色图天堂网| 色色色综合色| 人人操插| 久久刺激网| 狠狠色狠狠| 99热主页日本| 九九九热精品| www99精品| 色综合久久888| 热思思九九| 五月天开心激情网色欲无码| 可以免费观看的av| 五月丁香综合网色欲| 久/久精品99看9| 视频这里只有精品| 99久久婷婷国产综合| 99热这是里只有精品| 激情六月婷婷| 伍月婷婷六月丁香| www.com在线操视频免费观看| 五月丁香婷婷六月| 日本精品干| 久久婷婷综合五月天| 人妻久久做| 婷婷丁香五月天激情| 久久色五月| 人妻丰满精品一区二区A片| 婷婷丁香五月天在线| 五月丁香亭亭A片| 五月婷婷日| 久草A片| 色噜噜狠狠色综无码久久合欧美| 五月丁香色五月| 午夜激情久久| 91精品国产99久久久久久天美| 五月天久久久| 青青草国产亚洲精品久久| 99热99这里只有精品| 亚洲热久| 天天操比比| 五月婷无码| 青青草原爱爱网| 久久久99视频| 色亚洲中文| 色涩视频久久| 激情四射网| 国产阿姨日皮艹逼内射视频| 97超级碰碰碰久久久| 亚洲无码11| 久久五月天激情视频| 婷婷丁香黄色| 涩五月婷婷| 久久在线人妻| 天堂资源欧日浪女在线播放| 激情综合五月天| 天天久| 99热9| 奇米影视在线视频| 日韩婷婷| 日本激情综合| 91ncom.色| 五月丁香六月综合图| 美女激情综合| 五月丁香六月婷婷亚洲| 久久久婷婷五月亚洲97号色| 欧美私人家庭影院| 69色婷婷| 五月婷六月天| www.久久久.com| 亚洲av电影网站| 婷婷综合激情| 亚洲va在线∨a天堂va欧美va| 五月婷婷综合激情| 伊人成综合五月婷婷| www夜夜| 五月丁香在线观看| 亚洲色婷婷色| 丁香久月婷| 日本不卡高字幕在线2019| 日韩另类在线观看| 天天拍夜夜爽| 99re在线视频精品,这里只有精品18,| 久综合4| 久久99热这里只频精品6学生| 五月天综合激情网| 丁香五月婷婷动漫| 狼人婷婷久久| 婷婷五月天大香蕉在线视频观看| 婷香五月激情视频| 婷婷五月色情| 色久综合天天做视频| 色五月开心婷婷| www.色九月| 五月丁香综缴情性爱| 日本婷婷| 国产成人av在线播放| 亚洲激情综合免费| 丁香五月婷婷姐| 99九九玖玖| 岛国资源站| 亚洲第一成人无码A片| 婷婷欧美| 五月丁香婷婷综合网| 五月婷婷综合在线视频小说| 亚洲国产精品成人va在线观看| 超碰成人电影| 69久久99精品久久久久| 大香蕉视频婷婷| 密着浓厚中出乚交尾GvG935| 色色网站| 亚洲1区| 天天日天天舔| 亚艹艹| 99热这里只有免费| 色五月天中文字幕| 好吊操这里只有精品| 91尤物九色在线| 久久久婷婷五月亚洲97号色| 亚洲12p| 国产人妻777人伦精品HD| 色五月婷婷五月| 97操碰视频| 五月天丁香综合| 天天干天天爽| 综合XX网| 亚洲色五月天| 99热激情| 五月伊人婷婷| 五月天激情电影| aaa日韩| 天天搞天天色综合| 女人天堂 AV| 丁香婷在线| 日韩99色99| 婷婷五六日| 婷婷五月天伊人在线| 激情com| 久久久思思热| 色狠狠999综合网| 永久的网站AAAA | 免费色婷婷| 日本偷拍九九九| 波多野结衣不卡AV| 色婷小说| 人人操碰| 丁香六月婷婷综合啪啪| 婷婷综合一二三| 五月婷婷|欧美| 91肏| 99久久婷婷国产综合精品青桔| 激情丁香久久| 狠狠爱五月婷婷| 色9999日韩国产| 大香蕉久久| 人人人人人人人人人草| 狠狠干2007| 亚洲久久婷婷| 激情五月四色| 色婷婷五月天在线观看| 九九在线精点品| 天天日夜夜| 久久九九免费视频| 狠狠色色| 99色在线观看视频者| 精品五月花| 久久久性爱网| 99er日韩| 亚洲VA在线| 久久久免费精彩视频| 色婷婷88| 99热婷婷| 五月天大香蕉av| 欧美啪啪五月天| 人人人操| 婷婷五月天六月综合| 欧美日韩aaaa| 亚洲五月天激情| 精品久久久人妻| 亚洲熟妇AV乱码在线观看| 超碰人人插| 大胆伊人久久| 欧美情月伍月天| 丁香五月婷婷姐| 久久66成人网站| 久久网日本| 99精品在线| 久久久免费图片视频| 久久天堂网| \\五月天婷婷激情| 综合网五月| 91成人性爱视频| 91九九九色在| 开心五月婷婷婷美女| 丁香五月婷婷六月婷| 人人爽欧美婷婷久久久五月丁香| 人妻精品在线| av大片在线| 久久综合色五月| 丁香婷婷偷拍| 亚洲婷婷免费| 99热精品在线| 任你干嘛免费视频播放| 操人91| 综合久久人妻| 91丨九色丨东北熟女| 色五月美女| 久久婷婷东京热| 色五月婷婷五月久久| 99色精品| 嫩草AV久久伊人妇女超级A| 7777精品伊人久久久大香线蕉最新版| 五月天激情黄色小说在线观看| 99这里只有精彩视频| 热久精品| 中文字幕人妻AV| 亚洲性图一区二区三区| 亚洲最大视频| 免费视频在线观看的网站| 第五婷婷伊人丁香色| 五月综合777| 亚洲AV成人片无码网站| www。久久久久一b。Cc| 91超碰在线观看| 久久婷婷六月综合| 午夜天堂啪啪| 九九热99免费视频| 日日肏夜夜干| 亚洲人人操| 天天操加勒比| 激情六月一二| 强壮公让我夜夜高潮A片视频| 五月色亚洲| 丁香色五月婷婷91桃色| 国产一级片| 婷婷五月天黄色网址| 视频色色色色色色| 激情五月丁香五月| 亚洲AV网站在线观看| 黄色AAAAA| 搡BBBB搡BBB搡五十| 99久re热视频精品98| 五月婷婷丁香社区| 久久se 综合网| 人妻内射麻豆视频| 中美日韩成人在线| 玖玖99精品视频| 69激情小说| 欧亚成人A片一区二区| 日本系列_4页_777FP| 久久免费婷婷视频| 五月开心播播网| 久久 婷婷 五月天| 开心婷婷五月| 六月婷在线| 天天爽天天透天天爱| 极品少妇高潮啪啪AV无码| 丁香五月婷婷狠狠色| 九九人人精品| 天天干,天天操,天天射| 色婷婷色五月色丁香| 九九热免费视频| 亚洲 综合中文| 9久精品视频| 伊人色综合影院视频| 五月天色色婷婷| 91久久国产综合久久| 思思re99视频在线观看| 国产亚洲精品AAAAAAA片| sS丁香五月婷婷| 亚洲操逼网| 激情五月婷婷丁香六月| 综合色色网| 日本不卡中文字幕| 色日本综合| 91超级碰在线| 丁香六月婷婷综合啪啪| 激情网 久久| 俺去也在线www色官网| 国产美女无遮挡裸体毛片A片 | 五月丁香综合| 久久性操| 婷婷五月天AV在| 日操夜撸| 激情五月天第四色| 四色五月婷婷在线观看| 99国产欧美视频| 五月天色不卡| 9999热在线观看| 99热免费精品| 日本久久人人| 99久久久免费| 色婷婷丁香网| 国产精品国产成人国产三级| 天天日天天插天天操| 色爱综合网| 99ri精品视频在线观看| 五月丁香六月激情欧美综合| 五月婷五月婷伊人伊人五月婷| 97色色色色色| 亚洲激情免费久久| 精品一二三区久久AAA片 | 在线观看中文字幕| 一区二区中文字幕| 中国女人做爰A片| 伊人久久五月天| 国产精品第一国产精品| 天天日天天日天天搞| 丁香六月av| 亚洲碰碰碰| 婷婷五月激情四月综合 | 色香蕉婷婷| 五月丁香六月激情视频| 99碰网站| 九九综合色| 米奇影视五月天| 欧美碰碰碰| 婷婷五月天久久久| 天天人人天天爽| 日韩丁香涩| 九九在线视频| 欧美va精品va老师va| 欧亚成人A片一区二区| 婷婷色情五月| 婷婷99中文字幕| 色婷婷丁香| 五月婷婷自拍视频| 99精品人人| 欧美激情五月天| 色综合色综合网| 黄色三级日本| 天天色粽合合合合合合合| 香蕉AV777XXX色综合一区| www98日本小时间到了| 久久婷婷视频| 99热这里只有的精品视| 久久大香蕉同僚| 操碰91| 婷婷五月天黄色小说| 欧美日综合| 国产真实乱了老女人视频| 激情五月影院| 色五月丁香总合网| 五月激情婷婷偷拍| 婷婷在线视频| 噜噜噜色噜噜| 色色色色区| 色色色综合| 日本色爽| 26uuu国产精品| 丁香六月激情综合网|