亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

STM32F407 HAL庫(kù)FLASH讀寫(xiě)全解析:從原理到避坑實(shí)踐

STM32F407 HAL庫(kù)FLASH讀寫(xiě)全解析:從原理到避坑實(shí)踐 1. 項(xiàng)目緣起為什么需要手動(dòng)操作STM32F407的FLASH最近在做一個(gè)基于STM32F407VET6的數(shù)據(jù)采集項(xiàng)目需要將設(shè)備運(yùn)行過(guò)程中的關(guān)鍵參數(shù)比如校準(zhǔn)系數(shù)、運(yùn)行時(shí)間、故障記錄等保存下來(lái)即使設(shè)備斷電重啟也不能丟失。最開(kāi)始我圖省事直接用了芯片內(nèi)部的備份寄存器BKP但很快就發(fā)現(xiàn)容量太小根本不夠用。然后我又考慮外掛一個(gè)EEPROM或者鐵電存儲(chǔ)器但這會(huì)增加BOM成本和PCB面積對(duì)于成本敏感的項(xiàng)目來(lái)說(shuō)不太劃算。這時(shí)候自然就想到了STM32芯片內(nèi)部自帶的FLASH存儲(chǔ)器。這顆STM32F407VET6有高達(dá)512KB的主存儲(chǔ)區(qū)Main Flash Memory除了存放程序代碼剩下的空間完全可以用來(lái)存儲(chǔ)用戶(hù)數(shù)據(jù)。這聽(tīng)起來(lái)是個(gè)完美的方案零成本、不占引腳、容量足夠。但當(dāng)我真正開(kāi)始動(dòng)手時(shí)才發(fā)現(xiàn)HAL庫(kù)里關(guān)于FLASH讀寫(xiě)的坑遠(yuǎn)比想象中要多。網(wǎng)上一搜滿(mǎn)屏都是“Flash Download Failed”、“Operation Timeout”之類(lèi)的錯(cuò)誤很多教程也只是貼幾行代碼背后的原理和注意事項(xiàng)講得不清不楚。所以我決定結(jié)合自己的踩坑經(jīng)歷把STM32F407VET6使用HAL庫(kù)進(jìn)行FLASH讀寫(xiě)的完整流程、底層原理和那些“手冊(cè)上不會(huì)寫(xiě)”的細(xì)節(jié)徹底梳理一遍。無(wú)論你是想保存參數(shù)還是實(shí)現(xiàn)IAP在應(yīng)用編程功能這篇文章都能幫你避開(kāi)我走過(guò)的彎路。2. 核心概念厘清STM32F407的存儲(chǔ)結(jié)構(gòu)與FLASH特性在動(dòng)手寫(xiě)代碼之前我們必須先搞清楚操作對(duì)象。很多操作失敗根源在于對(duì)FLASH的物理特性和內(nèi)存布局理解不透。2.1 內(nèi)存地圖與扇區(qū)劃分STM32F407VET6的FLASH主存儲(chǔ)區(qū)地址從0x0800 0000開(kāi)始大小為512KB。這512KB并不是一整塊而是被劃分成了多個(gè)扇區(qū)Sector每個(gè)扇區(qū)的大小不同。這是FLASH操作中最關(guān)鍵的一點(diǎn)因?yàn)椴脸僮鞅仨氁陨葏^(qū)為單位進(jìn)行而編程寫(xiě)入則可以按更小的粒度字節(jié)、半字、字進(jìn)行。對(duì)于STM32F407其扇區(qū)劃分如下表所示這是你必須背下來(lái)或者隨時(shí)能查到的信息扇區(qū)編號(hào)扇區(qū)地址范圍大小備注Sector 00x0800 0000 - 0x0800 3FFF16 KB通常存放啟動(dòng)代碼、中斷向量表Sector 10x0800 4000 - 0x0800 7FFF16 KBSector 20x0800 8000 - 0x0800 BFFF16 KBSector 30x0800 C000 - 0x0800 FFFF16 KBSector 40x0801 0000 - 0x0801 FFFF64 KBSector 50x0802 0000 - 0x0803 FFFF128 KBSector 60x0804 0000 - 0x0805 FFFF128 KBSector 70x0806 0000 - 0x0807 FFFF128 KBSTM32F407VET6的最后一個(gè)扇區(qū)為什么扇區(qū)大小不一樣這是由FLASH的物理結(jié)構(gòu)決定的。不同大小的扇區(qū)在擦除時(shí)間、耐用性上可能略有差異。在設(shè)計(jì)存儲(chǔ)方案時(shí)我們通常會(huì)選擇靠后的、容量較大的扇區(qū)如Sector 5, 6, 7來(lái)存放用戶(hù)數(shù)據(jù)以避免影響前部存放的程序代碼。2.2 FLASH與RAM、ROM的本質(zhì)區(qū)別在熱搜詞里看到了“rom和ram,flash,sram的區(qū)別”這里簡(jiǎn)單提一下這對(duì)理解操作限制很重要RAM (如SRAM)隨機(jī)存取存儲(chǔ)器可隨時(shí)讀寫(xiě)速度快但斷電后數(shù)據(jù)丟失。STM32F407有192KB的SRAM。ROM只讀存儲(chǔ)器在MCU語(yǔ)境下通常指程序存儲(chǔ)器即FLASH。FLASH一種非易失性存儲(chǔ)器斷電數(shù)據(jù)不丟失。但其寫(xiě)入編程和擦除有嚴(yán)格限制寫(xiě)前必擦FLASH的位只能從1變成0。如果想把0變成1必須進(jìn)行扇區(qū)擦除操作將整個(gè)扇區(qū)恢復(fù)為全10xFF狀態(tài)。擦除單位大最小擦除單位是一個(gè)扇區(qū)如上表所示至少16KB。你不能只擦除一個(gè)字節(jié)。編程單位小寫(xiě)入時(shí)可以按字節(jié)、半字16位、字32位或雙字64位進(jìn)行但必須對(duì)齊到相應(yīng)的內(nèi)存地址例如字寫(xiě)入地址必須是4的倍數(shù)。壽命有限FLASH有擦寫(xiě)次數(shù)限制STM32F407的典型值是1萬(wàn)次。頻繁擦寫(xiě)同一區(qū)域會(huì)導(dǎo)致該區(qū)域提前損壞。2.3 HAL庫(kù)的FLASH驅(qū)動(dòng)模型ST的HAL庫(kù)提供了stm32f4xx_hal_flash.c/.h和stm32f4xx_hal_flash_ex.c/.h兩個(gè)文件來(lái)操作FLASH。其核心操作封裝成了幾個(gè)關(guān)鍵函數(shù)擦除HAL_FLASHEx_Erase()用于擦除一個(gè)或多個(gè)扇區(qū)。編程HAL_FLASH_Program()用于寫(xiě)入數(shù)據(jù)你可以選擇編程寬度FLASH_TYPEPROGRAM_BYTE,FLASH_TYPEPROGRAM_HALFWORD,FLASH_TYPEPROGRAM_WORD,FLASH_TYPEPROGRAM_DOUBLEWORD。解鎖/上鎖HAL_FLASH_Unlock()和HAL_FLASH_Lock()。在對(duì)FLASH進(jìn)行寫(xiě)或擦除操作前必須解鎖操作完成后建議重新上鎖以防止誤操作。狀態(tài)獲取與清除HAL_FLASH_GetError()用于獲取操作錯(cuò)誤標(biāo)志這在調(diào)試時(shí)至關(guān)重要。HAL庫(kù)的好處是封裝了底層寄存器操作但壞處是它隱藏了一些細(xì)節(jié)如果不知道這些細(xì)節(jié)就會(huì)遇到各種“玄學(xué)”錯(cuò)誤。3. 實(shí)戰(zhàn)第一步FLASH讀操作與地址規(guī)劃讀操作是最簡(jiǎn)單的因?yàn)镕LASH在正常情況下隨時(shí)可讀。但“讀什么”和“從哪里讀”需要精心設(shè)計(jì)。3.1 如何安全地規(guī)劃數(shù)據(jù)存儲(chǔ)地址你不能隨便選一個(gè)地址就開(kāi)始寫(xiě)。必須確保這個(gè)地址區(qū)域沒(méi)有被你的程序代碼占用。位于FLASH的地址范圍內(nèi)。最好在一個(gè)獨(dú)立的扇區(qū)內(nèi)方便管理。方法一修改鏈接腳本推薦這是最規(guī)范的做法。以Keil MDK為例你需要修改項(xiàng)目的分散加載文件.sct。在LR_IROM1區(qū)域中明確指定程序代碼的結(jié)束地址為數(shù)據(jù)存儲(chǔ)預(yù)留空間。例如如果你的程序代碼大概有200KB你可以讓代碼占用0x0800 0000到0x0803 2000然后從0x0803 2000開(kāi)始也就是Sector 5的起始地址附近作為數(shù)據(jù)區(qū)。方法二手動(dòng)計(jì)算并硬編碼地址快速原型對(duì)于快速測(cè)試你可以直接查看編譯生成的.map文件找到程序代碼的最終大小然后選擇一個(gè)靠后的、確信不會(huì)沖突的扇區(qū)地址。例如直接定義#define DATA_FLASH_SECTOR FLASH_SECTOR_5 #define DATA_FLASH_SECTOR_SIZE (128 * 1024) // 128KB #define DATA_FLASH_START_ADDR 0x08020000 // Sector 5起始地址 #define USER_DATA_ADDR (DATA_FLASH_START_ADDR 0x1000) // 從扇區(qū)內(nèi)部偏移0x1000開(kāi)始存避免擦除邊界問(wèn)題注意USER_DATA_ADDR最好在扇區(qū)內(nèi)有一個(gè)偏移。因?yàn)槿绻銖纳葏^(qū)起始地址0x08020000開(kāi)始存儲(chǔ)將來(lái)擦除這個(gè)扇區(qū)時(shí)你的數(shù)據(jù)就沒(méi)了。稍微偏移一點(diǎn)可以讓你在調(diào)試時(shí)即使誤擦除整個(gè)扇區(qū)也只是丟失數(shù)據(jù)而不會(huì)影響到緊挨著的其他扇區(qū)如果那里有代碼的話。3.2 執(zhí)行讀操作讀操作就是直接指針訪問(wèn)因?yàn)镕LASH內(nèi)存映射到了CPU的地址空間。uint32_t read_data; read_data *(__IO uint32_t*)USER_DATA_ADDR; // 讀取一個(gè)32位數(shù)據(jù)或者讀取一個(gè)結(jié)構(gòu)體typedef struct { uint32_t param1; float param2; uint8_t flag; } UserData_t; UserData_t my_data; memcpy(my_data, (void*)USER_DATA_ADDR, sizeof(UserData_t));這里用memcpy是安全的因?yàn)橹皇亲x取。(__IO uint32_t*)中的__IO是STM32 HAL庫(kù)中定義的宏等同于volatile關(guān)鍵字告訴編譯器不要優(yōu)化對(duì)此地址的訪問(wèn)因?yàn)樗闹悼赡鼙挥布淖冸m然FLASH內(nèi)容不會(huì)變但這是個(gè)好習(xí)慣。4. 實(shí)戰(zhàn)第二步FLASH寫(xiě)編程與擦除操作詳解這是最核心也是最容易出錯(cuò)的部分。請(qǐng)嚴(yán)格按照以下流程操作。4.1 完整操作流程與代碼框架一個(gè)安全的FLASH寫(xiě)入流程必須遵循解鎖 - 擦除如需- 編程 - 上鎖并且每一步都要檢查錯(cuò)誤。HAL_StatusTypeDef Flash_WriteData(uint32_t address, uint64_t data, uint32_t data_width) { HAL_StatusTypeDef status; FLASH_EraseInitTypeDef EraseInitStruct; uint32_t SectorError 0; // 1. 檢查地址是否對(duì)齊根據(jù)編程寬度 if((data_width FLASH_TYPEPROGRAM_WORD (address 0x3)) || (data_width FLASH_TYPEPROGRAM_HALFWORD (address 0x1)) || (data_width FLASH_TYPEPROGRAM_DOUBLEWORD (address 0x7))) { return HAL_ERROR; // 地址未對(duì)齊 } // 2. 解鎖FLASH HAL_FLASH_Unlock(); // 3. 檢查目標(biāo)地址是否需要擦除如果不想全為1 // 注意這是一個(gè)簡(jiǎn)化的檢查實(shí)際應(yīng)檢查你要寫(xiě)入的所有位。 // 如果目標(biāo)地址當(dāng)前值與你想要寫(xiě)入的值在“位與”后不等于你想要的值說(shuō)明需要擦除。 // 為簡(jiǎn)單起見(jiàn)通常我們?cè)趯?xiě)入新一批數(shù)據(jù)前直接擦除整個(gè)扇區(qū)。 // 本例假設(shè)調(diào)用此函數(shù)前已確保扇區(qū)被擦除。 // 4. 執(zhí)行編程操作 status HAL_FLASH_Program(data_width, address, data); if(status ! HAL_OK) { // 編程失敗獲取錯(cuò)誤信息 uint32_t error HAL_FLASH_GetError(); // 這里可以打印或處理錯(cuò)誤例如if(error HAL_FLASH_ERROR_PROGRAM) ... HAL_FLASH_Lock(); // 失敗也要記得上鎖 return status; } // 5. 上鎖FLASH HAL_FLASH_Lock(); return HAL_OK; }4.2 擦除操作的深層解析與避坑指南單獨(dú)把擦除拿出來(lái)講因?yàn)樗匾恕AL_StatusTypeDef Flash_EraseSector(uint32_t sector) { HAL_StatusTypeDef status; FLASH_EraseInitTypeDef EraseInitStruct; uint32_t SectorError 0; // 1. 解鎖 HAL_FLASH_Unlock(); // 2. 配置擦除參數(shù) EraseInitStruct.TypeErase FLASH_TYPEERASE_SECTORS; // 按扇區(qū)擦除 EraseInitStruct.Banks FLASH_BANK_1; // F407只有一個(gè)Bank EraseInitStruct.Sector sector; // 要擦除的扇區(qū)號(hào) EraseInitStruct.NbSectors 1; // 擦除1個(gè)扇區(qū) EraseInitStruct.VoltageRange FLASH_VOLTAGE_RANGE_3; // 2.7V - 3.6V電壓范圍必須正確 // 3. 執(zhí)行擦除 status HAL_FLASHEx_Erase(EraseInitStruct, SectorError); if (status ! HAL_OK) { // 擦除失敗SectorError會(huì)返回是哪個(gè)扇區(qū)出錯(cuò) uint32_t flash_error HAL_FLASH_GetError(); HAL_FLASH_Lock(); return status; } // 4. 驗(yàn)證擦除是否成功可選但推薦 // 簡(jiǎn)單驗(yàn)證讀取擦除區(qū)域的首個(gè)雙字64位看是否為0xFFFFFFFF FFFFFFFF uint64_t *check_addr (uint64_t*) (0x08000000 (sector * 0x20000)); // 簡(jiǎn)化計(jì)算實(shí)際需根據(jù)扇區(qū)表 if(*check_addr ! 0xFFFFFFFFFFFFFFFF) { // 擦除驗(yàn)證失敗 HAL_FLASH_Lock(); return HAL_ERROR; } HAL_FLASH_Lock(); return HAL_OK; }關(guān)鍵避坑點(diǎn)VoltageRange參數(shù)這是新手最容易忽略的地方STM32F4系列FLASH的操作電壓范圍必須正確設(shè)置。對(duì)于主頻在150MHz及以下的F407工作在2.7V-3.6V應(yīng)使用FLASH_VOLTAGE_RANGE_3。如果設(shè)置錯(cuò)誤比如用了FLASH_VOLTAGE_RANGE_1擦除或編程操作會(huì)直接失敗并可能置位HAL_FLASH_ERROR_PROGRAM或HAL_FLASH_ERROR_OPERATION錯(cuò)誤標(biāo)志。擦除期間的中斷FLASH擦除是耗時(shí)操作幾十毫秒。在擦除期間CPU會(huì)暫停執(zhí)行指令即代碼執(zhí)行會(huì)停住直到擦除完成。這意味著你的SysTick定時(shí)器會(huì)“丟時(shí)”導(dǎo)致HAL_Delay不準(zhǔn)RTOS的心跳可能異常。所有中斷都會(huì)被阻塞。如果此時(shí)有通信中斷如UART、SPI發(fā)生數(shù)據(jù)可能會(huì)丟失。解決方案在擦除或編程關(guān)鍵代碼段前后可以考慮關(guān)閉全局中斷__disable_irq()和__enable_irq()但需謹(jǐn)慎評(píng)估對(duì)系統(tǒng)實(shí)時(shí)性的影響。更好的方案是將FLASH操作放在低優(yōu)先級(jí)任務(wù)或空閑鉤子函數(shù)中并確保系統(tǒng)在操作期間處于“安全狀態(tài)”。擦除后的驗(yàn)證雖然HAL庫(kù)函數(shù)返回成功但硬件操作仍有極低概率失敗。對(duì)于關(guān)鍵數(shù)據(jù)在擦除或?qū)懭牒筮M(jìn)行一次讀回驗(yàn)證是良好的工程習(xí)慣。5. 高級(jí)議題數(shù)據(jù)管理、磨損均衡與IAP基礎(chǔ)直接按地址讀寫(xiě)只是基礎(chǔ)要想在實(shí)際項(xiàng)目中可靠使用還需要考慮更多。5.1 數(shù)據(jù)結(jié)構(gòu)與存儲(chǔ)策略你不能像操作數(shù)組一樣隨意寫(xiě)入FLASH。一個(gè)常見(jiàn)的策略是定義固定的數(shù)據(jù)結(jié)構(gòu)并預(yù)留“備份扇區(qū)”。typedef struct __packed { // 使用__packed避免編譯器對(duì)齊填充 uint32_t magic_number; // 魔數(shù)用于標(biāo)識(shí)數(shù)據(jù)塊是否有效例如0xAA55CC33 uint32_t data_version; uint32_t system_up_time; float calibration_factor[10]; uint8_t checksum; // 簡(jiǎn)單的校驗(yàn)和 } SystemParams_t; // 使用兩個(gè)扇區(qū)交替存儲(chǔ) #define PARAMS_SECTOR_A FLASH_SECTOR_6 #define PARAMS_SECTOR_B FLASH_SECTOR_7 #define PARAMS_ADDR_A 0x08040000 // Sector 6起始 #define PARAMS_ADDR_B 0x08060000 // Sector 7起始寫(xiě)入策略每次需要更新參數(shù)時(shí)將新數(shù)據(jù)寫(xiě)入當(dāng)前未使用的扇區(qū)例如上次用了A這次就寫(xiě)B(tài)。寫(xiě)入完成后計(jì)算校驗(yàn)和并更新魔數(shù)。最后擦除舊的扇區(qū)。 這樣做的好處是即使在寫(xiě)入過(guò)程中斷電舊的備份數(shù)據(jù)仍然完好系統(tǒng)重啟后可以根據(jù)魔數(shù)和校驗(yàn)和找到最新的有效數(shù)據(jù)。這被稱(chēng)為“原子性”更新。5.2 磨損均衡初步思考FLASH壽命約1萬(wàn)次如果頻繁更新同一個(gè)地址該處會(huì)很快損壞。上述的“雙扇區(qū)備份”是一種簡(jiǎn)單的磨損均衡。更復(fù)雜的方案可以設(shè)計(jì)一個(gè)小型的類(lèi)文件系統(tǒng)或環(huán)形隊(duì)列將數(shù)據(jù)分散到扇區(qū)內(nèi)更多的頁(yè)上。但對(duì)于大多數(shù)應(yīng)用雙扇區(qū)或四扇區(qū)輪換已經(jīng)足夠。5.3 與IAP的結(jié)合與注意事項(xiàng)IAPIn Application Programming是FLASH操作的典型應(yīng)用即通過(guò)串口、網(wǎng)絡(luò)等方式更新自身程序。其核心思想是將程序分為兩部分Bootloader存放在靠前的扇區(qū)如Sector 0-1和Application存放在后面的扇區(qū)如Sector 2開(kāi)始。Bootloader負(fù)責(zé)接收新固件并調(diào)用FLASH擦寫(xiě)API將其寫(xiě)入Application區(qū)域。跳轉(zhuǎn)到新的Application地址執(zhí)行。在做IAP時(shí)本文提到的所有要點(diǎn)依然適用并且要額外注意中斷向量表重映射Application的中斷向量表需要偏移。在Application的main函數(shù)最開(kāi)始通常需要調(diào)用SCB-VTOR FLASH_BASE | 0x10000;假設(shè)Application從0x08010000開(kāi)始來(lái)重設(shè)向量表偏移。Bootloader與App的FLASH操作沖突Bootloader在擦寫(xiě)App區(qū)域時(shí)絕對(duì)不能執(zhí)行位于正在被擦寫(xiě)區(qū)域的代碼。通常Bootloader需要把自己拷貝到RAM中運(yùn)行或者極其小心地安排代碼流程。使用HAL庫(kù)的FLASH操作函數(shù)時(shí)這些函數(shù)本身必須位于不會(huì)被擦除的內(nèi)存中比如Bootloader所在的扇區(qū)。鏈接腳本的精確配置必須為Bootloader和Application分別編寫(xiě)精確的鏈接腳本嚴(yán)格劃分FLASH和RAM的使用范圍避免重疊。6. 調(diào)試噩夢(mèng)常見(jiàn)錯(cuò)誤分析與解決方法結(jié)合熱搜詞里的“flash download failed”、“operation timeout”等這里集中排坑。6.1 “Flash Download Failed - Target DLL has been cancelled” / “Cortex-M3/M4”這個(gè)錯(cuò)誤通常發(fā)生在使用JTAG/SWD下載器如ST-Link通過(guò)IDEKeil, IAR下載程序時(shí)與我們的HAL庫(kù)FLASH操作無(wú)直接關(guān)系。但它可能間接相關(guān)。根本原因調(diào)試器DLL與目標(biāo)芯片的通信被意外中斷。觸發(fā)場(chǎng)景你的程序里包含了FLASH擦寫(xiě)代碼并且沒(méi)有正確解鎖/上鎖導(dǎo)致芯片的FLASH接口處于一種不穩(wěn)定或受保護(hù)的狀態(tài)調(diào)試器無(wú)法正常訪問(wèn)。你修改了芯片的選項(xiàng)字節(jié)Option Bytes特別是讀保護(hù)RDP等級(jí)導(dǎo)致調(diào)試接口被禁用。硬件連接不穩(wěn)定電源噪聲大。解決方法檢查代碼確保每次FLASH操作后都執(zhí)行了HAL_FLASH_Lock()。如果懷疑FLASH被鎖嘗試完全斷電重啟板子和調(diào)試器然后使用“擦除全片”的功能再下載。使用ST官方的“STM32CubeProgrammer”工具連接時(shí)選擇“Under Reset”模式往往能解決頑固的鎖死問(wèn)題。檢查BOOT0/BOOT1引腳確保芯片處于從主FLASH啟動(dòng)的模式。6.2 “Operation Timeout” / “Flash Timeout”這個(gè)錯(cuò)誤發(fā)生在運(yùn)行時(shí)是你的HAL庫(kù)FLASH操作函數(shù)返回了超時(shí)錯(cuò)誤。原因分析HAL_FLASH_Program或HAL_FLASHEx_Erase函數(shù)內(nèi)部在啟動(dòng)操作后會(huì)等待一個(gè)硬件標(biāo)志位FLASH_FLAG_BSY清除。如果等待時(shí)間超過(guò)了FLASH_TIMEOUT_VALUE在stm32f4xx_hal_flash.h中定義默認(rèn)是50000就會(huì)返回超時(shí)。為什么超時(shí)電壓范圍VoltageRange設(shè)置錯(cuò)誤如前所述這是首要懷疑對(duì)象。操作了受保護(hù)的扇區(qū)你嘗試擦寫(xiě)的前面幾個(gè)扇區(qū)比如Sector 0可能存放著正在運(yùn)行的代碼。擦除自身會(huì)導(dǎo)致不可預(yù)知的行為并超時(shí)。永遠(yuǎn)不要擦除當(dāng)前正在執(zhí)行代碼所在的扇區(qū)FLASH未解鎖雖然HAL函數(shù)會(huì)檢查但確保你先調(diào)用了HAL_FLASH_Unlock()。硬件故障FLASH存儲(chǔ)器物理?yè)p壞罕見(jiàn)。排查步驟單步調(diào)試在調(diào)用擦寫(xiě)函數(shù)前檢查傳入的VoltageRange、Sector等參數(shù)是否正確。檢查HAL_FLASH_GetError()返回的具體錯(cuò)誤碼它能提供更精確的線索如寫(xiě)保護(hù)錯(cuò)誤、編程對(duì)齊錯(cuò)誤等。確保你的操作地址是合法的FLASH地址并且是空閑的。6.3 數(shù)據(jù)寫(xiě)入后讀出來(lái)不對(duì)地址不對(duì)齊這是最常見(jiàn)的原因。試圖在地址0x08020001寫(xiě)入一個(gè)32位字FLASH_TYPEPROGRAM_WORD會(huì)導(dǎo)致失敗。請(qǐng)使用FLASH_TYPEPROGRAM_BYTE或確保地址4字節(jié)對(duì)齊。未擦除就寫(xiě)入FLASH位只能從1變0。如果你要寫(xiě)入的數(shù)據(jù)位是1而對(duì)應(yīng)FLASH位置已經(jīng)是0那么寫(xiě)入后該位仍然是0。例如FLASH原有值是0xFFFF FFFE最后一位是0你想寫(xiě)入0xFFFF FFFF結(jié)果是0xFFFF FFFE因?yàn)?無(wú)法變成1。務(wù)必確保目標(biāo)區(qū)域在寫(xiě)入前已被擦除成全0xFF狀態(tài)。數(shù)據(jù)類(lèi)型與編程寬度不匹配如果你用一個(gè)uint8_t變量卻用FLASH_TYPEPROGRAM_WORD模式去編程HAL函數(shù)會(huì)把你變量地址開(kāi)始的4個(gè)字節(jié)可能包含其他無(wú)關(guān)數(shù)據(jù)一起寫(xiě)入FLASH造成混亂。確保你傳遞給HAL_FLASH_Program的Data參數(shù)的類(lèi)型和大小與TypeProgram匹配。6.4 操作FLASH后系統(tǒng)異?;蛩罊C(jī)中斷被阻塞如前所述FLASH操作期間CPU停頓。如果此時(shí)有嚴(yán)格定時(shí)要求的系統(tǒng)如USB、以太網(wǎng)或看門(mén)狗會(huì)導(dǎo)致系統(tǒng)崩潰。解決方案是在FLASH操作期間臨時(shí)提升相關(guān)中斷的優(yōu)先級(jí)或?qū)LASH操作放在系統(tǒng)空閑時(shí)進(jìn)行并考慮暫時(shí)禁用看門(mén)狗。代碼緩存與預(yù)取STM32F4有指令緩存I-Cache和數(shù)據(jù)緩存D-Cache。當(dāng)你修改了FLASH內(nèi)容特別是程序代碼區(qū)如IAP時(shí)需要無(wú)效化緩存否則CPU可能讀到舊的指令。相關(guān)函數(shù)是SCB_InvalidateICache()和SCB_InvalidateDCache()。對(duì)于只操作數(shù)據(jù)區(qū)的情況通常問(wèn)題不大但知道這個(gè)機(jī)制很重要。最后也是最關(guān)鍵的一點(diǎn)在開(kāi)發(fā)階段務(wù)必先在一個(gè)獨(dú)立的、遠(yuǎn)離你程序代碼的扇區(qū)比如最后一個(gè)扇區(qū)進(jìn)行FLASH讀寫(xiě)測(cè)試。準(zhǔn)備好一個(gè)能通過(guò)串口打印調(diào)試信息的環(huán)境把每一步的返回狀態(tài)、錯(cuò)誤碼、操作前后的數(shù)據(jù)都打印出來(lái)。FLASH操作無(wú)小事一次錯(cuò)誤的擦除可能就意味著你需要重新下載整個(gè)程序。耐心、細(xì)致地驗(yàn)證每個(gè)步驟才能讓你的數(shù)據(jù)在芯片內(nèi)部安然無(wú)恙。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色娱乐色呦呦夜夜夜夜av| www.色操逼| 丁香婷婷啪啪| 色欧洲| 久久久久日本视| 99re免费视频精品全部| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 东京热av男人的天堂| 国产操逼网站亚洲一级黄色| 欧洲小说色图视频另类| 99热精品在线播放| 亚洲最新中文字幕免费| 色图综合| 亚洲欧美天| 99青草| 欧美性爱第1 页| 国产精品午夜福利视频| 992这里有精品| 91在线精品| 色姑娘综合网| 有码专区最新中文字幕有码| 亚洲少妇激情视频| 亚洲丝袜色图| 亚洲 欧美 中文 日韩超碰| 黄视频免费| 中欧人妻丝袜中文字幕| 久久美国毛片| 天天干人妻视频| 乱码熟妇人妻久久久| 十八禁视频网站| 欧差乱伦二三| 成人精品久久久午夜福利| 欧美亚洲手机在线| 欧洲精品二区| 在线观看中文字幕| 黄色工厂这里只有精品| 久久系列| 日1区2区3区2020| 欧美日韩黄片精品在线| 96久久科窝| 国产亚洲中文不卡二区| 日韩紧密久久| 人人爽天天爽| 久热大香蕉网站| 国产精品制服丝袜清纯唯美 | 亚洲精品美女久久久久久久久| 欧美一二三区四五区| 欧美天堂亚洲电影院一区在线播放| 肏逼福利网站| 国产极品999| 粉嫩国产精品久久粉嫩| 国产深喉视频一区二区| 手机av天堂久久久久| 久久AV无码AV| 啊啊啊啊啊啊好湿好爽视频| 国产野战露脸在线播放| 久久久熟女一区| 色婷久久| 人人贴人人摸| 亚洲天堂少妇| 亚洲AV乱码专区国产噜噜亚洲| 国产精品久久天天干| 成人羞羞视频国产| 91国产丝袜白虎| ?亚洲伊人伊成久久人综合网| 麻豆91熟妇人妻中文字幕茄子| 亚洲综合首页| 久久一区二区三区四区五区| 另类小说欧美激情校园春色| 欧美色图99| 97国产精品久久久久| 一本久久精品中文字| 天天综合亚在线| 久久久国产成人一区二区三区在线| 女生看匆91网站| 丝袜六区| 精品久久久久久中文字幕视频免费| 亚洲操操| 日韩精品一区二区人人人| 五月婷婷色| 日韩少妇无码| 久久爽爽精品| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 日韩精品中文字幕二区| 亚洲综合校园春色| 五月天婷婷成人网| 精品人体无圣光凹凸| 爱妻综合网| 丁香五月综合| 精品偷拍13p欧美dodk视频| 亚洲干B| 亚州精品一区二区三区香中文字幕在线| 性高潮久久久久久久久久久| 欧美综合在线第一页| AV色五月天| 天美传媒在线一区| 女人天堂AV五区在线| 啊v在线观看视频| 日本久久999| 日本97久久久精品| 久射吧| 97久久精品| 偷拍 精品 另类 四区| 黄页网站免费高清在线观看| 蜜臀视频网站| 精品少妇一区二区三区| 九九九影院| 婷婷五月天小说| 操逼无码操逼| 情色AV电影| 97天天在线| 色婷婷影视| 怡春苑东京热| 日逼国产| 国产亚洲精品农村妇女| 色五月综合网| 97视频在线视频| 欧美高清无码免费视频高清版| 99这里只有精品国产| 嗯嗯嗯好爽| 色婷婷成人| 9色国产精品一区粉嫩| 婷婷91| 国产呦精品一区二区三区下载| 日韩一级片| 亚洲色图欧美色图在线播放| 久久‘黄片视频| 强奸熟女一区二区三区| 一类无码操逼视频| 人人操人人射人人干| 午夜乱轮操逼视频免费看| 亚洲中文字幕乱码无码一区二区| 97在线精品观看视频| 久草男人天堂| 五月丁香激情综合| 久草加勒比一区在线| 大香蕉 222| 人人人摸人人| 国产精品白丝AV| 色狠狠色| 国产在线综合福利网站| 97精品国产手机| 国产aⅴ无码片毛片一级网站| 校园春色家庭伦理欧美激情| 久久综合九九| 隔壁邻居波多野结衣中文字幕| 嗯嗯啊好大| 免费公开人人操| 热热色综合网| 91大神电影天堂| 日本成人A片免费看| 国产精品3| 亚洲熟妇自偷自拍另欧美| 男女啪啪网站免费视频| 东北操逼| 久久久久9999妇女| 丝袜大香蕉| 久久丁香久草综合网| 人人搡人人肉久久精品| 五月丁香色色网| 3PAV乱伦视频| 欧美97av| 久久大精品乱码视频人妻熟女| 妺妺跟我一起洗澡没忍住| 野狼福利社区| 激情久久日韩精品中文字幕麻豆| 亚洲高潮少妇| 91久久久久久久| 国产精品人妻免费精品| 玖玖资源视频一区二区三区| AV老汉| 色五月激情综合网| 国产精品麻豆视频网站| 老司机福利青青草| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 中文字幕在线观看网址| 亚洲欧美日韩电影网站一区 | 亚洲色图8| 亚洲国产剧情少妇激情| 99激情| AAAAAAAAA黄片| 亚洲 日本 不卡| 久久久久人| 人妻熟女一区二区三区在线| 久久久影院| 十八禁的黄污污免费网站| 国产呦精品系列在线观看| 成熟熟女国产精品一区二区| 十八禁网站在线| 九九碰九九爱97超碰| 欧美96交| 国产风韵犹存熟妇三区| 亚洲综合69| 97超碰热线| 射 色综合| 日韩三级视频一区二区三区| 精品久久視頻在线| 亚洲 欧美 中文 日韩超碰| 九九热免费视频| 国产第12页| 91大香蕉伊人| 九九九999久久久网站| 91在线色综合| 91精品人妻电影| 操逼天美3区| 人人妻碰人人免费| 中文字幕人妻资源在线| 欧美激情性久久久久久| 天天激情综合站| 久久久久久亚洲Av无码精| 91内射| 中文久久| 国产精品麻豆视频网站| 久久性爱免费送| 第一高清av中文字幕| 欧美v亚洲v日韩v最新在线二区| 国产精品久久久久亚洲av| 亚洲av国产av综合av卡| 国产中文精品一区二区在线观看| 日韩免费大片一级播放| 欧美视频一区二区在线| 亚洲成人免费电影| 天堂日本亚洲欧美| 97爱b| 中文字幕人乱码中文字的预防方法| 久久欧洲| 欧美啪啪啪91| 丰满人妻一区二区三区色-百度| 一二三区操逼国产91| 思思热在线视频在线| 无码一区二区精品视频久久久春药| 久久午夜鲁丝片| 少妇xx精品| 无码自拍SM| 精品国产一区二区三区av在线资源| 天天做天天爱天天爽| 国产伦精品免编号公布| 伊人亚洲综合| 9久久久久| 肏逼视频日本| 亚洲中文一区二区三区视频| 亚洲综合99999| 中文字幕一区二区三区四五区| 综合色好色| 桃花色综合影院| 午夜爽爽爽在线观看永久入口姬片| 两性综合网| 久久久一级| 久久一二三四五六七八九区区| 91老熟女91老女人| 日韩综合无码一区久久92| 国产日韩欧美中文在线播放 | 99激情| 精品免费一区二区三区在线亚洲人成| 综合激情一一91| 97天天日| 国内精品久久久久影院亚洲| 亚洲一二三精品久久网| 清纯唯美综合亚洲| 亚欧国产无码精品在线| 欧美熟妇精品黑人巨大一二三区| 欧美淫乱视频| 亚洲一区二区三区欧美日韩| 精品久久大胆人体| 久久久久久九| 美女黄频a美女大全免费皮| 日韩美女久久一区二区三区| 欧美中日韩XXXX| 3d成人精品一区二区| 中文伊人大香蕉视频| 蜜桃网熟妇| 人人 操人人 操人人| 91人妻超碰| 97欧美日韩综合| 国产亚州高清国产拍精| 龙兴卡官方查询| 超碰97人人cao| 亚洲有码 视频一区| 婷婷九月丁香| 久久肏大逼| 久久九操在线观看| 色成人Www精品永久观看| 亚洲欧美性生活| 欧美色图第一页| 在线观看黄色电话| 久久精品99| 日韩人妻一二三区视频| 亚洲大色堂| 超碰在线人妻中文字幕| 99.色网| 我要色综合网| 日韩乱码av| 91色香| 高凊专区人人操| 中文字幕在线观| 日本一二区免费| 啊啊啊啊啊啊好多水| 开心五月婷婷| 免费成人自拍视频在线| 亚州色站 日韩电影| 午夜国产综合视频在线观看| 熟女自慰久久久| 伊人久久综合影院精品久久久| 熟妇一区二区三区| 婷婷丁香五月天综合东京热| 久艹视频在线| 日日干日日| 四虎影视精品| surenchaopeng| www..com操老师| 久久精品99久久久久久| 国产粉嫩出水在线播放| 91日韩网站| 激情99| 黄片免费日韩| 丝袜美腿91| 亚洲色吧网| 思思久热在线精品66| 久久做97| 一区二区三区蜜桃成人撸久久东京热| 亚洲激情在线观看一区| 欧美综色欧| 中文字幕高清20页视频| 无码外流操逼视频| 五十路三区在线| 91夜夜蜜桃臀1区2区3区| 无码日韩人妻av一| 亚州综| 欧美激情片一区二区| 国产三级多多影院2022国产AA一级毛片无码 | 日本在线不卡v二区| 日逼国产| 亚洲精品国产无码高清| 伊人一区二区在线播放| 日韩一级二级| 天美精品原创av片国产| 伊人丁香五月婷婷| 青青草日本无码| 国产熟女一区二区| 色牛牛AV| 亚洲高清少妇| 国产精品麻豆视频网站| 韩国嫰模上门援交视频| 久久久99久9| 麻豆AV96熟妇人妻| 色娱乐色呦呦夜夜夜夜av| 天天看片天天爽| 人人看人人插| 999久久久精品国产| 污污污8888| 看一级黄色视频| 久久久亚洲Av| 欧美日韩中文视频播放| 欧美日韩人妻精品系列一区二区三区| 日韩欧美一级特黄大片| 婷婷性爱| 在线观看精品国产免费| 九九热久久99精品re| 免费观看性欧美一级| 国产亚洲 中文欧美久久| 亚洲综合网91| 尤物国产一区在线观看| 色色色综合网| 日本熟妇人妻中出视频| 国产狂喷潮在线精品| 偷拍亚洲视频一区二区三区四区| 91黑丝美女| 青青草自拍视频在线播放| 久久性爱大全| 少妇xx精品| 欧美成年人性爱视频免费观看| 欧美在线亚洲| 中文字幕一区二区三区人妻不卡 | 操逼片国产| 中文字幕精品探花视频| 男人天堂欧美| 我想要 啊 啊 啊| 日日日色色色色色| 嗯嗯啊啊啊啊轻点视频| 亚洲污污网站| 久久熟女久| 久久色一区二区| 91亚州欧美| 久久日韩毛| 色色色色色色色色色色色色色色综合| 啊啊啊操一区| 欧美嫩性色| 午夜天天碰综合视频| 国产高清1234区| 精品久久99| 黄总AV色图| 99re28在线观看| 久久综合久色欧美综合狠狠 | 超碰99在线| 五月天婷婷社区| 啪啪啪亚欧美视频| 欧美人与动性人交a| 波多野结衣AV无码一区| www.久久制服糖| 欧美精品成人在线播放| 欧美黄色大香蕉一区二区| 日本午夜久久电影| 91丨国产丨白浆| 91九九九逼| 日韩亚洲97| 校园春色亚洲色图| 黄色成人网久久久久久| 国产成人手机视频激情| 91综合在线| 中文字幕在线观看第二页| 超碰天天久久79| 亚洲熟妇综合久久久久久| 97日韩欧美亚洲| 久久超碰97| 自怕偷自怕亚洲精品| 日本Xx性爱| 加勒比大香蕉视频在线| 一区二区不卡| 国产白丝AV| 免费av高清无码| 五月天黄色激情视频| 一区二区三区精品黑丝白丝酒店对鸡 | 亚洲日韩视频二区| 97人人模人人爽人人| 欧美少妇熟女| 蜜臀av中文字幕| 亚洲国产综合图区中文字幕 | 国产第二页| 天天操妹子| www.亚洲黄色| 久久婷婷五月综合| 人妻少妇精品久久久| 97在线免费看视频| 亚洲精品国产精品乱码不99| 丰满搜索结果 -第18页- 久久高清无码 | 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 99热官网| 国产精品动态一区二区三区四四| 一级毛片电影免费看| 国产中文字幕曰本毛片| 少妇六月天| 中国91AV| 在线观看黄色电话| 亚洲国产精品久久久男人的天堂| 日韩人妻丝袜中文字幕| 十八禁啪啦拍视频无遮挡| 少妇同性| 国产品精品自在在线午夜免费 | 伊香蕉综合久久久久久久噜噜噜| 日韩欧美一级特黄大片| 素颜老阿姨乱情色| 精品一区二区三区国产| 日韩国产品视频中文字| 亚洲欧美在线丝袜| 天天爽夜夜操| 91痴汉| 嫩草一区二区在线观看| 走光一区92下载| 97资源视频| 白丝jkav| 午夜福利激情在线视频| 麻豆人妻少妇在线免费观看| 亚洲熟伦熟妇AV无码春色| 97AV爱| 日日摸日日碰夜夜爽视频| 中文字幕狠狠玩| 大屁股熟女一区二区三区| 热久久国产| 欧美 熟女 日韩| 色婷婷aV一区二区三区麻豆综合| www.成人无码| 91性高潮久久久久久久久| 视频在线97| 亚洲日韩精品在线播放| 大香蕉草草| 久久综合五月天| 一起草视频在线| 中文字幕91综合| av亚欧| 天堂在线一区二区| 亚洲导航深夜福利| 久久精品操| 色玖玖| 私人尤物在线精品不卡| 91总综合网| 色嗨嗨在线| 九九九九九九精品| 4141514逼喷水三级片| 色黄污美女啪啪啪免费网站| 日本黄页视频在线观看| 婷婷五月天丁香花| 少妇被c 黄 免费观看| 久插不卡| 999岛国大片| 蜜桃久久一区二区| 99色日| 操逼操操操91| a片久久久久久久久久久久| 久久久国产精品人妻丝袜| 日本日逼高清| 伊人九九| 超碰99热中文字幕| 欧美日韩性爱精品| 亚洲欧洲成人在线电影| 亚洲一区亚洲天堂| 猛交交| 又大又长又粗又爽又黄| 在线洲亚线| 亚洲s在线观看| 亚洲成熟国产精品美女| 美女诱惑久久| 射丝袜大香蕉| 91在线免费观看处女| 欧美一级久久久久久久大片动画 | 久久人妻视频网| 亚洲无码超碰免费| 男人的天堂99| 久久久久久久久久精| 色色五月婷婷| 综合操逼| 国产精品国产亚洲区艳妇糸列| 久男人久久| oumeisetupian| 日本熟女中文| 国产精品久久久久久无码红治院| 日韩9区| 熟女91网| 大肉棒导航| 天堂av2019| 国产女生在线| 久久夜黄色无码A级大片| 野狼福利社区| 999国产精品999久久久久久| 青青草字幕AV| 国产高清不卡视频| 久久久亚洲精品电影免费看| 色婷婷亚洲婷婷| 午夜啪啪片| 午夜舔阴达高潮视频免费看| 啊v在线观看视频| 国产91丝袜在线播放蜜月| 欧美精品双插| 红桃视频高潮| 台欧久久精品视频| 夜夜嗨AV一区天天| 天天综合精品| 99久久婷婷国产综合| 欧美亚洲另类在线蜜桃| 国产亚洲中文不卡二区| 2017人人操,人人摸| 爱妃国产亚洲视频中文字幕| 国产视频人人网| 久久精品店| 老司机深夜影院18未满| 91成人高清在线观看| 亚欧无码线免费观看视频| 蜜臀久久99精品久久久久久-DVD原版全| 美女上床网站| 99久在线精品99re8| 亚洲第一男人天堂| 综合五月天| 91天堂| 老女人综合网| 亚洲欧洲日本精品中文a∨| 亚洲乱码精品一区二区| 无码免费在线观看黄色片| 精品久久无码午夜福利| 操逼视频色| 色色香蕉| aaa一级黄片| 久久久久人妻| 熟妇熟女一区二三区| 密臀AV在线| 欧洲亚洲人人爽爽视频| 青青草在线视频美女| 人妻熟妇一区二区三区| 97超碰色色| 国产丝袜美女在线一区| 国产区性爱在线视频秋霞豆| 四虎影院成年人片| 四月丁香婷婷| 亚洲黄色网址| 午夜一区| 在线看的av| 日韩女模中文造逼| 丝袜内射| 久久久久久久9最新免费视频观看| 99久在线精品99re8| 亚洲美女精品九九视频| 2024年最新色情网站在线观看| 超碰人人操97碰| 日韩AC| 宅男91视频在线播放| 亚洲激情天堂网| 超碰97人妻自拍| 欧美一区二区三区不卡高清视频| 制度丝袜99| 六月婷婷综合| 久久曰曰| 国产又粗又长又大的视频| 91视频精品| 亚洲制服欧美另类内射| 91丝袜美腿网站| 人澡逼| 少妇熟女1区2区3区| 美中日韩无码| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 久久国产精品熟女人妻| 91亚洲人| 国产1769在线| 欧美亚洲AN| 久久精品熟妇丰满人妻99| 日韩国产欧美伦理在线| 99久久这里只有精品| 亚洲欧美91√| 美国人人操人人操| 99re不伦| 9999久久久| 国产成人无码网站在线视频| 素颜老阿姨乱情色| 波多野结衣AV无码一区| 青青草操逼逼视频| 一区二区三区一亚洲中文字幕、综合区灬 | 人人操人人93| 日韩精品99999| 97综合久第一页| 日韩性爱1级片视频| 国产夜夜艹| 九九草| 国产成人网址| 久久超碰天天| 亚洲操逼视频网站| 中国黄色特级精品一区二区三区片| 无码高清操逼| 久久久久久久久久久97| 久久久久久9| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 天天综合色| 99热在线只有精品| 操逼日韩无码| 成人性爱av.com| 91在线限制级| 人人干黄色| 亚洲欧洲无码97久久精品| 91视频精品| 色女综合| 搞中出久久| 亚洲吊色| caoni国产亚洲av| 玖玖草久草99蜜月一区二区三区| 思思热久久成人| 亚洲鸥美色图| 国产一区二区三区精品观看啪| 国产av色网| 爱我干综合| 超碰97男女| 东京热激情视频一二三区| 欧美在线91| 人人爱夜夜爱| 久久久久久一日韩字幕无码| 日韩精品国模| 日韩黄色电影网站| 天美传媒婬乱在| 美日韩一卡二卡三卡免费人妻精品| 亚洲人成网站7777| 美性中文综合网| 思思在线免费视频| 热热色中文无码| 岛国小电影| 少妇一级婬片免费放一级a性色.| 日本精品久久久久久久| 婬女免费一二三区A片| sewuyueav| 九九久久久九九| 色在线亚洲视频www| 国产夫妻性生活视频| 五月丁香综合激情| 伊人一级免费黄片| 国产91专区| 一道本久久棕合爱| 操逼视频色| 日韩欧美麻豆 | 夜夜欢天天干| 日本黄色裸日本黄色裸体 | 操曰本熟女| 国产乱码久久| 精品久久久久av影院| 日韩有码中文字幕女同性恋 | 欧美精品成人在线播放| 久久精品电影在线| 熟妇精品juliaannAV| 日本色色色| 国产精品日韩在线一区| 欧美操逼录像国产黄色国产| 久久熟妇五十路一区| 亚洲女毛多水多21P| av中亚| 久久超碰天天| 大香蕉伊人在线成人AV在线观看 | 99少妇| 亚洲日韩乱码中文无码蜜桃臀网站 | 中文字幕丝袜人妻| 色播综合| 国产精品无码久久久久2028| 国产熟妇 码视频户外直播| 日本黄页视频在线观看| 亚洲射综合网| 首页亚洲国产高跟丝袜诱惑视频 | wuyechaopeng| 久久久久久久久久久999| 亚洲男人天堂Av| 久久99午夜精品一区人妻| 激情小说图片亚洲首页| 午夜精品久久久久久久久久久久久| 天天摸天天舔天天操| 青青11操操操操操操操操| 天天日天天屌天天操| 99热综合| 国产热RE99久久6国产精品首| 激情抓乳插进去啪啪啪日韩| 国产又粗又大硬免费色网视频| 99精品无码| 智利AV在线网| 欧美色综合图片| 婷婷另类小说| 精爱久久| 美女97超碰| 久久久爆乳翘臀一线天伦理视频| 国产一区二区在线电影| 午夜精品五区| 国产精品制服丝袜清纯唯美| 国产又色又粗又黄又爽| 亚洲中文字幕熟女| 少妇久久久久久| 欧美 亚洲 第一页 | 天天综合色| 亚洲国产欧美中文永久| 久草福利在线资源站| 日韩丰满熟妇| 免费操逼视频下载| 熟女突然公开看18禁影片| 欧美日韩操操操| 亚欧成人中文字幕一区| 国产综合网站在线播放 | 欧美亚洲中文| 家庭乱伦麻豆| 日韩欧美大片免费高清啪啪| 98人妻精品一区二区色欲| 青娱乐福利99| 国产一区自拍欧美日韩| 99精品欧美一区二区三区桃色| 一级特黄aaa大片在线观看成人一级片在线观看| 91精品人妻偷情| 成人无码在线视频网站| 国产女人与拘做受视频免费 | 日本久久久精品电影| 超碰偷拍| 久久啊啊啊| 青娱乐老司机视频| 凹凸久久人人| 91站街按摩店老熟女熟女| 五月天偷拍| 亚洲男人的天堂一区二区| 91欧美长吊| 久久AV色| 夜夜躁狠狠躁日日躁av| 国产91福利小视频在线观看| 午夜.DJ高清在线观看免费7| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 欧美男人天堂| 日韩激情啪啪啪| 国产精品久久久鸭无码的功能| 日本欧美成人片AAAA| 熟妇人妻一区二区三区| 亚洲精品蜜桃久久久久久久| 欧美日韩系列| 午夜精品久久一区二区| 国产精品久久久久亚洲av| 综合色色婷婷| 亚洲五区熟女| 97国产精选| 国产亚洲色停停久久99精品91| 色色色欧美| www.夜夜操| 97超碰资源网| 97亚洲中文| 操逼视频亚洲| 伊人97色天使| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 亚洲激情色片| 老妇女91| 九九探花视频在线观看| 久久久久中出| 欧美丝袜美女电影一二三四区| 免费观看一区| 欧美网站免费| 久久曰曰| 久久久精品网| 青青操狠狠撩| 免费操逼视频下载| 亚洲日韩一区电影| 亚洲天堂资源| 国产精品成人在线| 国产高清吃奶免费视频网站| 婷婷视频在线免费观看| 色一射色一射| 日韩91网| 午夜超爽| 日韩精品人妻系列无码天堂| 乱操9999| 女同女同恋久久级三级| 天美传媒国产原创中文字幕亚洲欧美另类| 伊人色综合欧美| 狠狠操,使劲操| 五月婷在线| 欧美日本不卡| 久久这里是精品| 国产精品肉丝自拍| 精品熟女呻吟久久91| 久久香蕉综合一本到3atv| 亚洲色图美腿丝袜| 国产精品福利资源在线尤物| 色五月婷婷麻豆在| 99超碰网| 91精品国产麻豆国产自产在| 亚州高清av| 大香蕉久| 精品中文日韩字幕视频| 亚洲一区二区三区不卡国产欧美| 美女露胸露屁股| 亚洲成人贴图| 国产欧美精品日韩区二区麻豆天美| 大香蕉99re| 婷婷丁香五月天亚洲天堂网| 色偷综合| 欧美另类综合久久| 中 文字幕一区二区三四 五 区日 日 骚| 91成人高清在线观看| AVE乱伦| 深夜操逼网| 96麻豆精品一区二区三区| www.久久99| 啊啊啊啊免费视频| 男人天堂2019亚洲| 久操国产在线| h在线看免费版在线看| 欧美日韩狠狠爱| 中文字幕五区| 狠狠爱综合网| 久久偷拍人| 一本大道不卡一二三区| 日本中文字幕一区| 亚洲黄网在哪免费看| 欧美少妇高潮视频| 91精品综合久久久久久五月丁香| 日本亚洲嫩草影院啪啪| 偷拍 精品另类 凸凹了四区| 网友自拍第一页| 国产AV天美| 成人八戒网站| 美女91网| 成年男人的天堂| 青青伊人这里只有精品| 后入日本1234| 亚洲精品 大香蕉| 一区二区三区免费视频入口| 先锋音影AV| 日本在线激情一区二区三区| 久久久久久久97| 日少妇亚洲版| 国语av最新自产拍在线观看| 精品国产乱子伦一区二区三区,精品一| 91色综| 99老司机精品视频在线观看| 天天操熟妇| 国产精品久久久视频| 涩涩这里只有精品视频| 综合少妇网| 国产91精品久久久久久久网曝门| 嫩草影院在线观看精品| 啊啊啊啊好爽好舒服一区二区易域| 亚洲情色1区| 玖玖资源综合在线视频| 91精片| 老熟女中文字幕高清| 丁香六月婷婷| 成人自拍三级在线观看| 色欲久久99精品久久| 日韩情色视频| 国产精品久久久久无码AV会牛| 91精品人妻一区二区三区蜜桃| 草伊人高潮喷水超碰| 操逼网站地址| 岛国黄片网站| 欧美日韩不卡传媒| 污污污8888| 97舔舔| 黄片www.| 精品日韩中文在线| 欧美色涩| 欧美啪啪啪91| 999 久久久| 中文字幕一二三区| 偷拍亚洲高清图片| 99热这里只有精| 51一区二区三区| 沈阳熟女高潮对白视频| 99热一区二区三区四区| 色综合20p| 久九九九九九九热| 99性爱| 欧美一区二区三区日韩| 操逼日批| 精品人妻中文字幕高清| 国产suv一区二区三区6| 国产精品3| 99re这里只有精品3| 久久精品国产精品一区 | 美女高潮视频91| 日本午夜福利影院| 在线国产福利网址导航| а√天堂资源官网在线资源| 色吊丝 日日骚 清纯唯美| 色妺妺在线视频| 99热色这里只有精品| 天天综合香 ld视频| 欧美91久久久久| 超碰97综合在线| 日韩成人私密一级精品av| 亚洲熟女性高潮久久久| 97综合在线| 欧美色997| 蜜臀久久99精品久久久久| 搡老女人老91二区| 欧美92| 亚洲日韩乱码中文无码蜜桃臀网站| 久妇网| 午夜男人av| 日逼国产| 宅男午夜在线视频| 成人午夜小视频手机在线看| 国内毛片无码一级毛片| 亚洲免费精品一区| 九一国产精品| 久久久久久久九九九九| 国产高清在线自在拍69| 欧美日韩中国x| 91久久青青草原精品| 国产女人和拘做爰视频 | 啊啊啊啊啊啊在线| 最好看的中文字幕在线2018| 丁香五月激情啪啪| 亚av顶级裸体一区二区三区四区五区| 欧美自拍网| 免费亚洲黄色视频在线观看| 久久大黄片| 夫妻日逼| 五月丁香黄色网| 艹我哪美一区无码| 无码精品久久| 国产精品久久久久久照片| 国产日本顶级一区二区三区| 99天天超碰| 亚洲天堂久久久久久粉红视频| 欧在线一二区| 成人自拍三级在线观看| 久久91精品国产9丨久久分亭| 5252色欧美在线| 久久精品一区二区三区不卡| 1024午夜激情男人的天堂| 久久久久久免费电影| 日韩欧美传媒一区国产| 2017av无码免费无线播| 精品一区二区三区18| 久久久久久久| 五月天精品| 国产欧美另类久久久精品课程| 91激情| 日韩性爱1级片视频| 性吧在线视频| 欧美熟女丝袜| 天天干夜夜肏| 区二区亚洲婷| 青草香蕉网| 伊人久久亚洲色欲综合网站 | 高潮毛片无遮挡高清免费| 噜噜噜在线视频| 亚洲天堂男人天堂网| 高清无码在线播放网站| 久午视频| 久热大香蕉| 99热在线只有精品| 亚洲熟女中文字幕在线| 欧美综合色综合| 中文字幕狠狠玩| 日本精品一区二区三| www.男人天堂| 天美传媒精品一区二区三区| 成年人网站在线免费观看| 久久男女激情视频网站| 人人澡综合涩| 九九成人精品| 高清国产无码av| 久久有碼| 思思热国产在线视频| 五十路人妻在线| 全免费a敌肛交毛片免费| 国产成人精品日本视频| 东京热男人的天堂网| 伊人视频| 国产成人亚洲精品无码古代早漏男| 欧美嗯啊……在线观看视频免费| 久久精品电影| 亚欧免费| 操香逼| 97免费在线| 99热在线观看| 夜夜嗨一区| 日韩人成网站在线播放| 天堂精品小草| 婷婷久久久| 久久久天堂| 国产综合操逼高清| 人人九九精| 人妻中文字幕日韩电影| 人妻丝袜肏逼| 欧美一级A片不卡视频。| 青青草手机在线免费观看| 丰满人妻aA一区二区三区| 久久五月份| 啊啊啊啊啊啊啊啊在线观看| 久久久久久久久久8888| 97 国产精品| 国产麻豆一级精品视频| 男女香蕉一区二区| 天天搞在线综合网| 97视频新免费| av日韩在线观看电影| 99在线啪| 92人人操人人| av影院十区| 九九九久久久| 99色在线观看| 91性感在线| 超碰久久中文| 日本性感人妻91| 97玖玖超碰| 17c在线成人免费A片观看| 亚洲大色堂| 久操凹凸视频| 欧美日韩国产色五月综合在线| 丰满少妇乱子伦精品无| 日韩色图 一区二区| 久久艹逼视频| 丰满人妻-区二区三区免费看| 26uuu欧美| yw尤物av无码点击进入麻豆| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 97免费在线视频在线观看| 色色毛片| 裸体美女久久久| 蜜桃无码AV一区二区| 亚洲高清欧美总合| 欧洲中文字幕| 日欧亚洲二三区大片不卡| 99精品综合久久久久五月天| 91国产精品在线看| a片偷拍视频| 亚洲天天精品| 97国产超湿| 欧洲成人性爱视频| 亚洲区 欧美区| 久久久久久久久久久久久久久乱码 | 99色视频| 亚洲精品乱码线路中文字幕| 亚洲欧美91√| 狠狠躁AV| 人妻日日干| 另类图片综合| 激情五月天校园春色网| 六月丁香网| 一级片在线观看高清无码| 久九九九九九九九热| 欧美综合色站| 99操视频| 先锋激情∨在线视频播放| 97伦综合| 欧亚久久偷拍视频| 九九热在线精品视频| 国产精品女生av| 综合 亚洲 欧美| 亚洲综合射| 黄色大片一区二区密桃丝袜| 亚洲少妇综合在线播放| 91操操操操| 疯操AV| 中文字幕久久精品一区| 男人夜色天堂ss| 强奸乱伦大香蕉网| 久久双插| 大香蕉99999| 另类专区加勒比| 久久超碰免费的| 国产伦精品一区二区三区视频女| 亚洲国产婷婷在线播放| 欧美人妻色| 国产高清亚洲日韩一区| 在线观看一卡二卡| 日韩综合成人免费视频| 成人国产二区三区在线,男女精品。| 午夜福利区| 91人人爽人人爽| 五月丁香色色网| 极品尤物女神在线观看| 网站A V在线| 精品熟女呻吟久久91| 超碰社区97| 香蕉av一区二区三区| 麻豆婷婷成人一二三| 亚洲,欧美,春色,另类| 精品亚洲国产成人AV制服丝袜| 久久久久久69国产一区二区| 亲子敌伦对白在线播放| 有码专区最新中文字幕有码| 激情小说亚洲视频| 亚洲一二三| 欧美精品双插| 男人干美女| 少妇与黑人高潮在线| 91色碰| 欧美日韩m| 啊…啊…操我用力操我| 婷婷色中文字幕| 欧美日韩第一页| 国产成人无码久久精品| 偷拍自拍在线视频观看| 色天使亚洲综合在线观看| 370p日韩欧美亚洲精品| 欧美区亚洲区偷拍区 | 婷婷丁香久久| 性色av婷婷久久一区二区点复制| 成人美女av| 人人摸人人入| 久肏视频字幕| 亚洲视频一二区| 麻豆AV短剧| 人妻人人澡人人爽人人| 欧美日韩少妇色情| 日韩啪啪啪视频| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 啊v在线观看视频| 酒色综合网| 东北女人操逼| 精品国产三级av韩国在线| 美日韩男女操屄视频| 青青青国产手线观看视频2| 亚洲日韩精品久久久久一区壹牛 | 欧美影音在线| 伊人四虎综合| 超碰超碰超碰超碰的大鸡吧操黑丝袜|