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

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
返回資訊列表
久久9999| 99热99思午夜精品| 思思久久精品| 丁香五月天在线| 色九月欧美| 福利视频在线播放| 久久久久婷婷| 天天插天天插| 激情小说视频图片| 丁香五月天激情小说| 国产精品色婷婷久久久精品| 精品热九九| 婷婷五月丁香香蕉| 婷婷丁香花五月天| 丁香五月天激情免费在线观看AV777| 婷婷五月天成人网| 99热这里只有精品66| 凹凸操Av| 婷婷色狠狠| 九九色热| www.婷婷| 婷婷成人综合| 婷婷丁香五月天综合AV| 久久九九网| 激情五月婷婷她| 色婷婷五月综合| 五月婷婷之综合激情| 综合五月丁香久久| 99热国产这里只有| 六月色狠狠色| 狠狠色情婷婷| xxx综合在线| 色综合色色| 丁香五月天天| 大香婷婷| 五月天综合区| 国产精品色婷婷99久久精品| 久婷久婷| 五月婷婷丁香综合| 伊人在线视频| 少妇高潮呻吟A片免费看软件| 日韩六六久久电影| 婷婷伊人久久综合| 人人干av| 丁香激情久久| AV性爱在线| 91丨九色丨熟女丰满| 色五月天成人| 婷婷狠狠干| 狠狠干思思热| 九九青草热| 996日日爱| 襙逼网| anquye伊人| 玖玖综合色| 色五月激情综合| 久久aaaaa| 五月天天综合网色婷婷| 97人人搞| 2020久久婷婷五月| 影音先锋777xfplay色资源网站| 91Chinese在线| 另类激情五月| 亚洲五月天综合| 思思网站| 看久久性爱99视频| 亚洲操人| 大香蕉懂9| 99啪在线视频| 久婷婷五月丁香在线观看| 婷婷五月丁香基地在线视频官网| 欧美日综合| 婷婷色在线| 色噜噜婷婷| 五月天激日本色情在线| 狠狠五月激情丁香六月| 九九99免费理论| 超碰免费成人| 激情久久伊人| 久久免费9| 色5在线| 色色色在线免费视频| 日本的α片xxxwww| 亚洲精品视频电影| 中字幕视频在线永久在线观看免费| 五月丁香无码| 色五月激情五月| 五月天婷婷丁香成人网| 成人av免费观看| 丁香五月天天哦| www.色窝| 99精品国产热久久91色欲| 97久久视频| 久久婷婷五月天| 九月丁香婷婷网| 日日操夜夜操无码免费| 色五月天天| 五月色影院| 日本久久婷| 色伊人91在线视频| 青草青草久热这里只有精品| 在线观看中文字幕| 99精品成人无码A片观看金桔| h在线看免费版在线看| 色五月婷婷成人| 99.N在线视频| 亚洲欧州色情在线观看| 99精品成人无码A片观看金桔| 五月婷婷综合视频| 五月 激情视频| 激情五月天免费视频| 夜夜撸夜夜骑| 丁香五月婷婷老师网站| 欧美黑人巨大猛烈cuckold| 99免费视频网| 五月四色激情| 五月天激情婷婷五月天久久| 99这里只有精品|v| 国产精品操| 婷婷六月天亚州| 婷婷99视频精品| 色噜噜丁香| 久久综合中文| 97香蕉碰碰人妻国产欧美| 久久九九思思| 国内精品玖玖| 中文AV网站| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 人人舔天天| 五月婷在线色视频| 国产亚洲精品久久久久苍井松 | 婷婷5月开心6月| 日本久久人| 碰97 久| 五月婷婷av| 丁香婷婷基地| 5五月综合网亚洲| 五月婷婷六月激情在线| 久操操| 大香蕉久艹| 久久九九色| 亚州在线中文字幕| 激情五月色综合国产精品| 婷婷丁香五月综合| 丁香无五月网| 99国产精品白浆在线观看免费| 9色免费网| 美英法精品无码免费视频| 精品久久久人妻| 91热网址| 99日本精品视频热| 五月色婷婷综合色| av亚洲国产小电影| 亚洲噜色| 精品99在线观看| 五月丁香六月婷婷操操操| 午夜激情四射影院| 五月天婷婷色| 六月丁香视频网站| 91人在线观看| 婷婷 丁香 精品| 日本天堂网站99| 伊人五月成人| 欧美综合五月丁香六月婷| 欧美精品18| 99久久五月天| 超碰人妻在线| 天天舔天天摸视频| 色综合中文| 人妻久久久久久久| 伊人久久五月天| 丁J香六月首页| 人人干av| bbwcuckold精品熟妇| 婷婷久久色| 日本熟女视频一区二区| 五月天婷婷Av| 婷婷六月激情| 色婷丨日丨天丨综合久久| 亚洲情综合五月天| 狠狠狠色激情综合适合| 婷婷国产综合| 丁香婷婷综合影院| 婷婷五月丁香基地| 99国产小视频| 九九RE视频在线精品| 久热9| 色丁香五月婷婷婷| 国产婷婷久久| 涩五月婷婷| 综合网五月天123| 大香蕉啪啪啪啪啪啪| 色五月婷婷操逼| 色婷婷黄色网络| 激情都市另类| 天天日日夜夜| 五月丁香六月婷婷激情网| 五月色综合网欧美网| 能看的av| 丁香六月激情| 婷婷五月婷| 91尤物九色在线| 五月婷婷色| 99亚州综合精品成人网| 99热精品一区| 丁香九月综合| 五月婷婷激情久久| 成人在线免费网址| 大地9中文在线观看免费高清| 亚洲人人96@| 99热97美女| 在线99热| 97人人操人人干| 婷婷六月五月天综合| 婷婷九月综合| 激情久久婷婷| 五月婷av| 九九综合网| 国产成人亚洲综合A∨婷婷| 色五月丁香伊人五月| www99精品| 亚洲传媒在线观看| 蜜臀久久99精品久久久久久酒店| 色色国产| 人人爱国产| 丁香五月图片| 快乐婷婷五月天| 色原狠狠综合| 超碰丁香五月| 色婷婷亚洲综合av| 婷婷五月天综合久久日| 色综合久久久无码中文字幕999| 五月天激情小说欧美激情| 五月丁香婷婷综合在线| www.超碰在线| 久久久大香蕉| AV五月丁香| www.刺激色网站www.| 天天爽天天爽| 激情五月婷| 久月婷婷| 99视频内射三四| 久久综合五月天| 中文字幕 久久9999| 噜噜噜噜噜在线| 五月丁香花激情综合网| 五月色婷婷影院| 99资源在线| 青青草婷婷五月天| 9l视频自拍九色9l黑人| 人人操大| 中文字幕AV网址| 色五月婷婷五月天激情综合| 超碰男人色| 丁香六月综合激| 亚洲欧美日韩另类| xxxx久| 色播五月综合网| 伊人久热91| 丁香五月ⅤA久久久| 日韩在线观看网址| 日韩成人影片在线观看| 亚洲久久日| 欧美激情中文字幕| 91久久久久久| 色人五月婷婷| 亚洲第79页| 五月综合六月婷婷| 另类小说色婷婷| 九九热最新| 五月婷婷六月色| 精品久久9| 婷婷六月色开| 夜夜操加勒比| 色欧美影院| 色婷操逼| 新激情五月天色播| 色欲午夜无码久久久久久张津瑜| 久草热视频在线观看| 久久99激情丁香婷婷小说网| ww久久| 中文字幕在线免费观看视频| 大香蕉婷婷| 99五月香婷婷丁香在线视频| AV成人在线播放| 五月花综合| 99精品视频在线免费观看| 色色色视频免费无码| 久色网五月| 九九热精品6| 成人版视频在线观看| 欧美婷婷综合| 天天操精品| 久久婷婷五月综合伊人| www.久久五月天.com| 热99精品视频| 九九色精品| 夫妇交换刺激做爰| 亚洲国产成人在线| 激情五月,激情综合网| 99热大香蕉| 六月丁香五月婷婷| 婷婷五月天综合久久| 亚洲欧洲99| 五月婷在线视频免费播放| 中文av网| 九九色情网站| 都市激情蜜桃婷婷五月天| 狠狠五月天婷婷激情网。| 婷婷五月天综合在线| 天天操天天操天天操天天操天天操| 99热在线观看| 亚洲自拍天堂| 狠狠色综合网站| 久久网日本| 国产做爰视频免费播放| 国产99热| 色五月天丁香婷婷| 欧美色偷偷大香| 人人爽天天莫| 五月婷婷中文字幕| 五月婷婷性爱视频| 亚洲激情色色| 成人午夜视频精品一区| 五月婷婷综合网| 激情五月丁香六月综合AVXXXX| 日本熟女二区| 丁香五月婷婷天激情| 成人婷婷| 久久久性爱视频| 亚洲传媒在线观看| 狠狠色婷婷六月激情网| 成人国产欧美大片一区| 激情文学天天| 激情小说五月天| 99热综合在线| 91碰碰视频| 任我肏视频精品| 无码九九| 欧美操人| 久久99最新| 天天肏在线观看| 欧美婷婷精品激| 久久少妇视频| 色原狠狠综合| www.婷婷| 97视频.干com| 五月丁香激情综合网| 日韩成人综合| 99色精品| 九月久久婷婷| 欧洲亚洲免费视频9| 欧美熟妇一区二区三区| 天堂五月婷婷| 99九九在线精品热动漫| 婷婷导航| 79亚洲精品少妇| 成人日韩欧美| 亚洲艹网| AA片在线观看视频在线播放 | 国产三级秋霞| 大大香蕉综合在线| 五月激情小说网| 亚洲免费成人电影AV| 色亚洲色宗合| 91狼友视频网页更新| 六月丁香婷婷色综合| 日日干夜夜干| av网站中文| 婷婷色五月大香蕉在线| 成人丁香婷婷| 熟女激情网| 97色婷婷成人综合在线观看| 久久久18| 无码人妻少妇色欲AV一区二区| 色色色综合色| 色婷婷av在线观看| 欧洲亚洲激情五月天在线| 婷婷综合性爱网| 99热这里有精品2| 九月性爱网| se99视频| 久久99激情五月天| 99久久婷婷五月综合| 色婷婷久久综合久色综| 日产精品久久久久久久蜜臀| 99A片| 五月婷婷影| 欧美日韩999| 久久人妻爱爱| 香蕉乱插| 91要啪| 色色永久| 成人在线免费网址| 五月天综合网| 久久五月婷天天干| 婷婷五月激情欧美| 在线视频婷婷| 婷婷五月天黄色| 激情五月天啪啪视频| 99网| 超碰成人av| 高清无码.com| cao视频,现在观看| 亚洲精品色| 婷婷五月色综合| 六月撸婷婷| 亚洲精品白浆高清久久久久久| 婷婷久热| av操B网站| 狠狠爱婷婷爱| www、色色色| 久久久99久久| 五月婷婷久久网| 超碰人人干| 天天色综合综合| 丁香五月中文字幕| 久久丁香综合精品综合| 99超级碰免费视频| 激情五月丁香六月综合AVXXXX| 六月色婷婷综合影视| 亚洲色啪| 五月综合色| 99色啊| 人人操女人| 99视频| 99热播放| pacopacomama 070722_670 素人奥様初撮りドキュメント 103 大久保純子 | 五月丁香六月色| 亚洲日韩一页精品发布| 91爱啪啪| 久久久27操| 日本va视频| 激情网站五月| 91婷婷丁香| 日韩AV在线电影| 色婷婷久久| 五月丁香啪啪啪| 99久久精品网| 成 久久| 久久精品99| 91九色超碰正在播放| 搡BBBB搡BBB搡18| www.五月婷婷久久.com| 夜夜 操无码| 美女天天爽| 亚洲人人操BD| 2025天天爽天天摸| 色欲日日躁| 久久草人妻| 激情婷婷在线中文字幕| 色五月天丁香婷婷| 天天日夜夜欢| 五月天三级久久| 丁香六月婷婷社区| 亚洲 欧洲 国产 伦综合| 日韩啪啪视品| 99艹精品在线观看| 激情丁香五月| 99热日| 色色色婷婷| 五月婷婷色白丝| 玖玖九九9999在线观看视频精品| 九九成人| 欧美人与性动交CCOO| 狠狠色噜噜狠狠狠狠综合| 影音先锋一区| 激情五月综合| 丁香五月社区| 国产小精品| 嫩BBB搡BBBB榛BBBB| 色婷婷激情| 免费精品99| 欧美大片免费播放器| 久久99热这里只频精品6学生| 色开心五月婷婷丁香HD| 久9精品视频在线| 五月婷婷久久网| 色婷婷无吗| 日韩精品99久久| 91操在线观看| 91精品丝袜久久久久久| 五月激情丁香五月宗合| 九九爱激情| 五月婷在线观看| 婷婷的色色五月天| 99性爱视频| 国产毛片精品一区二区色欲黄A片| 亚韩在线视频| http:色情日本com| 一区操| 2016日日夜夜操| 激情婷婷五月| 夜夜操少妇| 亚洲色在线观看| 婷久久| 99热这里都是精品| 肏日网在线看| 亚洲五月婷婷| 99热99热不卡| 五月天婷婷丁香| 极品精品一区二区三区在线| 五月婷色色| 丁香婷婷久久| 亚洲自拍天堂| 婷婷基地成人五月天| 99久久精品网| 丁香五月天啪啪| 超级碰碰97在线| 日本专区久久| 一本道综合网| 久久久大香蕉| 亚洲九九99精品视频在线播放| 五月激情影院| 激情综合网五月| 婷婷五月免费观看| 色婷五月| 色色色丁香| 亚洲精品色色| 五月激情六月综合| 97高清国语自产拍| 久久久久久久97| 激情网婷婷婷| 日韩一级片| 色99免费视频中文| 五月婷婷插一插| 天堂久久精品| 精品九九网| 五月开心六月婷婷在线播放网站| 人妻 性久久久久久| 97色欧美| AV免费在线网站| 日日日,com| 亚洲视频99| 99在线精品视频| 精品久久9| 99热草草| 激情小说五月天中文字幕| 九九在线视频| 老师把我爽高潮了免费A片| 久久网站观看免费欧洲国产 | 婷婷五月欧美综合| 免费国产VA国产免费| 亚洲va国产va天堂va综合va| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 最近中文字幕2019视频1| 婷婷丁香综合| 这里只有精品免费| 天天操天天国产三级片处女学生妹| 97欧美在线| 久久思思精品| 性爱激情久久| 六月丁香社区| 婷婷色资源| 五月婷婷干| 欧洲色| 国产色色在线| 色色婷婷丁香| 久久五月天激情婷婷| 日本色道视频网站| 丁香久久| 丁香六月激情综合| 婷婷 激情 五月| 色五月首页| 日韩婷婷五月| 婷婷导航| 79色色免费| 婷婷五月丁香亚洲| 思思国产99| 精品九九久久| 丁香美女五月天婷婷| 91日综合欧美| 五月狠狠| 另类图片天天影视在线观看| 色播五月婷婷| 三十路磁力链接| www.9操| 丁香婷婷五色月| 激情操逼婷婷| 五月丁花六月丁香综合| 五月丁香花激情综合网| 99热这里只有精品8| 激情五月伊人婷婷| 久热伊人91| 色色色色色网站| 日韩情色在线观看| 狠狠干婷婷| 精品九九在线观看视频| 9色91视频| 天天干天干| 91精品婷婷国产综合| 久久九九网| 噜噜色五月| 久久AAAA片一区二区| 五月丁香六月婷婷手机无线| 噜噜狠狠色综合久| 激情影院丁香五月| 亚洲国产色色| 高清视频一区| 天久综合91综合首页| 岛国AV网| 五月天婷婷三级黄| 日本色色影院| 91啪啪视频| 日本 @ va 免费| 激情五月天综合网| 被强行糟蹋的女人A片| 五月婷婷人妻| 丁香五月影院| 97婷婷五月丁香| 久久99精品久久久久久噜噜| 热99热| 婷婷色一二三区波多野结衣| 激情五月久久| 96丁香六月婷婷蜜桃综合久久| 丁香9月婷婷| 五月婷婷激情综合| 婷婷五月天电影在线| 色99热| 亚洲 在线 另类| 天天做天天爽| 99综合99| 综合亚洲六月婷婷在线| 9久热在线精品| 99热色精品| 天天干天天操天天拍| 色婷婷狠狠干| 婷婷内射视频在线| 色婷婷亚洲综合天堂| 亚洲人妻av| 亚洲综合色色色| 婷丁五月| 丁香婷色| 九九激情视频| 91色呦哟| 狠狠操狠狠爱| 婷婷在线视频| h亚洲| 日日激情网| 男人的天堂999| 六月丁香婷婷综合狠狠爱夜夜爱| 九九色逼| 天天干夜晚夜操| 日本色爽| 人人人舔人人人操人人人摸人人人97| 九九色区| 综合超碰熟| 色五月,com| 天天日天天操心| 99久久久免费| 99在线69| 色婷婷五月色| 蜜臀99精品| 99视频在线精品免费观看2| 五月天色五月天| 一起草av| 草综合网| 久久婷婷五月综合| 五月丁香免费视频| 六月婷婷综合激情| 99啪啪网| 爆乳熟妇一区二区三区爆乳| 色婷婷激情四射视频| 我想看国产大学生口爆吞精的视频| 婷婷综合五月天| www久久艹| 91成人性爱视频| 色婷婷久综合久久一本国产AV| 色丁香五月天射婷婷爱婷婷| 伊九九三级区| 五月五婷婷网| 五月天婷婷六月激情网| 丁香色六月婷婷| 五月丁香综合激情在线观看| 日日干五月天婷婷| 亚洲色色图片| 色婷婷丁香AV综合| 婷婷五月天欧美图片在线播放电驴| 丁香六月婷婷综合| 99开心五月五月丁香激情| 人人操99| 思思视频这里是精品| 99在线观看视频免费| 亚洲美女婷婷五月天| 五月天婷婷综合久久| 五月激情丁香六月狠狠干| 操人妻90p| 人妻肉射免费观看| 夜夜躁爽日| 天天操婷婷| 欧美激情综合色综合啪啪五月| 色情五月停停丁香| 97碰碰视频| 欧美婷婷五月丁香| 超碰碰碰碰| 亚洲人操亚洲人| 五月开心啪啪| 天天看A片| 亚洲色爽| 五月情色天| 亚洲人妻Av| 久久HD| 91在线观看九区| 欧美久人人| 激情五月婷婷综合| 热这里| 五月色综合| 五月天婷婷成人网| 精品自拍97| √天堂资源在线人妻熟女| 成人va在线观看视频| 激情宗合网激情五月天| 日本一毛片| 久久小说网| 日韩欧美一道四区中文字幕| 蜘蛛女免费观看完整版高清电影| a69在线视频| 五月天综合在线观看| 中文字幕AV网址| 精品夜夜澡人妻无码AV| 亚洲XX网| 开心五月丁香婷婷| 婷婷99中文字幕| 一级AV片| 97色婷婷| 婷婷丁香五月综合| 影音先锋日本三级资源| 91超碰在线播放| 色色婷婷综合网| 色色综合网站| 婷婷综合在线视频| 丁香六月视频| 91一起操| 四色五月视频| 天天插天天| 99自拍视频| 九九美女视频| 五月天成人伊人| 婷婷五月天奸女| 97超级免费无码| 电影蜘蛛女| 九九综合九九| 91 九色 入口| 性生活视频98791| 99久热| 婷婷激情性爱| 丁香五月天激情免费在线观看AV777| 天天拍天天操| 欧美性做爰大片免费看办公室| 一二线视频 另类| 久久久精品视频79| 91人人操人人爱| 久久一操| 色五婷婷| 综合在线观看99| 青青草a在线| 六月丁香啪啪| 久9久9热久热| 九九热精品99| 啪啪操操| 99热这里只有精品8| 182tv992tv人之初午夜免费观看| 久草视频一,二三四| 五月天综合婷婷| 婷婷五月丁香图片人人操| 亚洲成色综合网站免费观看| 狠狠干天天日| 色色五月婷婷| 九九视频这里只有精品| 五月丁香久人妻中文| 狠狠色成人影片| 人人草碰| 丁香五月色| 狠狠九九婷婷韩| 亚洲激情婷婷| 丁香五月天天| 久久99大全| 9l视频自拍9l视频自拍九色学生| 日在线V视频在线播放| 啪啪啪大香蕉| 夜夜夜夜做天天天做无码视频| 婷婷色情网| 久久久婷婷婷| 在线播放成人网站| 丁香六月av| 国产肥白大熟妇BBBB视频| 天天操天天爽天天爱| 国产午夜精品一区二区三区四区| www.久久99| 99日韩| 婷婷五月免费观看| 久久色大香蕉| 五月开行婷婷色五月| 免费观看日韩成人av| 天天天干夜夜夜操| 五月 成人 婷婷| 亚洲色五月| 五月激情婷婷开心五月| 秋霞少妇AV网站| ji'qi'luan'ren'lun| 狠狠爱夜夜| 99热这里只有精品22| 婷婷五月天伊人在线| 欧美亚洲色色色色| 九九99久久| www.色综合| 婷婷激情五月| 五月天综合在线观看| 久久五月天色婷婷| 大香蕉九九| 丁香美女主播视频在线观看| 五月开心久久| 国产激情视频在线观看| 开心五月色婷婷综合开心网| 婷婷刺激综合| 香蕉婷婷| 四色99久久| 国产免费AV网站| 亚洲乱码日产精品BD| 天天爱天天吃狠天天透| 九九熱最新視頻| www.91五月| 国产色网站| 五月婷伊人| 国产婷婷久久| 99久热| 色五月婷婷丁香五月| 色五月大香蕉| 久草婷妨| 天天爽天天爽| 天天干天天干天天操| 五月婷六月综合在线观看| 色色色色色日韩午夜激情 | 五月激情综| 九九国产视频| 色婷婷女优有码五月亭| 欧美激情综合色综合啪啪五月| 性爱AV天堂| 久久九九囯产| 五月天婷婷久久| 五月天婷婷乱论小说| 久久人妻乱子伦| 亚洲AVwwwwwww| 婷婷在线视频| 在线观看av网站| 国际国外精品欧洲南美洲专区无码不卡| 欧美叉叉叉BBB网站| 开心五月网 | 日本不卡一区二区三区| 欧洲亚洲午夜| 婷婷在线免费| 六月婷婷网| 香焦网五月天| 国产乱子轮XXX农村| 五月丁香婷婷婷激情爱爱| 很很操很很操| 三级黄网站| 欧美激情久| 亚洲深喉aV| 久久思思热| 丁香五月欧美色综合| 久久婷婷五月综合伊人| 无码天天操| 丁香九月综合| 婷婷五月丁香久久| 九九偷拍网| 开心婷婷五月综合| 久久精品99国产精品日本| 五月综合色| 伊人婷婷大香蕉| 99热在线观看免费精品| 婷婷丁香在线播放| 亚洲小说欧美激情| 色色婷五月天| 亭亭丁香久久五月| 午夜婷婷丁香| 色玖玖| 成人国产综合| 伊人久久婷| 97在线/亚洲| 97久人人| 九九人人自拍| 婷婷99狠狠躁天天躁中| 91无码高清| 狠狠草网| 亚洲乱码w在线观看| 色婷婷综合在线| 精品视频网| 最熟少妇乱码| 久热9热| 卡视频1区2区| 日韩操女| 五月婷婷亚洲| 午夜丁香| 玖月婷婷爱丁香| 亚洲精品操一操、噜一噜、摸一摸、爽 | 天天爽爽日日做做| 中文网AV| 2025中文在线视频字幕免费观看| 1区2区视频| 婷婷涩涩五月天| 六月丁香大香蕉| 67194成I人在线观看线路1| 五月伊人网| 丁香五月在线人妻| 五月丁香激情婷婷综合字幕| 日韩激情人伦人| 亚洲色婷婷视频| 久久久久人妻网址| 久色激情| 成人丁香| 久久久久久久久久久-久五月天婷婷| 色色免费网站| 狠狠穞A片一區二區三區| 日日操天天操| 久久久婷丁香五月| 激情综合网,五月| 丁香色播五月天| 九九热只有这里是精品| 天天噪夜夜爽| 色五月婷婷久久| 久久婷婷亚洲| 婷婷六月久久综合导航| 五月天婷婷影院| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 大香蕉中文| 99热在这里只有精品| 久99热| 女人被躁到高潮嗷嗷叫小| 久久综合站| 人妻激情在线| 天天摸天天爽| 丁香色婷婷五月天| 色综合伊人网| 久久婷婷综合五月| 久久超视频| 青青热久久综合| 亚亚州久久高潮| 五月婷婷av| 久久R激情| 综合99久久| 日本熟妇人妻在线| 97热这里精品在线视频| 亚洲亚洲人成综合网络| 99热在线资源| 五月亭亭六月激情| 99狠狠| 中文字幕丰满孑伦无码专区| 婷婷综合日本| 婷婷深爱五月天在线| 来吧亚洲综合网| 狠狠操天天干| 色www.con| 国产探花AV在线| 99色热视频| 国产精品色婷婷AV综合色色| 婷婷五月天av| 国产超碰av| 欧美丁香婷婷天天操| 色 色 色综合com| 五月婷婷深深爱| 99热综合在线| 99亚洲色色| 久热9| 婷婷五月色影视先锋| 色情激情五月| 玖玖热视频| 久久久A级视频| 激情网开心网| 丁香六月综合| a色婷婷| 天天精品视频在线观看视频| 欧美成人精品A片免费一区99| 中文字幕无码人妻少妇免费视频| WwW色婷婷| 色婷婷影院| 久久性爱视频| 日美三级| 丁香五月婷婷乱| 久久精彩视频| 婷婷五月天奸女| 色婷婷视频在线| 亚洲久久天堂| 激情丁香淫荡婷婷| 五月色影院| 99在线资源| 五月天啪啪啪| 五月婷婷综合色啪首页 | www.成人婷婷综合| 亚洲综合在线视频| 色色操| 草一草avb| 97日在线视频| 亚洲第一综合| 六月丁香开心婷婷欧美| 久久66精品| 成人中文网| 婷婷在线五月天观看| 五月天成人免费视频| 激情文学久久| 九九青青草成人| 91丨九色丨熟女| 在线观看亚洲视频影院| 婷婷综合色网| 丁香激情五月| 婷婷成人AV| 综合久久高清| 91人人网| 婷婷丁香熟妇综合网| 午夜色婷婷| 五月天.com| 9九热视频| 亚洲综合婷婷| 色啦啦视频| 偷拍视频五月天| 色婷网站| 亚美欧色影院| 欧美日韩国产一区二区| 夜夜操狠狠操| 婷婷免费无马| 亚洲精品99| 99久热在线精品| 99久在线精品99re8| 99热国内| 婷婷五月丁香青青草在线| 婷激情五月| 伊人久久大香线蕉亚洲五月天,| 五月天成人在线视频丁香| 国产特级毛片AAAAAAA高清| 亚洲狠狠狠色婷婷综合激情久久久| 九月婷婷色色| 日韩欧美一级大黄网站| 俺去也综合| 亚洲丁香五月美女| 99在线视频操999| 婷婷五月情天| www.97碰碰com| 五月天成人综合| 亚洲国产精品五月天| 日本不卡一区二区三区| 五月丁香六月婷婷亚洲视频| 2022人人操人人看| 激情小说五月天| 色天天综合色| 婷婷五月激情综合啪啪| 五月丁香好婷婷A片网| 六月五月丁香五月欧美| 色综合久久久无码中文字幕999| 思思99精品视频在线观看| 亚洲A片成人无码久久精品青桔| www。狠狠干。com| 在线看AV| 大香蕉婷婷久久| 中文字幕丰满乱孑伦无码专区 | 欧美大奶熟女噜噜噜噜| 精品日本视频444| 伊人色综合网| 激情文学天天| www网站在线观看| 97av在线视频| 五月天成人在线| 吊色AV男人的天堂| 色综合五月天| 色播五月| 狠狠另类视频| 99热色婷婷| 拍真实国产伦偷精品| 天天日天天摸| 色必久悠悠影院| 色色婷婷丁香五月天| 五月丁香六月激情综合| 天天干电影| 激情综合色五月六月婷婷| 婷婷爱五月| 搡BBBB搡BBB搡18| 久操综合| 色五月首页| 天天摸天天舔在线视频| 伊人久热91| 日产精品久久久久久久蜜臀 | 性一交一乱一交A片久| 蜜臀99精品| 天天操天天日天天爽| 日日干天天射| 久久精彩视频99| 六月婷婷综合| 超碰人人99| 热99这里只有精品视频| 亚洲天堂热| 色婷婷最新域名| 国产午夜伦鲁鲁| 九九婷婷网五月天| 欧美激情VA永久在线播放| 爱的综合网| www,五月天com| 婷婷网影院| 大香伊人婷婷影院| 久久AAAA片一区二区| 超碰人人在线| 久久人妻精品| 五月婷色激情五月| 色视五月天婷婷| 五月丁香婷婷爱激情综合网| 九九色院| 色综合久久88色综合天天| 久久久亚洲精品一区二区三区浴池| 99无码黄色视频| 色婷婷五月天综合网| 五月丁色AV| 五月天社区| 91AV婷婷| 国产三级片91| 天堂综合久| 91久久国产综合久久| 610018岁成人视频| 99综合网| www.天天干| 亚洲精品大片| 中文无码婷婷| 欧美丁香五月97色| 婷婷五月综合啪| www.夜夜操| 五月婷婷激情五月| 色婷婷www| 婷婷五月天久久久| 人妻无码精品一区| 婷婷.com| 99精品小视频| 天天天天天日| 人。妻久久| 思思re99视频在线观看| 热热久久99| 九九热99热| 五月婷婷 激情五月| 五月天婷婷影院影院观看| 婷婷五月天在线综合| 热久视频| 婷婷五月天无码| 色噜噜狠噜噜视频| 大香蕉久久婷婷| 亚洲第一成人无码A片| 特黄三级片| www.99热| 国产欧美日韩综合精品一区二区| 久久久97| 九九RE视频在线精品| 精品一区二区三区四区五区六区| 亚洲AV中文在线| 成人丁香五月| 丁香五月伊人| 欧美搡BBBBB摔BBBBB| 超碰在线日夜| 婷婷五月色花丁香社区| 日韩操女| 综激情网| 中文网AV| 亚洲一区先锋影音| 亚洲人人操BD| 婷婷五月综合体验看| 久热成人| 成人做爰高潮A片免费视频| 色色欧美色色色| 久久99久久久久久久噜噜| 九九99九九99偷拍视频免费看| 丁香五月激情欧美| 欧美精产国品一二三区| 色五月开心婷婷| 婷婷五月丁香久久| 天天色天天日天天舔| 99色亚洲| 亚洲中文字幕AV在线| www色婷婷com| 丁香五月天在线观看视频| 激情五月婷婷啪啪| 狠狠插狠狠插| av人人干| 国产精品成人网址| 色综合久久99色| 这里只有精品在线免费视频| 九九亚洲无码| 99热99在线| 九九无码视屏| 婷婷久久五月| 日曰躁夜夜躁2026| 婷婷六月视频| 丁香婷五月天| 中文AV在线观看| 极品 少妇 内射| 国产精品色| 夜精品无码A片一区二区蜜桃| 五月丁香久久| 婷婷桃色网| 91狠狠色丁香婷婷综合久久精品| 色噜噜综合网| 天天五月情| 激情伊人五月天| 丁香六月婷婷激情| 激情五月婷婷综合| 日韩精品二三区| 亚洲中文乱字字幕在线永久| 91聚色综合网| 伊人网欧美在线男人天堂五月丁香| 天天日夜夜高潮| a久久| 久久综合久色欧美综合狠狠| 色五月婷婷综合在线| 99re这里有精品手机在线| 99热免费精品| 亚州第一黄网| 人妻操逼| www.91操| 2021日韩无码| 啪啪婷婷五月天激情| 综合久久久| 天天干在线播放| 五月丁香婷婷福利| 婷婷六月天天| 日韩人人操| 色色色在线播放| 91欧美日韩综合| 亚洲av无码影院| 久久人人人人妻| 婷婷91| 久久综合综合久久| 婷婷五月天开心网| 久久人妻超碰一区| 五月网激情| 色九九综合| 九九人人自拍| www.99热这里精品| 五月天综合在线网| 思思久ren热| 狠狠草在线观看| 婷婷五月天AV在线| 无人精品在线视频| 伊人九九68| 可以直接看的av网站| 在线不卡视频| 亚洲小视频免费播放| 爆乳熟妇一区二区三区爆乳| 99精彩视频在线观看| 9999色色色色| 成人国产欧美大片一区| 丁香五月天激情婷婷丁香六月 | 婷婷伊人久久无码色五月| 婷婷丁香六月五月天| 婷婷在线综合| 超碰电影在线播放| 97碰碰视频| 草草影院爱爱| 五月天激情视频| 性爱七区| 婷婷五月天视频免费在线观看| 国产精品扒开腿做爽爽爽A片唱戏 亚洲爆乳无码精品AAA片蜜桃 | 五月天婷婷在线播放| 亚洲中文字幕翔田千里| 这里只有精品在线免费视频| 婷婷丁香91综合| 99精品爱| 亚洲丁香婷婷| 色五月激情婷婷| 色婷婷精品视频在线播放| 天天综合社区| 婷婷五月色情| 久久人人九九| 五月婷五月婷伊人伊人五月婷|