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

ARTICLE DETAIL

資訊詳情

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

中斷上半部響應(yīng)時間優(yōu)化實戰(zhàn):從裸機到RTOS的完整指南

中斷上半部響應(yīng)時間優(yōu)化實戰(zhàn):從裸機到RTOS的完整指南 做嵌入式開發(fā)的朋友應(yīng)該都遇到過這種場景主循環(huán)跑得好好的中斷一進來整個節(jié)奏就亂套了。尤其是運動控制、電源變換、通信協(xié)議棧這類對時序敏感的項目“中斷上半部響應(yīng)時間”這個指標直接決定了系統(tǒng)能不能在極端工況下保持穩(wěn)定。這里說的“上半部”是沿用 Linux 內(nèi)核里的說法——top half對應(yīng)裸機環(huán)境下 ISR 里最緊急的那一段處理而下半部bottom half就是真正耗時但不緊急的邏輯挪到主循環(huán)或任務(wù)里慢慢處理。中斷上半部響應(yīng)時間簡單說就是從硬件事件發(fā)出中斷請求到 CPU 進入 ISR中斷服務(wù)函數(shù)并執(zhí)行第一條有效指令之間的總延遲。這個指標直接影響通信會不會丟幀、電機會不會丟步、PWM 波形有沒有毛刺、任務(wù)調(diào)度會不會抖動。這篇文章我會從概念、原理、實操到排障把“提高中斷上半部響應(yīng)時間”這件事拆透覆蓋裸機、RTOS以 FreeRTOS 為主、以及 Linux 嵌入式方向。適合正在做 MCU 底層驅(qū)動、實時控制、通信協(xié)議解析的讀者也適合想系統(tǒng)理解中斷機制的人。1. 先搞懂“上半部響應(yīng)時間”到底由哪幾段組成1.1 為什么中斷要分成“上半部”和“下半部”拿人類行為來類比你在辦公室寫方案突然手機響了。你放下筆、接起電話說“我在開會三分鐘后回你”——這個“接起電話馬上應(yīng)答”的動作就是中斷上半部。三分鐘后你真正去處理對方的問題這是下半部。為什么非要拆分因為中斷處理有一個天然矛盾中斷越快執(zhí)行完系統(tǒng)響應(yīng)越及時但 ISR 里能做的事就越少。如果你在 ISR 里做耗時操作比如打印日志、解析復(fù)雜的協(xié)議幀、等待外設(shè)應(yīng)答那么系統(tǒng)的實時性會全面崩潰——不僅當前中斷返回慢其他中斷也會被堵住主循環(huán)更是被餓死。所以業(yè)界通用的做法是ISR 里只做“標記事件 保存關(guān)鍵數(shù)據(jù) 喚醒更高優(yōu)先級任務(wù)”這類輕量操作剩下的事情丟給下半部裸機主循環(huán)、RTOS 任務(wù)、Linux 里的 softirq/workqueue 等去處理。1.2 中斷響應(yīng)時間到底是哪幾段之和響應(yīng)時間不是單一變量而是一條鏈路的總和。我習慣把這條鏈路拆成四段階段耗時來源是否可控硬件觸發(fā)階段外設(shè)產(chǎn)生中斷請求、信號經(jīng)過濾波/同步電路、NVIC中斷控制器仲裁和優(yōu)先級判斷部分可控與芯片選型、中斷源配置有關(guān)CPU 核心響應(yīng)階段當前指令執(zhí)行到安全點、流水線排空、硬件自動壓棧、取向量表跳轉(zhuǎn)地址基本不可控但可通過硬件特性如 Cortex-M 的 tail-chaining減少開銷軟件入口階段進入 ISR 前保存剩余上下文、編譯器生成的 Prologue函數(shù)序言、進入 C 語言函數(shù)體可控與編譯器選項、是否使用浮點單元相關(guān)ISR 主體執(zhí)行階段ISR 內(nèi)實際代碼執(zhí)行時間完全可控這是優(yōu)化空間最大的地方第一段屬于硬件物理延遲第二段屬于 CPU 架構(gòu)延遲這兩段很難通過代碼優(yōu)化來顯著改變但它們決定了“地板值”——也就是系統(tǒng)再怎么優(yōu)化也不可能低于這個基線。真正能靠代碼優(yōu)化的是第三段和第四段尤其是第四段很多人響應(yīng)慢問題就出在 ISR 里干了太多不該干的事。1.3 “響應(yīng)時間”和“中斷處理時間”是兩碼事這是最容易被混淆的概念。打個比方你叫了一位外賣員送餐響應(yīng)時間是“你下單到外賣員敲你門的時間”處理時間是“外賣員在店里等餐、取餐、上樓到你面前的總時長”。對應(yīng)到中斷場景中斷響應(yīng)時間從請求觸發(fā)到 ISR 第一條指令執(zhí)行的時間反映的是系統(tǒng)“對突發(fā)事件的敏感度”。中斷處理時間ISR 從開始到 return 的時間反映的是 ISR 本身寫得快不快。很多新手只盯著“ISR 要短”這一點結(jié)果 ISR 寫得很短但響應(yīng)時間依然崩——因為問題出在“中斷又被其他中斷堵住”、出在“臨界區(qū)關(guān)中斷時間過長”、出在“調(diào)度器進入臨界區(qū)屏蔽了所有中斷”。這也是我為什么建議凡是要優(yōu)化中斷響應(yīng)先拿邏輯分析儀實測整段延遲分布在哪個環(huán)節(jié)別憑感覺盲改。2. 影響“上半部響應(yīng)時間”的細節(jié)到底藏在哪2.1 硬件和 NVIC 階段濾波電路和仲裁機制不能忽略很多人忽略了一個基礎(chǔ)問題不是每個外部信號都會立刻變成中斷請求。以 STM32 的外部中斷EXTI為例輸入引腳通常帶有濾波電路濾波時間的設(shè)置會直接影響信號從引腳到 EXTI 觸發(fā)器的延遲。如果引腳配置了上拉、濾波窗口開得很大快速脈沖可能直接丟事件或者延遲數(shù)百納秒才觸發(fā)。在 NVIC 內(nèi)部Cortex-M 處理器有一套“晚到中斷”Late-arriving interrupt機制如果 CPU 正在響應(yīng)某個中斷的壓棧過程此時來了一個更高優(yōu)先級的中斷處理器可以改變向量的提取對象直接處理更高優(yōu)先級中斷避免重復(fù)壓棧。但這里有個前提——更高優(yōu)先級必須足夠高否則晚到中斷機制不會生效。另外就是 tail-chaining尾鏈機制如果一個中斷正在退出下一個中斷已經(jīng)掛起Cortex-M 會跳過寄存器恢復(fù)和重新壓棧的步驟直接進入下一個 ISR。這個“咬尾”行為能省掉大約 12 個周期??扇绻阍?ISR 里手動開關(guān)了 PRIMASK 或操作了 BASEPRI某些情況下會打斷這個硬件優(yōu)化流程導(dǎo)致中斷進出開銷上漲。2.2 CPU 核心響應(yīng)階段壓棧、取指、Flash 等待的實際開銷Cortex-M 內(nèi)核響應(yīng)中斷時硬件會自動壓棧 R0-R3、R12、LR、PC、xPSR 總共 8 個字32 位下 32 字節(jié)。如果啟用了浮點單元FPU且當前任務(wù)在用 FPU 寄存器還會額外壓棧 S16-S31 等 32 字節(jié)這個開銷相當可觀。以 STM32F4 168 MHz 為例硬件壓棧加取向量表正常情況大約 12-16 個周期換算下來不到 100 ns。聽起來很快對吧但這里有一個大坑Flash 零等待狀態(tài)。STM32F4 的 Flash 接口在默認設(shè)置下如果未開啟 ART 加速器自適應(yīng)實時加速器訪問 Flash 指令時會有等待周期。中斷向量表默認放在 Flash 里取向量表地址本身就可能讓你多等 3-4 個周期。如果 ISR 代碼搬到了 RAM 執(zhí)行又要考慮指令預(yù)取緩存命中率的問題。在 Cortex-M7 這類帶 D-Cache/I-Cache 的高端內(nèi)核上情況更復(fù)雜。Cortex-M7 支持指令緩存但如果第一次進入某個 ISR指令 Cache 未命中代碼需要從 Flash 加載這會帶來幾十甚至上百周期的額外開銷。所以對中斷響應(yīng)極度敏感的場景業(yè)界有把 ISR 放到 ITCM緊耦合內(nèi)存的做法代價是占用寶貴的 TCM 空間。2.3 軟件階段關(guān)中斷臨界區(qū)是最大的隱形殺手在我的從業(yè)經(jīng)驗里90% 以上的“中斷響應(yīng)慢”問題根源不在硬件而在軟件——尤其是臨界區(qū)關(guān)中斷時間太長。RTOS比如 FreeRTOS在實現(xiàn)任務(wù)切換、隊列讀寫時會通過關(guān)閉中斷PRIMASK 置 1來保護臨界區(qū)。如果一個任務(wù)的臨界區(qū)里做了耗時操作比如將一個 1 KB 的緩沖通過 for 循環(huán)拷貝、或者調(diào)用了一個會延時的函數(shù)那這段時間里所有中斷都被屏蔽了。高優(yōu)先級中斷被延后響應(yīng)結(jié)果就是系統(tǒng)對外表現(xiàn)遲鈍。舉一個真實案例某項目在 FreeRTOS 任務(wù)里調(diào)用了一個帶鎖的驅(qū)動函數(shù)驅(qū)動內(nèi)部用taskENTER_CRITICAL()保護了一段耗時 2 ms 的 Flash 擦除操作。結(jié)果串口接收中斷被阻塞波特率 115200 下接收 FIFO 直接溢出丟數(shù)據(jù)。排查半天最后靠示波器抓 GPIO 翻轉(zhuǎn)才發(fā)現(xiàn)問題出在臨界區(qū)長度。類似地裸機環(huán)境里如果自己寫了“關(guān)中斷 操作外設(shè) 開中斷”的代碼同樣要嚴格控制關(guān)中斷的時間原則是臨界區(qū)里只做原子訪問絕不做耗時操作。2.4 中斷嵌套與優(yōu)先級分組設(shè)計是雙刃劍很多人以為中斷嵌套越多響應(yīng)越快其實恰恰相反。中斷嵌套意味著高優(yōu)先級中斷可以打斷低優(yōu)先級中斷但如果優(yōu)先級分配不合理比如給每個外設(shè)都賦予不同優(yōu)先級、卻沒有考慮執(zhí)行時間就可能出現(xiàn)“低優(yōu)先級中斷還沒處理完高優(yōu)先級中斷又來了”最終高優(yōu)先級中斷自己也被堵住。常見的問題還有多個中斷源共用一個優(yōu)先級分組導(dǎo)致硬件仲裁失效。比如 STM32 的 NVIC 支持 4 位優(yōu)先級可分組為搶占優(yōu)先級和子優(yōu)先級如果所有外設(shè)都配置成搶占優(yōu)先級 0那么當它們同時掛起時NVIC 只能按照“中斷號小優(yōu)先”的默認規(guī)則仲裁軟件層面的優(yōu)先級設(shè)計就形同虛設(shè)。所以優(yōu)先級分組設(shè)計的核心原則讓時間敏感的中斷擁有獨占的搶占優(yōu)先級并且它的 ISR 要足夠短不太敏感的中斷可以共享同一個搶占優(yōu)先級靠子優(yōu)先級排序。3. 在 Cortex-M / FreeRTOS 場景下怎么做優(yōu)化3.1 先測量再優(yōu)化用 GPIO 翻轉(zhuǎn)法摸清延遲基線任何優(yōu)化都必須先建立“測量基準”。我在實際項目中用得最多的方法叫“GPIO 翻轉(zhuǎn)法”。具體做法選一個定時器通道比如 TIM2配置為更新中斷中斷優(yōu)先級設(shè)為最高。在定時器更新事件的中斷服務(wù)函數(shù)第一行將 GPIOB PIN0 電平翻轉(zhuǎn)。在第二個 GPIOGPIOB PIN1上接一個測試信號源或者直接用示波器兩個通道同時測。用邏輯分析儀或示波器測量“定時器更新請求產(chǎn)生時刻”到“GPIOB PIN0 翻轉(zhuǎn)時刻”的時間差。這里有個技巧如果定時器沒有直接的觸發(fā)輸出腳可以把更新事件映射到另一個 GPIO 上部分芯片支持 MCO 或 TIM 的 TRGO 輸出或者用外部信號源給 EXTI 引腳發(fā)脈沖再在 EXTI ISR 里翻轉(zhuǎn) GPIO對比“脈沖輸入到 GPIO 翻轉(zhuǎn)”即可。下面是一個 STM32F4 HAL 庫的示例展示測量中斷響應(yīng)時間的最小框架void TIM2_IRQHandler(void) { /* 進入 ISR 的第一件事就是翻轉(zhuǎn) GPIO標記開始點 */ GPIOB-ODR ^ (1u 0); /* HAL 庫會在這里清中斷標志并回到用戶回調(diào) */ HAL_TIM_IRQHandler(htim2); } void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { if (htim-Instance TIM2) { /* 這里放正常的中斷上半部處理邏輯 */ g_irqCounter; /* 示意喚醒任務(wù) */ BaseType_t xHigherPriorityTaskWoken pdFALSE; vTaskNotifyGiveFromISR(xAppTaskHandle, xHigherPriorityTaskWoken); portYIELD_FROM_ISR(xHigherPriorityTaskWoken); } }注意上面的 GPIO 翻轉(zhuǎn)放在了 HAL 庫回調(diào)之前。如果在 HAL_TIM_IRQHandler 之后才翻轉(zhuǎn)測量結(jié)果里會混入 HAL 庫處理標志位的時間那測出來的就不是“上半部響應(yīng)時間”而是“上半部響應(yīng)時間 HAL 庫基礎(chǔ)開銷”了。實測下來在 168 MHz 的 Cortex-M4 上定時器中斷到 GPIO 翻轉(zhuǎn)的延遲通常能壓在 200 ns 以內(nèi)未開啟 FPU、程序在 Flash 運行、命中 ART。如果測出來超過 500 ns就要懷疑是不是關(guān)了全局中斷或者 Flash 等待配置有問題。3.2 ISR 內(nèi)部優(yōu)化能用寄存器就別調(diào)庫能留標志就絕不阻塞測量完成之后如果基線正常但業(yè)務(wù)上還是覺得慢問題多半出在 ISR 內(nèi)部代碼上。我見過太多現(xiàn)場ISR 里直接調(diào) HAL_UART_Receive、HAL_Delay、printf那效率高不了。ISR 內(nèi)部優(yōu)化的幾條硬經(jīng)驗第一緊急路徑上避免調(diào)用函數(shù)。函數(shù)調(diào)用涉及壓棧/出棧和跳轉(zhuǎn)在中斷上下文里每一次函數(shù)調(diào)用都意味著額外周期??梢园?ISR 里最緊急的代碼直接寫成內(nèi)聯(lián)或 use 表達式化宏或者用__attribute__((always_inline))強制內(nèi)聯(lián)。但注意別過度整個 ISR 都內(nèi)聯(lián)會導(dǎo)致代碼膨脹反而影響指令緩存命中。第二用 DMA 搬數(shù)據(jù)別在 ISR 里循環(huán)等。典型場景是串口接收。很多人寫串口 ISR 時每收到一個字節(jié)就進一次中斷在 ISR 里把數(shù)據(jù)搬到數(shù)組里。波特率 115200大約 86.8 微秒來一個字節(jié)如果數(shù)組拷貝邏輯短勉強能跑但如果是 ESP32 這類帶 WiFi 協(xié)議棧的處理器在中斷里碰 SPI、碰 DMA 描述符很容易吃資源。正確做法是“串口空閑中斷 DMA 接收”。數(shù)據(jù)到達后由 DMA 寫進內(nèi)存串口空閑時觸發(fā)一次中斷空閑中斷ISR 里做的事情只是記錄 DMA 剩余長度、計算本次接收大小、發(fā)一個信號量給任務(wù)。ISR 本身執(zhí)行時間壓縮到幾微秒內(nèi)。/* 串口 DMA 接收 空閑中斷的 ISR 示例 */ void USARTx_IRQHandler(void) { uint32_t isrflags USARTx-SR; if (isrflags USART_SR_IDLE) { /* 清除空閑標志這里因芯片而異 */ USARTx-SR 0; USARTx-DR; /* 計算本次接收數(shù)據(jù)長度 */ g_rxLen RX_BUF_SIZE - __HAL_DMA_GET_COUNTER(hdma_uartx_rx); /* 喚醒協(xié)議解析任務(wù) */ BaseType_t xHigherPriorityTaskWoken pdFALSE; xSemaphoreGiveFromISR(xRxSemaphore, xHigherPriorityTaskWoken); portYIELD_FROM_ISR(xHigherPriorityTaskWoken); } }第三ISR 里絕不調(diào)用阻塞類操作。所謂“阻塞類操作”包括延時等待 EEPROM 寫完成、等待 Flash 編程完成、等待信號量非阻塞的xSemaphoreGiveFromISR除外、打印日志、向外部設(shè)備發(fā)起 I2C/SPI 事務(wù)。這些操作一旦放進 ISR輕則拖慢響應(yīng)重則直接導(dǎo)致 Keil/IDE 調(diào)試時看門狗復(fù)位。3.3 RTOS 任務(wù)喚醒與調(diào)度開銷別讓“從 ISR 返回”拖后腿在 FreeRTOS 這類 RTOS 里中斷上半部響應(yīng)時間還有一個隱藏尾巴ISR 執(zhí)行完后如果內(nèi)部調(diào)用了portYIELD_FROM_ISR就會觸發(fā) PendSV 異常讓具有更高優(yōu)先級、被喚醒的任務(wù)搶占當前任務(wù)。這個調(diào)度過程本身是有開銷的——PendSV 的壓棧、任務(wù)切換、出棧加起來可能 3~5 微秒。這帶來一個困惑是不是“不要隨便調(diào)用 portYIELD_FROM_ISR 就能更快”不是的。要分場景如果中斷喚醒的是高優(yōu)先級實時任務(wù)如電流環(huán)、控制環(huán)那你必須在 ISR 里 yield否則任務(wù)要等到當前任務(wù)主動讓出 CPU實時性仍然崩。如果中斷只是通知一個后臺協(xié)議解析任務(wù)而這個任務(wù)本來就不緊急那可以不用 yield直接給信號量等調(diào)度器自然切換。很多項目里懶省事在 ISR 里一律調(diào)用portYIELD_FROM_ISR結(jié)果導(dǎo)致頻繁任務(wù)切換、上下文切換開銷吃掉 CPU 時間。合理的做法是評估“從 ISR 喚醒的任務(wù)是否比當前運行任務(wù)更高優(yōu)先級”如果是才需要 yield否則交給調(diào)度的自然過程。FreeRTOS 還提供了另一個關(guān)鍵配置項configMAX_SYSCALL_INTERRUPT_PRIORITY。這個值決定 ISR 里能安全調(diào)用xxxFromISR系列 API 的最高中斷優(yōu)先級。如果中斷優(yōu)先級數(shù)值大于這個配置調(diào)用 FromISR API 會產(chǎn)生斷言失敗如果配置得過高高優(yōu)先級中斷屏蔽了內(nèi)核臨界區(qū)保護可能出現(xiàn)數(shù)據(jù)競爭。這塊我在第 4 節(jié)問題排查里會重點講。3.4 Linux 方向threadirq、PREEMPT_RT 與 irqsoff 檢測如果你做的是嵌入式 Linux那“提高上半部響應(yīng)時間”的玩法完全不同。Linux 中斷分 hardirq硬中斷即上半部和 softirq/tasklet/workqueue下半部。常見優(yōu)化手段第一確認硬中斷處理函數(shù)里沒有慢操作。Linux 硬中斷上下文不能睡眠所以不能調(diào)用kmalloc(..., GFP_KERNEL)、不能拿信號量。一旦硬中斷里做了耗時訪問外設(shè)的操作系統(tǒng)整體響應(yīng)就會拉胯。排查時可以用ftrace里的irqsoff追蹤器記錄最長關(guān)中斷區(qū)間。# 掛載 tracefs mount -t tracefs nodev /sys/kernel/tracing # 開啟 irqsoff 追蹤 echo irqsoff /sys/kernel/tracing/current_tracer echo 1 /sys/kernel/tracing/tracing_on cat /sys/kernel/tracing/trace第二啟用threadirq或PREEMPT_RT。普通 Linux 內(nèi)核里hardirq 處理時間過長的驅(qū)動會危害實時性??梢越o內(nèi)核傳參threadirq強制將所有中斷處理函數(shù)線程化。這樣硬件中斷只負責喚醒對應(yīng)內(nèi)核線程真正的處理邏輯在線程上下文里跑可以被調(diào)度、可以被搶占系統(tǒng)的整體響應(yīng)時間更平滑。如果是強實時場景比如工業(yè)控制、機器人那建議直接上PREEMPT_RT補丁。它在內(nèi)核里引入了幾乎全稱可搶占的機制并把中斷處理進一步線程化。此時中斷響應(yīng)時間的抖動從微秒級降到可控范圍。第三關(guān)中斷臨界區(qū)要避免嵌套。Linux 里最常見的關(guān)中斷 API 是local_irq_disable()/local_irq_enable()。如果驅(qū)動里因為鎖的持有時間長而長時間關(guān)閉中斷系統(tǒng)的所有中斷都會被延遲。規(guī)范做法是使用spin_lock_irqsave()替代裸的local_irq_disable()它能保證在中斷上下文和進程上下文之間安全共享數(shù)據(jù)同時盡量縮短關(guān)中斷窗口。4. 常見問題與排查技巧實錄4.1 延后排查的思路先分層、再定位中斷響應(yīng)慢的排查我給一套從外到內(nèi)的思路先確認“是否真的進了 ISR”——在 ISR 入口放 GPIO 翻轉(zhuǎn)用示波器看是否及時。再確認“是否在 ISR 內(nèi)耗時”——在 ISR 出口再翻轉(zhuǎn)一次對比兩次翻轉(zhuǎn)間隔。再確認“是否被更高優(yōu)先級打斷”——關(guān)掉所有其他中斷只留被測中斷看響應(yīng)是否恢復(fù)到基線。最后確認“是否被臨界區(qū)阻塞”——在任務(wù)的臨界區(qū)前后也放 GPIO 翻轉(zhuǎn)標志看是否存在任務(wù)關(guān)中斷時間過長。這套思路可以幫你快速把問題鎖定到“硬件/NVIC 配置”“ISR 執(zhí)行體”“RTOS 臨界區(qū)”三者中的某一個。4.2 典型問題速查表現(xiàn)象可能原因解決方向外部按鍵中斷響應(yīng)慢EXTI 輸入濾波時間配置過大調(diào)小濾波時間或者用邊沿觸發(fā) 軟件去抖定時器中斷偶爾出現(xiàn) ms 級抖動ISR 內(nèi)調(diào)用printf或阻塞延時刪除阻塞操作改用事件標志 串口 DMA 輸出RTOS 任務(wù)被喚醒時間明顯偏晚臨界區(qū)關(guān)中斷時間長縮短臨界區(qū)用FromISR系列 API檢查configMAX_SYSCALL_INTERRUPT_PRIORITY配置串口接收丟數(shù)據(jù)在 ISR 里逐字節(jié)處理接收改成串口空閑中斷 DMA 接收高優(yōu)先級中斷響應(yīng)被拖慢低優(yōu)先級 ISR 執(zhí)行時間過長或 NVIC 優(yōu)先級分組混亂拆分低優(yōu)先級 ISR 的下半部縮短上半部執(zhí)行時間代碼加了 FPU 運算后響應(yīng)變慢浮點上下文壓棧開銷大為中斷函數(shù)添加__attribute__((naked))精細控制或避免在 ISR 里用浮點Linux 下 GPIO 中斷響應(yīng)抖動大hardirq 里做了慢速外設(shè)訪問將處理邏輯移到 threaded IRQ檢查irqsoff追蹤結(jié)果4.3 幾條越早知道越好的避坑建議第一條HAL 庫的“安全”是性能毒藥。HAL 庫為了各種場景下的健壯性在中斷處理向量里做了大量“多一層檢查”的封裝。比如HAL_UART_IRQHandler會檢查gState、判斷錯誤標志、調(diào)用多個回調(diào)這些邏輯對性能敏感的中斷是致命的。如果你的項目硬實時要求高直接基于寄存器寫 ISR或者只在中斷里做最小標志位處理。第二條關(guān)中斷保護的數(shù)據(jù)范圍要極其克制。臨界區(qū)保護的是“共享數(shù)據(jù)”不是“操作流程”。比如你只需要在中斷里讀一個 32 位變量那關(guān)中斷只需要 3 條指令的時間如果你在臨界區(qū)里調(diào)用了memcpy拷貝了 1 KB 數(shù)組那這個臨界區(qū)時長就失控了。正確做法是臨界區(qū)里只做指針交換或標志位置位真正的數(shù)據(jù)拷貝放到臨界區(qū)外完成。第三條用“優(yōu)先級分組盡量簡單”來避免自己給自己挖坑。STM32 的 NVIC 優(yōu)先級分組如果又分搶占優(yōu)先級又分子優(yōu)先級配置錯了很難查。我的實踐建議除非確有必要否則只使用搶占優(yōu)先級PRIGROUP配置成分組 3即 4 位全部為搶占優(yōu)先級子優(yōu)先級全設(shè) 0。這樣中斷之間的優(yōu)先級邏輯最清晰幾乎不可能出現(xiàn)“按理說應(yīng)該搶占但實際沒搶占”的情況。第四條別忽略編譯器優(yōu)化選項。同一份 ISR 代碼O0 和 O2 編譯出來的執(zhí)行時間差距可能在 2 倍以上。在需要極致響應(yīng)速度的地方不要用 O0但也要警惕 O3 下某些時序敏感代碼被重排。我的做法是ISR 及被它調(diào)用的函數(shù)加__attribute__((optimize(O2)))其他模塊按項目的穩(wěn)定性需求選擇優(yōu)化等級。4.4 強實時項目的經(jīng)驗級建議如果你做的是 1 kHz 以上的電流環(huán)、PWM 信號采樣、或者無刷電機 FOC 這類需要納秒級穩(wěn)定響應(yīng)的項目有幾條頂層建議供參考把緊急中斷 ISR 放到 RAM 執(zhí)行消除 Flash 等待周期不確定性。中斷優(yōu)先級寧可集中也不要散太多層級中斷優(yōu)先級數(shù)量少反而能減少“晚到中斷”機制失效的風險。在調(diào)度器允許的前提下RTOS 心跳頻率不要設(shè)太高心跳中斷和業(yè)務(wù)中斷混在一起優(yōu)先級處理稍有不慎業(yè)務(wù)中斷的響應(yīng)會受心跳中斷抖動影響。如果允許用支持硬件中斷向量查找表VTOR的 MCU將中斷向量表放在 RAM 起始地址并動態(tài)更新向量省掉重映射延遲。我個人的經(jīng)驗是中斷優(yōu)化到極致之后剩下能榨取的性能大多在架構(gòu)層面而不是單個 ISR 代碼層面。比如把關(guān)鍵中斷放在獨立的內(nèi)核、用專用硬件外設(shè)替代 CPU 輪詢、用事件系統(tǒng)替代中斷嵌套等。這些做法本質(zhì)上是在減少“中斷鏈路過長”帶來的不確定性比逐條指令摳周期更值得投入精力。另外提一個經(jīng)常被忽略的點如果你用了低功耗模式如 STM32 的 Stop/Mode、ESP32 的 modem sleep喚醒延遲本身可能非常高。芯片數(shù)據(jù)手冊里會給出喚醒時間指標有的高達幾十微秒甚至上百微秒。如果對中斷響應(yīng)有硬性要求就不要把系統(tǒng)輕易放進深睡眠如果必須睡眠就得接受“喚醒時間”成為響應(yīng)時間的一部分這個物理成本是軟件優(yōu)化不掉的。最后分享一個實操小技巧在調(diào)試中斷相關(guān)問題時不要只盯著邏輯分析儀和示波器建議在發(fā)布版本里保留一個“pulse 調(diào)試口”輸入全局——也就是預(yù)留一個 GPIO專門在關(guān)鍵中斷入口翻轉(zhuǎn)輸出。平時不接任何東西線上問題現(xiàn)場拿示波器一夾就能判斷中斷有沒有及時響應(yīng)這個習慣在工業(yè)現(xiàn)場排查時幫過我大忙。邏輯分析儀需要拆機、接探頭而預(yù)留調(diào)試口就輕松多了能省下大量時間。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
免费网站观看www在线观| 日本高清有码网址视频| 激情小说成人日本无码一| 99久久久无码国产精品性男| 久久超碰亚洲人| 操我啊啊啊啊啊| 久久肏大逼| 五十路熟女人妻一区二区三区四区五| www. 男人天堂成人在线| 欧美成人亚洲精品| 最新av在线| 男人的亚洲天堂| 亚洲,欧美,综合网| 9久在线视频只有精品| 377p欧洲日本亚洲大胆| 99操视频| 国产一区二区久久| 久久97| 浓厚中出中文字幕在线| 欧美日韩操逼嗦吊| 黄页网站免费高清在线观看| 人人干人人操人人爱| 性色AV蜜色av色欲av| 粉嫩av平台| 日韩成人大片一区二区| 91九久| 欧美在线55555| 午夜欧美精品久久久| 美国黄片aaa| 一区三区啪啪| 国产久久一区二区午夜| 一级AAA片一区二区三区| 久久久久久久97| 加勒比在线视频一区二区三区| 蜜桃臀一区二区aV| 91老司机精品| 丝袜内射| 亚洲高潮少妇| 四季AV一区二区凹凸精品小说| 丁香7月婷婷| 超碰在线人人射| 可以免费观看的日韩av毛片| 1024亚洲中文字幕久在线看片你懂的| 日本黄 R色 成 人网站| 欧美色66| 精品黄色电影| 亚洲黑人在线| 日韩性爱播放| 10000部十八禁看电影| 97香焦色区| 99蜜桃臀亚洲成人在线观看| 97超碰欧美| 国产偷拍自拍在线视频| 久草精品国产蜜臀| 国产成人久久精品蜜臀| 九九黄色视频在线观看| 欲香欲色天天天综合和网| 欧美乱欲| 精品久久99| 日韩国产十八禁| 夜夜爽夜夜操| 这里只有精品视频在线| 97在线/亚洲| 人人操人人操人人操人人操人人操人人人11.CM| 亚洲综合五月天婷婷丁香| 欧美在线中M| 另类TS人妖一区二区三区| 色9999日韩国产| 日韩丨制服丨中文|在线| 日本欧美一区二区三区视频麻豆| 区一在线观看| 成人国产二区三区在线,男女精品。| 永久免费发布性爱网| 成人一级性爱| 偷窥自拍亚洲天堂网爆| 好涩综合| 亚洲色鬼| 快灬快灬 一下爽蜜桃在线观看| 欧美色999| 久久久久久久人妻| 超碰欧美在线欧美| 2019久久久久久久久福利| 日韩美女久久一区二区三区| 久久五月丁香| 亚洲97成人在线观看| 蜜桃狠狠色伊人亚洲综合| 国产中文福利| 97在线观看免费视频l| 97精品视频| 日本一二三免费久久| 亚洲日韩av一区二区三区百合| 日本视频在线中文字幕| 精品一区二区三区蜜桃| 国产精品色哟哟| 园内精品自拍视频在线播放| 久久9亚洲| 91精品国产91熟女| 大屁股熟女一区二区三区| 日韩性爱1级片视频| 超碰欧美| 91w欧美| 狠狠躁天天躁日日躁| 美國A片| 色女综合| 99re9| 人妻久久久| 亚洲视频中文一区| 超碰午夜| 啊啊啊爽爽| 巨爆乳一区二区爆乳区| 日韩精品黄片免费观看| 九九伊人网| 啊啊啊啊啊啊啊啊啊在线观看| 黄片免费日韩| 国产蜜臀精品一区免费尤物| 91精品国产高清久久久久久,亚洲成人 | 亚洲美女精品九九视频| 亚洲精品中文字幕一区在线视频 | 久久超碰、| 人妻另类 专区 欧美 制服| 亚洲激情网一二三四区| 囯戸精品高潮呻吟旡码| 国产精品久久久久久久久久久久久久久久久久| 激情小说图片亚洲首页| 久久天堂网| 久久乐| 日本成a人v网站在线观看| 亚洲精品天天影视综合网| 秋霞一级A片黄色视频| 人人搡人人肉久久精品| 999岛国大片| 欧美综合在线第一页| 婷婷久久五月天| 国产综合色精品在线观看| 超碰在线974| 日本www操操操| 久久久久久久久久精| 久久婷婷六月综合| 一本大道不卡一二三区| 综合一区中亚洲国产成人综合精品 | 人人干人人操人人爱| 日本性爱网址| 成人情色综合网| 江都AV在线| www熟女乱伦com| 日韩欧美天天爽爽爽天天爽爽 | 9 9精品一区二区三区| 欧美一区二区男人天堂| 9 7超碰在线免费观看| 可以在线观看AV的网站| 大香蕉中文在线| 久久综合av| 久久麻豆一区二区| 花花AV导航| 中文字幕精品日韩中文字幕| 啪啪一区| 久久精彩视频9| 青青草黑寡妇男人天堂| 精品少妇99| 影音先锋日本一区二区| 亚洲图片欧洲图片aⅴ| 日韩无码专区| 日产国产精品中文久久婷婷| 97操b| 精品视频一区二区| 变态乱伦伪娘灌肠一区二区| 日本综合色图| 精品美女少妇一区二区| 日韩成人性爱AV| 91原创在线观看| 95自拍视频在线观看| 天天干人人乐| 啪啪91| 麻豆2区1区天美| 久久xx| 五月天色图| 97中文字幕色| 91精品人妻一区二区三区蜜桃臀| 99999这里都精品| 日本不卡在线二区三区| 在线强奷到舒服的无码视频| 精产国品一区二三产品| 97欧美资源| 国产成人www免费人成看片| 青青草视频久久久久| 欧美精品宗合| 成人性爱美曰韩| 亚洲AV成人精品网站在AV| 亚洲精品久久一区二区三区蜜桃臀| 8050午夜少妇无码| 国产一进一出视频网站| 国产精品内射婷婷一级二| 风韵犹存大大大大香蕉| 国产精品另类| 99国产天美| 夜夜欢天天干| 亚欧性爱在线无码| 亚洲素人综合| 亚洲午夜免费狠狠干| 久久久九九九| 日韩少妇无码| 清纯唯美亚洲| 97免费在线视频| 黄页| 人妻丝袜一区二区三区在线| 精品人妻久久久| 后入式999| 中文字幕精品专区搜索结果91| 国精综合一二三区影视| 狠狠搞 亚洲91| 日本不卡卡一区| 美女久久久久久久久久久| 亚洲91av| 啊啊啊在线观看| 国产后入精品| 日韩久久三区| 久久久久亚洲Av无码专区老牛影视| 欧美热图99| 久欲AV| 黄色十八禁| 午夜精品久久999热蜜桃介男人用| 99亚洲人人| 亚洲欧美国产中文字幕| 亚洲欧美天堂在线| 啪啪91| 99热超碰| 97精品视频免费| 婷婷情色五月天| 99www.bibizy香蕉资源国产一区二区三区高清 | 中文字幕一区二区三区蜜臀| 男人高清无码一区二区| 91性感网站| 欧美色吧综合| 99热官网| 懂色综合久久久| 青青操少妇| 日本色色网| 精品999999| 亚洲、日韩、综合、另类| 黄色区免费观看中文字幕| 99在线啪| 8050午夜少妇无码| 亚洲男人天堂Av| 中文字幕一区二区三区蜜桃视频| 大香蕉色十月| 亚洲少妇中文字幕网址| 久久婷婷视频| 亚洲AO在线| 国产久久一区二区| 色色香蕉| 国产精品视频在线观看| 999久久久九九九九| 91操碰| 久热伊人| 亚洲色人妻综合| 亚洲宗合电影| 欧美激情黑人| 电家庭影院午夜69久久夜色精品国产69乱| 久久精品欧美一区二区三区不卡| 黑人无码一区二区| 999狠狠综合| 青草香蕉网| 9 1超碰九色| 99re这里只有精品9| 国产一级特黄大片处女| 色婷婷视频| 96AV久久久| 熟女91网| 一本色道无码DVD中文字幕| 日本成人A片免费看| 免费精品福利在线观看| 精品久久在线区一区| 亚州色图欧美| 乱伦日本中文自拍| 人人爱操| 国产视频第2页| 夜夜欧美 | 大香蕉78| 操比国产| 久久精品视频28| 东京热99999| 亚洲国产成人综合碰碰三级经典| 国产91丝袜 在线播放| 先锋激情∨在线视频播放| 欧美亚洲激情| 日日爽熟女| 五月丁香成人网| 日韩欧美aⅴ综合网站发布| 97色婷婷| 欧美青青视频| 日本成人在线不卡一区二区三区 | 神马久久久久久久| 婷婷色导航| 久久欧洲| 亚洲九九九| 爱做久久久久久| 77国产精品| 思思热一热婷婷热一热| 乱欲一区二区| 久久神马影院| 热热色青青草| 9久久久久久| 青青草久久在线| 国产9 9在线 | 亚洲| 色五月激情AV在线| 国产精品一区二区三| 中文字幕诱惑制服人妻丝袜美丝袜美 | 中文字幕日韩人妻视频| 婷婷综合| 精品久久久一本一道| 国产女同视频在线播放| 高跟伊人julia ann| 欧美综合自拍| 亚洲欧美校园另类春色| 加勒比海人人操超碰在线| 激情视屏国产乱伦强奸| 日日干男人的天堂| 欧洲黄色网| 99ri精品| 久久蜜桃一区二区| 美国一区二区三区视频| 婷婷五月天av| 欧美色图亚洲特色| 国产在线视频午夜精华在| 亚洲影视综合| 欧美少妇熟女| 日韩兔费看黄片| 欧美大香蕉专区网| 亚洲综合在线高清| 天天欧美| 中国操逼无码| 青娱乐日韩无码| 国产精品亚洲四五区在线观看| 无码91| 五月天婷婷久久| 欧洲精品人妻| 亚洲精品精品一区二区| 成人一区二区三区四区| www.人人摸在线视频| 中文字幕欧美精品亚洲日韩蜜臀| 亚欧性爱在线无码| 日韩美女,国产传媒,视频一区| 天天射天天色成人| www.狠狠| 午夜免费福利视频一区| 人妻大香蕉| 精品国产91av一区二区三区| 欧美超碰人妻97| 亚洲国产ⅴ高清在线观看| 秋霞男人网| 日本欧美一区二区三区视频麻豆| 99热日| 无色无码| 999热日韩精品| 人妻AV 中文字幕的| 欧美偷拍| 性色avv| www.亚洲黄色| 日韩欧美天天爽爽爽天天爽爽| 久久亚洲AV无码专区国产精品| 九九av| 国产精品国产拍高清AV| 超碰91在线| 偷拍欧美激情| 啪啪资源网| 中文熟女五十乱码在线| 这里只有精品视频| 国产精品露脸在线观看| 日韩亚洲97| 国产免费一区在线观看| 久操国产在线| 久久国产精品,久久国产| 伊人久久综合精品欧美| 天天影视综合色| 丁香五月大香蕉| 国产91影院| 欧美大战久久久伊人| 网站A V在线| 亚洲色图片区| 亚洲色图超碰在线| 91天天综合网| 东京热一区二区三区四区五区六区| 国产高清在线自在拍69| 97在线免费观看| 97超级久久强资源| 能在线播放的国产三级| 天天影视亚洲| 中文一区在线日| 色丁香五月婷婷| 伊人五月天婷婷| 精品人妻一区二区三区视频| 黄色欧美性爱视频| 伊人一级免费黄片| 日日干夜夜欢| 97亚洲国产影视| 午夜.DJ高清在线观看免费7| 60秒免费小视频| 国产女性无套 免费观看| 欧美A片中文字幕| 久久一留热品黄| 成人性爱视频在线看| 精品一区二区2| 最新精品久久蜜桃 | 国产精品久久久久久久无码AV | 国产精品夜夜| 激情亚洲天堂| 婷婷五月成人| 欧美黄片欧美黄片xxx| 色综合大香蕉| 婷婷精品国产欧美精品亚洲人人爽| 精品人妻1237| 大伊香蕉在线视频免费| 岛国激情视频在线观看| 大香蕉综合网| 日本大香蕉综合网红本杳社区| 夜夜免费视频| 欧美九九爱| 国产精品爽爽va在线观看98| 无码精品久久| 伦理第一页| 韩国三级一线观看久| 麻豆天美久久91| 亚洲人妻中文在线视频| 亚洲激情网一二三四区| 97碰在线视频| 国产超碰人人爽人人做| 日本操逼视频免费| 男人天堂网手机版婷婷| 91无摭挡| 天天天天天天天天综合| 久久AV无码网址| 一区二区三区四区五区高清无码永久视频| 欧美gv在线观看| 花野真衣| 新怡红院| 九9热伊人| 亚洲日韩青青草色月| 日韩性爱人人爱人人操| 操逼免费视频无码国产| 亚洲男人综合| 日韩有码中文字幕女同性恋| 国产99999| 国产67194| 日韩精品中文字幕一| 人妻无一区二区三区| 97亚洲综合| 91美女片在线| 日本精品一区二区不卡| 一区黄二区黄| 长长久久88视频| 日本中文字幕在线视频| 日韩欧美亚洲一区二区三区影院| 韩国成人精品久久久免费看| 尤物黄色在线观看网站| 九九精品无码专区免费| 四虎国产精品永久入口| 男人女人18禁片免费看网站| av网站国产主播在线| 97在线观看| 亚洲一区二区在线观看91| 天天综合中文字幕 91| 密臀成人视频久久久| 色悠久久久av| 亚洲欧美视| 深爱伊人影院| 午夜传煤十二区精品| 欧美综合1性辶| 国产AV天美传媒一区二区三区 | 玖玖爱影院| 熟女精品日韩一区二区三区| 91综合熟女| 东北老熟女| julia国产在线| 欧美姓爱综合网| 中文字幕乱亚洲美女精品一区| 超碰2017| 粉嫩av平台| 精品九九国产无码| 精品毛片av一区二区| 韩国成人精品久久久免费看| 欧美极度丰满熟妇hd| 国内精品久久久久影院亚洲| 五月花婷婷| 亚洲精品久久久久久久久豆丁网| 一区二区三区 丝袜 高跟 美腿| 91亚·色| 美女刺激久久国产欧美| 第二页中文字幕| 亚洲成人精品久久久| 加勒比人妻综合| 9久9久| 2017天天插| 欧美天天综合网| 日产欧美电影一区二区三区| av午夜影院在线播放| 四虎影院成年人片| 国产夜夜艹| 欧美78| 国产精品一区在线播放| 欧美第二页| 特色a在线上| 女人与公拘交酡2020视频| 亚洲国产奇米影视久久| 日韩操人| 久久中日麻豆| 黑人精品欧美一区二区蜜桃| 欧美激情激情xxxx欧美专区| 亚洲精品天堂久久A∨51成人漫| 免费的黄片wwwwww| 久久久噜噜噜久久久| 欧美狠狠鲁| 亚洲色图自拍| 香蕉人欧美综合| 成人性爱视频在线看| 久热免费视频| 91欧美另类| 欧美日韩久久精品爱爱| 午夜福利av电影在线| 欧美精品999| 日韩av熟女一区二区三区成人| 青青草乱入乱欲视频在线观看| 欧美操逼录像国产黄色国产| 26uuu成人影片| 美国aaaaa一级黄片| 五月婷婷丁香| 91路www| 777超碰| 午夜操逼不卡| 亚洲欧美精品91| 欧美天堂第二区| 一区二区中文| 欧美精品自慰系列寂寞少妇 | 伊人久久大香线蕉无码| 五月婷婷影院| 国产精品在线一区二区| 日韩综合无码一区久久92| 欧美成人一区二区三区在线播放| 极品内射| 亚洲交性| 免费啪啪啪网站18岁| 欧美大香蕉97| 成人情色综合网| 日韩免费看在线黄色片| 久草久热| 日本天天人人狠狠在线日美女 | 中文字幕黄色片| 四虎在线视频| 国产超碰国产97| 日日噜噜夜夜狠狠视频无| 性色综合网| 国产性感在线观看| 色欧美在线| 日韩少妇一区二区三区| 久久久久久久性爱| 91亚洲欧美| 色婷婷九月| 98福利在线视频| 污色区网站| 久久久久国产亚洲一区欧美色图日韩| 亚洲小电影免费涩涩成人在线高清| 啊啊啊啊啊舒服| 久久久一级| 凹凸视频在线一区二区| 色欧美色交综合| 亚洲欧洲精品视频发布| 国产久久视频| 亚洲国产丝袜熟女av| 国产精品无码久久久久2025| 九九九久千久久激情蜜桃在线看 | 九九热九九热| 欧美色91| 久久色情| 91碰碰| 国产91啪| 狠操91,com| 日韩操逼HD| 97久久久精品| 特级特黄一级毛片免费| 久久精品老司| 高清无码一区二区三区| 蜜臀AV成人精品蜜臀| 欧美性爱精品七区| 久久久穴999| 91P0RNY大屁股人妻| 香一区二区三区| 成人五月天丁香激情综合| 久久人人妻| 国产又黄又爽| 狠狠搞 亚洲91| 亚洲人妻中文在线视频| 天天天乱色综合全| 日韩偷拍一区二区三区| 欧美精品偷拍| 精品成人动漫一区二区| 有码人妻系列| 亚洲欧美清纯| 日本在线不卡123| 岛国天天午夜影院传媒网| 美女一区二区国产精品| 精品丰满熟妇人妻一区| 日韩午夜精品一区二区三区电影| 人妻天天爽夜夜爽2| 在线播放免费av福利片| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 男人天堂2019亚洲| 91麻豆天美| 96爱综合| 亚洲成人久久一区二区| 国产中文字幕在线观看| 超碰人人妻| 91综合网| 蜜臀久久在线视频| 欧美强奸乱| 中文字幕福利视频一区二区三区在线观看| 伊人AAA| 新亚洲无码| 天天综合网入口~91| 国产真实野战在线视频| 亚洲色图A| 超碰午夜在线| 国产www色在线观看| 日本一二三免费久久| 97国产色综合| 日韩大香蕉| 樱花草社区www中国| 亚洲麻豆av一区二区| 综合亚洲情色| 国产成人亚洲精品无码最新在线| 久久久久久久久久久久欧美日| 国内毛片无码一级毛片| 青娱乐休闲视频在线观看| 欧美国产一区二区三区麻豆传媒| 免费在线观看AV无码网站| 啊v在线观看视频| 极品内射| 操逼日韩无码 | 欧美香蕉视xxx| 免费簧片在线观看| 99久久99久久免费精品蜜臀| 人妻 欧美 中文| 九九色影院| 啊v在线观看视频| 日韩美女,国产传媒,视频一区| 免费看A片毛毛片在线播| 超碰99re| 欧美日韩国产人人| 欧美制服另类丝袜| 亚洲一卡2卡3卡4卡乱码网站 | 日日夜夜天天| 成人麻豆av电影网站| 超碰色97| 激情人妻另类| 清纯唯美激情四射| 成人午夜视频免费播放| 91熟女丨91老女人| 国产久久男人天堂| www老逼91| 免费在线观看AV无码网站| 香蕉欧美| 破处bbq| 97人人中文网| 国产大学生高潮在线播放| 欧美亚洲情色| 国产97在线播放| 亚洲欧洲日产国产综合网| 天天日少妇逼AV| 美国aaaaa一级黄片| 国产女同在线观看视频| 蜜桃传媒视频第一区入口在线看| 久久久久久中文版| 精品四五区| 丰满的三级少妇欧美久久久| 亚洲综合另类小说色区亚洲成av人片在www| 天天天干977| 久久精9| 97资源超碰| 免费AV播放| 中文字幕一区二区三区字幕| 亚洲丝袜诱惑| 久久9精品网站| 久久精9| 这里只有精品视频| 综合啪啪| 日韩性爱小视频在线观看| 天天草夜夜草高潮片| 干B网| 久操视频在线| 男女激情中文字幕| 国产免费大片| 成人五月香网在线| 日本在线激情一区二区三区| 免费的黄片有限公司| 中文字幕后石码三区四区| 欧美后入式| 啊啊啊啊好大好硬啊啊啊啊啊| 日韩成人午夜精品久久高潮| 1024亚洲中文字幕久在线看片你懂的| 人妻日日干| 色色香蕉| 伊人网青青| 9色国产精品一区粉嫩| 91精品老女人| 婷婷8月天青娱乐| 噜噜噜亚洲精| 少妇贴图| 春色综合免费| 亚洲男人天堂2012| 国产亲戚伦亲在线| 国产女大学生AV| 97超视频在线观看| 欧美 亚洲 综合 制服| 国产精品一区二区亚洲人成毛片| 丰满欧美放荡少妇在线| 人妻夜夜爽天天爽麻豆三区网站| 国产精品人妻熟女aⅴ| 亚洲男人天堂2017| 国产精品熟女乱伦| 精品一区二区麻豆| 日本人人操人人操| 999久久久九| 久久这里只精品99re66图| 377p欧洲日本亚洲大胆| 国产久久av| 国产三级多多影院2022国产AA一级毛片无码| 亚洲综合性感在线| www.色婷婷.com| 在线一道啪| 日韩成人高清一区二区| 中文字幕人乱码中文字的预防方法| 91在线美女| 免费看欧美美女黄色大片| 素人播放一区| 最新亚洲人成网站在线影院| 成人av影院在线观看| av天堂天堂av日韩| 人妻无一区二区三区| 一区在线精品中文字幕| 蜜乳成人AV| 2019久久久久久久久福利| 探花熟女,姿勢到位,體驗感也到位| 一本精品日本在线视频精品| 性开放中文AV高清无码免费看| 8050午夜少妇无码| 黑人黄片在线免费观看| 国产福利精品最新在线| 熟女人妻久久中文字幕一二区| 97精品国产97久久久久久免费| 91亚州日韩高清| 熟女中出视频| 操老熟女AV| 亚洲一区二区av| 久久永久无码人妻视频| 性暴力欧美猛交在线直播| 精品亚洲国产成人av网站| 99久久精品无码一区二区| 婷婷丁香五月激情啪啪| 久久久爆乳翘臀一线天伦理视频| 久久激情五月| 亚洲aw毛茸茸在线| 亚洲大色鬼| 亚洲影视综合| 99国产精品视频尤物| 亚洲欧美中文日韩视频中国语| 91大胆欧美| 美女91在线观看| 日日玩天天干| 看日韩黄片| 国产午夜激片Av毛片不卡| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 国产日韩久久| 人妻色偷色噜| 久操网视频| 激情第四色| 亚洲精品天天影视综合网 | 国产网红精品| 五月婷婷六月色| 97亚洲一区| 欧美性视频二区三区| 三久久久四久久久久| 久久久久久久亚洲Av无码| 亚洲不卡AV在线| 小骚逼被操的爽不爽| 亚洲欧洲综合| 翔田千里A片一区二区| 黄色免费一级在线毛片| 亚洲精品亚洲人成人网| 欧美精品偷拍| 久久中文字幕在线观看| 免费精品人妻一区二区三| 91看黄片| 色婷婷丁香五月| 9999亚洲精品| 亚洲午夜未满十八勿入网站日本又色又爽又黄 | 强奸乱伦亚洲第一页| 国产一区二区三区精品观看啪| 色鬼在线综合| 欧美熟妇操操视频| 综合第一页| 丰满人妻一区二区三区大胸懂色| 性欧美另类高清| 欧美色图自拍| 欧美真人抽搐一进一出gif | 色女免费在线观看视频网址| 国产美女高潮| 9久久精品| 欧洲自拍色图gif在线| 亚洲无码电影久久久| 婷婷五月天成人网| 国产精品久久久九九九| 中文字幕欧美丝袜07资源| 视频国产精品未满十八禁止在线观看| 亚洲。日韩。欧美| 97在线免费视频观看| 日韩欧美国产高清视频| 精品美女久久一二三| 中文字幕人妻资源在线| 素人播放一区| a啊啊啊啊啊啊啊啊一区二区| 被窝影院午夜看片无码| 午夜精品久久久久久久久久蜜桃| 欧美极品女人的天堂| 精品人妻15区| 在线看免费无码AV天堂的| 国产一区二区久久| 久久国产在线一区二区| 国产超碰国产97| 91亚洲欧美激情| 色哟哟511老熟女| 性色国产东北露脸精品视频| 91综合网| 色999人与兽| 加勒比海人人操超碰在线| 色官网在线| 60秒免费小视频| 秋霞操逼片| 97操97色| 91 欧美| 色婷婷电影网| 亚91网| 操婷婷逼| 青青久久久| 国产小视频91| 国产亚洲日本| 一牛影视成人片免费| 高树玛利亚无码流出| 东京热男人的天堂| 在线啊啊啊啊| 青草综合| 欧美大香蕉卡久久| TS人妖另类精品视频系列| 又大又长又爽| 无码精品久久久久久亚洲| 97亚洲综合电影| 东京热一区二区中文字幕| 九九热视频在线观看| 99久久99九九99九九九| 美女刺激久久国产欧美| 啊啊啊好舒服视频| 一区二区三区精品黑丝白丝酒店对鸡 | 密臀在线视频| 婷婷五月天av| 亚洲男人天堂手机版| 熟女六十路| 欧美高清在线| 五月激情视频| 亚洲国产熟妇综合色专区| 久久人妻视频| 日本阿v天堂在线观看| 99国产精品人妻人伦| JuliaAnnXXX888| 欧美1727免费观看视频| 亚洲影视综合| 久插综合| 久久成人国产| 噜噜噜噜天天狠狠| 国产女人高潮视频| 亚洲欧美日韩制服另类| AV天堂男人的天堂| 国产树林里野战在线看| 熟女少妇一区二区三区| 五月天婷婷影院| 久草精品在线| 91蜜臀熟女| 黄色操人| 肉丝中文无码高清| 天天爽夜夜操| 日韩一级欧美一级国产一级台湾 | 亚洲啪啪性视频| 亚洲成人贴图| 精品一久久久| 在线看免费无码AV天堂的| 天天爽天天操啊啊啊| 日韩成人午夜精品久久高潮| 中文字幕交换人妻| 91性网| 75大香蕉| 久久欧美性爱视频| 九九九九热| 国产AV天美| 天天综合网日韩7799| 国产夫妻性生活视频| 青娱乐亚洲热| 少妇一区二区三区精选| 天天综合,91入口| 97超碰碰碰| 国产中文精品一区二区在线观看| 91天天美女| 国内精品999| 18禁的网站在线| 亚洲精品人体| 色偷偷色偷偷欧美日韩| 九九英色视频| 射丝袜高跟鞋99| 五月天春色激情网| 久久久影院| 99自拍B亚洲| 伊人久久婷婷| 秋霞视频一区二区| 九月婷婷久久| 屁屁影院一区二区三区国产| 日韩黄色成人性爱| 日亚韩精品视频二区三| 国产一级αv免费看片| 免费看日产一区二区三区| 人妻少妇精品无码专区二区密桃| 国产丰满熟夫69mpp| 九热视频| 97青娱乐超碰久久| 久夜视频| 黄色香蕉视频网站一区| 色悠久久久av| 天天操夜夜操| 多毛小伙内射老太婆| 97se亚洲| 精品射1999| 婷婷五月天久久久| 欧美αv.com| 久久‘黄片视频| 国产精品视频精品一二| 狠狠中文字幕| 人人爽夜夜玩视频| 综合欧美色图| 亚洲第一精品在线视频| 五月天丁香婷婷综合网站| 伊人久久88国产女| 亚洲不卡不卡中文字幕不卡| 偷拍精品一区二区三区| 亚洲情色第一页| 国人欧美精品一区二区| 精品人妻一区二区免费蜜桃视频| 97精品久久久久中文字幕| 热久久91婷婷| 亚洲综合在线视频| 激情接吻视频久久久久久| 精品久久久久久无码| 欧美亚洲高清| 奶水 人妻 哺乳 在线| 日日干日日操五月天伦理视频| ?亚洲伊人伊成久久人综合网| 亚洲h片在线免费观看| 熟妇色99| 国产精品一区二区麻豆| 热天堂一区二区| 女优免费一区二区永久| 超碰在线观看av不卡| 内射夫妻三片| 欧美丝袜美女电影一二三四区| 青青草日逼视频| 无码色| 婷婷五月色| 日韩在线观看中文字幕视频| 五月天久久综合网| 免费A片三p视频| 欧美国产操逼| 嗯嗯啊啊好大好爽| 欧美色图天堂在线| 激情五月天婷婷| 久久激情五月| 日操粉逼逼| 啪啪资源网| 亚洲精品欧洲精品| 国产一二三在线视频五十路| 麻豆一区二区三区在线看 | 中文字幕乱亚洲美女精品一区| 亚洲干B| 久久精品无码熟妇一区二区三区视频导航 | 大香蕉啪啪啪| 色综合九九| 91超碰人人操| www激情| 120分钟婬片免费看| 国产 热久久久久国产精品| 欧美黑人熟妇精品91| 亚洲色图欧美色18直播在线| 色男人色天堂东京热| 一本久久精品中文字| 九九热男人天堂| 97干在线看| 熟女精品一区二区三区| 啊…啊…操我用力操我| 日韩欧美午夜一区二区| 亚洲免费成人在线高清无码视频| 91成人18| 国产精品网址| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 97五月天| 九九这里只有精品| 欧亚综合一卡二卡中文字幕| 99热这里只有精品8| 亚洲,欧美,春色,另类| 91女人的网站| 99操| 老鸭窝日丰县女人| 99热精品在线观看| 91美女视频在线观看| 啊啊啊啊免费视频| 国产400孕妇孕交群| 思思热在线视频在线| 大学生口爆吞精| 久久久久九九九| 色情综合| 亚洲青青青视频在线| 综合国产97| 夜草欧美| 久久久久96| 91色插| A级在线视频| 国产91乱伦| 日韩欧美午夜视频在线| 丁香五月性| 日本一二区免费| 国产传媒一区日韩| 玖玖爱伊人玖玖爱| 久久有码视频| 日韩人妻丝袜中文字幕| 国产又黄又粗又猛大片 | 日韩性爱人人爱人人操| 国产一级αv免费看片| 好吊色在线观看| 婷婷另类小说| av日韩中文字幕| 婷婷五月天激情四射| 91在线秘 男同| 91干熟女| 久草视频制服诱惑| 99黄页网站| 人人澡人人干| 精品日韩人妻精品一二三区| 久久久精品视频免费观看| 久久女人一区二区三区| 密臀AV在线| 日韩色图 一区二区| 青青色在线观看| 操婢日韩| 精品久久99| 欧美拳交在线播放| 日韩欧美偷拍美女视频| 精品熟妇视频一区二区| 天天伊人| 日韩一级特黄av毛片| 深夜操逼网| 欧亚揄拍偷拍精品视频| 欧美色图20p| 国产成年女人免费视频播放a| 影音先锋乱| 亚洲情色1区| 日本一卡二区在线| 亚洲密乳AV| 欧美亚洲日本视频久久久| julia高潮后不停追击中出| 亚洲男人天堂2016| 伊人91| 日本三级A片网站com| 五月丁香色综合| 极品AV网站在线观看| 熟妇人妻精品一区二区| 日韩欧美成人性爱在线| 激情综合五月丁香| 天天日天天屌天天操| 午夜超碰| 久精品无码av一区二免费国产在线观看| 欧美成人性爱视频大全| 日韩影片中文字幕一区二区三区| 久久99手机免费视频| 偷拍盗拍亚洲色图图片 | 亚洲精品色| 国产精品3| 国产精品成人午夜福利| 欧美人妻久久精品二区三区| 99r九九| 亚洲精品电影| 国产 无码 一区二区| 国产精品 午夜福利| 99少妇内射| 100啪啪视频大全| 能在线播放的国产三级| 啊啊啊好湿久久| 少妇蹲下露出大唇5| 女人双腿搬开让男人桶| 亚洲综合第一页| 蜜臀久久99精品久久久电影| 五月丁香社区婷婷日韩欧美精品影院| 97九色人妻| 亚洲人妻精品一区二区| 亚洲精品国产熟女| 高清不卡国产| 欧美色综合网| 强奸乱伦动态污图免费| 欧美综合第一| 97免费在线观看| 在线观看综合精品亚洲| 天天色怡春院| 天天操夜夜操狠很操| 婷婷五月天久久精品视频一区二区三区| 亚欧美综合网| 大香蕉免费乱伦视频| 天天射夜夜| 中文字幕,人妻,日韩| 国产精品视频电影| 91人妻少妇| 精品超碰国产| 亚洲视频二区| 亚洲乱伦图片视频| 污污污8888| 91日韩网站| 99久久网站| 日韩八十路老熟女| 亚洲av综合色区无码一| 97一区二区三区视频| 极品综合| 狠狠操一区二区| 亚州欧美另类| 天天干天天爽| 高清无码人妻久久久一区二区三区aⅴ| 翔田千里av一区二区三区| 日本欧美m v精品网站加| 色婷婷激一区二区三区 | 黄色大香焦1级‘′‘| 一区二区三区色综合| 亚洲三区视频| 天天享受天天看| 特级特黄一级毛片免费| 男生女生啊啊啊啊| 国产隔壁老王影院在线| 中美日韩毛片| 国模私拍一区二区三区神乳| 久婷婷一区| 操碰97| 国产一区二区三区不卡手机在线| 91一区二匹| 精品无码一区二区| 久久久久亚洲熟妇熟女| 99久久综合| 91深夜夜| 欧洲乱码视频| 国产亚洲深夜激情| 日韩精品操少妇| 亚洲,日韩,欧美,成人播放| 伊人aaa| 日日操丁香五月天|