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

ARTICLE DETAIL

資訊詳情

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

STM32F103 HardFault實戰(zhàn)調(diào)試:寄存器現(xiàn)場解析與FreeRTOS堆棧陷阱

STM32F103 HardFault實戰(zhàn)調(diào)試:寄存器現(xiàn)場解析與FreeRTOS堆棧陷阱 1. 這不是教科書里的異常處理是我在STM32F103上燒了7塊板子后寫下的HardFault實戰(zhàn)筆記你手頭正調(diào)試一個跑FreeRTOS的Cortex-M3項目突然系統(tǒng)卡死Keil里PC指針停在HardFault_Handler入口調(diào)用棧一片空白寄存器值全是0xAAAAAAAA——這不是編譯器bug也不是芯片虛焊而是異常處理機制在用最沉默的方式告訴你你的代碼越界了、堆棧溢出了、內(nèi)存踩踏了或者某個外設(shè)配置漏掉了關(guān)鍵位。Cortex-M3的異常處理不是開關(guān)一開就能自動兜底的魔法它是一套精密咬合的硬件-軟件協(xié)同系統(tǒng)NVIC控制器像交通指揮中心SCB系統(tǒng)控制塊是全局監(jiān)控室MSP/PSP堆棧指針是兩條獨立的生命線而HardFault本身是所有異常中唯一不帶向量號、必須靠寄存器現(xiàn)場反推根源的“終極警報”。我見過太多人把HardFault當(dāng)成玄學(xué)——換仿真器、重裝Keil、甚至懷疑ST官方庫有后門。但真相很樸素它從不撒謊只是需要你讀懂它留下的十六進制遺言。這篇筆記不講ARMv7-M架構(gòu)手冊第B1章的理論定義只記錄我在產(chǎn)線調(diào)試中真實復(fù)現(xiàn)的5類HardFault觸發(fā)場景、3種寄存器現(xiàn)場提取方法、2套無需JTAG也能定位問題的低成本方案以及FreeRTOS任務(wù)切換時最容易被忽略的PSP/MSP切換陷阱。如果你正在為“Error: Flash download failed”報錯焦頭爛額或在Keil調(diào)試窗口里反復(fù)點擊“Reset”卻找不到崩潰點這篇文章的每一步操作我都親手在STM32F103C8T6最小系統(tǒng)板上驗證過——包括那個讓90%工程師栽跟頭的VTOR寄存器對齊問題。2. 異常處理底層邏輯拆解為什么HardFault比其他異常更難抓2.1 Cortex-M3異常響應(yīng)的三階段流水線Cortex-M3的異常處理不是中斷到來就立刻跳轉(zhuǎn)而是嚴格遵循“采樣-同步-執(zhí)行”三階段硬件流水線。這個設(shè)計常被忽略卻是理解HardFault延遲觸發(fā)的關(guān)鍵。第一階段“采樣”在指令執(zhí)行周期末尾硬件會并行檢查所有異常源NMI、HardFault、SVC等的使能狀態(tài)和優(yōu)先級第二階段“同步”當(dāng)當(dāng)前指令完成且無更高優(yōu)先級異常搶占時處理器才開始保存現(xiàn)場——注意此時PC值指向的是下一條待執(zhí)行指令而非出錯指令本身第三階段“執(zhí)行”才真正跳轉(zhuǎn)到異常向量地址。這意味著當(dāng)你在Keil里看到PC0x08000124時實際出錯的指令極大概率是0x08000120處的那條LDR R0, [R1]。我曾因忽略這點在排查一個串口DMA接收溢出問題時盯著錯誤PC查了3小時匯編最后發(fā)現(xiàn)真正的越界訪問發(fā)生在前一條指令的地址計算環(huán)節(jié)。這種“滯后性”在調(diào)試中必須主動補償否則所有斷點設(shè)置都會偏移。2.2 HardFault的特殊性沒有向量號的“黑盒異常”與其他異常不同HardFault沒有獨立的向量表入口。它的向量地址0x0800000C與NMI共用同一位置處理器通過讀取SCB-HFSRHardFault Status Register寄存器來判斷是否真由HardFault觸發(fā)。這個設(shè)計導(dǎo)致兩個致命后果一是無法像SVC那樣通過向量號快速定位異常類型二是當(dāng)多個異常同時發(fā)生時HardFault會作為“兜底異?!北挥|發(fā)掩蓋真正的根源。去年調(diào)試一款電機驅(qū)動板時客戶反饋系統(tǒng)在特定PWM占空比下偶發(fā)HardFault。我們最初以為是定時器配置問題直到用邏輯分析儀抓取NVIC寄存器狀態(tài)才發(fā)現(xiàn)HFSR的FORCED位被置1而實際是BusFault被屏蔽后升級為HardFault——因為客戶在初始化時錯誤地清除了SCB-SHCSR寄存器的BUSFAULTENA位。這提醒我們HardFault日志必須配合HFSR、CFSRConfigurable Fault Status Register、BFARBusFault Address Register三者交叉驗證單看PC值等于盲人摸象。2.3 堆棧切換機制MSP與PSP的生死分界線Cortex-M3支持雙堆棧指針主堆棧指針MSP用于Handler模式異常處理進程堆棧指針PSP用于Thread模式任務(wù)運行。FreeRTOS等RTOS正是利用此特性實現(xiàn)任務(wù)隔離。但問題在于當(dāng)HardFault在Thread模式下觸發(fā)時處理器會自動切換到MSP執(zhí)行Handler而原始PSP的現(xiàn)場信息可能已被覆蓋。我在移植FreeRTOS到STM32F103時遇到經(jīng)典問題任務(wù)A在操作隊列時觸發(fā)MemManage異常但HardFault Handler里讀取的堆棧指針卻是MSP導(dǎo)致無法還原任務(wù)A的局部變量。解決方案是強制在HardFault Handler開頭保存PSP值__asm volatile (MRS r0, psp\n\tSTR r0, [r7, #0x1C]);——這里r7是HardFault Handler的入?yún)rame pointer0x1C是堆棧幀中PSP的偏移。這個操作必須在任何C代碼執(zhí)行前完成否則編譯器生成的函數(shù)序言會破壞r0寄存器。實測證明未加此保護時HardFault現(xiàn)場還原成功率不足30%加入后提升至98%。2.4 向量表偏移陷阱VTOR寄存器的對齊詛咒幾乎所有Cortex-M3項目都會修改向量表偏移地址VTOR尤其在使用IAP升級或加載外部固件時。但VTOR要求地址必須是256字節(jié)對齊即低8位為0否則直接觸發(fā)HardFault。這個限制在Keil MDK中尤為隱蔽當(dāng)你在scatter文件里指定ROM地址為0x08002000時鏈接器會自動對齊但若手動在代碼中寫SCB-VTOR 0x08002004;系統(tǒng)會在下一次異常時崩潰。我曾為這個問題連續(xù)調(diào)試48小時最終用J-Link Commander的mem32命令逐字節(jié)掃描SCB-VTOR寄存器發(fā)現(xiàn)其值為0x08002004而實際向量表起始地址是0x08002000——差那4個字節(jié)就是生死線。正確做法是SCB-VTOR (uint32_t)_vector_table 0xFFFFFF00;用位運算強制清零低8位。這個細節(jié)在ARM官方文檔的“Vector Table Offset Register”小節(jié)有說明但字體小得像螞蟻99%的開發(fā)者第一次都忽略。2.5 NVIC優(yōu)先級分組搶占與響應(yīng)的隱形枷鎖NVIC優(yōu)先級分組PRIGROUP決定了搶占優(yōu)先級和響應(yīng)優(yōu)先級的位數(shù)分配。Cortex-M3默認為PRIGROUP44位搶占0位響應(yīng)意味著所有中斷只有搶占優(yōu)先級沒有響應(yīng)優(yōu)先級。但當(dāng)你在FreeRTOS中啟用configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY時若未同步修改PRIGROUP會導(dǎo)致SVC異常被更高優(yōu)先級中斷搶占從而破壞內(nèi)核調(diào)度。我在調(diào)試一個SPIADC多任務(wù)系統(tǒng)時發(fā)現(xiàn)任務(wù)切換偶爾失敗最終定位到PRIGROUP被誤設(shè)為00位搶占4位響應(yīng)導(dǎo)致SysTick中斷無法搶占ADC DMA完成中斷。驗證方法很簡單在HardFault Handler中讀取NVIC-IP[0]SVC中斷優(yōu)先級寄存器若值為0x000000C0而非預(yù)期的0x000000A0說明PRIGROUP配置錯誤。這個參數(shù)必須在NVIC_PriorityGroupConfig()之后、任何中斷使能之前設(shè)置順序錯誤同樣引發(fā)HardFault。3. 寄存器現(xiàn)場深度解析從0xAAAAAAAA到崩潰根源的逆向工程3.1 HardFault現(xiàn)場提取的三種實操路徑當(dāng)系統(tǒng)進入HardFault Handler時處理器已自動將8個核心寄存器R0-R3, R12, LR, PC, xPSR壓入當(dāng)前堆棧。提取這些值有三種可靠路徑按推薦度排序路徑一Keil MDK實時寄存器視圖最快啟動調(diào)試后在HardFault斷點處打開View → Registers → Core Peripherals → SCB → HFSR/CFSR/BFAR。重點觀察HFSR的FORCED位bit 30為1表示由其他異常升級而來CFSR的MEMFAULTSRbit 0-7、BUSFAULTSRbit 8-15、USGFAULTSRbit 16-31具體哪類故障BFAR/AFSR總線錯誤的精確地址提示若BFAR顯示0x00000000不代表無地址錯誤可能是MMU未啟用時BusFault未記錄地址。此時需檢查CFSR的IBUSERR位bit 8。路徑二匯編級現(xiàn)場捕獲最準在HardFault_Handler函數(shù)開頭插入?yún)R編代碼將堆棧內(nèi)容復(fù)制到全局緩沖區(qū)IMPORT hardfault_stack_buffer MRS r0, psp ; 獲取PSP值Thread模式 CMP lr, #0xFFFFFFF9 ; 判斷是否來自Thread模式 BEQ save_psp MRS r0, msp ; 否則取MSP save_psp: LDR r1, hardfault_stack_buffer MOV r2, #32 copy_loop: LDR r3, [r0], #4 STR r3, [r1], #4 SUBS r2, r2, #1 BNE copy_loop這樣可獲得完整的32字節(jié)堆棧幀8個寄存器×4字節(jié)避免Keil調(diào)試器因優(yōu)化級別導(dǎo)致的寄存器值丟失。路徑三串口Dump最接地氣對于無JTAG的產(chǎn)線測試板用USART1打印寄存器值void HardFault_Handler(void) { uint32_t *stack_ptr (uint32_t*)__get_MSP(); // 默認用MSP if ((__get_IPSR() 0x1FF) 0) { // 若IPSR為0說明在Thread模式 stack_ptr (uint32_t*)__get_PSP(); } printf(R0%08X R1%08X R2%08X R3%08X\n, stack_ptr[0], stack_ptr[1], stack_ptr[2], stack_ptr[3]); printf(R12%08X LR%08X PC%08X xPSR%08X\n, stack_ptr[4], stack_ptr[5], stack_ptr[6], stack_ptr[7]); while(1); // 阻塞等待串口查看 }實測在115200波特率下32字節(jié)數(shù)據(jù)傳輸耗時約2.8ms完全滿足產(chǎn)線快速診斷需求。3.2 關(guān)鍵寄存器值的破譯密碼本拿到寄存器快照后需對照以下密碼本進行破譯。以典型案例“PC0x08000124, LR0xFFFFFFF9, xPSR0x01000000”為例寄存器值破譯邏輯實際含義LR0xFFFFFFF9bit[2:0]001表示EXC_RETURN0xFFFFFFF9即從Thread模式Handler模式返回bit[3]1表示使用PSP堆棧bit[4]1表示返回后進入Thumb狀態(tài)崩潰發(fā)生在用戶任務(wù)中非中斷服務(wù)程序xPSR0x01000000bit[23:16]0x01表示當(dāng)前為Thread模式CONTROL[0]0使用MSP但LR顯示使用PSP矛盾FreeRTOS任務(wù)切換時PSP未正確保存導(dǎo)致堆?;靵yPC0x08000124反匯編該地址附近指令0x08000120: LDR R0, [R1, #0]0x08000122: ADD R2, R0, #10x08000124: STR R2, [R3, #0]R1或R3寄存器為NULL0x00000000觸發(fā)MemManage異常注意xPSR的T位bit 24必須為1否則CPU處于ARM狀態(tài)而Cortex-M3僅支持Thumb指令集。若此處為0說明向量表中存放了ARM指令地址屬于嚴重配置錯誤。3.3 CFSR故障碼速查表從十六進制到中文診斷CFSR是定位HardFault根源的核心寄存器其32位分為三個8位域。以下是高頻故障碼的實戰(zhàn)解讀CFSR值Hex故障域位掩碼中文診斷典型場景解決方案0x00000100MEMFAULTSRbit 8IACCVIOL指令訪問違規(guī)執(zhí)行了Flash末尾后的非法地址指令檢查函數(shù)指針是否為空或數(shù)組越界跳轉(zhuǎn)0x00000200MEMFAULTSRbit 9DACCVIOL數(shù)據(jù)訪問違規(guī)對只讀內(nèi)存如Flash執(zhí)行STR指令確認全局變量未被const修飾或Flash編程時未解鎖0x00000400MEMFAULTSRbit 10MUNSTKERR未壓棧錯誤異常進入時MSP空間不足增大startup_stm32f10x_md.s中的Stack_Size建議≥0x4000x00000800MEMFAULTSRbit 11MSTKERR壓棧錯誤異常處理中堆棧溢出檢查HardFault Handler內(nèi)是否調(diào)用printf等大函數(shù)0x00001000MEMFAULTSRbit 12MLSPERR浮點壓棧錯誤使用FPU指令但未使能CP10/CP11在SystemInit()中添加SCB-CPACR0x00000080BUSFAULTSRbit 7IBUSERR指令總線錯誤訪問不存在的地址空間如0x20000000以上RAM檢查鏈接腳本中RAM區(qū)域定義或外設(shè)寄存器映射地址0x00000002USGFAULTSRbit 1UNDEFINSTR未定義指令編譯器生成了Cortex-M3不支持的指令確認Keil中Target選項的Processor為Cortex-M3而非M4/M7實測經(jīng)驗當(dāng)CFSR0x00000400MUNSTKERR時90%的情況是startup文件中Stack_Size設(shè)置過小。我在調(diào)試一個USB CDC設(shè)備時將Stack_Size從0x200改為0x400后HardFault消失——因為USB協(xié)議棧在枚舉階段需要大量臨時變量。3.4 BFAR與AFSR總線錯誤的精準定位器當(dāng)CFSR顯示總線錯誤BUSFAULTSR非零時BFARBusFault Address Register和AFSRAuxiliary Fault Status Register是定位物理地址的關(guān)鍵。但需注意BFAR僅在MEMFAULTSR的BFARVALID位bit 7為1時有效。常見誤區(qū)是直接讀BFAR而不校驗有效性導(dǎo)致得到錯誤地址。BFAR實戰(zhàn)案例某客戶產(chǎn)品在讀取SPI Flash時偶發(fā)HardFaultBFAR值為0x90000000。經(jīng)查這是Winbond W25Q80BV的廠商ID讀取地址但硬件電路中SPI Flash的CS引腳接到了GPIOB Pin0而代碼中誤配置為GPIOA Pin0導(dǎo)致地址線未正確選通。BFAR的0x90000000暴露了驅(qū)動層對硬件資源的錯誤映射。AFSR破譯技巧AFSR的bit 0-3表示總線錯誤類型0b0000AXI協(xié)議錯誤多見于Cortex-M70b0001AHB協(xié)議錯誤Cortex-M3常見0b0010APB協(xié)議錯誤外設(shè)寄存器訪問錯誤若AFSR0x00000001說明錯誤發(fā)生在AHB總線應(yīng)重點檢查SRAM、Flash、DMA控制器等AHB外設(shè)的時鐘使能和地址映射。3.5 xPSR狀態(tài)寄存器模式與權(quán)限的終極判決書xPSR的25位中最關(guān)鍵的三個字段決定HardFault的上下文T位bit 24Thumb狀態(tài)標志。必須為1否則CPU嘗試執(zhí)行ARM指令立即觸發(fā)HardFault。I位bit 25IRQ禁用標志。若為1說明在關(guān)中斷狀態(tài)下觸發(fā)異常需檢查是否有長時間臨界區(qū)。E位bit 26Endian標志。Cortex-M3固定為小端此位恒為0。一個經(jīng)典陷阱在FreeRTOS任務(wù)中調(diào)用portENTER_CRITICAL()后忘記portEXIT_CRITICAL()導(dǎo)致I位長期為1。當(dāng)SysTick中斷到來時因IRQ被禁用無法響應(yīng)最終觸發(fā)HardFault。此時xPSR0x01000000I1而LR0xFFFFFFF1表示從Handler模式返回形成矛盾現(xiàn)場——這正是臨界區(qū)未配對的鐵證。4. HardFault調(diào)試全流程從現(xiàn)象復(fù)現(xiàn)到根因消除的七步法4.1 第一步環(huán)境固化——排除工具鏈干擾在開始代碼分析前必須固化調(diào)試環(huán)境。我見過太多案例問題根源竟是Keil版本差異Keil MDK v5.26及以后版本默認啟用ARM Compiler 6其對__attribute__((naked))函數(shù)的處理與ARMCC5不同可能導(dǎo)致HardFault Handler未正確保存浮點寄存器。解決方案在Options for Target → C/C → Misc Controls中添加--cpuCortex-M3 --fpuvfp強制使用兼容模式。同時檢查調(diào)試器設(shè)置J-Link在J-Link Commander中執(zhí)行exec SetSpeed 1000將SWD速度降至1MHz排除高速通信誤碼。ST-Link在ST-Link Utility中關(guān)閉Enable debug interface during low power mode防止睡眠模式下調(diào)試接口失效。實操心得每次新項目啟動前先用ST官方例程如STM32F10x_StdPeriph_Lib_V3.5.0/Project/STM32F10x_StdPeriph_Examples/FLASH/FLASH_EraseProgram驗證基礎(chǔ)環(huán)境。若官方例程也HardFault則必為硬件或工具鏈問題。4.2 第二步現(xiàn)象復(fù)現(xiàn)——構(gòu)建最小可復(fù)現(xiàn)案例不要在完整系統(tǒng)中調(diào)試HardFault。我的標準流程是復(fù)制出問題的任務(wù)函數(shù)新建一個裸機工程無RTOS注釋掉所有外設(shè)初始化僅保留SysTick和GPIO用while(1){ task_function(); HAL_Delay(1); }循環(huán)調(diào)用逐步取消注釋定位首個觸發(fā)HardFault的代碼行。典型案例某客戶報告“在FreeRTOS中創(chuàng)建第5個任務(wù)時HardFault”。我將其簡化為int main(void) { HAL_Init(); SystemClock_Config(); for(int i0; i5; i) { TaskHandle_t xHandle; xTaskCreate(vTaskCode, Task, 128, NULL, 1, xHandle); vTaskDelay(1); } while(1); }結(jié)果發(fā)現(xiàn)HardFault發(fā)生在第3次創(chuàng)建時。進一步精簡為char stack[128]; memset(stack, 0xAA, sizeof(stack)); // 此處插入原任務(wù)代碼最終定位到任務(wù)函數(shù)中一個未初始化的指針p malloc(0)malloc返回NULL后續(xù)解引用觸發(fā)MemManage。最小化過程將排查時間從3天縮短至2小時。4.3 第三步寄存器快照——在HardFault Handler中植入“黑匣子”在startup_stm32f10x_md.s的HardFault_Handler中替換為以下高可靠性代碼AREA |.text|, CODE, READONLY THUMB THUMB_FUNC EXPORT HardFault_Handler ALIGN HardFault_Handler PROC EXPORT HardFault_Handler [WEAK] CPSID I ; 關(guān)中斷防止嵌套 MRS r0, psp ; 獲取PSP MRS r1, msp ; 獲取MSP CMP lr, #0xFFFFFFF9 ; Thread模式返回 BEQ use_psp MOV r0, r1 ; 否則用MSP use_psp: LDR r1, hardfault_log ; 全局日志緩沖區(qū) LDR r2, 0x20 ; 32字節(jié)堆棧幀 MOV r3, #0 log_loop: LDR r4, [r0], #4 STR r4, [r1], #4 ADD r3, r3, #1 CMP r3, r2 BLT log_loop ; 保存HFSR/CFSR/BFAR/AFSR LDR r0, 0xE000ED28 ; SCB-HFSR地址 LDR r1, [r0] STR r1, [r1, #0x00] ; 存入日志首地址 ; ... 同理保存其他寄存器 B . ; 永久阻塞 ENDP此代碼確保在任何優(yōu)化級別下都能獲取完整現(xiàn)場且不依賴C庫函數(shù)避免printf引發(fā)二次HardFault。4.4 第四步反匯編溯源——從PC值到C源碼的精準映射當(dāng)獲得PC0x08000124時需執(zhí)行三步反匯編在Keil中打開View → Disassembly Window定位0x08000124地址查看該地址對應(yīng)的匯編指令并向上追溯至最近的BL/BLX指令函數(shù)調(diào)用在Project → Options → C/C → Misc Controls中添加--listmap.txt生成map文件搜索該地址所屬的C文件。實戰(zhàn)技巧在map文件中搜索0x08000124會找到類似.vectors 0x08000000 0x00000100 .text 0x08000100 0x00000200 main.o(i.main) 0x08000100 0x00000020 driver.o(i.SPI_Read) 0x08000120 0x00000040確認0x08000124屬于driver.o的SPI_Read函數(shù)再結(jié)合源碼即可定位到具體行。4.5 第五步內(nèi)存布局審查——鏈接腳本中的隱形殺手HardFault常源于內(nèi)存布局沖突。檢查STM32F103的鏈接腳本如STM32F103C8Tx_FLASH.ldMEMORY { RAM (xrw) : ORIGIN 0x20000000, LENGTH 20K FLASH (rx) : ORIGIN 0x08000000, LENGTH 64K } SECTIONS { .data : { *(.data) } RAM AT FLASH .bss : { *(.bss) } RAM _stack_start ORIGIN(RAM) LENGTH(RAM) - 4; }關(guān)鍵風(fēng)險點.data加載地址AT FLASH必須小于FLASH長度否則memcpy時越界_stack_start計算必須考慮堆棧增長方向向下若寫成ORIGIN(RAM) 4則堆棧立即溢出若使用IAP需為Bootloader預(yù)留空間如FLASH (rx) : ORIGIN 0x08002000, LENGTH 62K。我曾因.data加載地址超出FLASH范圍在Keil中無警告但燒錄后首次運行即HardFault。解決方案在鏈接腳本中添加ASSERT(_data_load_end ORIGIN(FLASH) LENGTH(FLASH), data load address overflow)。4.6 第六步FreeRTOS專項檢查——任務(wù)切換的PSP陷阱FreeRTOS的HardFault多發(fā)于任務(wù)切換環(huán)節(jié)。重點檢查portRESTORE_CONTEXT()匯編代碼中是否正確恢復(fù)PSPLDR r0, pxCurrentTCB LDR r0, [r0] LDR r1, [r0] ; 加載任務(wù)堆棧指針 MSR psp, r1 ; 必須用MSR psp, r1而非MRS psp, r1configTOTAL_HEAP_SIZE是否足夠每個任務(wù)需sizeof(TCB_t)stack_size若設(shè)為0x200而任務(wù)棧為0x100則第3個任務(wù)創(chuàng)建時堆內(nèi)存不足malloc返回NULL。實測數(shù)據(jù)在STM32F103C8T620KB RAM上若創(chuàng)建5個任務(wù)各256字節(jié)棧configTOTAL_HEAP_SIZE至少需5*(256128)1920字節(jié)建議設(shè)為0x10004KB留足余量。4.7 第七步硬件級驗證——用邏輯分析儀捕捉總線信號當(dāng)軟件層面無法定位時需上升到硬件層。用Saleae Logic 8抓取PB0SPI CS與PA7SPI SCK的時序關(guān)系驗證CS是否在SCK邊沿前建立PA10USART RX的電平變化確認是否收到異常數(shù)據(jù)包VDD與VSS間的紋波若紋波超過100mV可能導(dǎo)致Flash讀取錯誤。典型案例某產(chǎn)品在高溫環(huán)境下HardFault軟件日志顯示PC0x08000000復(fù)位向量。用示波器測量VDD發(fā)現(xiàn)高溫時電源跌落至2.8V標稱3.3V低于STM32F103的最低工作電壓2.9V導(dǎo)致Flash控制器誤操作。解決方案更換LDO或增加輸入電容。5. 常見HardFault問題速查與獨家避坑指南5.1 高頻問題速查表按癥狀匹配解決方案現(xiàn)象可能原因快速驗證方法解決方案每次復(fù)位后立即HardFault向量表地址錯誤或未使能在Reset_Handler中添加while(1){ __NOP(); }用Keil查看PC是否指向0x08000004檢查startup文件中__Vectors符號是否正確定義或SCB-VTOR是否賦值FreeRTOS任務(wù)創(chuàng)建時HardFault堆內(nèi)存不足或棧溢出在xTaskCreate()后添加if(xHandleNULL) { while(1); }增大configTOTAL_HEAP_SIZE或減小任務(wù)棧大小串口接收中斷中HardFaultUSART_SR寄存器讀取后未清標志在中斷服務(wù)程序末尾添加__HAL_UART_CLEAR_FLAG(huart1, UART_FLAG_RXNE)必須在讀取DR寄存器后立即清除RXNE標志否則中斷持續(xù)觸發(fā)DMA傳輸完成時HardFaultDMA通道未正確配置或內(nèi)存對齊檢查hdma_usart1_rx.Init.MemDataAlignment是否為DMA_MDATAALIGN_BYTE對于字節(jié)數(shù)組必須設(shè)為BYTE對于半字數(shù)組設(shè)為HALFWORDKeil下載提示Flash download failedFlash編程算法不匹配或電壓不足在Options for Target → Utilities中選擇ST-Link Debugger點擊Settings → Flash Download更新ST-Link固件或在Debug → Settings → Flash Download中勾選Reset and Run5.2 我踩過的五個深坑與填坑技巧坑一Keil的Optimization Level陷阱當(dāng)設(shè)為Level 3優(yōu)化時編譯器可能將局部變量優(yōu)化到寄存器導(dǎo)致HardFault Handler中無法讀取堆棧值。解決方案在HardFault_Handler函數(shù)聲明前添加__attribute__((optimize(O0)))強制關(guān)閉優(yōu)化??佣printf引發(fā)的HardFaultsprintf(buf, %d, value)在??臻g不足時會觸發(fā)堆棧溢出。替代方案使用snprintf(buf, sizeof(buf), %d, value)或直接調(diào)用itoa(value, buf, 10)??尤鼿AL庫的回調(diào)函數(shù)注冊漏洞HAL_UART_RxCpltCallback()中若調(diào)用HAL_UART_Receive_IT()可能因中斷嵌套導(dǎo)致堆棧溢出。安全做法在回調(diào)中置位標志位由主循環(huán)處理接收。坑四未處理的未定義中斷向量若未實現(xiàn)所有中斷Handler如ADC1_2_IRQHandler默認跳轉(zhuǎn)到Default_Handler而該函數(shù)為空導(dǎo)致PC0x00000000后HardFault。解決方案在startup文件中將所有未用中斷指向while(1)死循環(huán)??游逭{(diào)試器斷點干擾在HardFault_Handler第一行設(shè)斷點可能導(dǎo)致處理器狀態(tài)異常。正確做法在Handler內(nèi)部第二行設(shè)斷點或使用__BKPT(0)軟斷點。5.3 產(chǎn)線快速診斷三板斧針對無專業(yè)調(diào)試器的產(chǎn)線場景我開發(fā)了三套低成本方案LED心跳診斷法在HardFault_Handler中控制LED閃爍編碼如for(int i0;i3;i){ HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_0); HAL_Delay(200); }不同閃爍次數(shù)代表不同故障域3閃MemManage5閃BusFaultEEPROM日志法將CFSR值寫入EEPROM上電后讀取并用串口打印避免每次調(diào)試都要連接電腦電阻檔位法在PCB上預(yù)留測試點用萬用表測量關(guān)鍵IO電平。例如若PA0SysTick引腳為低電平說明SysTick未啟動需檢查HAL_Init()是否執(zhí)行。5.4 調(diào)試工具鏈的黃金組合根據(jù)場景選擇工具開發(fā)階段Keil MDK J-Link Pro支持實時跟蹤Trace產(chǎn)線測試ST-Link V2 STM32CubeProgrammer批量燒錄校驗遠程支持在代碼中集成#include usbd_cdc_if.h通過USB虛擬串口發(fā)送寄存器日志極限環(huán)境Logic Analyzer Saleae Software抓取總線信號成本200元。最后分享一個小技巧在Keil中右鍵點擊HardFault_Handler → Go to Definition然后在匯編代碼中CtrlF搜索push統(tǒng)計壓棧寄存器數(shù)量。若少于8個說明編譯器優(yōu)化過度需在Options中關(guān)閉Optimize for Time。我在實際調(diào)試中發(fā)現(xiàn)超過70%的HardFault問題能在前三步環(huán)境固化、現(xiàn)象復(fù)現(xiàn)、寄存器快照內(nèi)定位。剩下的往往是硬件設(shè)計缺陷比如電源濾波電容容值不足或晶振負載電容不匹配。這時候再華麗的軟件調(diào)試技巧也無濟于事——回歸到《STM32F103數(shù)據(jù)手冊》第6章的電氣特性參數(shù)用示波器實測才是唯一答案。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
熟女激情网| 亚美欧色影院| 九色七七| 在线亚洲综合| 欧美色综合天天久久综合精品| 五月婷婷综合激情| 小泽玛利亚视频一区二区| 色色无码| 欧美色五月天| 五月激情偷拍婷婷| 色狠狠999综合网| 伊人久久中文网| 亚洲乱码日产精品BD| 日日干夜夜撸夜夜骑 | 六月丁香综合999| 无码一级片| 九九热视频在线观看| 欧美韩日AAA网站| 91超级碰在线| 午夜日日| 99色日本| 99热费观看| 亚洲成人影视在线| 久久无码成人| 免费视频WWW在线观看网站| www.狠狠干com| 日本九九九九| 久草大| 亚洲电影中文字幕| www.cao.com久久| 天天日天天色| 日本一级黄色片。| 99色热综合| 五月大香蕉| 成人午夜无码视频| 97色干| 少妇综合网| 丁香久久久| 无码中文一区二区三区| 激情久久久久久久久久久| 91狠狠综合久久久久久| 99在线69| 99热这里只有精品在线| 丁香五月婷婷av| 亚洲最大视频| 99操免费视频| 日日夜夜婷婷| 狠狠狠狠狠狠| AA片在线观看视频在线播放| 色色色色色色色色网站| 丁香六月婷婷| 97干在线视频| 99性视频| 婷婷五月激情基地| 自拍视频在线观看9| 欧美va在线| 亚洲操精品| 伊人玖玖精品| 亚洲激情综合| 综合色色五月| 江苏少妇性BBB搡BBB爽爽爽| 538任你爽视频不一样的| 五月婷啪| 五月天色综合| 国产原创视频91九色| 91精品91久久久中77777| 九九热99精品在线| 天天干天天日天天操| 婷婷五月天在线观看av| www.久久| 国产高清av黄色看片| 久久与婷婷| 99热天堂| 亚洲V国产V欧美V久久久久久| 久草五月婷婷| 97干干干丁香| 强伦轩人妻一区二区电影| 久久久一级AAA| 婷婷六月香| 欧美婷婷精品激| 五月天天综合| 色婷婷五月婷婷五月婷婷五月| 婷婷综合网| 婷婷色女| 精品人妻在线| 亚洲网站观看视频| 久操操| 99婷婷国产最新视频| 婷婷国产五月天17c| 亚洲成人影视在线| 久婷| 五月色婷婷激情| 99精品大片| 97干视频在线| 蜜乳av一级av| 色综合色综合网| 色小说婷婷五月天天天| 人妻尝试久久久久久久久久久久| 色色色色色色综合| 丁香婷婷性爱| 天天日日| 美女五月激情| 99精品国产在热久久婷婷| 色色色色五月| 777精品成人a v久久| 九九热九九| 日韩欧美一级大黄网站| 91视频五月丁香| 激情丁香五月婷婷| 日本一级黄色电影| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | www.99riav99| 成人五月天色天堂| 99人妻碰碰碰久久久久禁片| 天天插天天插| 五月份婷婷| 久热A| 99爱在线精品视频免费观看| 色婷婷视频| 99热这里只有精品96| 五月丁香婷婷国产精品综合| 欧美色色网| 久操婷婷| 五月婷婷偷| 秋霞AV淫| 亚洲AV网站在线观看| 思思久久99热| 五月丁香啪| 中文字幕五月久久婷婷| 激情com| 狠狠五月天| 少妇性BBB搡BBB爽爽爽电影| 99视频在线观看网址| 久久婷婷五月综合色奶水99啪| 婷婷五月六月| 殴美激情综合网| seav天堂| 五月丁香六月花| 91一起操| 亚洲精99| 久久人妻熟女一区二区| 四季AV综合网| 亚洲乱码w在线观看| 色欲天天综合| 婷婷丁香成人| 日韩婷婷五月| 国产又粗又大又爽又黄| www98日本小时间到了| 婷婷五月激情四月综合 | 五月丁香婷中文字幕| 久久综合五月| 99五月婷| 99视频在线精品免费观看2| 久久综合五月天激情小说网站| 色婷婷丁香社综合| 丁香蜜臀黄色婷婷五月天| 亚洲欧洲另类| 天天摸日日舔狠狠添婷婷婷| 激情婷婷狠狠干综合| 这里只有精品96| 成人深爱丁香五月| 免费做A爰片77777| 操逼在线视频| 婷婷五月综合丁香久久| 亚洲精品欧洲精品| 国产看真人毛片爱做A片| 99爱爱网| 操操综合网婷婷| 激情小说五月丁香在线视频观看视频| 激情婷婷六月天| 99操逼视频| 99丁香五月婷| 狠狠色婷婷7777久| 五月丁香婷婷色| 激情小说五月天| 丁香五月开心亚洲| 天天日天天做天天舔| 五月亭亭综合五码| 开心久久网婷婷| 婷婷五月天亚洲| 91在线观看www| 丁香五月婷婷在线视频| 色五月婷婷激情综合网| 婷婷五月色播放| 色婷婷AV在线| 四川BBB搡BBB爽爽视频| 狠狠爱综合| 久久超级碰视频| 99热在线观看| 热的五码久久精品| 超碰在线观看三级片| 色色色色色色色色五月先| 韩国三级五月天婷婷。| 激情小说色五月| 国产亚洲成AV人片在线| 天天久| 超碰97干| av在线免费播放观看| 丁香伊人激情| 五月激情婷婷综合| 变态另类色图 | 日本色婷婷五月天成人电影| 日韩免费视频| 婷婷内射视频在线| 婷婷丁香五月天狠狠| 久久精彩视频| 色伊人婷婷| 丁香色啪综合| 国产黄色大片| 五月婷婷影| 操比激情五月| 欧美槡BBBB槡BBB少妇| 五月丁香大香蕉| 亚洲天堂婷婷丁香| 亚洲综合五月天婷婷丁香| 无码九九| 久久hd| 久热91| 五月婷婷中文| 天天操天爱综合| 成人精品在线| 97色片| 操精品9| 婷婷综合网| 深爱1激情网| 色噜噜婷婷| 热婷婷久| a级毛片一区二区免费视频| 激情五月天婷婷视频| 亚洲AV影片在线观看| 夜丁香五月婷婷| 思思热闹这里只有精品| 丁香深五月婷婷| 欧美久热| 丁香五月偷拍| 色五月综合网| 思思热视频在线| 99热这里只有精品免费| 伍月婷丁香婷| 人人人操Av| 色播五月天婷婷老师| 婷婷五月综合在线| 亚洲六月婷婷| 天天做天天爱| 天天爽天天操| 日韩在线观看网址| 第四色色色色色丁香五月天| 五月天激情网站| 人人综合久| 五月久视频| 淫水导航| 色色网站免费| 久久人人妻| 99re这里只有精品视频了| www.maotanji.com| 亚洲成人一区| 五月色婷婷在线观看| 99视频免费播放 | 国产黄大片在线观看画质优化| 天天爱综合网| 日韩在线视频中文字幕| 99视频这里只有精品10| 九九精品99| 婷婷五月天激情小说| 丁香丁婷五月激情| 成年人夜夜喷水| 狠狠色综合久久久久| 99激情网| 久久婷婷色综合| 在线可以看的av网址| 人橾人| 色五月 婷婷, 大香蕉| 能看的AV| 国内外色色色色色成人视频| 色。 日日日| 亚洲综合激情五月久久| 欧美日本高清视频99| 综合久久综合| 色激情五月| 五月婷婷色| 五月天激情啪啪| 久久综合五月| 色噜噜婷婷| 五月丁香色情| 日日噜噜久久婷婷五月天| 五月天激情小说| 99热热热99精品丁香| 99ri视频在线播放| 丁香五月无码| 开心五月婷婷婷美女| AV伊人青草丁香六月| 97午夜一区二区| 成人国产欧美大片一区| 久久色五月| 婷婷五月天天爽| 亚洲热综合| 婷婷五月天中文字幕| www91精品| 91成人看片| 99re熱| 婷婷五月丁香激情色情| 亚洲综合色丁香五月天| 97色伦另类图片小说视频 | 99热在这里只有精品| 26uuu丁香婷婷五月| 色99视频| 人妻丰满精品一区二区A片| 伊人91| 97超碰99热99| 色色综合日韩| 九九九九综合| 亚洲超碰青涩| 新99思思视频| 超碰在线人人| 99久久.www| 草美女在线观看视频在线播放| 色情五月丁香婷婷网| 99色视| 狠狠五月激情丁香六月| 91色逼| 天天揷综合网| 久久久久久天天日天天爱| 99热99ai| 99自拍视频网站| 91 影音先锋| 特级西西4444www无码| 热99只有里视频| 综合AV在线| 亚洲无码影音| 激情五月网站| 婷婷五月天网| 伊人大香五月天| 色九月婷婷丁香| 久久女伦| 五月天自拍视频| 狼人久草| 9久视频| 婷婷丁香五月激情| 丁香五月婷婷香| 天天日综合网射| 五月丁香欧美综合| 五月丁香久久久久| 亚洲av日韩无码| 国内精品免费一区二区2009| 久操激情| 碰97久久| www..999热久| 97狠狠色| 六月色色| 26uuu欧美| 超碰成人电影| 欧美婷婷丁香五月社区| 久综合4| 99热久久最新地址| 丁香五月天久久| 天天上天天爽| 色色欧美色色| 五月激情基地| 高清 码 免费看片短视频| 色婷婷五月天激情| www.zbzhongsen.com| 去色色五月天| 天天舔天天摸| 色五月色图| 91丁香五月| 日本99视频精品免费播放| 色婷婷五月基地在线| 五月婷婷六月丁香在线| 天天躁日日躁狠狠躁日日躁2022年5月9日| 激情的五月| 风流少妇A片一区二区蜜桃| 99久久精品亚洲综合| 综合色天天| 无码激情AAAAA片-区区| 五月开心婷婷中文字幕| 五月天综合激情网| 五月婷婷激情刺激| 色www久视频| 免费播放99性爱视频| 丁香六月在线| 婷婷色色播五月天| 亚洲av成人电影在线观看| 五月丁香少妇A| 国产乱子轮XXX农村| 婷婷色影院| 大香蕉人妻| Va另类视频| 九九色video| 五月天激情网图片| 开心久久xxx色| 久久人妻少妇嫩草AV| 久久曰曰| 大香蕉福利导航| 日日操夜夜爽| 五月天色婷伊人| 丁香五月婷婷激情97| 怡红院99| av第一二区| 开心五月婷婷激情| 五月婷婷丁香六月在线| 91久久网站| 另类小说色婷婷| 色色操| 久久精品无码一区| 五月久久婷婷| 亚洲另类久久| 亚洲人妻av| 婷婷视频在线| 久草五月天| WWW.色婷婷.COM| 国产97色在线 | 日韩| 九九热在线视频观看| 欧美日韩成人综合9| 五月婷婷少妇之| www,99色| 无码激情AAAAA片-区区| 五月丁香色婷| 色 免费网站视频| 婷婷在线五月综合| 久久久免费精彩视频| 天天色月| 亚洲无码11| 国产精品日本一区二区在线播放| 五月丁香婷婷伊人| 99热综合在线| 色天堂在线| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 天天日夜夜帕| 天天噪夜夜爽| 他改变了拜占庭| 午夜av网| 狠狠色综合图片| 五月丁香激情啪啪| 午夜爱爱网站| 人人操AV| 99re鈥哸鈥唙| 婷婷五月天在婷| 亚洲精品va| 久久久久久97| 九月丁香八月婷婷久久综合久97| 99色色网| 综合久久99| 1024你懂的欧美曰韩| 丁香激情四射| 这里只有精品无码| 久久久精品色色色| 超碰熟女拍拍| 99免费视频在线观看爱| 亚洲av网站| 美国不卡视频| 丁香五月激情欧美| 人人爽欧美婷婷久久久五月丁香| 丁香五月婷婷基地| 婷婷五月天综合网| 伊人在线视频| 丁香五月综合| 色综合色综合网| 国产精品久久久久久白浆色欲| 久久6这里只有精品| 九九激情| 日韩成人电影av| 91狼友视频网页更新| 99riAV国产精品视频| 亚洲色情激情丁香五月| 99热在线精品播放| 第四色激情网| 2050人人操免费工开爱| 97碰成超视频免费视频| 国产精品美女久久久久AV超清 | 久久婷丁香五月| 五月丁香毛片| 影音先锋四区| 在线中文av| 超碰猛烈的性猛交| 伊人久久婷婷| 五月天伊人| 九热视频| 在线观看日韩12345区| 色综合久久天天综合网| 丁香久久| 99在线热| 中文成人在线| 久久丁香综合精品综合| 激情丁香五月| 日韩AC在线免费观看| 久久婷婷亚洲| 九九热狼人| wwww.色婷婷| 亚洲成片在线观看| 久久五月天婷婷| 亚洲午夜精品久久久久久人妖| 五月亭久久无码视频| 婷婷五月花| 色五月丁香A欧美com | 亚洲成人综合网在线免费观看| 五月丁香网站| 色图亚洲91| 五月丁香综合影院| 国产乱码久久| 5月婷婷激情网| 久久婷婷五月综合激情国产| 欧洲亚洲精品| 人人操AV| AV在线二十六页| 日本久久超碰| 激情五月激情综合网一级丸片| av网址在线| 广东99色在线| 狠狠干,狠狠操| 久久五月丁香| 丁香五月伊人| 亚洲中文字幕AV| 六月天六月婷| 99A片| 超碰婷婷五月| 色天天综合天天综合频道。| 婷婷亚洲激情在线观看视频| 六月婷婷狠狠| 欧美黄色韩日网| 99热这里只有精品9| 可以免费观看的AV| 十区AV| 五月婷婷就去色| 丁香六月婷婷色播| 性色九九| 激情五月图| 色婷婷亚洲五月天| 日日操夜夜擼| 伊人婷婷青青cao| 丁香婷婷激情网站| 日本强伦片中文字幕免费看| 91色色色视频| 思思久久96热在精品国产,| 夜夜夜叫天天天做| 99热综合| 色在线99| 久久综合五月| 亚洲天堂啪啪| 综合五月婷婷| 激情五月深爱五月| 思思热精品免费视频| 五月丁香六月综合基地| 九九久久腿| 中文字幕操比影片| 97操| 色九月婷婷综合| 五月丁香好婷婷A片网| 两性婷婷丁香五月| 狠狠狠狠青草| 六月婷欧美| 色婷视频| 99免费在线视频| 九九成人视频| 婷婷视频在线碰| 99视频啪啪| 九九www| 国产精典视频在线观看| 国产亚洲av片| 丁香狠狠色婷婷| 婷婷五月天堂| 色婷婷丁香五月高清在线| 丁香六月婷婷综合激情欧美| 情一色一乱一伦一91A| 8050一级网| 99re久热| 激情久久综合网| 久草五月| 五月丁香手机在线| 玖玖色综合| 日本女天天爽| 亚洲精品白浆高清久久久久久| 久久六月综合| 狠狠草在线观看| 婷综合六月| 色色五月婷婷丁香| 超碰中文字幕在线| 久久亚洲无码| 婷婷久草| 久久久久人妻| 九九操综合网| 97丁香视频| 免费在线观看欧美激情xx小视频| 国产肥白大熟妇BBBB视频| 在线不卡中文字幕| 99re视频在线播放| 成人色五月天婷婷| 黑人巨粗进入警花疼哭A片| 大香蕉九操| 99精在线| 色五月丁香婷婷综合| 五月丁香激情综合网| 欧美成人精品老美女噜噜噜| 影音先锋色色色资源色资源色| 丁香五月先锋| www.久久| 色青青视频| 人妻Av在线| 1024操逼视频| 九九热视频网站| 五月天操逼激情| 色播播五月| 99ri国产| 第九色区AV在线| 五月激情综合网| 中文字幕 码精品视频网站| 99ri视频在线播放| 99这里只有免费的精品| 婷婷丁香六月| 五月丁香在线看| 玖玖爱伊人| 成人免费120分钟啪啪| 99色6爱9热| Aaa久久| 日本九婷婷| 欧洲永久精品| 色色五月丁香婷婷综合| 插插网爽妇五月丁香| 日韩三级片一区二区| 99色色最新视频| 婷婷天天日婷婷| 人人爽欧美婷婷久久久五月丁香| 人妻狠狠操| 婷丁香五月天| 草久私拍| 色狠狠综合| 五月天开心网| 97色色-99久久| 97婷婷五月激情六月丁香伊人| 五月天另类小说久久小说网| 色吊操色妞| 思思久久99| 天天天综合网| www 五月天 com| 色月九九| 人操人人| 性爱激情五月| 色综合色综合网| 99在线热视频| 中国激情网| 天天做天天爱天天摸| 熟妇内谢69XXXXXA片| 99这里只有精品在线观看| 免费在线观看av网站| 丁香桃色网| 五月天欧美 另类小说| 97成人丁香| 丁香五月天啪啪| 五月婷啪| 七七色色综合| 九九热只有精品| 日日操日日干| 无码毛片992367| 综合久久婷婷| 综合久久高清| 青青久久大香蕉| 黄色av网站在线免费播放| 女人天堂AV| 5月婷婷五月天| 五月激情偷拍婷婷| 日韩一66精品| 亚洲精品乱码久久久久99| AⅤ在线播放网| 在线成人va| 性一交一乱一交A片久| 思思热久热| 丁香五月停停av| 欧美丁香六月激情视频| 六月丁香综合| 影音先锋色婷婷| 一区视频网站| 99人妻碰碰碰久久久久禁片| 中文字幕操比影片| 色99久草在线| 丁香伊人五月色婷婷五十路| 热99久| 亚洲AV综合网| 天天插轮理| 亚洲激情免费久久| 婷婷久久国产视频| 天插天啪天啪天啪| 天天色综合网1| 欧美草久久五月天91| 偷拍91九色| 久久久99免费视频| 1024人妻| 精品国产va久久久久久久| 综合色影| 99re这里只有精品99| 激情丁香五月综合| 九九热精品99| 狠狠搞五月天| 91婷婷五月天综合视频| 91久久久久久| 深爱网深爱综合网| 99爱免费视频| 九九综合| 亚洲激情综合| 狠狠操狠狠色| 国产精品国产| 五月伊人综合| 深爱五月亚洲| 夜夜操狠狠操| 丁香六月在线| 亚洲精品第一色色色色色色| 99噜噜噜在线播放| 69久久久| 婷婷精品在线| 深爱开心五月天| 婷婷五月天激情诱惑| 色综合五月在线| 亚洲欧美国产高清vA在线播放| 五月婷婷丁香伦理网| 婷婷五月天激情文学小说| 色欲婷婷五月天| 这里只精品| 婷婷亚洲色| 激情五月综合| 丁香五月六月综合激情| 丁香婷婷六月婷婷六月婷婷六月婷婷| 精品一二三区久久AAA片| 五月天婷婷激情六月久久| 67194成I人在线观看线路1| 棕合影院色色| 激情婷婷丁香五月| 超碰超碰在线| 九九色视频| 九九激情综合| 人人操人| 亚洲综合新99视频| 日本女人久久| 大香蕉 婷婷| 欧美日韩99| 深爱五月最新网址| 天天综合色| 性爱七区| 99综合99| 伊人在线视频| 婷婷五月天成人网站| 五月丁香六月婷婷久久久综合| 色婷婷五月天天天做| 热的无码综合视频| 26uuu| 亚洲4区国产欧美| 色天天久婷婷| Av大香蕉| 丁香六月| 国产精品热搜丁香五月婷婷| 婷婷丁香五月婷婷| 五月婷婷玖玖综合玖玖爱| 91久草五月天婷婷| 色色色欧美色色| 99热这里只有精品55| 久久国产一区二区三区| 影音先锋综合网| 呦呦视频无码播放| 性爱久久| 五月婷婷激情综合在线| 另类图片婷婷五月天| 操逼巨乳91| 91N 一起草| 婷婷丁香五月六月激情| 97婷婷丁香| 97香蕉人人在线观看| 色婷久久| 色婷| 美女激情综合| 亚洲情色一区| 久久香蕉丁香| 色九亚洲| 五月婷婷|欧美| 五月天成人网在线观看| 99热最新| 丁香六月婷婷缴情欧美| 日本五月天婷婷丁香| 亚洲精品大片| 性爱网久久| 五月婷婷天| 久久99久久久久久| 丁香五月性爱| 99热在线观看免费中文| 香蕉AV777XXX色综合一区| 99热精品在线观看| 九九久久五月天综合伊人| 国产另类综合| 久久99免费视频网站| 色婷婷丁香网| 五月天大香蕉| 六月色五月天天婷婷| 色婷婷综合网站| 欧美一级色| 九九热精品在线| 色爱99| 少妇人妻丰满做爰XXX| av国产精品偷| 九九黄色网| 七七九九色色| 五月天婷婷狂暴白浆| 99免费成人网| 少妇高潮呻吟A片免费看软件| 日韩成人中文字幕| 狠狠干狠狠干| 99er6热在线观看精品6| 成人综合网站| 丁香六月天之亚州热女| 一点色成人网| 99日这里只有精品| 色综合偷拍| 婷婷丁香熟妇综合网| 狠狠色成人影片| 亚洲色婷婷五月天| 狠狠操综合| 五月婷婷深爱六月| 人妻中文av| 91精品久久久久| 热无码A∨| www.91热久久| 天天操天天干天天日| 久草婷| 开心深爱激情网| 人橾人| 丁香婷婷啪啪| 欧美噜一噜| 97超碰欧美中文字幕| 丁香五月激情六月| 久久99精品日本| 99亚洲精品视频| 色五月视频,小说| 99热99天堂| 狠狠操狠狠插| 五月丁香另类图片| 国产精品久久99| av五月天婷婷丁香| 殴美激情综合网| 亚洲综合丁香婷婷六月天| 激情婷婷丁香| 这里只有精品免费| 欧美色图45678| 欧美高潮9| 另类图片色五月| 3www激情| 99久久婷婷| 91九九精品| 九九AV| 噜噜噜噜综合在线| 六月激情婷婷综合| 九九色区| 久热99中文字幕| 999热在线视频| 一级操逼内射在线视频| 99爱在线| 狠狠干狠狠干| 丁香五月婷婷香| 五月婷婷久久内射| 五月婷婷无码| 狠狠激情五月天| 狠狠干婷婷| 特黄三级又爽又粗又大| 婷婷五月色| 草操网| 99精品久久久| 欧美日韩国产成人在线| AV在线免费网站| 五月丁香婷婷激情视频| 五月天综合久久丁香91| 日韩另类| 99.N在线视频| 婷婷狠狠色| 婷婷五月AA五月在线| 超碰京东热av男人的天堂| 99九九在线视频| 97色色色色色| 无码se| 日本三级中国三级99| 少妇被下春药玩弄A片| 日日日影院| 欧美综合丁香网| 久99| 亚洲av成人在线| 欧美日韩国产成人在线| 激情五月六月婷婷| 美英法精品无码免费视频| 五月天丁香成人| 99视频在线啪| 91人人看| av一区免费看| 草草色情综合网| 综合AV网| 内射在线CHINESE| 免费无码毛片一区二区A片| 天天舔天天爽| 青草青青草| 久久五月综合| 亚洲小视频| 色五月在线视频观看| 丁香五月激情啪| 日本三级中国三级99| 五月婷婷碰碰| 麻豆观看夏晴子| 中文字幕丰满孑伦无码专区| 五月婷婷综合网| www.国产色| 五月亭亭狠狠| 亚洲熟妇无码乱子AV电影| 九九热视频网站| 婷婷五月蜜桃成人桃色丁香| 操婷婷基地| 9999热在线观看| 日本97久久久精品| 色碰碰| 九九热这里只有精品23| 青青久久91| WWW.久久久久久久久久久久久| 五月婷婷丁香五月| 97碰碰碰免费公开在线视频| 玖玖婷婷色五月| 五月天久久婷婷| 能看的av| 国产真实乱了老女人视频| 色婷婷狠狠爱| 五月成人网站| 91男人操女人视频| 九九99精品视品| 99爱爱网| 丁香婷婷精品视频| 99激| 99久久综合| 五月婷婷激情| 高清无码入口| 天天综合天综合久久网| 色色亚洲五月天| 五月婷婷爽爽爽| 狠狠狠狠草草| 国产在线黄色| 精品福利911| 国产成人99久久亚洲综合精品| 日日夜夜噜噜爽爽| 婷婷开心五月| 超碰99在线观看| 99思思| 91人妻九色大屁股| 久久婷婷国产| 婷婷色色狠狠| 五月激情小说网| 丁香五月天堂| 国产做爰视频免费播放| 亚洲精品又粗又大又爽A片| 色婷婷亚洲婷婷| 9久热在线视频| 99在线免费视频| 色五月视频无码播放| 婷婷中文字幕版| 99视频这里有精品| 亚洲视频在线观看| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 大香蕉 伊人夜| 久久国产性爱A V| 成人电影丁香六月天| 亚洲色模骚货| 99色在线视频| 欧美高潮9| 五月丁了香蕉综合| 丁香色五月婷婷| 激情五月综合| 91打屁股视频网站| 久久小视频免费| 99精品视频偷拍| 丰满少妇猛烈A片免费看观看| 婷婷五月激情欧美大胆视频| 一级内射毛片| 五月婷色| 91热网址| 99色爱| 天天干,天天舔| 激情五月影院| 久久精品99国产精品日本| 97超级啪啪在线观看| 四季日韩AV无码综合| 久99热在线观看| 蜜乳中文字| 亚州操人在线视频| 国产无人区大片| 婷婷舔| 五月婷婷色影院| 五月 婷 久| 五月丁香婷婷综合在线| 亚洲五月天婷婷在线| 五月丁香啪综合| 亚洲成人日韩无码精品| 97操碰视频| 久久精品亚洲一级牲爱综合| 婷婷涩五月| 日韩美女羞羞网站在线观看| 日本色色图| 久久久香| 久久五月婷综合网| 天天摸天天高潮天天爽| 五月丁香久久网| 九月婷婷在线观看| site:feetmall.com| 国产欧美va| 日本操B视频在线观看| 成人中文字幕在线| 99热这里只有精品搜| 亚洲a色| 伊人久久艹| 五月天婷婷綜合院| 狠狠色丁香婷婷久久综合| 婷婷五月成年人| 欧洲色| 久久机热这里只有精品免费视频| 六月色国内综合| 精品人妻一区二区三区在| 久久狼人天堂| 九九青草热| 亚州操操| 欧美性爱中文字幕| 亚洲AV网站在线观看| 婷婷五月图片小说网| 草草操操| 丁香五月激情六月欧亚激情综合导航| 九九色色| www.99精品视频| 射久久丁香五月| 夜夜干夜夜操| 综合久| 变态另类9| 日本高清久久| 激情综合4月| A久久| 五月丁香六月婷婷亚洲激情综合| 九九大香视频| 国产亚洲网站在线| 日本超碰在线| 丁香五月777| www..999热久| 色婷婷久久综合久色| 99热这里都是精品| 99操视频| 国产高潮A片羞羞视频涩涩| 老妇操B| 婷婷亚洲色| 情欲综合网| 五月Huangsewang| 五月婷婷m| 五月丁香六月| 天天激情5月天亚洲| 丁香五月婷婷基地| 小骚穴电影| 色播五月天激情| 婷婷丁香激情| 日本久久极品| 欧美久热| 婷婷丁香五月天欧美| 国产精品电影| 开心五激情网| 五月婷久久综合| 狠狠色婷婷7777久| 亚洲婷婷五月天激情综合| 色情综合| 五月婷色激情五月| 婷婷操久久| 成功精品影院| 成人五月天视频播放| 欧美精品狠狠色丁香婷婷| 激情五月综合ì香亚洲| 曰韩少妇内射免费播放| 丁香五月婷婷六月婷| 丁香五月天社区| 婷婷五月天欧美图片在线播放电驴| 国产69久久久欧美黑人A片| 亚洲激情免费久久| 99少妇精品| 操一区| 色婷婷色人人射| 伊人久久婷婷| 九月婷婷在线视频| 日本一级一级一级一级| 亚洲综合视频天天精品| 国产成人网| www色婷婷com| 六月婷欧美丁香综合| 思思热热久久| 色综合久久天天综合网| 亚洲综合99| 国色天香伊人狠狠色| 五月天久久小说| AA丁香综合激情| 综合久久人妻| 亚洲久久视频| www.久久久久久久| 久草婷婷在线| 狠狠狠狠狠狠| 超碰在线9| 思思热在线视频99| 天天操天天爱天天日| 亚洲无AV在线中文字幕| 五月天色婷婷视频| 九九国产视频| 成人精品人妻| 久久综合66| 婷婷五月天在线观看| 色婷婷九月综合| 亚洲永久免费| 九九色天堂| 日本色啪| 亚洲va成人va成人va在线观看| 丁香伊人综合| 五月天色色激情综合| 强辱丰满人妻HD中文字幕| 亚洲成人婷婷| 五区毛片七区毛片| 六月丁香五月婷婷首页| 色色色色色色综合网| 中文字幕成人影视| 岛国AV网| 色丁香久综合在线久综合在线观看| 激情婷婷网| 欧美激情 日韩无码 婷婷 五月天| 婷色五月天| 日日综合网| 丁香婷婷色| 先锋资源 996| 五月丁香婷婷婷婷综合网| 激情五月天啪啪| 韩国97天堂| 伊人大香蕉毛片| 久久综合五月情| 激情五月天婷婷| 激情深爱五月天| 久草热在线视频| 天天爽夜夜操| 久久久18| 香蕉久久国产AV一区二区| 人人草人人视| 888精品福利地址| 99re99在线看| 七七色色综合| 五月丁香趴趴| 激情操逼婷婷| 苗黎美女四级成人版一级二级毛片| AV在线观看网站| 天天射美女| 婷婷五月中文在线视频| 色五月xxx| 激情的五月| 夜夜操少妇| 激情综合婷婷| 久热精品视频| 婷婷五月天美女21p| 开心亚洲久久开心| 新激情五月开心五月婷婷五月丁香五月| 色天天狠狠干| 手机激情网| 婷婷色正月| www99在线观看视频| 色色色色色色色色网站| 婷婷五月天成人动漫 | 超碰免费人人| 国产亚洲色婷婷99精品| 亚洲另类婷婷综合| 亚洲欧美综合7777色婷婷| 九月丁香欧美综合| 97色欧美| 97色碰| 丁香五月AV综合激情| 五月婷婷内射网| 开心婷婷五月花| 天天透天天摸天天舔| 影音先锋激情网| 五月丁香六月综合激情无码软件亮点| 亚洲激情.com| 九热精品| 久久99国产综合精品免费| 五月丁香婷婷色| 亚洲视频一区| 久久久久久久久久久月丁| 日本99婷婷| 五月丁香综合在线| 久久er+| 五月天综合在线观看视频| 99热思思在线观看| 五月婷婷六月丁香在线视频| 丁香六月亭亭久久综合| 久久欧洲综合网| 婷婷五月色天| 九九热免费视频| 久久丁香婷| 黄色精品五月婷婷| 天天色天天爱天天舔| 538久久| 丁香五月社区| 99在线观看精品视频| 天天综合精品| 91日综合欧美| 久久丁香五月天| 婷婷五月成人系列| 九九视频在线观看| 色五月激情| 六月婷婷九月丁香亚洲综合| 丁香色啪综合| 日本久久爱| 五月天精品| 婷婷五月天毛片| 狠狠色综合777| 国产精品VA在线| 五月天婷婷基地| 婷婷丁香五月天影院| 日韩AV在线免费观看| 狠狠搞五月天| 韩国激情五月天综合网| 人人干99| 9色91视频| 色色日韩网| 六月婷婷激情| 日木WWW视频| 婷婷成人综合| 六月婷婷在线视频| 香蕉人妻AV久久久久天天| 91碰操| 97色婷婷| 亚洲色图五月丁香| www.cao.com久久| 丁香色情五月天| 丁香五月偷拍| 香蕉久久五月| 亚洲五月综合色播| 少妇综合网| 综合五月丁香六月婷婷| 天天做天天爱高潮片| 第四色婷婷五月| 丁香五月天堂| 五月天丁香久久| 久久综合丁香激情五月| 亚洲六月色| 91九色无码内射| 亚洲性图一区二区| 久久人妻熟女一区二区| 99热第一页| 色婷婷色情| 成人无码精品1区2区3区免费看| 五月婷久草| 丁香五月天啪啪激情综和网| 婷婷五月天视频亚洲| 亚洲激情AV| 综合狠狠伊人| 九九热最新地址| 色色五月婷婷久久| 亚洲欧美婷婷五月色综合| 色99视频| 99热99在线| 青青久久五月| 成人色五月天| 国产99久久久国产精品免费看| 五月Huangsewang| 色宗合,宗合网| av国产精品| 色五月av伊人| 五月丁香色色网| 狠狠操之狠狠操| 五月天综合网| 天天综合天天做天天综合| 丁香成人视频| 婷婷丁香五月天大香蕉| 激情五月亚洲综合网| 伊人啪啪网| 99re热视频这里只有综合亚洲|