国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

STM32F407 U盤升級Bootloader實戰(zhàn):從Flash分區(qū)到跳轉(zhuǎn)細節(jié)

STM32F407 U盤升級Bootloader實戰(zhàn):從Flash分區(qū)到跳轉(zhuǎn)細節(jié) 簡介面向中高級嵌入式開發(fā)者的STM32F407 Bootloader U盤升級完整工程源碼包基于ARM Cortex-M4平臺并帶FPU無需硬件編程器即可通過U盤更新固件適合物聯(lián)網(wǎng)節(jié)點、工業(yè)控制器等場景的固件維護與產(chǎn)品迭代。壓縮包內(nèi)有1509個文件以C源碼、H頭文件、TXT說明、S啟動文件、Icf鏈接腳本及工程配置文件為主覆蓋USB設(shè)備驅(qū)動、FAT文件系統(tǒng)、Bootloader跳轉(zhuǎn)、CRC完整性校驗等關(guān)鍵模塊整體僅9.55MB。目前已有1843人學(xué)習(xí)/下載。該工程可直接在STM32CubeMX基礎(chǔ)上打開提供完整可編譯的Bootloader與App工程結(jié)構(gòu)源碼中包含CC936編碼轉(zhuǎn)換、多系列HAL庫驅(qū)動和鏈接腳本便于理解固件升級全流程同時包含啟動文件與中斷處理實現(xiàn)可幫助開發(fā)者掌握Bootloader的安全機制和用戶交互設(shè)計快速移植到實際產(chǎn)品。 搞嵌入式開發(fā)這幾年固件升級這件事幾乎繞不開。早期做產(chǎn)品一般用串口ISP或者JTAG/SWD仿真器燒錄設(shè)備量小的時候還能忍等到產(chǎn)品鋪出去、用戶手里有幾十上百臺機器的時候才發(fā)現(xiàn)沒有可靠的遠程或本地升級手段售后成本會直接把你壓垮。后來我給STM32F407的項目加了一個基于U盤升級的Bootloader用U盤拷貝固件、插上設(shè)備、按鍵觸發(fā)升級整個流程幾分鐘就能完成現(xiàn)場維護人員不需要懂任何嵌入式知識也能操作。這篇文章就把這套方案的完整設(shè)計思路和實操細節(jié)整理出來涵蓋Flash分區(qū)規(guī)劃、USB Host底層配置、FatFS文件系統(tǒng)移植、Bootloader跳轉(zhuǎn)App的關(guān)鍵細節(jié)、常見問題排查等內(nèi)容。適合正在做STM32F407產(chǎn)品開發(fā)、需要給設(shè)備增加升級能力的朋友參考無論是剛接觸Bootloader的初學(xué)者還是已經(jīng)寫過Bootloader但跳轉(zhuǎn)總出問題的老手這篇文章都能給你一些可直接落地的經(jīng)驗。1. 方案拆解Flash分區(qū)與整體架構(gòu)設(shè)計1.1 Bootloader為什么要獨立存在先說一個最基礎(chǔ)的問題Bootloader到底是干什么的。很多初學(xué)者容易把它理解成一個“引導(dǎo)程序”其實更準確地說它是一個運行在應(yīng)用之前的、專門負責(zé)固件更新的小系統(tǒng)。它和App應(yīng)用程序是兩個完全獨立的固件分別編譯、分別燒錄各自擁有獨立的Flash區(qū)域和中斷向量表。選擇讓Bootloader獨立存在核心原因只有一個升級失敗時不能把設(shè)備變成磚頭。如果App直接覆蓋自身所在的Flash區(qū)域一旦寫入過程中斷電、固件文件損壞或者地址錯誤設(shè)備就徹底無法啟動了。而Bootloader常駐在獨立的Flash區(qū)域App隨便怎么折騰都不會影響B(tài)ootloader本身下次上電Bootloader依然能跑檢測到固件異常就等待重新升級。這就像給設(shè)備裝了一個“恢復(fù)模式”是工業(yè)級產(chǎn)品的基本素養(yǎng)。1.2 分區(qū)表設(shè)計與地址計算STM32F407有最多1MB的Flash不同型號容量不同但分區(qū)思路完全一樣。以最常見的STM32F407VET6512KB Flash和探索者開發(fā)板這類環(huán)境為例我習(xí)慣這樣劃分分區(qū)起始地址大小存放內(nèi)容Bootloader區(qū)0x0800000032KBBootloader固件App區(qū)0x08008000448KB應(yīng)用程序固件備份區(qū)可選0x0807800016KB固件備份或參數(shù)存儲這里有兩個關(guān)鍵點需要解釋清楚。第一Bootloader分配32KB是經(jīng)過考量的。STM32F407的Flash扇區(qū)大小為16KB前4個扇區(qū)和64KB后面的扇區(qū)32KB意味著占用扇區(qū)0和扇區(qū)1兩個16KB扇區(qū)這個大小寫一個支持U盤升級的Bootloader完全夠用。不建議把Bootloader只放在扇區(qū)016KB因為USB Host協(xié)議棧加FatFS文件系統(tǒng)加上基本的外設(shè)驅(qū)動16KB會非常緊張后面想加功能比如增加協(xié)議校驗、日志打印就會很被動。第二App區(qū)的起始地址不是隨意定的它必須是扇區(qū)對齊的。0x08008000這個地址正好是扇區(qū)2的起始地址因為前兩個扇區(qū)各16KB加起來正好是0x800032KB。只有扇區(qū)對齊后續(xù)用IAP方式擦寫App區(qū)時才能用扇區(qū)擦除不會誤擦到Bootloader的數(shù)據(jù)。1.3 為什么推薦雙分區(qū)A/B升級如果你做的產(chǎn)品不允許出現(xiàn)“升級失敗需要返廠”的情況建議直接上雙分區(qū)A/B方案。所謂A/B分區(qū)就是Flash里放兩個App分區(qū)一個運行、一個備份。升級時把新固件寫入備份分區(qū)校驗通過后切換啟動標志下次啟動直接運行新固件如果新固件運行異常比如看門狗超時沒有被及時喂狗系統(tǒng)回滾到備份分區(qū)繼續(xù)運行。A/B分區(qū)的代價是Flash容量要翻倍F407的1MB Flash版本如STM32F407ZGT6可以這么玩Bootloader占32KBA區(qū)448KBB區(qū)448KB剩余空間存參數(shù)和升級標志。如果芯片只有512KB FlashA/B分區(qū)就比較捉襟見肘了。這種情況下我更推薦“單分區(qū)備份標志”的簡化方案Bootloader檢測到App區(qū)異常通過固定位置的標志字判斷直接進入U盤等待升級模式避免變磚代價是升級過程中斷電需要重新升級一次但不會損壞設(shè)備。2. 硬件鏈路與底層配置USB Host FatFS2.1 STM32F407的USB OTG FS硬件設(shè)計要點STM32F407自帶的USB OTG FS接口在F407上是一個完整的外設(shè)不是那種需要外部USB轉(zhuǎn)串口芯片才能用的“USB”。它支持Host模式和Device模式做U盤升級需要在Host模式下工作也就是由STM32F407主動枚舉U盤、讀取U盤中的文件。硬件上要注意幾個細節(jié)。第一F407的USB OTG FS引腳是PA11DM和PA12DP不需要外部晶振USB收發(fā)器使用芯片內(nèi)部的48MHz時鐘這個48MHz時鐘來自PLL的輸出。所以時鐘樹配置時必須確保PLL能輸出48MHz給USB否則USB外設(shè)根本跑不起來。如果你用的是STM32CubeMX生成的工程在Clock Configuration頁面要把USB Frequency設(shè)置為48MHz這個選項不是自動的經(jīng)常有人忽略導(dǎo)致USB枚舉失敗。第二VCAP引腳必須接2.2μF電容。F407內(nèi)部USB收發(fā)器需要穩(wěn)定的1.2V參考電壓VCAP1和VCAP2兩個引腳不同封裝引腳位置不同各接一個2.2μF低ESR陶瓷電容到地。這里有個容易被忽視的坑有些山寨開發(fā)板把VCAP電容省掉了或者用了錯誤的容值導(dǎo)致USB信號質(zhì)量差插上U盤時能偶爾識別但經(jīng)常掉線、讀寫不穩(wěn)定。如果是自己畫板子VCAP電容的位置要盡量靠近芯片引腳走線要短。第三關(guān)于供電。F407的USB Host口要對外提供5V電源給U盤但F407本身是3.3V器件不能直接輸出5V。一般做法是使用一個USB專用電源開關(guān)芯片比如MIC2026-2BM或者AP2822通過F407的GPIO控制USB口的5V輸出。這個細節(jié)在開發(fā)板上可能已經(jīng)做好了但自己做底板時特別容易遺漏。如果直接短接5V電源到USB口每次插拔U盤的瞬態(tài)電流沖擊都可能干擾系統(tǒng)供電嚴重時直接復(fù)位。2.2 USB Host枚舉與HAL庫配置細節(jié)我使用的是STM32CubeMX生成的基礎(chǔ)工程配合STM32CubeHAL庫開發(fā)效率高很多。關(guān)鍵配置如下// USB OTG FS Host模式配置CubeMX圖形化配置的對應(yīng)代碼含義 hUSBHostHandle.Instance USB_OTG_FS; hUSBHostHandle.Init.Sof_enable DISABLE; hUSBHostHandle.Init.low_power_enable DISABLE; hUSBHostHandle.Init.vbus_sensing_enable DISABLE; // 不使用VBUS檢測引腳 hUSBHostHandle.Init.use_external_vbus DISABLE;這里面vbus_sensing_enable這個參數(shù)很有講究。如果芯片的PA9引腳沒有連接USB的VBUS檢測信號有些開發(fā)板沒引出來必須把VBUS sensing關(guān)閉否則Host模式初始化會卡死在等待VBUS有效這個環(huán)節(jié)上現(xiàn)象就是程序運行到MX_USB_HOST_Init()之后再也不往下走了。Host模式的枚舉過程對很多人來說是個黑盒但你不需要完全理解USB協(xié)議棧內(nèi)部的每個狀態(tài)只需要知道插入U盤后HAL庫的HCD_Process回調(diào)會經(jīng)歷設(shè)備連接、復(fù)位、地址分配、配置選擇等狀態(tài)最終進入枚舉完成狀態(tài)。代碼里做U盤檢測的邏輯很簡單就是輪詢ApplicationState這個全局變量// 主循環(huán)中的U盤檢測邏輯精簡示例 if (USBH_Status USBH_OK AppState APPLICATION_START) { // U盤枚舉成功可以進行文件系統(tǒng)操作 if (f_mount(SDFatFS, SDPath, 1) FR_OK) { // 掛載U盤成功進入固件檢測流程 CheckUpdateFile(); } }2.3 FatFS文件系統(tǒng)移植與文件讀取的坑U盤存儲的文件系統(tǒng)通常是FAT32或exFATFatFS這個開源文件系統(tǒng)庫就是用來干這個的。從FatFS官網(wǎng)ELM-Chan下載源碼后需要修改ffconf.h配置文件里的幾個關(guān)鍵宏#define FF_USE_LFN 1 // 使能長文件名支持 #define FF_VOLUMES 1 // 卷數(shù)量只掛載U盤一個卷 #define FF_MIN_SS 512 #define FF_MAX_SS 512 // 扇區(qū)大小U盤一般為512字節(jié) #define FF_USE_MKFS 1 // 如果需要格式化功能則使能第一個FF_USE_LFN尤其重要。默認情況下FatFS只支持短文件名8.3格式如果你的固件文件叫firmware_v1.2.bin這種名字沒開啟長文件名支持的話文件根本讀不到。我一開始就栽在這個坑里排查了半天驅(qū)動問題最后發(fā)現(xiàn)只是文件系統(tǒng)庫的配置項沒打開。文件讀取的核心操作其實很簡單f_open打開文件、f_read按塊讀取、f_close關(guān)閉文件。但在Bootloader環(huán)境里讀取的文件是要直接寫入Flash的所以需要按扇區(qū)來設(shè)計讀寫流程。一個扇區(qū)是2KBSTM32F407的Flash最小編程單位我通常每次從U盤讀取2KB數(shù)據(jù)做CRC校驗后寫入App區(qū)當(dāng)前扇區(qū)然后地址加2KB繼續(xù)下一次讀取。這樣U盤讀、Flash寫的進度是同步的固件文件完整讀完也就意味著固件完整寫完。3. Bootloader核心流程與代碼實現(xiàn)3.1 主流程按鍵檢測→U盤掛載→固件校驗→跳轉(zhuǎn)Bootloader的主流程設(shè)計直接決定用戶體驗我經(jīng)過幾個版本迭代后形成了下面這個穩(wěn)定可靠的狀態(tài)機上電后初始化時鐘、串口、LED、按鍵和USB Host外設(shè)。檢查一個特定的GPIO引腳狀態(tài)比如板載KEY0如果按下進入U盤升級模式LED快速閃爍提示。如果按鍵未按下檢查App區(qū)起始地址的前兩個字是否合法棧頂?shù)刂吩赗AM范圍內(nèi)、復(fù)位向量在Flash范圍內(nèi)合法則直接跳轉(zhuǎn)到App。如果App不合法比如空白芯片自動進入U盤升級模式。升級模式下等待U盤插入并枚舉成功。嘗試掛載U盤文件系統(tǒng)查找固件文件固定文件名如update.bin。讀取文件頭部的固件信息結(jié)構(gòu)體校驗?zāi)?shù)和長度。按扇區(qū)擦除App區(qū)、寫入固件數(shù)據(jù)實時計算CRC32校驗值。全部寫入完成后校驗CRC32是否匹配匹配則更新App區(qū)的啟動標志。提示升級成功延時后軟件復(fù)位進入新的App。這個狀態(tài)機的好處是每一步都有明確的成功/失敗判定不復(fù)位循環(huán)卡死。用戶插上U盤按一下按鍵剩下的交給Bootloader自動完成。3.2 固件文件格式與校驗策略直接從bin文件讀取數(shù)據(jù)寫入Flash看起來很簡單但有一個隱患怎么確認這個bin文件就是給當(dāng)前設(shè)備用的怎么確認傳輸過程中文件沒有損壞我的做法是在固件bin文件的最前面增加一個自定義頭部結(jié)構(gòu)體App編譯時通過腳本自動插入這個頭部U盤升級時Bootloader先讀取并解析這個頭部確認關(guān)鍵信息匹配后才繼續(xù)寫入。// 固件文件頭部結(jié)構(gòu)體固定16字節(jié) typedef struct { uint32_t magic; // 魔數(shù)0xA5A5A5A5用于快速校驗 uint32_t firmwareSize; // 固件實際大小不含頭部 uint32_t crc32; // 固件數(shù)據(jù)的CRC32校驗值 uint8_t versionMajor; // 主版本號 uint8_t versionMinor; // 次版本號 uint8_t platformId; // 平臺標識防止刷錯固件 uint8_t reserved; // 保留 } FirmwareHeader;文件中先放這個16字節(jié)頭部緊跟著是真實的固件數(shù)據(jù)。寫入Flash時跳過頭部直接寫固件數(shù)據(jù)到App區(qū)起始地址。全部寫完后重新讀Flash里的數(shù)據(jù)計算CRC32和頭部記錄的CRC32比對一致才認為升級成功。CRC32的實現(xiàn)可以直接用FatFS源碼里自帶的f_crc32函數(shù)也可以自己寫一個查表法實現(xiàn)幾百行代碼的事情。我建議把這部分獨立封裝成crc32.c因為Bootloader和App都要用比如App在啟動時也可以自行校驗自身完整性。3.3 完整代碼框架參考核心的升級執(zhí)行函數(shù)大致長這樣static uint8_t ProcessUpdateFile(void) { FIL file; UINT bytesRead; uint32_t flashAddr APP_START_ADDR; uint32_t wroteBytes 0; uint8_t buffer[2048]; FirmwareHeader header; uint32_t computedCRC 0; // 打開固件文件 if (f_open(file, update.bin, FA_READ) ! FR_OK) { return 0; // 文件不存在或打開失敗 } // 讀取頭部 UINT hdrRead; if (f_read(file, header, sizeof(FirmwareHeader), hdrRead) ! FR_OK || hdrRead ! sizeof(FirmwareHeader)) { f_close(file); return 0; } // 校驗?zāi)?shù)和平臺ID if (header.magic ! 0xA5A5A5A5 || header.platformId ! PLATFORM_ID) { f_close(file); return 0; } // 擦除App區(qū)假設(shè)App區(qū)跨多個扇區(qū) EraseAppSectors(); // 循環(huán)讀取并寫入Flash while (wroteBytes header.firmwareSize) { if (f_read(file, buffer, sizeof(buffer), bytesRead) ! FR_OK) { f_close(file); return 0; } if (bytesRead 0) break; // 文件提前結(jié)束 // 寫入Flash if (WriteFlash(flashAddr, buffer, bytesRead) ! 0) { f_close(file); return 0; } // 邊寫邊算CRC computedCRC updateCRC32(computedCRC, buffer, bytesRead); flashAddr bytesRead; wroteBytes bytesRead; } f_close(file); // 最終校驗CRC if (computedCRC ! header.crc32) return 0; // 更新啟動標志指示App區(qū)已有有效固件 WriteAppValidFlag(); return 1; }這個函數(shù)基本能直接搬進項目里用實際工程中還要加一些Flash操作失敗的重試機制、進度指示等。不過核心邏輯就是上面這套打開文件→讀頭部→校驗→擦寫Flash→校驗CRC→置標志。4. 跳轉(zhuǎn)細節(jié)與App端裁剪配置4.1 中斷向量表偏移是跳轉(zhuǎn)的第一道坎Bootloader跳轉(zhuǎn)到App大多數(shù)人第一次都會在這遇到HardFault。根本原因就一條中斷向量表沒有跟著App走。App在0x08008000地址運行但Cortex-M4內(nèi)核的中斷向量表默認還指向0x08000000Bootloader的向量表一旦有任何中斷觸發(fā)CPU從Bootloader的向量表取中斷服務(wù)函數(shù)地址執(zhí)行的是Bootloader里的中斷處理邏輯而你此時運行的是App兩者不匹配直接崩潰。解決辦法是在App工程的main函數(shù)最開頭設(shè)置VTOR寄存器// App工程main函數(shù)第一行 SCB-VTOR 0x08008000; // 偏移到App區(qū)起始地址這一行代碼必須在任何外設(shè)初始化之前執(zhí)行因為一旦使能了中斷、開啟了外設(shè)中斷隨時可能來這個寄存器還沒設(shè)好就完蛋了。4.2 Bootloader跳轉(zhuǎn)前的“清場”操作跳轉(zhuǎn)成功與否除了VTOR還取決于Bootloader跳轉(zhuǎn)前是否把外設(shè)“清干凈”。很多人寫B(tài)ootloader時直接在main函數(shù)末尾調(diào)用函數(shù)指針跳轉(zhuǎn)結(jié)果App起來后各種奇怪問題串口數(shù)據(jù)亂了、USB枚舉失敗、看門狗不斷復(fù)位。這些大多是Bootloader的外設(shè)狀態(tài)沒有完全關(guān)閉所致。完整跳轉(zhuǎn)函數(shù)要做三件事// Bootloader跳轉(zhuǎn)函數(shù)Clang/GCC風(fēng)格的寄存器操作寫法 typedef void (*pFunction)(void); static void JumpToApp(void) { uint32_t appStack *(volatile uint32_t *)APP_START_ADDR; uint32_t appReset *(volatile uint32_t *)(APP_START_ADDR 4); pFunction jumpFunc; // 1. 確認棧頂?shù)刂泛戏ㄔ赗AM范圍內(nèi) if ((appStack 0xFFF00000) ! 0x20000000) { return; // 棧頂非法不執(zhí)行跳轉(zhuǎn) } // 2. 關(guān)閉全局中斷 __disable_irq(); // 3. 反初始化所有已打開的外設(shè) HAL_UART_DeInit(huart1); HAL_USB_DeInit(hUSBHostHandle); for (int i 0; i 8; i) { HAL_NVIC_DisableIRQ(i); } // 4. 將SysTick計數(shù)器清零并關(guān)閉 SysTick-CTRL 0; SysTick-LOAD 0; SysTick-VAL 0; // 5. 設(shè)置MSP為App的棧頂?shù)刂?__set_MSP(appStack); // 6. 跳轉(zhuǎn) jumpFunc (pFunction)appReset; jumpFunc(); }這里面步驟2和4最容易忽略。關(guān)閉全局中斷是基礎(chǔ)但SysTick如果不關(guān)App啟動過程中SysTick還會繼續(xù)觸發(fā)而此時App還沒完成VTOR設(shè)置會用Bootloader的SysTick_Handler來處理輕則產(chǎn)生異常重則進HardFault。4.3 App工程編譯鏈接配置如果你的App是直接在原來的單工程上改的不區(qū)分Bootloader和App那這篇文章講的所有Bootloader都是空中樓閣。App工程必須做以下修改MDKKeil工程中Target → Options → Target → IROM1的Start地址改為0x8008000Size改為0x70000。IROM1起始地址必須和Bootloader的App區(qū)起始地址完全一致。如果不改這個配置編譯器默認把代碼放在0x08000000App燒錄后會覆蓋Bootloader區(qū)域上次升級成功的Bootloader直接被廢掉。另外還有一個使用RTOS比如FreeRTOS時比較容易忽略的點FreeRTOS的堆地址一般是鏈接器自動分配的通常在RAM的起始位置。跳轉(zhuǎn)Bootloader后RAM的低地址區(qū)域可能殘留Bootloader運行時的數(shù)據(jù)App的Stack指針指向低地址區(qū)域時可能會踩到這些殘留數(shù)據(jù)。不過由于App啟動時堆棧指針被重設(shè)到App棧頂這個問題一般不會出現(xiàn)真正要注意的是App里用了非易失性RAM備份、RTC備份域等特殊功能時需要確保Bootloader不訪問這些區(qū)域否則跳轉(zhuǎn)后數(shù)據(jù)沖突。5. 實測問題庫跳轉(zhuǎn)異常、枚舉失敗、升級半路夭折5.1 跳轉(zhuǎn)App后立刻HardFault的排查思路這是Bootloader開發(fā)中最高頻的問題。我總結(jié)了一套三分鐘定位法第一步確認VTOR偏移已經(jīng)設(shè)置且在任何中斷使能之前。最簡單粗暴的驗證方式是在App的main函數(shù)第一行加個LED翻轉(zhuǎn)如果HardFault發(fā)生在LED翻轉(zhuǎn)之后說明問題不在VTOR在后面的初始化如果LED根本沒閃那問題大概率是VTOR沒設(shè)或者設(shè)晚了。第二步確認跳轉(zhuǎn)時的函數(shù)指針正確。打印App區(qū)的第一個字棧頂和第二個字復(fù)位向量對比編譯生成的.map文件確認和編譯結(jié)果一致。棧頂?shù)刂窇?yīng)該是0x20000000到0x20020000之間F407VE有128KB RAM復(fù)位向量應(yīng)該在0x08008000到0x0807FFFF之間。第三步檢查跳轉(zhuǎn)前是否關(guān)閉了全局中斷和SysTick。這一步很多教程沒提但我實測遇到過一個詭異現(xiàn)象跳轉(zhuǎn)后串口正常打印、LED正常閃爍但是USB完全無法工作反復(fù)排查發(fā)現(xiàn)是Bootloader在跳轉(zhuǎn)前沒有關(guān)閉USB Host中斷導(dǎo)致USB中斷狀態(tài)殘留App初始化USB時中斷標志異常永遠等不到中斷觸發(fā)。5.2 文件名讀不到先排查長文件和大小寫FatFS默認的FF_USE_LFN是0也就是不支持長文件名。如果你把固件文件命名為my_firmware_v2.0_2025.bin在Bootloader里f_open一直返回FR_NOT_FOUND。我建議在ffconf.h里把FF_USE_LFN改為2使用堆棧分配緩沖區(qū)同時把FF_MAX_LFN設(shè)為64。還要注意一個細節(jié)如果U盤是NTFS或者exFAT格式FatFS需要使能FF_FS_EXFAT?,F(xiàn)在新買的U盤出廠可能默認exFAT這是導(dǎo)致“U盤明明有文件卻打不開”的另一個常見原因。測試時盡量用FAT32格式的U盤如果必須支持exFAT記得在配置文件里打開對應(yīng)宏。這個我吃過一次虧給客戶演示時隨手拿了一個新U盤插上去掛載失敗場面一度非常尷尬。后來我把U盤都改成FAT32同時在Bootloader里加了exFAT支持雙保險。5.3 拔插U盤導(dǎo)致系統(tǒng)卡死或重啟U盤運行時電流波動很大如果你直接從LDO輸出給USB口供電讀文件時瞬間電壓跌落會觸發(fā)F407的BOR復(fù)位表現(xiàn)為升級過程中設(shè)備突然重啟。解決辦法是在USB口5V端增加一個220μF電解電容和0.1μF陶瓷電容并聯(lián)為U盤瞬態(tài)電流提供緩沖。另外如果USB口電源開關(guān)芯片的過流保護閾值過低U盤啟動時可能觸發(fā)過流保護導(dǎo)致電源被切斷。我用的MIC2026限流閾值是500mA普通U盤工作電流一般在100-200mA啟動瞬間可能到300mA左右余量是夠的但如果U盤本身有問題或者容量很大的機械U盤現(xiàn)在很少見了還是可能觸發(fā)保護。真遇到了就換一個品牌靠譜的U盤測試別在這個問題上死磕硬件。5.4 常見問題與對策速查表現(xiàn)象可能原因排查/解決方向上電后不進入U盤升級模式GPIO按鍵檢測邏輯錯誤App區(qū)標志判斷異常檢查按鍵GPIO配置和觸發(fā)電平檢查App區(qū)合法性判定邏輯USB枚舉失敗U盤燈不亮48MHz USB時鐘未配置VBUS檢測關(guān)閉不徹底硬件供電問題檢查CubeMX時鐘樹USB Frequency是否為48MHz檢查VBUS sensing配置測量USB口5V電壓f_mount掛載失敗U盤格式不支持FatFS配置不匹配確認U盤為FAT32或exFAT檢查FF_FS_EXFAT、FF_USE_LFN等配置固件寫入后跳轉(zhuǎn)失敗寫入的固件地址偏移有誤固件本身有CRC問題VTOR偏移沒設(shè)置核對App編譯鏈接地址檢查CRC校驗流程確認VTOR設(shè)置位置升級到一半斷電Flash數(shù)據(jù)不完整App區(qū)被標記為有效寫入完成后統(tǒng)一置“升級完成”標志使用雙標志寫完成校驗通過App運行中看門狗復(fù)位跳轉(zhuǎn)前看門狗沒有關(guān)閉跳轉(zhuǎn)前調(diào)用HAL_IWDG_Init并停止喂狗或者直接關(guān)閉IWDG時鐘5.5 關(guān)于“Device must be bootloader unlocked”的提示STM32F407在調(diào)試時如果使用ST-Link/J-Link直接燒錄Bootloader后再通過調(diào)試器連接App部分調(diào)試器會提示Device must be bootloader unlocked或類似信息。這通常是調(diào)試器的保護選項ReadOut Protection被開啟了。在STM32CubeProgrammer里做一次Full Flash Erase并關(guān)閉讀保護Level 0就能解決。這個和主題相關(guān)性不大但是很多人會同時遇到順手提一下。寫B(tài)ootloader最大的體會是硬件平臺千差萬別但設(shè)計思想是通用的。你在這套STM32F407方案里學(xué)到的分區(qū)規(guī)劃、跳轉(zhuǎn)時序、文件系統(tǒng)對接、校驗機制換到其他MCU比如STM32F103、GD32、甚至英飛凌的AURIX思路完全一樣。U盤升級只是眾多升級方式里的一種但它的可靠性、易用性和部署成本在中小批量產(chǎn)品中優(yōu)勢明顯值得每個嵌入式工程師掌握。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲色图欧美色图在线播放| 欧美性巨大╳╳╳╳╳高跟鞋| 日韩黄片影院| 视频国产精品未满十八禁止在线观看| 99色视频| 黄呦呦在线| 亚洲限制级在线| 亚洲色资源| 无码操逼天堂| 亚洲男人天堂手机版| 91处女在线观看| 欧美日韩黄片精品在线| 思思热免费在线视频| www欧美性爱| 91色综| 日韩国产品视频中文字| 78久久久| 91欧美网| 天天激情干| 99热99色| 亚洲双插| 熟妇xxxxx性春色| 偷看洗澡一二三区美女| 精品人妻二区三区| 另类专区加勒比| 亚洲97资源| 黄片视频观看| 欧美色五月| 国产极品久久久| 欧美日韩不卡传媒| 青青免费在线视频一区| 亚洲综合精品国产一区| 久久久工口| 呻吟 欧美 日本 中出| 91色宗合| 亚洲精品一区二区三区在线播放| 久操高青| 亚洲高清色综合| 翔田千里一区二区三区奶水| 97久久精品国产| 高清视频一区| av天堂5| 日本精品免费一区二区三区四区| 家庭乱伦麻豆| 九九色婷婷| 天天天天做夜夜夜夜做| 高清国产精品福利网站| 五月丁香六月婷综合成人综合 | 亚洲综合113页| 加勒比性爱成人在线| 天天看天天日| 蜜色网色哟哟| 久久九九97| 国产情侣自拍在线播放| 性欧美精| 国产aⅴ无码片毛片一级网站| ,国产乱人伦精品一区二区三区| 亚洲性刺激| 九月丁香综合网| 日日黄色三级网站| 国产AAAAAABBBBB| 中文字幕视频在线观看一区二区| 少妇久久久久久久| 青青草日逼视频| 午夜毛片亚洲精品片国产久久久| 国内三级自拍小视频在线观看 | 亚洲国产精品成人综合| 9999亚洲电影| 国语对白在线播放视频| 欧美女同在线| 亚洲图片偷拍视频区| 日韩不卡网操逼中文字幕日韩| 欧美日韩性爱电影在线| 麻豆伊人网| 精品美女久久久久| 欧美天天综合站| 日本成人A片免费看| 亚洲人妻熟妇三十三区| 欧美性爱第一区| 干B| 久久透逼视频| 色老牛| 黄色AAAAA欧美| 天天射夜夜| 逼逼逼逼操操操操操操操操操午夜剧场| 久久久久ab| 国产女人和拘做爰视频 | 97干97色| 久久9 9 9精品| 中文字幕日韩精品久久| 欧洲精品久久| 亚洲色婷婷| 国产97免费视频| 亚洲 91 在线| 日韩精品一区二区高清| 影音先锋一区二区在线资源| 极品美女福利在线观看| 人妻少妇无码| AV中文在线可看| 另类天堂| 亚洲一二三| 超碰成人最新最好看| 色哟哟av| 亚洲有薄码区日本系列中文字幕| 9国产超碰| 精品国产乱码久久久兰草影视| 久久性爱大全| 九九九九免费| 日韩精品9999| 五月丁香综合网| 亚洲无 码A片在线观看麻豆| 久久999久| 日本视频在线观看污污污| 91久久久久| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 久久久精品九| 久久综合精品一区二区三区| 国内毛片无码一级毛片| 国产女大学生AV| 91美女視頻| 国产成人网站在线观看| 无码久久国产| 99国产精品自在自在| 99热综合| 激情五月天插| 91福利网在线观看| 久久 久久国内精品亚洲| 99热只有| 少妇无码av专区线| 91精品人妻一区二区三区蜜桃| wwe 天天干.com| 看黄片视频免费| 亚洲 在线| 天堂麻豆天美| 台湾佬激情综合| av在线免费一区二区| 亚欧美综合网| 亚洲AV不卡在线观看| 又黑又大又粗 | 久久久久久久久久久六六| 精品成人无码| 欧美中出| 久久超碰天天| 日影院久久婷婷夜夜网| 内射中出日韩在线观看视频| 熟女被操视频网址| 岛国黄| 日日爱99| 亚洲天堂另类| 欧美洲精品一级| 麻豆 欧美 日韩| 黄aaaaaaaaaaaaaaaaaa色网站| 美国日韩黄片| 欧美美女视频| 精品人妻一区二区免费看| 久啪| 麻豆黄四叶草网站| 亚洲国产奇米影视久久| 激情小说亚洲| 欧美色人| 国产综合久久久麻桃个| 超碰 国产熟女精品一区| 91色噜噜狠狠| 97天天爽| 九九av| 欧美黄片欧美黄片xxx| 你懂的在线观看区国产| 四虎免费在线观看| 东京成人一区| 老熟女91av| 无码99| 无遮挡猛进视频免费无限观看| 翔田千里一区二区三区奶水| 成人无码电影在线观看网| 97精品久久| 校园激情狠狠四射| 大逼色网站| 中文字幕免费看| 亚洲有码第一页| 日本加靬比网站发布页| 黑人中出21连凳花野真衣| 午夜精品久久久久久久男人的天堂 | 强奸乱伦麻豆| 久草视频分类在线| 国产一区二区欧美日本| 欧美99热| 国产67194| 色九久| 婷婷色影院| 91亚州日韩高清| 性色高清..……| 偷窥自拍亚洲| 天天影视色香色欲| 久久精品一区二区三区不卡| 日韩免费性爱视频在线观看| 国产乱伦性爱AV| 极品尤物女神在线观看| 九色黄站| 国产偷人伦激情在线观看| 亚洲熟女人妻中文字幕一区二区| 欧美色乱| 91狠狠| 欧洲与亚洲欧美精品中文字幕| 中文字幕丝袜人妻| 亚洲精品 超碰| 日本一片一区| 麻豆国产成人精品| 黄站在线免费观看| 国产久久天堂资源| 91色狼| 日本熟妇浓毛hdsex| 国产免费一区2区3区| 亚洲天天在线| 国产日韩欧美操逼视频| 五月天大香蕉| 色999人与兽| 日韩人妻操B| 国产suv精品一区二区四区999| 久久久久久久 九九九九九九九 | 成人天天看站长推荐| 久久骚少妇| 无码人妻系列少妇| 日本二三四区| 欧美日韩另类在线| 你懂得91| 操九九九九九九| 蜜桃不卡一区二区| 欧美第二页午夜| 欧美自拍网| 亚洲天天在线| 国产日韩欧美中文在线播放| 激情综合网五月婷婷五月天| 亚州精人品大香蕉| 黄总AV色图| 美女网站黄页| 日本一级特级毛片视频| 精品高清一区二区三区三州| www.色综合| 日本曲间由美性生活片| 色偷综合| 无码人妻1727| 久久成人午夜精品影院| 嗯嗯嗯好爽| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 欧美啪啪天堂| 日本阿v天堂在线观看| 欧美激情另类一区二区| 一区二区三区精品黑丝白丝酒店对鸡| 国产盗摄美女如厕大神作品在线观看| 欧洲站一级二级三级h| 97精品网| 狠狠色婷婷777| 久久少妇视频| 97免费在线观看| 高清成年美女黄网站免费大全| aaa一级黄片| 丝袜喷水在线| 青青草色AV| 超碰在线人妻中文字幕| 狠狠色色| 91精品国产乱码| 亚洲加勒比久久日本道| 国产 热久久久久国产精品| 日日日日日| 国产日韩人人| 偷拍 亚洲 欧美| 亚洲高清国产理伦片| 日韩精品国产精品五码一区二区| 干B| 91另类| 无码免费精品高清| 久久大线蕉一区| 999热这里只有精品| 99精品欧美一区二区三区桃色| 天天综合网站| 超碰97首页| 精品高潮| 97婷婷色| 激情情色五月天| 色欲久久久久综合网| 爱射综合| 偷拍亚洲情色| 91成人在线免费视频| 99国产在线绯色一区| 91插B网站| 正在播放国产精品一区| 国产精品视频电影| 中文字幕国产精品1区| 天天综合欧美黑人| 欧美日韩操逼嗦吊| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊 | 天操天操夜操夜月月年年操操| 97超碰人人模人人拍人人| 丁香五月天激情| 欧美 亚洲 91| 岛国免费黄色网址| 9热9热综合网| 超碰色综合| 五月天色综合| 亚洲图片欧美偷拍| 日韩人妻无码专区| 久久女人| 中文字幕欧美日本乱码一线二线 | 色色色网站| 四虎影视永久在线观看精品免费网站| 日本免费一级AAA大片器| 欧美另类色| 校园春色五月天| 久久综合九九| 综合色欧美| 超碰人人草| 精品人妻高清麻豆av| 国产剧情AV不卡在线观看| 亚洲欧洲第二视频在线观看色图| 国产欧美精选自拍一区| 成人精品欧洲亚洲| 精品国产人成在线| 欧美熟女丝袜| 围产精品一区二区三区视频播放| 国产性爱欧美性爱在线| 久久激情亚洲精品无码?V| 91综合国产精品| 日韩图区 偷拍| 日本淫穴在线| **一级毛片国产| 亚洲一二三四区在线免费看视频| 久久精品国产亚洲AV成人直播| 蜜桃一区二区三区| 中文一区在线视频| com 首页 18岁 禁区 女优 免费 精选 同城 | 桃色人妻在线视频| 国产一级操B视频| 4虎在线视频| 亚洲一区二区三区四区视频| 蜜臀久久精品久久久久视频| 色欲天天综合网| 欧美熟妇色| 草草影院在线视频| 都市久久精品激情亚洲| 欧天美中出| 国产 v乱码一区二| 欧美92| 欧美综合站| 国产精品女aA片爽爽视频| 91色五月俺来也| 操人人| 亚洲伊人久久精品影院| 天天插天天操| 久久91| 97久久久精品| 自拍偷拍2025在线观看| 人妻一区二区三区熟女| 99re8超碰| 国产 热久久久久国产精品| 亚洲欧美视| 长长久久88视频| 日本孕妇一区二区视频操逼免费看 | 久艹99| 色综合色色| 久久大| 97爱b| 99热超碰在线| 久久久久久电影| 婷婷五月天色网| 青青操青娱乐| 乳欲人妻办公室奶水| 一区二区三区一亚洲中文字幕、综合区灬| 后入 亚洲 美女 射| 少妇一区二区三区高速| 欧美丝袜91| 午夜呻吟欧美| 欧美综合区| 加勒比综合| 91影视亚洲| 开心五月天激情网| 精品少妇人妻av久久免费| 91欧美情色| 91美女视频在线| 乱老女人一区二区视频| 老外又粗又长一晚做五次| 欧美,亚洲,日韩,v,天堂,手机在线观看 | 91精品久久久久五月天精品| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 风月影院男女十八禁| 天天操夜夜操| 天天综合网日韩7799| 极品肉射| 欧美精品亚洲精品日韩传电影| 天天综合网国产| 免费作爱一级视频| 欧美精品二区视频在线| www.人人摸在线视频| 五十路熟女工口 | 欧美成va视频网站| 日本色色视频网站| 91亚洲人| 91色射| av亚洲天堂资源网站| 97在线精品| 性久久| 91这里只有精品| 欧美综合狠| 欧亚第一综合网| 亚洲一区二区麻豆影院| 欧美视频一区二区在线| 强奸乱伦免费网站| 日本人妻最新在线中| 爱丝福利| 亚拍在线| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 噜噜吧,噜噜色,噜噜| 国产久久成人| 欧美真人抽搐一进一出gif| 亚洲欧洲综合| 日本熟妇自慰性高潮一区二区三区| 超碰97玖玖爱| 日夜久久久九九九久| 91爽啪| 国产无马av| 亚洲成a人片在线观看中文!!!| 国产又黄又粗又猛大片| 在线不欧美| 免费视频观看60秒| 后入式999| 二三四区精品| 北京美女一区二区| 午夜精品久久久久久久99热影院 | 亚洲一区二区三区在线激情| 欧美高清第一页| 亚洲一区二区av| 久久激情四射婷婷丁香五月天| 操淫穴亚洲五月丁香| 欧亚不卡| 成人综合网 欧美| 视频在线观看一二三区| 日本天堂网| 精品国产自在在线99| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 婷婷爱五月| 婷婷久久综合久| 动漫爆乳3D奶水一区在线观看| 亚洲欧美日韩精品久| 岛国大片在线观看网站入口| 国内精品久久人妻性色av| 国产肏逼网站| 翔田千里Av在线| 国产精品人人爽人人做可爱福利| 老司机深夜18禁污污网站| 中国AAAAAA黄色片| 久久久久久久久久久免费精品| 亚洲码在线中文在线观看| 日韩成人高清一区二区| 蜜乳视频网站| 国产精品亚洲无码| 成人激情无码在线视频| 午夜电影在线观看无码专区| av日韩在线观看电影| 很很热性爱视频| 国产粉嫩出水在线播放| 丁香婷婷啪啪| 天美传媒国产原创中文字幕亚洲欧美另类| 成 人 影视 一区 二区 三区 四区| 久久免费中文字幕在线观看| 成人网欧美风情| 60秒免费小视频| 啊嗯嗯啊好大好爽| 日本大香蕉综合网红本杳社区| 人妻少妇精品久久久久久| 91日韩国产欧美亚洲另类精盘州至城都| 激情欧美97| 视频国产欧美在线播放| 丁香九月 婷婷| 91爆操视频| 久久性视频| 国产11页| 小骚逼被操的爽不爽| 久久久久久裸体| 中文字幕视频二区| 永久电影三级在线观看| 亚洲日韩美女中文字幕乱| 日本污ww视频网站| oumeisetu综合| 99热导航| 欧美丝袜91| 国产成年女黄特黄| 天天操天天干一区二区 | 97欧美性爱| 五月婷婷色| 91在线限制级| 欧美精品亚洲精品日韩传电影| 亚洲男人的天堂va亚洲男人社| 欧美成人性爱视频在线播放| 亚乱色| 91人妻爽爽人人做人人澡| 亚洲综合图文| 亚洲色棕合| 天天看天天日天天操| 国产亚洲精品av一区| 五月丁香影院| 亚洲欧洲久久天堂| 久久久不卡| 伦激情人妻另类人妻| 最新国产精品久久精品| 97 超碰 人人做 人人爱| 人妻大香蕉| 亚洲美女AV无码| 九九久久一区二区伦理| 淮穴色AV| 99福利社| 亚洲av综合伊人久久| 精品-91人妻子系列| 天天香香欲综合| 怡红院网站在线视频| 91AV入口| 欧洲色色| 午夜精品久久久久久久| 亚洲av噜噜噜噜噜噜| 久久久久国产精品片区无码直播| 91男女啊啊啊| 熟女高潮精品一区二区| 免费观看国产小粉嫩喷水精品午| 人妻天堂综合网| 91网站在线播放| 97精品一区二区视频| 99久久综合| 是还免费视频1727我| 国产美女高潮| 丁香六月啪啪| 国产精品久久久久久夜夜夜夜| 亚洲熟妇一,二,三期| 免费一级毛片在线视频观看| 蜜臀久久99精品| 视频不卡中文字幕| 久热无码| 欧美一品道| 国产精品原创巨作?v网站| 久久久久成人蜜桃精品| 日日97| 国产精品宅男免费| 性爱欧美五月| 国产v片在线免费观看| 三级三级三级日本99| 人人爽夜夜玩视频| 狠狠操夜夜| 色女综合| 日本伦乱九九九综合| 蜜桃视频精品一区二区| 91在线观看,天天综合| av午夜影院在线播放| 97超碰天天爱天天爱| av影片在线观看不卡| 婷婷五月天社区| 天天日天天干天天摸天天操| 日本色色色视频| 亚洲自拍欧美色综合| 久久精品国产亚洲妲己影视| 4141514逼喷水三级片| 中文字幕欧美丝袜07资源| 九月丁香婷婷| 亚洲欧美骚| 色婷婷九月| 大香蕉手机在线| 黄片在线免费在线观看| 九99久久| 免费综合亚洲中文| 夜夜国自区| 日韩AV一起草| 久久久免费高清中文视频| 精品少妇人妻一区二区三区| 免费伦费视频在线观看| 伊人色综合欧美| 日本成人电影资源网| 天天射夜夜| 无码精品一区二区三区潘金莲| 六月婷婷一区二区三区| 国产亚洲日韩在线三区黑人| 97精品97久久| 久草免费在线一区二区| 中出20p| 99re久久| 五月天亚洲色图| 97视频网站在线观看| 国产91精品在线免费| 麻豆天美电影一区二区| 欧美性爱第一页久久| 青青草精品| 亚洲国产成人福利在线观看| 97国产精品久久久久| 亚洲四虎熟女精品| 狠狠爱夜夜| WWW4虎| 欧美爱三级日韩久久| 97精品久久久久中文字幕| 日本一区二区不卡精品| 大茄子熟女AV导航| 亚殴在线| 中日亚韩免费视频| 成人情色综合网| 夜夜一区二区| 女欧美一区二三区| 欧美日韩美女精品久草一区二区三区| 欧美婷婷五月天| 亚洲欧美天堂| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 影音先锋每日最新资源在线观看 | 精品伊人久久久大香线蕉小说| 精品在线78| 99热超碰| 亚洲欧洲精品视频发布| 91 偷| 欧美熟妇精品黑人巨大一二三区| 韩日性爱av| 伊人九九| 躁躁日曰躁2020| 91精品无码人妻系列| 97超碰9| 人妻大相焦在线| 8050无码八戒| 亚洲中文字幕熟女| 国产热av| 刺激性视频黄页| 女人 A一级| 色97干| 亚洲熟女乱综合一区二区三区| 婷婷色播婷婷| 日韩成人精品| 大粗鳼巴久久久久| 日本不卡二三区| www久久久| 八戒无码国产午夜福利| 日本幼女18+| 麻豆人妻少妇在线免费观看| 91色色色| 中文字幕国产| 大香蕉78| 久久久国产护士丝袜美腿一| 伊人久久国产免费观看视频| 久操不卡视频| 26uuu国产亚洲综合| 春色91| 天天摸夜夜操视频| 亚洲 图片 综合91| 国产强奸超碰AV| 亚洲国产精品成人综合| 亚洲欧美在线丝袜| 人妻熟妇久草在线| 91视频观看网站| 国产精品秘 福利姬在线观看| 欧美日韩*字幕一区| 肥佬影院91| 任我爽在线视频免费观看 | 日本人妻A片成人免费看片| 亚洲h片在线免费观看| 九九热av| 97视频在线观看网站| 久久国产精品,久久国产| 狠狠色婷婷7777久| 欧美东京热精品A∨| 中文字幕高清精品一区| 青青操在线亚洲视频观看欧美在线 | 九七毛片九九毛片| 97硬碰| AV中文在线可看| www.色婷婷色综合| 八人操人人摸人人看| 亚洲性爱成人| 欧美黄页| 热热色91| 夜夜嗨一区二区三区直播内容| 任我爽在线视频免费观看| 91久久久视| 夜夜夜久久| 欧美久久九九| 色色色综合| 精品超碰国产| 天天干天天操天天干天天操| 亚洲第一狼人丝袜美女另类| 色在线综合| 日韩一级久久毛片| 91处女在线观看| 性猛交| 9久久久久| 久久香蕉国产线看观看亚洲女人 | 日韩乱中文| 这里只有精品视频在线观看麻豆| 精品国产91内射久久| 沈阳熟女高潮对白视频| 日韩在线国产字幕| 亚洲综合97| 91啪啪| 久久中出| 91精品人| 国内亚洲高清无码| 一本色道无码DVD中文字幕| 国产后入| 精品无码欧美三级| 97无码视频在线播放| 日本一道在线播放高清| 国产精品ww久久| 亚洲欧美日韩偷拍色图| 中文一区二区三区影院| av亚欧| 亚洲在线网站| 欧美伊人久久综合网| 久久透逼视频| 天天躁日日躁xxxxx| 久久无码成人| 强奸乱伦AV网站| 欧美视频一区二区在线| 国产精品一区二区 尿失禁| 黄片无码在线制服| 亚洲日韩精品在线播放| 欧美色五月| 蜜臀久久99精品久久久久久久久| 大香蕉在线视频15| 激情图片亚洲色图| 国产精品久久久九九九| 激情婷婷丁香| 三及片网站| 男人天堂网址| 一级片在线观看高清无码| 久久网亚洲| 天美传媒麻豆一区二区三区国产精| 97超碰超| 日韩有码 一区二区三区| 日本成人A片网站| 色爱三区| 国产后入精品| 97人亚洲综合字幕| 天美传媒av在线| 国产丁香精品露脸视频| 久久久久久久精| 不卡中文字幕aⅴ在线| 免费伦费视频在线观看| 91久久久久久久久18| 99丝袜福利在线播放| 干b在线性社区| 中文字幕免费看| 91 丝袜在线播放| 国产黄色在线播放观看| 亚洲欧美国产成人综合不卡| 丁香五月成人| 韩国三级三级BD在线| 久操| 国产后入| 日本性爱不卡视频| 精品超碰中文在线| av72网| 亚洲男人在线观看天堂| 天天射天天| 最新国产精品久久精品| 久久久久久久少妇| 青久久| 亚洲精品一区二区日本| 黑人无码一区二区| 荡小穴在线观看| 久久精品视| 亚州综合网| 国产真实野战在线视频| 欧美日日网| 大屁股熟女一区二区三区| 97天堂| 唐山老熟妇露脸啪啪叫| 九九九网页| 白嫩妹子国产骚| 国内精品嫩模A∨私拍小视频| 青草青草久热| 97硬碰| 欧美日韩狠狠爱| 思思热久久成人| 欧美 亚洲 制服 精品| 欲色啪| 中文字幕第9页萱萱影音先锋| 爽 好舒服 无码刺激久久| 丝袜喷水在线| 欧美78P| 中国女人内射6XXXXX| www老逼91| 亚洲高潮影院| 93人人操人人| 97资源欧美| 97在线免费看视频| 每日更新AV| 亚洲精品国产精品乱码不卡| 天天综合~91| 国模精品一区二区三区苹果色戒| 久久爽爽精品| 日韩欧美亚洲自拍偷拍| 国产成人网| 日韩精品影视| 国产在线激情视频| 国产九九久久久精品| 欧美色图欧美| 欧美精品久久久久久久久88| 高跟伊人julia ann| 水多多映视AV| 激情五月天婷婷| 91久热| 成人无码影片视频在线| 久久一二三四不卡 | 精品少妇一区二区三区在线视频| 99蜜桃臀久久久欧美精品网站| 日韩性爱一级片| 又黄又爽在线观看视频| 亚洲第一视频 欧美风情 日韩| 99re公开精品免费视频| 亚洲欧洲无码97久久精品| 久久久少妇| 97色色网| 天天性射网| 综合 欧美 亚洲 日本| 射欧美综合| 丝袜美腿亚洲| 欧美综合骚| 不卡在线观看视频| 欧美99热| 99热精品在线观看| 在线可观看的黄色网址| 亚洲的天堂网| 91精品久久久久五月天精品| 青青草在线视频欧美| 亚洲一卡二卡在线免费| 国产成人资源| 日韩一级二级三级免费看完整版| 亚洲激情在线| 熟女91网站| 日本 欧美 国产一区| 91色射| 欧美性爱第一页久久| 天天干天天日天天射黄色大片| 日本成人在线不卡一区二区三区| 人妻少妇色综合| 日韩在线电影| 在线只有精品| 啊啊啊啊好爽好舒服一区二区易域| 日韩AV熟女乱伦| 日韩欧美麻豆 | 91久久久老司机| 欧美性爱18观看| 日韩精品9999| 日本黄大片在线观看视频| 粉嫩国产精品久久粉嫩| 又大又大又大又粗爽高潮观看| 长长久久88视频| 试看60秒 爽| 亚洲天堂人妻一区二区| 12一15性XXXX粉嫩国产| 中文字暮97| 黄片www视频免费| 亚洲欧洲精品成人| 欧美综合国产精品久久丁香| 福利天堂| 国产熟女免费观看久久| 欧美精品不卡一二三四在线91| 日本九九九九| 加勒比综合在线| 射 色综合| 乱欲视频| 欧美青青视频| AV免费在线播放一区| 日本在线999| 暖暖精品二区三区观看| 日本操逼aaaaa| 91国产在线精品| 亚洲成人性爱在线观看| 熟妇人妻丰满久久久久久久无码| 九色 人妻 大香蕉| a男人的天堂久久一级A毛片| 欧日韩在线观看| 欧亚性爱啪啪| 蜜臀久久99精品久久久久久-DVD| 久热伊人99re| 91在线视频免费播放| 日本布卡一区二三区| 男人的天堂亚洲| 摸奶性爱视频网站在线免费播放| 青娱乐手机日韩在线视频| 精品超碰国产| 中文字幕av亚洲精品| 动漫区日韩区欧美区| 欧亚在线视频| 天天做天天爱| 久久一本大香蕉| 日日爽夜夜爽| 婷婷伊人五月| 91色人| 日韩AV一区二区三区四四| 日韩激情啪啪啪| 人妻夜夜爽天天爽麻豆三区网站 | 综合免费无码中文| 欧美综合 站| 国产精品97超碰| 婷婷五月天激情小说| 在线日韩日本亚洲国产| 大香蕉九九| 色哟哟AV| 三级三级三级日本99| 欧美爆乳精品一区二区| www.人人摸在线视频| 国产成人亚洲精品自产在线 | 久热这里| 啊啊啊啊啊啊好多水| 打av高清| 视频国产精品未满十八禁止在线观看| 精品二999| 静品嫩模一区二区| 97超碰超| 亚洲瓯美色图| 在线观看色视频| 国产精品毛片| 欧美综合站| 99热婷婷一区二区三| 偷拍欧美激情| 一类无码操逼视频| 91欧美丝袜| 日本人体九九九九九九| 人妻献身系列第54部| 日韩精品电影| 日本片日本片祼观看网站在线看中文版网页在线看 | 精品妇女一区二区三区| 欧美精品23| 久湿久久| 日本曲间由美性生活片| 大香蕉乱级| 久久精品国产97欧美精品亚洲 | 欧美日韩亚洲国产中文永久天天看| 色婷婷影视| 人妻一区二区三区四区视频| 午夜精品人妻二区三区| 看日韩操逼| 久久久久亚洲Av无码专区老牛影视| 国产视频大全| 九热视频| 激情五月天插| 亚洲黄色AV电影| 欧美性暴力猛交XXXX | 99蜜桃臀久久久欧美精品网站| 婷婷综合五月| wwwxxx日本爽| 午夜经典| 99久热精品99re6热| 操逼1区| 亚洲色图图片| 国模吧 一区二区三区| 78超碰| 夜夜青青无码影院| 国产免费大片| 人人摸人人摸人人干| 欧美v日韩v亚洲v最新在线| 在线小视频| 91九色丨国产丨爆乳| 色999五月色| 伦激情人妻另类人妻| 伊香蕉综合久久久久久久噜噜噜 | 亚州熟妇精品| 天天影视色香色欲| 久久一级无码精品毛片6| 中国AAAAAA黄色片| 久热这里| 色天堂在线观看| 麻豆人妻精品一区二区| 日韩激情小说一区二区| 新亚洲无码| 国产2.3.4区| 91 丝袜在线观看| 激情露脸爱| 9久精品| 久久久久久精品免费看A级| 日韩中文字幕视频| 2017天天插| 九九九九一区| 久草男人天堂| 无码一区二区三区四区五区六区七区八区九区十区视频 | 亚洲91大片| 久插综合| 真实高潮91| 久久久网站| 国产成人精品日本视频| 亚洲成人性爱网站在线播放| 亚洲国产熟妇综合色专区| 偷拍新久久| 欧美高潮| 亚洲第一色页夜| 色999偷自拍拍| 国产激情视频在线观看| 手机看片1024你懂的国产| 操逼啊啊啊91| jizz啪啪| 日韩精品资源专区二区| 亚洲精品久久久久毛片A片拉屎 | 亚洲 欧美都市激情| 91九九| 激情五月天婷婷| 能直接看AV的网站| 亚州AV无码国产精品| 国产真实子伦对白| 97碰| 国产91福利小视频在线观看 | 青青草大香蕉在线视频| 日本在线一二| 日韩精品99999| 色爱综合网| 五月婷婷基地| 五月天婷婷小说| 五月婷婷深深爱| 五月婷婷AV| 色色五月婷| 五月综合色| 丁香婷婷色五月| 99热| 日韩草久视频| 在线黄页看毛片| 欧美人妻精品| 亚洲综合有玛| 夜夜嗨AV蜜臀av| 久插综合| 中文字幕第23区| 国产熟女精品区| 美女丝袜激情小说| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场 | 久热香蕉精品在线视频| 人妻81p| HEYZO高无码国产精品227| 91成人高清在线观看| 噜噜噜在线视频| 乱伦日本色图AⅤ| 久久国内| 日本久久网| 日韩伦理久 久久 清纯| 91大神电影天堂| 亚州 综合 色图| 欧美日日人人天天| 97视频新免费| 男人的天堂Va| 日韩肏逼视频| 久久久999| 中文字幕日韩人妻视频| 婷婷激情五月天小说网| 日逼视频日本| 大香蕉五月天婷婷| 99久久com免费视频′| 欧美亚洲综合色| 久久仑合| 成人资源中文字幕在线观看| 操老熟女AV| 丰满人妻一区二区三区四区| 玖玖爱在线视频免费观看| 成人性爱免费播放| 操高情无码| 五月综合久久| 天美av在线观看| 久久111| 密臀成人视频久久久| 欧洲久久一二线| 国产又猛又粗又爽又黄| 91丨熟女丨丰满熟女| 亚洲精品一区中文字幕乱码| 老熟女91av| 久久机热| 亚欧色图在线激情| 男人的天堂午夜av| 天美麻花大全视频| 色91综合网| 精品人妻一二三四区视频| 香蕉99秘 一区精品蜜桃臀| 亚川综合视频| 翔田千里av一区二区三区| 精品久久久久9999| 啊啊啊在线看| 久久狠狠色噜噜狠狠狠狠97| 三级AV入口| 亚洲色婷婷| 亚洲欧美精品久| 久久久涩| 蜜乳av一区二区| 99国产人成精品| 东北女人的毛片| 97伊人| 亚洲色色探花| 婷婷月色| 精人妻无码一区二区三区伊人直播| 青青色在线观看| 青娱乐欧美激情一区二区| 免费毛片在线播放| 亚洲美女色图| …亚洲黄色厕厕女女在线播…| 麻豆国产视频精品观看| 男人的天堂啪啪啪啪啪蜜桃不卡| 日韩少妇在线视频| 丝袜 中出 制服 人妻 美腿 中文字幕| 黄片视频,下载| 综合色图亚洲欧美| 伊人亚洲综合| 欧美性爱精品七区| 俺去也婷婷| 69丨亚洲丨精品丨入口免费播放| AV中亚| 国产成人自拍视频在线| 日韩ab网 | 亚洲综合码| 91黄射| 2021久久国产综合精品青草| 中文字幕亚洲欧美在线不卡| 极品肉射| 99久久久er直播网址| 亚洲精品天天影视综合网| 国产精品久久久久久久久久久久久久吹 | 欧美午夜视频| 日韩无限资源| 久久久18| 怡红院亚洲怡春院av| 91色香| 综合影视国产无码| 欧美日韩理论一区| 搡老女人老91二区| 九九亚洲视频| 午夜操操操| 91九色蝌蚪在线观看| 日产中文字幕2020| 91在线视频国产网站| 久久婷婷色| 啊啊啊啊啊啊啊啊啊在线观看| 欧美性爱无码一区二区三区| 成人精品视频一区二区| 先锋女优在线观看视频| 中文字幕一区二区三区视频播放| 九九九九九九九| 99性爱在线观看| 欧美另类自拍 | 蜜臀久久99精品久久久电影| 99热亚洲| 国语精品av| 国产在线视视频有精品| 超碰在线1234区| 亚洲最新a在线观看| 中文字幕-区二区三区四区视频中国| 中文字幕天堂在线| 福利风月五月天影院| 精品国产Av无码久久久伦古装| 操碰97| 中国特猛少妇色xxx| 婷婷五月天成人网| 校园春色综合香蕉| 日韩人妻播放| 伊人亚洲综合| 亚洲国产成人精品无码专区| 欧美视频激情久久久久久| 岛国免费黄色网址| 东京热熟女亚洲视频网站| 园内精品自拍视频在线播放| 禁十八久久| 国产精品嫩草久久久久| 精品一区二区三区四区外站| 日韩一区二区高清在线观看的| 欧美综合制服在线| 丁香激情网| 999久久久精品国产| 青娱乐啪啪视频| 东京热男人的天堂网| 男人天堂网站|