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

ARTICLE DETAIL

資訊詳情

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

面試高頻考點 02:看門狗 / 啟動模式 / 復(fù)位 / Bootloader 面試要點

面試高頻考點 02:看門狗 / 啟動模式 / 復(fù)位 / Bootloader 面試要點 適用人群和我一樣正在準(zhǔn)備 2026 秋招的嵌入式方向同學(xué)——前幾篇專欄把看門狗、啟動流程、OTA 都講過基礎(chǔ)了但面試官一追問你項目里看門狗怎么用的、“復(fù)位和上電有啥區(qū)別”、“Bootloader 跳轉(zhuǎn)前要做什么”還是容易卡殼讀完你能得到① 把看門狗/復(fù)位/Boot/Bootloader 四塊串成一條面試答線② 知道每塊的標(biāo)準(zhǔn)答法怎么答才不像背書③ 把前面核心概念_03/05、OTA_02/04、低功耗_03里講過的東西擰成面試視角而不是再講一遍原理這一篇是 “面試高頻考點” 專欄的第 2 篇緊接面試_01的下一篇指向。技術(shù)細(xì)節(jié)我不重復(fù)全文只點一句詳見 XXX重點放在為什么這么問、坑在哪、怎么答得讓面試官覺得你是真踩過。一、看門狗面試要點呼應(yīng) 核心概念_05 低功耗_03IWDG/WWDG 的完整原理見嵌入式核心概念/核心概念_05_看門狗詳解.mdIWDG 在低功耗里的影響見低功耗與電源管理/低功耗_03_實測功耗測量與電源樹選型.md。這里只講面試視角。1.1 IWDG vs WWDG——別只會背一個獨立一個窗口面試官最愛開的場“說一下 IWDG 和 WWDG 的區(qū)別?!薄硶鸱ㄊ且粋€獨立一個窗口到此為止。懂了的答法是把這張表甩出來 主動補(bǔ)一句所以我項目里用的是 IWDG因為……對比項IWDG獨立看門狗WWDG窗口看門狗時鐘源LSI獨立低速 RCF4 約 32 kHz精度差17~47 kHzAPB1依賴主時鐘精度高主時鐘掛了仍工作這就是獨立的含義也掛它靠 APB1喂狗時機(jī)超時前任意時刻喂都行必須在窗口內(nèi)喂喂早了也復(fù)位最大超時F4 約32.8 sLSI 32k、PR256、RLR4095短得多ms 級APB1/4096/8 量級檢測什么死機(jī)、跑飛死機(jī) 跑太快程序跑飛可能跑得反而快典型場景通用防死機(jī)安全關(guān)鍵必加嚴(yán)格時序監(jiān)控、關(guān)鍵控制回路?? 最大超時這條新手最容易答錯。F407 的 IWDG 最長約32.8 s不是幾秒這個數(shù)字在低功耗_03里我親手算過4096 × 256 ÷ 32000 ≈ 32.8 s。但 LSI 精度差實際可能只有 20 多秒——這也是為什么想睡 10 分鐘會被狗咬醒。1.2 IWDG 在 Stop/Standby 里繼續(xù)計數(shù)嗎——高頻追問繼續(xù)。這條低功耗_03已經(jīng)踩過坑了這里再強(qiáng)調(diào)一遍因為面試官特別愛追問這一句來篩做過和背過的IWDG 由LSI驅(qū)動進(jìn) Stop 模式后LSI 不停、IWDG 繼續(xù)計數(shù)。進(jìn) Standby 模式IWDG也繼續(xù)只要 LSI 還在IWDG 就停不下來除非整個掉電。軟件啟動 IWDG 后關(guān)不掉只能復(fù)位才能停這是硬件設(shè)計——防止程序跑飛誤關(guān)狗。?? 這就是低功耗_03那句別為了’更安全’隨手開一個把設(shè)備反復(fù)重啟的看門狗的來歷。長睡場景比如 10 分鐘醒一次采個溫開了 IWDG30 秒就被復(fù)位一次設(shè)備永遠(yuǎn)在睡→被狗咬醒→重啟→睡→再被咬根本跑不到你要的周期。長周期睡眠要么別開 IWDG改用 RTC 喚醒 軟件狀態(tài)自檢要么把一次長睡切成若干段 20 s 的短睡每段醒來喂一次狗再繼續(xù)睡。1.3 為什么不能為了安全隨手開 IWDG——這條面試直接給加分接上一條面試官追問那是不是所有項目都該開 IWDG別答是。正確答法“不是。IWDG 是最后防線不是越多越好。我做過一個低功耗氣象節(jié)點10 分鐘醒一次如果開了 IWDG30 秒就被復(fù)位一次根本睡不到 10 分鐘。所以我那個項目沒用 IWDG改用 RTC 定時喚醒 主循環(huán)里做’上次采樣時間戳’自檢——如果距上次采樣超過 15 分鐘還沒采說明卡住了主動NVIC_SystemReset()。安全不是只有看門狗一條路關(guān)鍵是’死機(jī)了能不能恢復(fù)’RTC 軟件自檢在低功耗場景比 IWDG 更合適。”這段話一出口面試官立刻知道① 你真做過低功耗② 你被 IWDG 咬過③ 你知道安全不是教條。比項目必加 IWDG高級多了。1.4 喂狗放哪——主循環(huán) / 單獨任務(wù)別放 ISR這是面試官篩寫過裸機(jī) vs 寫過 RTOS的分水題。裸機(jī)喂狗放主循環(huán)每輪喂一次。/* 平臺STM32 裸機(jī)IWDG 超時 1 s */intmain(void){HAL_Init();SystemClock_Config();MX_IWDG_Init();/* PR64, RLR625 → 約 1 s */for(;;){read_sensor();process_data();HAL_IWDG_Refresh(hiwdg);/* 每輪喂一次 */}}RTOSFreeRTOS用專門的監(jiān)控任務(wù)喂狗其他任務(wù)用標(biāo)志位通知我還活著——只有所有關(guān)鍵任務(wù)都活著才喂。核心概念_05有完整代碼這里不重復(fù)。絕對不能放 ISR主程序死循環(huán)了但定時器中斷還在跑結(jié)果狗永遠(yuǎn)被中斷喂著看門狗永遠(yuǎn)不觸發(fā)復(fù)位——等于沒裝。這是新手最常犯的錯核心概念_05坑 2 講過。?? RTOS 里的進(jìn)階做法監(jiān)控任務(wù)用task_alive[]數(shù)組其他任務(wù)定期置位自己的活著標(biāo)志監(jiān)控任務(wù)全部活著才喂。這樣單任務(wù)死掉也能復(fù)位。這條答出來面試官就知道你不止寫過裸機(jī)喂狗。1.5 “你項目里看門狗怎么用的”——標(biāo)準(zhǔn)答法模板這道題幾乎必問別只說我開了 IWDG。完整答法四段場景什么項目、為什么必須加安全關(guān)鍵遠(yuǎn)程無人值守。選型IWDG 還是 WWDG為什么絕大多數(shù)學(xué)生項目 IWDG 就夠。參數(shù)超時多少、為什么這個值要 主循環(huán)最壞執(zhí)行時間留余量。喂狗策略裸機(jī)主循環(huán)喂 / RTOS 監(jiān)控任務(wù)條件喂。我的標(biāo)準(zhǔn)答法你可以照著改你自己的項目“我做個多士爐控制繼電器加熱那種——程序死機(jī)繼電器會一直閉合有火災(zāi)風(fēng)險所以第一件事就是加 IWDG。選 IWDG 不選 WWDG因為我要的是’死機(jī)了能斷電’不需要嚴(yán)格時序監(jiān)控。超時設(shè) 1 s主循環(huán)最壞一圈約 200 ms留了 5 倍余量。喂狗放主循環(huán)每輪喂一次裸機(jī)工程沒上 RTOS。死機(jī)后最多 1 s 自動復(fù)位斷電人感覺不到但火沒起來。”四段都有有數(shù)字、有余量理由、有安全結(jié)論——這就是踩過坑的味兒。二、復(fù)位類型Reset別只會說上電復(fù)位啟動流程的硬件動作見嵌入式核心概念/核心概念_03_啟動流程詳解.md這里講復(fù)位這個動作本身有幾種類別。2.1 STM32 的復(fù)位家族——一張圖先看清┌─── 上電復(fù)位 POR ─────────┐ │ │ 外部電源剛上 ───────?│ (VDD 從 0 升到閾值) │──? 整片復(fù)位 │ 掉電復(fù)位 PDR │ │ (VDD 跌到閾值以下) │ └──────────────────────────┘ 外部 NRST 引腳 ─────? NRST 復(fù)位 (手動按鍵 / 外部復(fù)位芯片) WWDG 超時 ───────────? 窗口看門狗復(fù)位 IWDG 超時 ───────────? 獨立看門狗復(fù)位 軟件 NVIC_SystemReset() ──? 軟件復(fù)位 Stop/Standby 喚醒 ────? 部分外設(shè)復(fù)位 內(nèi)核復(fù)位(Standby 等同復(fù)位)這么多復(fù)位類型核心區(qū)別就一句話“哪些東西被清零了”。復(fù)位類型內(nèi)核寄存器SRAM時鐘標(biāo)志位RCC_CSRPOR/PDR復(fù)位復(fù)位清零復(fù)位RCC_FLAG_PORRSTBOR欠壓復(fù)位復(fù)位清零復(fù)位RCC_FLAG_BORRSTNRST復(fù)位復(fù)位保留復(fù)位RCC_FLAG_PINRSTIWDG 復(fù)位復(fù)位復(fù)位保留復(fù)位RCC_FLAG_IWDGRSTWWDG 復(fù)位復(fù)位復(fù)位保留復(fù)位RCC_FLAG_WWDGRST軟件復(fù)位復(fù)位復(fù)位保留復(fù)位RCC_FLAG_SFTRSTStop 喚醒僅內(nèi)核部分外設(shè)保留按需恢復(fù)RCC_FLAG_LPWRRSTStandby 喚醒復(fù)位復(fù)位清空復(fù)位查PWR_CSR的 WUF非 RCC_CSR 復(fù)位標(biāo)志??關(guān)鍵認(rèn)知只有 POR/PDR/BOR 和 Standby 喚醒會清空 SRAM其它復(fù)位 SRAM 內(nèi)容保留除非啟動代碼主動清。這就是為什么核心概念_03里啟動文件要清零 .bss——硬件不一定幫你清得軟件兜底。新手最常以為復(fù)位 全清零這是錯的。Standby 喚醒比較特殊它走的是喚醒事件而非復(fù)位事件所以要查PWR_CSR的 WUF 標(biāo)志位而不是RCC_CSR。2.2 RCC_CSR——判斷這次為什么復(fù)位的RCC_CSRClock Control Status Register是 STM32 復(fù)位原因的案發(fā)現(xiàn)場。每種復(fù)位發(fā)生時硬件會在 CSR 里置一個對應(yīng)標(biāo)志位軟件上電后讀它就知道這次是被誰弄醒的。/* 平臺STM32F4HAL 庫 */voidcheck_reset_reason(void){/* 注意順序PINRST 在幾乎所有復(fù)位時都會被置位必須放最后兜底 先查具體原因 POR/BOR/IWDG/WWDG/SFTRST再查 PINRST */if(__HAL_RCC_GET_FLAG(RCC_FLAG_PORRST)){printf(上電/掉電復(fù)位 POR/PDR\r\n);}elseif(__HAL_RCC_GET_FLAG(RCC_FLAG_BORRST)){printf(欠壓復(fù)位 BOR\r\n);}elseif(__HAL_RCC_GET_FLAG(RCC_FLAG_IWDGRST)){printf(獨立看門狗復(fù)位——上次可能死機(jī)了\r\n);}elseif(__HAL_RCC_GET_FLAG(RCC_FLAG_WWDGRST)){printf(窗口看門狗復(fù)位\r\n);}elseif(__HAL_RCC_GET_FLAG(RCC_FLAG_SFTRST)){printf(軟件復(fù)位 NVIC_SystemReset()\r\n);}elseif(__HAL_RCC_GET_FLAG(RCC_FLAG_PINRST)){printf(外部 NRST 引腳復(fù)位\r\n);}/* 讀完后必須清標(biāo)志否則下次復(fù)位原因會疊加讀錯 */__HAL_RCC_CLEAR_RESET_FLAGS();}?? 順序很重要PINRST 標(biāo)志在幾乎所有復(fù)位時都會被置位NRST 引腳在每次復(fù)位時都會動作這是 ST 的設(shè)計。所以判斷必須先查 PORRST/BORRST/IWDGRST/WWDGRST/SFTRST 這些具體原因把 PINRST 留到最后兜底——不然你按 IWDG 復(fù)位時可能 PINRST 也是 1邏輯就亂了。經(jīng)驗做法讀完后立刻__HAL_RCC_CLEAR_RESET_FLAGS()下次復(fù)位原因才干凈。2.3 軟件復(fù)位NVIC_SystemReset()——什么場景用#includestm32f4xx.h/* 設(shè)備頭文件會間接 include CMSIS 的 core_cm4.h *//* 收到升級指令 / 自檢失敗 / OTA 完成 */NVIC_SystemReset();/* 這一行執(zhí)行后內(nèi)核立刻復(fù)位不會返回 */NVIC_SystemReset()本質(zhì)是寫SCB-AIRCR寄存器的SYSRESETREQ位觸發(fā)一次系統(tǒng)復(fù)位。它不清 SRAM——所以O(shè)TA_02里 Bootloader 收完固件NVIC_SystemReset()重啟再檢查 app 合法性這個流程是成立的SRAM 里的升級標(biāo)志還在。典型場景OTA 寫完 Flash 后重啟進(jìn)新固件、自檢發(fā)現(xiàn)硬件異常主動重啟、配置變更需要重新初始化。別濫用——程序 bug 導(dǎo)致死機(jī)用軟件復(fù)位掩蓋問題沒解決只是被刷過去了。2.4 “復(fù)位和上電的區(qū)別”——標(biāo)準(zhǔn)答法這是送分題但答得不全還是露怯。完整答法三層觸發(fā)方式上電復(fù)位是 VDD 從 0 升到閾值硬件自動復(fù)位是 NRST 引腳被拉低或軟件觸發(fā)可主動。作用范圍上電復(fù)位清空 SRAM一切從零開始普通復(fù)位NRST/IWDG/軟件保留 SRAM只復(fù)位內(nèi)核和外設(shè)寄存器。判別方式上電后讀RCC_CSR的PORRST標(biāo)志位區(qū)分這次是真上電還是復(fù)位。?? 加分句“所以很多 Bootloader 用’上電標(biāo)志 備份寄存器’判斷是冷啟動還是熱復(fù)位”——冷啟動要重新初始化一切熱復(fù)位可以保留上次狀態(tài)。這句話一出面試官就知道你寫過 Bootloader。三、啟動模式與 Boot 引腳呼應(yīng) 核心概念_03啟動流程的代碼視角見嵌入式核心概念/核心概念_03_啟動流程詳解.md這里講上電后從哪兒開始取指。3.1 BOOT0 / BOOT1——決定從哪兒啟動STM32 上電時CPU 從哪個地址取第一條指令不是固定 0x08000000而是由 BOOT0 / BOOT1 引腳的電平?jīng)Q定F1 系列F4 簡化為只有 BOOT0BOOT1BOOT0啟動區(qū)域里面是什么x0Flash0x08000000你燒的業(yè)務(wù)代碼01System Memory0x1FFF0000ST 出廠的 ISP Bootloader串口/USB 下載就靠它11SRAM0x20000000調(diào)試用掉電即失??關(guān)鍵認(rèn)知BOOT0/BOOT1 在復(fù)位那一刻被采樣復(fù)位后改電平?jīng)]用——必須重新復(fù)位才生效。所以用跳線切啟動模式的流程是①改跳線②按一次復(fù)位鍵③開始下載。3.2 System Memory 里的 ISP Bootloader——別和你自己寫的 Bootloader 混淆這是新手最容易混淆的點面試官特別愛用這道題篩人System Memory 里那個 Bootloader 是 ST 出廠燒死的你不能改、也讀不出源碼。它支持的協(xié)議串口/USB/I2C/SPI和命令是固定的詳見 ST 應(yīng)用筆記 AN2606。你用 FlyMcu / STM32 Flasher 串口下載走的就是它。而OTA_02里我們寫的 Bootloader是你自己的代碼燒在 Flash 起始 0x08000000支持你自定義的協(xié)議幀能和你的 App 共存。這是兩個完全不同的東西。一句話區(qū)分┌─────────────────────────────────┬─────────────────────────────────┐ │ System Memory Bootloader │ 你自己寫的 Bootloader │ │ (ST 出廠, 0x1FFF0000) │ (你的代碼, 0x08000000) │ ├─────────────────────────────────┼─────────────────────────────────┤ │ BOOT01 才啟動 │ BOOT00 默認(rèn)就啟動 │ │ 只能串口/USB 下載不能跑業(yè)務(wù) │ 能跑業(yè)務(wù)、能收 OTA、能跳 App │ │ ST 寫死改不了 │ 你隨便改 │ │ 量產(chǎn)燒錄用 │ 量產(chǎn)遠(yuǎn)程升級用 │ └─────────────────────────────────┴─────────────────────────────────┘?? 這道題答錯比如System Memory 里是我寫的 Bootloader基本就涼了——面試官立刻知道你沒真做過 OTA。System Memory 是 ST 的0x08000000 起才是你的。3.3 中斷向量表重定位SCB-VTOR——Bootloader 跳轉(zhuǎn)的靈魂核心概念_03講過CPU 上電時硬件從 Flash 起始讀 MSP 和 Reset_Handler。但當(dāng) App 不在 0x08000000比如OTA_02里 App 在 0x08010000中斷來了 CPU 默認(rèn)還去 0x08000000 找向量表——那是 Bootloader 的向量表App 的中斷全跑飛。SCB-VTORVector Table Offset Register就是解決這個的告訴 CPU向量表現(xiàn)在搬去這個地址了。/* App 工程的 main() 開頭第一行 */SCB-VTORFLASH_BASE0x10000;/* 0x08010000App 向量表所在 */__DSB();/* 數(shù)據(jù)同步屏障確保新 VTOR 對后續(xù)取指可見 */?? VTOR 重定位的地址必須按向量表大小對齊最低若干位為 0。F4 向量表約 0x188 字節(jié)所以地址至少 0x200 對齊用 0x08010000 這種 64KB 對齊地址肯定沒問題。對齊錯了一開中斷就 HardFault。CubeMX 工程可以在system_stm32f4xx.c改VECT_TAB_OFFSET宏省得手寫——本質(zhì)一樣都是設(shè) VTOR。四、Bootloader 面試要點呼應(yīng) OTA_02~04完整的 Bootloader 實現(xiàn)見固件升級與OTA/OTA_STM32自己寫B(tài)ootloader從0實現(xiàn)串口升級.md安全啟動見OTA_04這里講面試視角。4.1 為什么要 Bootloader——別只答為了升級面試官問為什么要寫 Bootloader背書答法是為了升級——太淺。懂了的答法是三段遠(yuǎn)程升級設(shè)備裝在野外/機(jī)房/客戶家里不能拆殼用 JTAG 燒必須能自己收固件、自己刷。分區(qū)與回滾升級有可能失敗/新固件有 bug所以常做 A/B 雙分區(qū)——升級時刷備用區(qū)啟動時校驗新固件跑起來失敗自動回滾到舊區(qū)。OTA_02是單 App 校驗失敗停留 Bootloader 的簡化版A/B 是量產(chǎn)標(biāo)配。安全啟動Bootloader 是信任鏈的stage-1負(fù)責(zé)校驗 App 簽名OTA_04拒絕非法固件。沒有 Bootloader 這一層簽名校驗就無處可放。?? 加分句“ESP32 的 OTA 是樂鑫在 SDK 里給你做好的STM32 沒有現(xiàn)成的得自己寫——這也是為什么 STM32 的 Bootloader 是嵌入式面試的高頻題。”這一句區(qū)分了用過現(xiàn)成方案和理解底層面試官立刻高看你一眼。4.2 Bootloader 與 App 的分區(qū)與跳轉(zhuǎn)——核心代碼必須默寫出來分區(qū)OTA_02的 STM32F407 例子0x08000000 ┌──────────────────────┐ │ Bootloader (64KB) │ ← 復(fù)位入口BOOT00 默認(rèn)進(jìn)這 0x08010000 ├──────────────────────┤ │ App (~960KB) │ ← 你的業(yè)務(wù)代碼 │ 向量表在最前面 │ └──────────────────────┘ 0x080FFFFF跳轉(zhuǎn)流程——這道題面試官可能讓你白板寫必須默得出/* 平臺STM32F4CMSIS */typedefvoid(*app_entry_t)(void);voidjump_to_app(uint32_tapp_addr){uint32_tsp*(volatileuint32_t*)app_addr;/* 向量表[0] MSP */uint32_tpc*(volatileuint32_t*)(app_addr4);/* 向量表[1] Reset_Handler */__disable_irq();/* ① 關(guān)全局中斷 *//* ② 清掉 Bootloader 側(cè)所有 NVIC 使能與掛起 */for(inti0;i8;i){NVIC-ICER[i]0xFFFFFFFF;/* 清使能 */NVIC-ICPR[i]0xFFFFFFFF;/* 清掛起 */}SysTick-CTRL0;/* 關(guān) SysTick否則 App 接管前可能進(jìn)滴答中斷 */SCB-VTORapp_addr;/* ③ 向量表切到 App */__DSB();__ISB();/* 屏障確保新 VTOR 對取指可見 */__set_MSP(sp);/* ④ 設(shè) MSP 為 App 的棧頂 */__enable_irq();/* ⑤ 恢復(fù)全局中斷App 默認(rèn)期望 PRIMASK0 */app_entry_tentry(app_entry_t)(pc|0x1);/* Thumb 狀態(tài)最低位1 */entry();/* ⑥ 跳相當(dāng)于手動復(fù)位進(jìn) App */}記憶口訣關(guān)中斷 → 清 NVIC/SysTick → 改 VTOR帶屏障→ 設(shè) MSP → 開中斷 → 跳。?? 三個最容易漏的點OTA_02里都踩過①清 NVIC——不清的話 Bootloader 里的掛起中斷會在 App 的向量表里找入口跑飛②__DSB();__ISB();屏障——改完 VTOR 立刻跳沒屏障的話 CPU 流水線可能還用舊地址③__enable_irq()恢復(fù)中斷——很多人__disable_irq()后忘了恢復(fù)App 的中斷全被屏蔽裸機(jī)工程會假死。漏任何一條都可能 HardFault 或假死。4.3 版本號防回滾——OTA_04/OTA_05的核心面試必問“簽名能防偽造但能不能防降級”——能但要靠版本號 單調(diào)計數(shù)器。固件頭里嵌一個單調(diào)遞增的版本號如 uint32_t fw_version 7 │ ▼ 設(shè)備用 eFuse / 備份寄存器 / Flash 末頁存已接受的最高版本 max_seen │ ▼ 啟動時檢查fw_version max_seen ? 是 → 接受更新 max_seen fw_version 否 → 拒絕防回滾為什么必須防回滾攻擊者拿你去年有漏洞的舊固件合法簽名刷進(jìn)設(shè)備設(shè)備照樣認(rèn)——漏洞被復(fù)活。所以簽名只證明是你簽的不證明是最新的。?? 存最高版本的位置很關(guān)鍵放普通 Flash 可被攻擊者改回去寫成 0 就能裝任何舊版正確做法是放 eFuse / OTP一次性燒寫燒死改不了。STM32 沒有 eFuse但有OTP 區(qū)F4 是 16 字節(jié)起可以用來存版本計數(shù)器。這條答出來是高級加分。4.4 安全啟動簽名校驗——OTA_04的精華一句帶過簽名驗簽的完整流程見OTA_04面試一句話版“構(gòu)建時用私鑰對固件哈希簽名設(shè)備用燒死在eFuse/OTP里的公鑰驗簽驗不過就停在 Bootloader 不跳 App。三個關(guān)鍵點① 公鑰必須鎖死在 OTP不能放普通 Flash否則攻擊者可換公鑰惡意固件② 驗簽失敗必須硬拒絕不能只警告③ 簽名之外還要防回滾嵌版本號 單調(diào)計數(shù)器?!?.5 Bootloader 自己怎么升級——雞生蛋問題這是 Bootloader 面試的最難一問能答出來基本就是高級崗的水平。問題App 能被 Bootloader 升級那 Bootloader 自己想升級怎么辦Bootloader 不能自己擦自己擦完跑飛。三種答法方案做法適用A/B BootloaderFlash 起始放兩份 Bootloader升級時擦備用那份、寫新的、置啟動選哪份標(biāo)志、重啟切到新的量產(chǎn)、空間夠RAM 跳轉(zhuǎn)法Bootloader 把新 Bootloader 代碼先整體讀到 SRAM跳到 SRAM 執(zhí)行SRAM 里的代碼擦 Flash 的 Bootloader 區(qū)、寫新版本、重啟空間緊張、SRAM 夠大不支持升級出廠燒死后永不變動靠 App 的可升級性兜底大多數(shù)學(xué)生項目 / 低端產(chǎn)品?? 大多數(shù)學(xué)生項目答不支持升級Bootloader 出廠燒死就夠——別硬答 A/B面試官追問細(xì)節(jié)你答不上來反而露怯。誠實說我項目里 Bootloader 不升級只升 AppBootloader 出廠燒死靠 RDP 讀保護(hù)防止被讀出——這個答法比硬裝懂強(qiáng) 10 倍。五、新手必踩的 N 個坑這一欄把看門狗、復(fù)位、Boot、Bootloader 四塊里面試官最愛追問、新手最常翻車的坑匯總成一張表。每條都對應(yīng)前面某篇的詳細(xì)分析這里給面試一句話版。#坑后果正確做法詳見1IWDG 超時算錯把 LSI 當(dāng)精確時鐘LSI 精度 17~47 kHz理論 1 s 實際可能 0.5 s 或 1.5 s喂狗間隔算錯就反復(fù)復(fù)位留 2~3 倍余量別在需要精確超時的場景用 IWDG核心概念_05 §2.2 / 低功耗_03 §132低功耗場景隨手開 IWDGStop 模式 IWDG 繼續(xù)計數(shù)10 分鐘長睡被 30 s 復(fù)位一次長周期睡眠改用 RTC 喚醒 軟件自檢要開 IWDG 就把長睡切成 20 s 短睡分段喂狗低功耗_03 §133Bootloader 跳轉(zhuǎn)前忘關(guān)中斷舊向量表生效期間被中斷觸發(fā)跑飛 HardFaultjump_to_app第一行__disable_irq()清 NVIC 關(guān) SysTick 再切 VTOROTA_02 §4.24App 沒設(shè) VTOR一開中斷就 HardFaultCPU 還去 0x08000000 找向量表Appmain()第一行SCB-VTOR APP_ADDR地址須按向量表大小對齊OTA_02 §55App 鏈接地址沒改Bootloader 和 App 重疊互燒互覆蓋.ld里 FLASH ORIGIN 改成0x08010000LENGTH 減 0x10000OTA_02 §56BOOT 引腳懸空上電隨機(jī)電平可能誤進(jìn) System Memory / SRAM 模式燒不進(jìn) FlashBOOT0 必須接下拉或上拉到 VDD 取決于設(shè)計別懸空數(shù)據(jù)手冊明確要求RM0090 Boot pins7混淆 System Memory Bootloader 和自己寫的 Bootloader面試答錯基本涼——面試官判定你沒做過 OTASystem Memory ST 出廠 ISPBOOT01 進(jìn)0x1FFF0000你寫的 Bootloader 燒在 0x08000000 的業(yè)務(wù)代碼BOOT00 進(jìn)本文 §3.28跳轉(zhuǎn)前沒校驗棧頂App 向量表損壞跳過去直接死循環(huán)或跑飛跳前必做app_is_valid棧頂在 SRAM 范圍、復(fù)位向量在 Flash 范圍且 Thumb 位置 1OTA_02 §4.19__disable_irq()后忘__enable_irq()恢復(fù)App 中斷全被屏蔽裸機(jī)工程假死跳轉(zhuǎn)流程末尾恢復(fù)__enable_irq()App 默認(rèn)期望 PRIMASK0OTA_02 §4.210只簽名不防回滾攻擊者用合法簽名的舊漏洞固件刷入簽名形同虛設(shè)固件嵌單調(diào)版本號設(shè)備用 OTP/eFuse 存最高已接受版本更低的一律拒OTA_04 §8 坑6 這張表不是用來背的是用來對號入座的。秋招前過一遍每條對照你簡歷項目問自己我能不能講出具體場景——能講出 3 條以上這四塊面試基本穩(wěn)了。六、動手練一練光看不練面試時還是嘴卡。下面這幾個練習(xí)建議你用開發(fā)板真跑一遍別用正在用的項目板故意搞破壞用。練習(xí) 1故意跳轉(zhuǎn)前不關(guān)中斷看 HardFault復(fù)用OTA_02的 Bootloader App 工程把jump_to_app里的__disable_irq()和清 NVIC/SysTick那幾行注釋掉其它不變。voidjump_to_app(uint32_tapp_addr){/* __disable_irq(); ← 故意注釋掉 *//* for(...) NVIC-ICER... ← 故意注釋掉 *//* SysTick-CTRL 0; ← 故意注釋掉 */SCB-VTORapp_addr;__set_MSP(*(uint32_t*)app_addr);/* __enable_irq(); ← 也注釋掉 */app_entry_tentry(app_entry_t)(*(uint32_t*)(app_addr4)|0x1);entry();}步驟編譯燒錄看現(xiàn)象——大概率跳過去幾條指令就 HardFault因為 Bootloader 里掛起的 SysTick 中斷在 App 的向量表里找入口找到了不對的地址。用調(diào)試器在 HardFault_Handler 打斷點看壓棧的 PC 指向哪里理解為什么沒關(guān)中斷會跑飛。把注釋取消恢復(fù)正常再跑——對比現(xiàn)象。加分只注釋SysTick-CTRL 0一行看 SysTick 中斷在 App 接管前觸發(fā)的具體后果——這條更隱蔽很多新手栽在這。做完這個面試官問跳轉(zhuǎn)前為什么必須關(guān)中斷你能說我親手試過不關(guān)會 HardFault原因是掛起的中斷在新向量表里找錯入口——比任何博客都有說服力。練習(xí) 2故意不設(shè) VTOR看 App 中斷跑飛復(fù)用上面的工程這次 Bootloader 跳轉(zhuǎn)寫對但把 App 里的SCB-VTOR那行注釋掉/* App 的 main() 第一行 */intmain(void){/* SCB-VTOR FLASH_BASE 0x10000; ← 故意注釋掉 */HAL_Init();SystemClock_Config();/* ... 后面開了 USART1 接收中斷 ... */}步驟燒 Bootloader 燒 App啟動后 Bootloader 跳到 App。App 主循環(huán)里點個 LED能跑——說明不設(shè) VTOR 主循環(huán)也能跑。關(guān)鍵從串口發(fā)一個字節(jié)觸發(fā) USART1 接收中斷——立刻 HardFault。因為 CPU 還去 0x08000000Bootloader 的向量表找 USART1 入口跳到 Bootloader 的 USART1_Handler可能就是空的死循環(huán)現(xiàn)場錯亂。取消注釋設(shè)回 VTOR再試——中斷正常進(jìn)。這個練習(xí)做完App 為什么必須設(shè) VTOR就不再是博客上的話是你親手驗證過的事實。練習(xí) 3讀 RCC_CSR 看復(fù)位原因/* 平臺STM32F4 */voidcheck_reset_reason(void);/* 見本文 §2.2 的完整實現(xiàn) */intmain(void){HAL_Init();uart_init();/* 用于 printf */printf( 啟動 \r\n);check_reset_reason();while(1){/* ... */}}步驟燒錄后第一次上電拔插 USB看串口輸出——應(yīng)該是上電/掉電復(fù)位 POR/PDR。按板子上的 RESET 鍵不動電源看輸出——應(yīng)該是外部 NRST 引腳復(fù)位。故意寫一個死循環(huán)讓 IWDG 復(fù)位比如while(1);不喂狗看輸出——應(yīng)該是獨立看門狗復(fù)位——上次可能死機(jī)了。注意每次讀完后必須__HAL_RCC_CLEAR_RESET_FLAGS()否則下次會疊加。做完這個面試問怎么判斷這次為什么復(fù)位你能直接說讀 RCC_CSR 的標(biāo)志位PORRST/PINRST/IWDGRST/SFTRST 分別對應(yīng)上電/NRST/看門狗/軟件復(fù)位——又是真數(shù)據(jù)。練習(xí) 4算一下你板子的 IWDG 最大超時拿你手頭 STM32 的數(shù)據(jù)手冊查 LSI 頻率F4 標(biāo)稱 32 kHz范圍 17~47 kHz按公式T_max 4 × 2^(PR2) × (RLR1) / f_LSIPR 取最大 6、RLR 取最大 4095算出理論最大超時和最壞情況超時用 LSI 下限 17 kHz。F407 答案理論約 32.8 s最壞約 17 s。差距接近一倍——這就是為什么留余量不是口號是 LSI 精度逼出來的。算完這個面試問IWDG 超時怎么算、LSI 精度對它有什么影響你張口就能答。小結(jié)把四塊擰成一條面試答線這一篇不是新知識是收口復(fù)習(xí)——把看門狗、復(fù)位、Boot、Bootloader 四塊以前講過基礎(chǔ)的東西重新組織成面試答線。秋招前我用它的方式是每塊都對照簡歷項目想一個標(biāo)準(zhǔn)答法。比如被問看門狗我不只說IWDG 防死機(jī)而是我多士爐項目里 IWDG 超時 1 s、主循環(huán)喂狗、留 5 倍余量因為繼電器死機(jī)會火災(zāi)——把簡歷項目和八股綁死。第五節(jié)那張坑表當(dāng) checklist。每條問自己我踩過沒能講出具體場景嗎——能講出 3 條以上這四塊面試基本穩(wěn)了。動手練習(xí)至少做完練習(xí) 1 和 2。那兩個故意搞破壞的練習(xí)做完你面試時說我親手試過不關(guān)中斷會 HardFault、“我試過不設(shè) VTOR 一開中斷就崩”——這種話一出口面試官就知道你不是背書的。最后送一句我自己最深的體會這四塊技術(shù)本身不難難的是答得讓面試官覺得你做過。同樣一句跳轉(zhuǎn)前要關(guān)中斷背出來和講出來是兩個味兒——區(qū)別就在于你有沒有親手試過不關(guān)會怎樣。前面 OTA 五篇我都寫過、踩過這一篇就是把它們擰成一根面試答線希望對你秋招有用。文中的 RM0090 復(fù)位/啟動章節(jié)、AN2606/AN4657 和 ARMv7-M SCB 內(nèi)容都對照了 ST 和 ARM 官方文檔想深挖的按章節(jié)號去翻。下一篇面試_03_嵌入式面試全真模擬與簡歷項目講法
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产精产国品一二三在观看| 婷婷的五月天另类视频| 五月婷婷婷婷婷婷艺术| 色吧五月| 亚洲六月色婷婷| 99久久九九| 久久99网| 六月婷婷九月丁香亚洲综合| 五月天天丁香婷婷在线中| 99热在线观看| 大香蕉手机视频| 色综合99无码| 丁香五月深爱五月婷婷| 久久五月天精品视频| 亚洲综合色激情色五月| 色五月av| 五月天婷婷色| 成人av免费观看| 丁香五月天狠狠| site:esunnet.com| 六月丁香视频网站| 欧美群妇大交乱婬网| 超碰爱爱爱| 91九色超碰| www.zbzhongsen.com| 91热网址| 91色色色18| 26uuu亚洲精品国产| 激情五月天色| 色久在| 99熟女啪啪视频| 丁香五月天日韩无码| 五月丁香六月激情| 99无码视频| YJLZZJLZZ亚洲乱熟无码| 久久久久丁香婷婷五月天| 婷婷激情五月天亚洲综合| 综合激情五月天| 亚洲色色五月| 婷婷少妇激情| 69热在线| 情欲综合网| 97亚洲色 torrent magnet| 人伦30P| 日熟女| 4438全国最大视频成人网站在线观看| 久久99免费视屏| 久久久久久9热不雅视频| 亚洲色无码A片一区二区麻豆| 六月婷婷色综合| 九九AV在线| 五月婷婷草| 五月丁香综合在线| 色色丁香婷婷| 亚洲亚洲人成综合网络| 97在线天堂| www。五月,com| 日本不卡一区二区三区| 99情色五月天| 亚洲成人AV在线播放| 色爱五月天| 五月丁查人人| www.丁香五月| 青青久久五月| 色五婷婷| 五月婷婷久久综合| 亚洲a色| 99热这里只有精品在线播放| 精品网站:999WWW| 99ri国产在线| 国产黄大片在线观看画质优化 | 婷婷 色 丁香 夜| 99综合一区| 天天久| 婷婷五月激情图片| 九九色色| 玖玖五月丁香| 激情综合网络插| 人人干天天操五月丁香| jiZZdr| AV在线免费网站| jiZZdr| 美女久久婷婷| 91viP在线看| 日韩成人网站精品久久大全| 中文av网| 日日鲁鲁鲁夜夜爽爽狠狠视频97| av线电影| 激情九九这里只有精品| 激情综合网五月天| 婷婷丁香五月天熟女丝袜| 五月丁香亭亭操逼| 色狠狠色噜噜噜a天堂一区| 欧美va在线| 激情综合在线观看| 亚洲成人日韩无码精品| 激情综合五月激情17| 97色五月天| 色偷偷综合| 噜噜在线| 欧美视频五区| 狠狠草狠狠草| 国产偷人爽久久久久久老妇APP| 久久天堂女人| 五月丁香成人| 黄网在线播放| 九九国产视频| www.久久久久久久| 成人免费在线电影| 99热在线这里| 色婷婷成人色网| 九九热视频精品2| 午夜做爱影院| 伊人婷婷福利网| www99精品| 欧美美美女性色视频| 欧美人人操| 丁香五月天大香蕉啪啪| 五月丁香在线婷婷蜜桃| 能看的AV| 日本本土色网第一区| 九九热国产| 成人短视频在线观看| 六月丁香六月婷婷欧美| 激情丁香五月| 婷婷五月精品中文字幕| 久久激情天堂| 色激情五月| 激情5月天天天| 久久久激情| 久久婷婷五月综合伊人| 色九九九九| 亚洲一二三网| 欧美成人精品一区二区| 九九热内射| 婷婷色系婷色| 伊久大香蕉| 天天曰夜夜爽| 五月天激情小说网| 激情五月综合视频| 婷婷色情 | 日本丁香五月婷婷| 久久人妻少妇嫩草AV| 一级黄色影片| www.激情| www.思思99热| 猫咪伊人AV| av人人操| 日韩精品超碰在线观看| 四虎成人精品永久免费AV九九| 激情九九九九| 26.uuu丁香五月婷婷| 影音先锋 一区| 天天爽天天草| www91在线| 激情五月天激情小说| 久久婷婷免费| 激情五月天综合网| 99热最新| 性欧美大战久久久久久久83| 婷婷五月天在线一区| 激情精品久久| 六月99天天婷婷激情综合| CAOBIBI| 亚洲国产精品VA在线看黑人| 99日韩| 亚洲另类在线观看| 午夜电影网VA内射| 婷婷五月天网址| 亚洲婷婷五月| 丁香5月综合啪啪| 九久九精品| 深爱五月日韩| 超碰在线国产| 99热香港| 欧美在线视频99| 五月丁香激情片| 激情第四色| 亚洲Av入口| 亚洲av电影网站| 亚洲色视频| 日本色色网站| 午夜精品人妻无码一区二区三区| 亚洲操B| 丁香六月婷婷开心| AV中文字幕夜夜操b天天摸bb| 婷婷成年人免费视频| A级毛片高清免费不卡播放谢谢谢谢| 久久色天堂| 美女天天艹人人爽| 都市激情亚洲| 99免费超碰在线| 熟女激情五月天| 黄色成人网站在线播放| 万月丁香狠狠爱| 九九这里有精品| 中文字幕不卡+婷婷五月| 亚洲国产精品VA在线看黑人| 久99| 国产美女视频久| 九九热在线观看6| 一起草AV入口| 欧美在线视频99| 久久精彩视频99| 婷婷五月丁香香蕉| 精品九九九久| 欧美精品99久久久| 九九九热精品| 九九热最新| 日本性激情色播| xxxx五月天色色| 丁香五月天堂| 另类综合色| 天天综合亚洲综合网天天αⅴ| 欧美槡BBBB槡BBB少妇| www.minyis.com【JT】实力收量可预付QQ2101460746 | 欧美搡BBBBB摔BBBBB| 久久综合中文| 丁香五月停停基地| 99热伊人综合| 亚洲妇女熟BBW| 人人爽天天爽| 亚洲bt丁香五月天婷婷激情小说| 亚洲色欲欧美一区二区三区| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 91成人看片| 97超碰免费超级在线观看| 日本婷久久| 夜夜操激情| 综合xx网| 色五月久久成人婷婷| 九九色综合网| 激情丁香九九五月综合网| 中文字幕人妻一区二区| 久热A片| 99色性爰网络| 久久久久人妻精品| 成人在线视频网| 亚洲AV人人操| 色噜噜婷婷| 色综合久久天天综合网| 综合AV在线| 色五月婷婷中文字幕在线观看 | 26uuu最新地址| 79色色| 丁香5月综合啪啪| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 丁香婷婷色九月| 夜色爱爱亚洲| 色情五月天导航| 潘金莲AAAAAAAAAA| 99久久久精品| 欧美性爱中文字幕| 超碰激情网| 成人永久免费视频在线观看| 天堂久久精品| 26UUU一区二区| 可以免费观看的av网址| 婷婷五月天无码熟女| 九九色色| 久久 这里只有精品1| 六月丁香婷婷色狠狠久久| 五月色网| 天天干夜夜b| 色欲日日躁| 婷婷开心青青草| 日韩六十路91性交电影| 婷婷天天婷婷天天澡| 天天爽天天爽视频| 久久婷婷伊人| 我淫我色婷婷五月天激情四射| 午夜不卡久久精品无码免费| av不卡网站| AV在线二十六页| 亚洲情欲久久| 91Chinese在线| 九九Av| 天天弄天天爽| 丁香色综合| 天天干天天干天天干天天干天天干| 99成人在线观看| 玖玖无码中文| 万月丁香狠狠爱| 日韩av高清| 神马欧美精| 亚洲综合成人网| 欧美日韩AAAAA| 伊人久久婷婷五月天激情四射| 中国AV性爱观看| 丁香五月激情在线| 丁香五月在线播放| 伊人综合婷婷| 激情五月综合色婷婷| 亚洲人妻一区二区 | 免费国产VA国产免费| 精品无码人妻一区| 五月天丁香综合久久国产| 六月 丁香 视频| 超碰人人摸人人操| 99热播放| 丁香六月激情综合啪啪| 大香蕉综合网| AV动漫不卡无码免费| www久久五月com| 这里只有精彩视| 丁香五月综合婷婷| 九九99视频精品| 99热99在线| www五月天激情com| 中文字幕无码人妻少妇免费视频| 五月婷婷色播| 99乱视频| 五月天久久色| WWW五月婷婷| 天天插插天天| 亚洲色无码A片一区二区麻豆| 五月天另类图片区99| WWW五月天| 亚洲精品99| 欧美大片| 激情五月天噢美| 亚洲人成色A777777在线观看| 色久综合| 久久精品性爱视频,| 色五月婷婷色五月婷婷色五月婷婷| 夜夜躁爽日日| 色色色婷婷五月天| 丁香婷婷色情| 久久天堂精品| 激情五月天伊人影院| 天天综合色| 丁香五月婷婷激情尤物| 狠狠高潮精品亚洲1| 无码日本精品XXXXXXXXX| 五月丁香福利| 无码人妻电影| 午夜激情婷婷| 国产激情AV| 人人操 色| 亚洲激情网站| 97在线日韩| 色天天综合成人网| 亚韩精品视频1区| 爱草视频在线观看| 欧美日本日韩| 婷婷五月天亚洲精品| 婷婷丁香五月综合| 开心婷婷五月花| 九九热精品| 色色色干| 久久久久久人妻| 9久国产精品| 久久精品小视频| 五月天另类视频| 99网址在线看| AV在线中文| 婷婷六月综合基地| 美欧日韩国产成人在战| 无码啪啪| www.夜夜操.com| 丁香六月激情四射| 人妻精品一区二区三区| 丁香午月AV中文字幕| 99久久久久| 五月婷婷啪啪网| 高清无码网址| 人人操AV| 激情综合五| 国产色色网站网址| 91精品久久久久久久久久| 六月色五月天天婷婷| 97在线观视频免费观看 | 日韩AV免费看| 啪到高潮激情丁香五月| 热99免费在线| 超碰在线国产| 国产精品视频久久99| 久久ri精品视频| 九九视频这里只有精品| 亚洲AV成人片无码网站| 99re热视频这里只精品| 五月丁香六月婷婷国产视频| 99精品久久久久久久婷婷| 激情丁香婷婷| 中文字幕日韩无码制服诱或| 婷婷激情五月视频| 色婷婷亚洲婷婷| 天天色爽| 91人碰| 色综合伊人网| 看国产探花操逼三级片| 激情伊人| 天天草女人| 六月丁香VA| 久久五月天色婷婷| 少妇高潮呻吟A片免费看软件| 狠狠干青青草| caop在线| 亚州欧美黄色电影| 亚洲久热| 激情婷婷六月天| 99er日韩| 97成人在线视频精品| 思思热视频在线观看| 婷婷丁香五月久久| 大香蕉中文| 伊人久久婷婷| 五月丁香久久| 丁香六月天婷婷开心综合| 狠狠99| 思思久久99热只有频精品66| 婷婷五月天AV在线| 五月婷婷激情中心| 五月久久五月激情| 97人人看一| 六月丁香五月婷婷| 人人摸人人操人人爽| ji'qing'luan'ren'lun| 丁香花五月天激情| 黄页免费一级视频懂色| 中文字幕精品无码一区二区| 99热在这里只有精品| 五月婷婷五月天亚洲无码| 成人av中文字幕| 1024人妻无码中文字幕| 国产精品美女久久久久AV超清| 婷婷久久精品| 婷婷五月天电影网| 六月五月婷婷| 日日干综合| 久久99久久99精品免观看粉嫩| 激情婷婷五月丁香啪啪啪| 欧美va在线| 久久婷婷五月综合| 丁香六月成人| 99热国产在线| 人人舔天天| 天天拍夜夜撸| 五月色情婷婷| 99碰碰| 超碰无码318604| 婷婷亚洲在线| 日韩一级| 五月天色色色网| 精品少妇人妻AV无码专区偷人| 岛国AV网| 色999五月色| 91一起艹| 激情五月天视频| 综合色影| 色情五月综合婷婷| 亚洲激情在线| 精品久久人妻| 色色婷| 深爱激情五月网| 激情人妻综合| 久久99婷婷| 日韩精品一区二区亚洲AV观看 | 99热最新国内| 伊人激情综合| 人人97操| 99啪啪网| 婷婷综合色色| 这里有精品99| 日韩按摩二区| 久久久久久久久久人妻| 亚洲色爱综合| 超碰在线观看9| 综合一区二区三区| 欧美日韩91| 91色久| 亚洲激情在线| 色婷婷基地 | 中文成人在线| 亚州成人综合在线| 六月丁香停| WWW免费视频碰碰碰碰| 99精品视频偷拍| 91九色国产| 在线播放成人网站| 久久996re热这里只有精品无码| 国产探花AV在线| 激情综合六月| 久久九精品| 91热在线| 欧类av怡春院| 色99免费视频中文| 丁香五月天导航| 久久成人性爱| 日日操日日撸| 久久性爱视频| 殴美97色| 99re在线观看| 激情五月婷婷综合色播小说| 91干在线| 亚洲蜜桃精久久久久久久久久久久 | 狠狠爱丁香婷| 日韩欧美颜射| 国产日日操夜夜操的肉棒视频| 五月婷婷婷| 欧美精品999| 99精品成人无码A片观看金桔| 久久视9精| 婷婷色片| 激情AV| 欧美A片在线视频免费观看| 九九久久精品國產| 777.色色| 色婷婷69| 午夜成人av在线| 亚洲六月婷婷| 99免费视频网| www.色五月| 成人在线免费网址| 99爱免费在线观看| 久久伦乱| 五月天激情小说| 4399成人黄A片| 五月婷久久综合| 九九热在线观看6| 99综合一区| 激情五月天综合| 久久男人网婷婷| 色情婷婷| 99热主页日本| 免费看片在线观看| 激情五月天婷婷视频| 亚洲综合1024| 超碰伊人碰婷婷五月| 色狠狠999综合网| 99热激情| 99久久婷婷国产综合精品| 色婷婷影视| 久久精品人妻| 婷婷五月天大香蕉在线视频观看| 天天爽天天日人人爱| 五月丁香婷婷成人网| 久久伦乱| 亚洲婷婷激情五月天| 婷婷丁香十月| 五月婷激情影院| 五月天婷婷视频30| 无码免费人妻A片AAA毛片西瓜| 久久电影4399| 天天干天天干天天干天天干天天干| 国产精品18久久久| 丁香五月天色综合| 99亚洲精品视频| 超碰不卡在线| 婷婷色片| 91久久综合亚洲噜噜成人在线| 色五月亚洲开心网| 九色在线五月婷婷网址| 激情丁香五月激情婷婷| 国产乱人偷精品人妻A片| 啊V视频在线观看| 五月天综合| 九色视频入口91| 色久免费| 亚洲精品第一国产综合亚AV| 热99只有精品| 久久久精品免费啪啪国| 久久人妻高清中文| 色99xx| 久久在线人妻| 99操网站| 99视频精品全部观看10| 色五月天丁香婷婷色| 狠狠狠狠狠狠狠狠| 色五月中文字幕| 婷婷久久丁香| 99riAv1国产在线观看| 色五月五月天色婷婷色五月| 9月色婷婷| 9l视频自拍九色9l视频在线观看| 手机旧版看人妻1025| 色偷偷色婷婷| 另类小说五月天| 欧美日韩成人在线| 五月婷婷综合激情| 91re色综合视频| 丁香成人视频| www99在线观看视频| 亚洲成人一区| 国内裸舞二区| 亚洲丁香花五月丁香花| 久久婷婷五月| 日韩在线视频中文字幕| 丁香六月啪啪| www.色擼擼.com| 91久草五月天婷婷| 亚洲精品视频在线| 五月婷婷少妇之| 日本在线观看99| 五月综合色| 人妻操逼视频。| 欧美 日韩 人妻 高清 中文| 天天操夜夜橾| 五月婷婷激情网| 色播五月丁香| 久久六月综合| 99热色无码| 婷婷香蕉精品| 99热这里都是精品| 色情五月天se| 婷婷色中文| 日本色婷婷| 精品无码99| 色婷婷综合综合网| 白人荫道BBWBBB大荫道| 日日操夜夜爽| 丁香六月色情| AV色婷婷| 99精日本久久| 丁香五月Av| 五月婷婷伊人久久| 97啪啪| 久久人人添人人爽添人人片αV| 色婷婷丁香五月| 久久激情综合| 激情五月综合第一页| 狠狠狠狠狠狠| 玖玖爱资源站| 99热这里只有精品在线播放| 九九蜜臀精品| 五月激情射| 最近免费中文字幕大全高清大全1| 丁香五月六月综合激情| 玖玖资源网站最新站| 伊人婷婷大香蕉| 九九色网专区| www.婷婷六月天| 狠狠爱婷婷丁香| 手机AVAV天堂看网| 日韩婷婷| 日韩精品超碰在线观看| 久久久久久久久18久久| 四色永久成人网站| 亚洲天堂啪啪| 婷婷五月综合激情免费| 99热日本| 国产精品色色666| 91精品久久久久久久久久久久| 亚洲午夜成人av电影网| 色丁香久久| 亚洲AV人人操| 婷婷激情人妻| 青青草五月天| 久久99激情丁香婷婷小说网| 欧美综合激情五月| 99视频久久免费视频| 91se在线视频| 成人婷婷| 久久精品91视频| 美女爆乳18禁www久久久久久| 成人免费120分钟啪啪| 五月激情婷婷丁香| 婷婷激情性爱| 最新av在线观看| 婷婷五月天激情免费在线观看| 婷婷五月天伊人网在线观看视频| 思思热思在线精品视频| 日韩欧美一区二区三区四区| 亚洲色色色色色色色色色| 熟女激情网| 日本久久精品18| 97精品综合久久内射| av一区二区电影免费在线观看| 九久久婷婷| 韩国中文字幕91| 五月开心播播网| 亚洲情综合五月天| 丁香六月婷婷操逼网| 三级毛片视频| 波多野结衣不卡AV| 无码一区二区三区四区五区91c| 九九精品大香蕉| AV在线免费观看不卡| 五月丁香婷婷欧美色图视频五月丁香777电影 | 国内一级精品| 99视频自拍| 色五月丁香五月| 五月丁香久久精品在线观看| 五月丁香五月丁香| 婷婷婷五月天最新综合你懂的| 我爱va亚洲va52| 看国产探花操逼三级片| 99热这里有精品| 婷婷人人操| 久久人妻久久| 精品亚洲国产成AV人片传媒| 超碰妻人人| 国内久久亭亭| 激情婷婷五月久久| 天天日日天天| 亚州操人在线视频| 日本啪啪天堂| 色婷婷成人做爰A片免费看网站| 91打屁股免费看| 婷婷五月超碰| 99re免费精品视频| 六月丁香深深爱| 99热费观看| 97碰久久| 久久久国产精品黄毛片| 視频福利乱色| 美女天天久久| 色五月婷婷色五月婷婷色五月婷婷| 色噜噜97视频在线观看| 八戒青柠影视剧在线观看| 九九热这里只有精品9| 黑人熟妇一区二区三区| 欧美va视频不用播放器的va视频网| 精品热青草| 91精品又长又大又粗又爽又猛| AV伊人青草丁香六月| 五月成人网天天| 欧洲一区二区| 日韩av变天就操逼不卡区| 岛国操B不卡在线| 午夜色色色极品视频| 国产精品久久7777777精品无码| 热99在线精品| 国外亚洲成AV人片在线观看| 熟女啪啪视频| 人妻久久久久久久久| 操逼巨乳91| 狠狠精品干练久久久无码中文字幕| 亚洲精品444久久久久久| AV堂狠狠干| 激情深爱综合网| 婷婷综合久久| 久操激情| 天天日天天爱天天噪| 九热视频| 停停综合色色| 激情五月六月丁香| 日本婷婷| 日韩欧美一道四区中文字幕| 色丁香久综合在线久综合在线观看| 婷婷五月综激情| 人妻在线观看视频| 99热这里只有在线播放| 丁香五月婷婷AV| 久久这里只有精品视频15| 97亚洲色 torrent magnet| 99热免费在线| 极品精品一区二区三区在线| 久热精品视频在线观| 婷婷色婷婷| 狠狠一日| 精品福利911| 九九热在线精品视频| 欧美色色干| 丁香久久久| 日本欧美成人片AAAA| 99re在线观看| 色色色婷婷五月| 人人综合91网| 99re热视频这里只精品| 婷婷中文字幕欧美| 日日鲁鲁夜夜爽爽| 国产精品涩涩涩视频网站| 99综合在线| 97碰碰视频在线观看| 欧美精品A片一区在线观看| 五月天成人在线播放丁香| 亚洲亚洲人成综合网络| sS丁香五月婷婷| 丁香五月天激情视频| 婷婷激情九月| www狠狠| 棕合影院色色| 99热最新精品| 色婷婷www| 任你爽精品免费视频6| 成人资源在线| 久久综合影院| 色玖玖爱| 91avse| WWW久久久| 五月色影院| 蜜乳9188| 亚洲成av人影院| 色婷婷综合五月| 99ER热精品视频| 久久五月丁香激情综合| 日韩在线观看网址| 天天天天天久久久久久| 91窝窝| z色五月播播久久| 七七色色综合| 五月香婷婷| 思思热闹这里只有精品| 嫩BBB搡BBBB榛BBBB| 另类激情五月| 香蕉中文在线| 中文字幕,综合,91| 人妻综合网| 亚洲激情久久| 天天综合天天玩夜夜玩天天玩夜夜玩| 99热人人艹| 五月婷综合| 思思99久久| 婷婷丁香五月亚洲17cao| 六月综和久久| 潮汕成人AV片在线| 色播婷婷大香蕉| 我爱大香蕉| 欧美丁香五月天| 天天综合网~91| 色欲av伊人久久大香线蕉影院| www.色五月| 一本大道伊人AV久久综合| 天天碰夜夜爽| 任我肏| 欧美丰满熟妇BBB久久久| 天天天天天久久久久久| 啪啪婷婷五月天激情| 婷婷色综合| 婷婷色五月天在线| 九九日本视频| 日本色色视频| 大香蕉啪啪啪| 丁香五月六月欧美| 激情黄色小说色五月| 老师的粉嫩小又紧水又多A片视频| 色婷婷成人五月| 亚洲综合激情五月久久| 亚洲AV成人在线观看| 欧美六月| 丁香美女主播视频在线观看 | 婷婷中文字幕网| 超碰91在线| 91人人爽久久涩噜噜噜| 五月婷婷丁香啪啪| 丁香六月av| 色五月婷婷网| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 大香蕉啪啪网| 人人操AV| www.五月婷婷久久.com| 六月丁香av| 欧美性爱专区| 色婷婷丁香五月天| 日本色久| 九九无码视屏| 九九综合久久丁香婷婷,开心激情综合网| 狠狠色综合久久久久| 婷婷综合激情| 五月丁香色| 97操女视频| www.激情五月天.com| 欧美成性色| 超碰在线网站| www.91av.com| 天天射影院| 亚洲免费av在线| 狠狠色丁香久久婷婷综合五月| 99er6免费视频热播| 婷婷久久图片| 五月美女婷婷风骚| 99精品网| 色婷婷99| 亚洲不卡欧洲| nvrentiantang av| 天天摸天天日天天舔| 日本本土色网第一区| 97操在线视频| 狠狠狠狠狠狠色| 在线亚洲综合网| 精品成人在线| 狠狠精品干练久久久无码中文字幕 | 色婷婷AV久久| 超碰国产在线播放| 天天射影院| 99热这里只有精品9| 91精品久久久久久综合五月天| 六月丁香五月婷婷| 九热视频| 久热这里只有精品99re| 女力报到正好爱上你| 开心五月深爱五月婷| 天天婷婷操| 色色色在线免费视频| 久久婷婷五月| 欧美婷婷六月丁香综合色| 丁香五月香蕉| 色999五月色| 狠狠爱综合网| 九九av| 九九色综合| 婷婷伊人綜合中文字幕| 亚洲成人网站在线观看| 久热九九| 开心五月天私房婷婷| 亚洲精品网站色视频| 婷婷五月天受日本法律保护| 天天曰夜夜爽| 婷婷九月激情| 岛国AAAV| 久久婷鲁| 美欧成人视频| 色婷婷av在线| 五月丁香激情片| 欧美激情Va| 99色热视频| 天天谢天天操| 激情丁香五月婷婷| 狼人狠狠操| 婷婷五月天精品| 99婷婷| 丁香,开心成人,久久| 九色视频入口91| 9精品视频在线| 色综合色五月| 一本久久亚洲五月婷婷| 国产色五月婷婷| 天天影视天天爽天天草| 91超级碰在线视频| 五月激情视频| 热99玖玖99玖玖99九九| 69色婷婷| 五月天国产成人| 婷婷丁香基地在线| 六月婷婷在线视频| 丁香六月婷婷综合激情欧美| 99热这里是精品| 丁香五月之久操视频| 97久操视频| 中文字幕黄色片| 亚洲综合五月天综合| 九九热在线99| 婷婷色五月天在线| 激情亚洲五月| 色九月欧美| 五月天成人在线视频丁香| 人人摸人人干人人做| 在线视频另类| 亚洲电影在线观看| 色五月大| 狠狠色狠狠干| 五月天激情国产综合婷婷| 激情五月天丁香| 久久5 9视频免费观看| 2017人人操| 天堂五月婷婷| 五月天婷婷免费| 欧美色片中文字幕久久久久| 超碰爱爱爱| 日韩欧美四五区| 五月丁香影院| 爽tv | 亚洲成人av在线| 青青草婷婷综合五月| 婷婷欧美综合| 五月天社区婷婷| 精品久久99| 99热在这里只有精品| 五月丁香激情综合网| 777久久久| se99在线| 99热在线观看| 亚州第一A片| 五月婷伊人| 超碰成人在线观看| 91主播在线| 成人久久天天x资源站| 五月天婷婷色| 91人妻九色大屁股| 2050人人操免费工开爱| 超碰男人色| 97操女视频| 亚洲色情一区二区三区四区| 99re热在线视频| 五月婷婷黄色毛片| 少妇口诉沐足视频播放器网址| 婷婷九月丁香| 91精品啪| 丁香五月无码| 国产精品久久久爽爽爽麻豆色哟哟| 丁香花五月天激情| 久久激情网| 超级碰 久久9| 久久在线人妻| 中国女人内射6XXXXX| eeuss人妻| 亚洲国产成人综合| 色欲久久久久久综合网综合网| 国产另类综合| 乱精品一区字幕二区| 丁香六月婷婷缴情欧美| 玖玖色综合| 久99久在线观看| 五月婷婷六月情| 丁香五月婷婷婷桃花影院| 五月丁香六月情婷婷久久| 国产精品国产成人国产三级| 九九熱最新視頻| 六月 丁香 视频| 91se在线视频| 亚洲色碰| 91色综合| 国产成人网址| 丁香五月影院| 成人丁香五月| 六月99天天婷婷激情综合| 玖玖婷婷五月天| 操操人人| 日韩视频99| 日本怕怕视频| 97福利视频| 精品婷婷五月视| 丁香五月激情网| 婷婷国产日本欧美| 久久久国产精品黄毛片| 色婷婷六月开心中文字| 亚洲丁香花五月丁香花| 色色色国产| www.久操| 性色天| 成人五月天丁香婷| 五月大香蕉| 开心六月丁香五月婷婷| 99精品无码| 秋霞电影理论| 九月性爱网| 国产精品久久久海的味道| 99九九视频| www.99在线| 琪琪秋霞| 色青青电影色五月| 激情五月天激情小说| 97欧美在线| 亚洲色久| 五月天开心色情网| 精品五月花| 国产精品色婷婷久久久精品| 超碰精品在线| 亚洲V国产V欧美V久久久久久| 激情九九综合网| 97成人在线视频精品| 97人人干人人操| 六月亚洲| 色99免费视频中文| 狠狠爱综合网| 五月社区婷婷激情| 黄色91在线观看| 99热精品无码| 五月丁香黄色| 欧美色色色色色色色色色色| 五月激情六月丁香| 日日懆天天懆| 影音先锋毛片网站| 国产一区二区三区影院| 99re这里| 婷婷激情肏屄网| 99色嘟嘟精品网站| 超碰99久久| 丁香色啪综合| 色播播婷婷| 亚洲精品白浆高清久久久久久| 色色网五月激情| 99精品久久久久久久婷婷| 无码免费人妻A片AAA毛片西瓜| 五月激情婷婷在线| 婷婷色五月噜噜| 玖玖综合玖玖| 91色婷婷综合久久中文字幕二区| 成人精品99| 五月丁香亚洲校园欧美| 五月婷婷性爱网| 天天日综合| 五月天色婷婷激情| 婷婷五月亚洲激情| 最新日韩久热免费视频看看| 五月激情啪啪| 毛片新网地| 色婷婷五月婷婷五月婷婷五月| 91成人看片| 婷婷久综合| 99综合| 激情五月天婷婷丁香 | 天天综合亚洲综合网天天αⅴ| 微拍92| 丰满人妻一区二区三区| 99久久www| 新激情五月天色播| 狠狠色噜噜狠狠色噜噜噜999| 91丨九色丨国产在线| 国产SUV精品一区二区883| 超碰大香蕉网| 五月激情婷婷在线| 婷婷六月激情丁香| 五月天另类小说亚洲| 婷婷综合在线播放| 丁香五月天影院| 精品影院| 538在线精品| 五月天久久综合| 婷婷五月花丁香| 天天干天天 亚洲| 色五月婷婷天天干| 亚洲永久免费| 成人在线综合| 欧美月久久| 91 久热| av在线播放网站| 亚洲综合激情五月久久| 五月婷婷天堂| 99热都是精品| 97色97干| 新激情综合| 婷婷五月欧美| 26uuu色五月| 五月婷婷丁香日韩在线| 噼里啪啦在线观看免费完整版视频 | 性爱视频久久| 国产欧洲欧洲精品久久| 99精品热视频| 亚洲熟女色| 狠狠狠狠狠狠色| 色综合五月天| 亚洲免费婷婷| 中文乱子伦视频| 激情婷婷啪啪| 99热6色| 色亚洲激情| 热99在线| 五月婷婷深深爱| 婷婷五月天激情网| 亚洲熟妇无码乱子AV电影| 性爱久久| 97人人做| 91狠狠综合久久| 99精品亚洲| 婷婷六月天| 国产在线aaa片一区二区99| 99这里只有精品| 久久久99精品免费观看| 国产成人综合亚洲| 欧美在线ee日韩| Av在线不卡一区| 丁香五月婷婷亚洲激情四射| 五月天色站| 九九狠狠干| 婷婷激情九月| 深爱激情综合| 99爱爱网| 九色视频91| 九九热最新| 荫道BBWBBB高潮潮喷| 色色欧美色色色| 99热亚州综合| 激情五月综合久久| 九月丁香婷婷综合| 天天操天天爱天天日| 日日日日做夜夜夜夜无码| 青青草蜜臀| 六月丁香色婷婷| 成人网址在线观看| 色色色色色色网站| 最近中文字幕在线中文视频| 五月婷婷香蕉| 停停五月色宗合| 91爱啪啪| oVV4WIB3vFi8D| 亚洲第79页| 久久五月网| 色婷婷丁香五月天| 欧美日本不卡黄色片| 天天综合久久| 五月综合视频在线| 开心五月深爱激情| 99精品视频偷拍| 色九月| 99热99日天天干| 亚洲综合视频在线| 丁香开心深爱| 婷婷五月丁香综合激情| www.久久久久| 久久艹 五月天| 香蕉久久六月| 丁香 婷婷五月| 婷婷开心五月| AV性爱在线| 色婷婷狠狠禁久久| 色婷丁香| 日韩操| 99视频在线精品免费观看2| 综合AV网| 久久婷婷综合网| SS丁香五月婷婷| www.五月婷婷| 99色热综合| 99热婷婷| 色婷婷丁香五月在线观看| 五月婷视频| 婷婷丁香先锋资源网站| 天天干夜夜操A片| 婷婷六月综合激情| 亚洲妇女熟BBW| 超碰在线免费9| 色噜噜在线| 天天插综合| 久久五月天丁香花| 亚洲色五月天在线| 99热这里只有精品1025| 婷婷五月天av小说| 日木狠狠干| 婷婷日欧美在线观看| 成人做爰黄A片免费看直播室男男| 狠狠第四色| 五月婷婷开心综合| 嫩草AV久久伊人妇女超级A| 99日精品视频| 天天插天天插天天插| 色99在线| AAA久久| 亚洲无码99| 99A片| 色欲日日躁| 另类激情综合| 久99综合婷婷| 亚洲天天| 精品一区久热| 五月婷婷六月丁香激情综合网| 日韩九区| 久久9久久| 2025色婷婷| 久草丁香婷婷1024| 妻久久久久| 激情五月婷婷网| 欧洲S级在线观看| 丁香六月婷婷色XXXXX| 五月丁香色停停啪啪啪| 亚洲激情99| 五月丁香六月色| 五月婷婷综合激情网| 国产无人区大片| 久久99精品久久久久久青青AR| www开心激情网| 日本人妻伦在线中文字幕| 五月婷婷 欧美| 激情婷婷五月| 久热99| www.久久99| 91精品久久久久久| 久久9精品| 99热碰碰热| PORNY九色9l自拍视频成人| 国产午夜精品一区二区| 九九在线精点品| www.激情com| 色噜噜狠噜噜视频| 99热69| 五月丁香成年黄色| www.9797国产| 99亚洲视频| 日韩综合久久| 久久久com| 99爱视频精品| 色999亚洲人成色| 六月丁香深深爱| 婷婷丁香18| www激情五月天|