99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

QuarkTS輕量級調度器移植實戰(zhàn):告別裸機While(1)的多任務實現

QuarkTS輕量級調度器移植實戰(zhàn):告別裸機While(1)的多任務實現 裸機 while(1) 寫多了你會慢慢感覺到一種“越寫越擰巴”的別扭LED 要閃、按鍵要掃描、屏幕要刷新、串口還要收發(fā)全懟在一個大循環(huán)里加一個功能就要改一片狀態(tài)邏輯改著改著就把自己繞進去了。想直接上 FreeRTOS 吧又覺得項目就巴掌大配置任務棧、調度器、內存堆光鋪路就得折騰半天。如果你正好卡在這個尷尬點上那我建議你認真看看 QuarkTS 這個輕量級調度器。QuarkTS 的定位很有意思官方把它叫做“面向嵌入式系統的開源調度器”而不是完整操作系統。它沒有復雜的內存管理不需要你在工程里塞一堆驅動框架核心就是一個任務調度內核加上事件標志、消息隊列、軟件定時器這些常用的任務間同步原語。移植到一個新的單片機上核心工作量往往只有三件事配置好系統節(jié)拍定時器、實現好臨界區(qū)、再把定時器中斷服務函數接到內核的 tick 入口。對資源緊張的小 MCU 來說這東西比 FreeRTOS 輕太多了。這篇文章就圍繞這個標題展開從我實際移植的流程出發(fā)把 QuarkTS 到底解決什么問題、底層接口要動哪里、具體每步怎么配、以及那些網上文檔里不會寫的坑一次性拆開講清楚。適合正在從裸機往多任務過渡的開發(fā)者也適合手上芯片資源有限、塞不下完整 RTOS 的嵌入式從業(yè)者參考。1. 移植前先想明白QuarkTS 到底是解決哪個問題的1.1 裸機大循環(huán)真正做不好的三件事裸機程序的核心結構就是“初始化 超級循環(huán)”這個結構本身沒有問題很多簡單產品跑得也很穩(wěn)。但等你手里的功能模塊變多之后三個問題會越來越明顯。第一所有模塊共享同一個執(zhí)行流。一個任務里寫了阻塞延時其他所有任務全部跟著等待。比如串口發(fā)送函數如果用了輪詢方式等待發(fā)送完成標志在一個 9600 波特率的鏈路上發(fā)一串日志對面整個 LED 閃爍周期都會被拖亂。這是裸機程序里最典型的“一損俱損”。第二時間精度完全依賴主循環(huán)的循環(huán)體長度。你用delay_ms(20)做軟件定時看起來是 20ms但實際執(zhí)行時間等于“20ms 延時 當前循環(huán)里所有任務執(zhí)行時間之和”。今天加一個函數沒事明天再加一個傳感器讀取按鍵消抖的時間窗口就漂了很多玄學故障就是這么來的。第三中斷和主循環(huán)之間的數據交接沒有規(guī)范。中斷里置標志位、主循環(huán)里輪詢清標志這套做法本身沒問題但一旦涉及的共享變量多了變量有沒有加volatile、清標志和讀數據之間的先后順序合不合理全憑個人經驗。同一個團隊里兩個人寫出來的裸機代碼風格可能天差地別。QuarkTS 解決的正是這三點。它把每一個獨立的功能封裝成“任務”每個任務有自己獨立的上下文由調度器決定“誰在什么時候運行”。時間觸發(fā)任務嚴格按照配置的周期去執(zhí)行不受其他任務的影響事件觸發(fā)任務則由中斷或其他任務通過事件標志喚醒數據交接走標準的隊列原語。寫起來干凈后期維護也好做。1.2 它和 FreeRTOS 的本質差異決定了它的適用邊界剛開始接觸 QuarkTS 的人最容易問的一個問題是這玩意兒和 FreeRTOS 有什么區(qū)別區(qū)別還挺大我列個表說明。維度裸機超級循環(huán)QuarkTSFreeRTOS內核體積無很小核心代碼約幾千行較大完整功能更多動態(tài)內存不用默認可不使用任務控制塊靜態(tài)分配常用堆分配也可靜態(tài)任務模型無任務概念時間觸發(fā)/事件觸發(fā)/周期任務搶占式/協作式任務調度方式順序輪詢固定優(yōu)先級 可選時間觸發(fā)的綜合調度優(yōu)先級搶占 時間片輪轉隊列/信號量/事件自己寫內置用法簡單內置功能完整學習曲線無較低中等偏上適用場景邏輯極簡的小產品中小型多任務、資源受限 MCU復雜系統、強實時、多外設QuarkTS 沒有內存保護、沒有設備驅動框架、沒有用戶態(tài)和內核態(tài)的概念。它更準確的叫法其實是一個“調度核心”目標是在盡量小的資源開銷下把多任務調度這件事做扎實。你在 QuarkTS 里不會看到線程、信號量、互斥鎖滿天飛的那套完整 RTOS 語義取而代之的是事件觸發(fā)、時間觸發(fā)、隊列、信號量這些足夠日常用的原語。所以適用邊界也就清晰了如果你的單片機只有幾 KB 內存外設模塊不超過十個希望快速實現多任務又不愿意被完整 RTOS 的配置細節(jié)淹沒QuarkTS 是很好的中間選擇。如果項目涉及復雜的文件系統、網絡協議棧、多級優(yōu)先級嵌套那還是老老實實上 FreeRTOS 或更完整的 RTOS別在調度器這一層省事。2. 移植前要看清的本質QuarkTS 到底要求你提供哪些底層能力2.1 硬件依賴也就三樣東西移植 QuarkTS 不需要特定的單片機型號它本身就設計成可以跑到任意有 C 編譯器的 MCU 上。從實際角度講硬件上有三樣東西是必需的。第一一個穩(wěn)定的周期定時器中斷。這是 QuarkTS 的“心跳”所有時間觸發(fā)任務、超時判斷、隊列阻塞都依賴這個 tick。我習慣把系統 tick 配成 1ms這個粒度對大多數傳感器讀取、按鍵掃描、LED 控制都夠用。如果你有對時間精度要求特別高的模塊比如飛控的角速度積分或者音頻采樣那 1ms 就不夠了需要把 tick 周期調短到 100us 級別但代價是調度器本身的切換開銷占比會變大任務切換頻繁時 CPU 占用率會明顯升高。第二開關中斷的能力。QuarkTS 內部很多操作需要原子性比如就緒隊列的插入和移除必須先關中斷再操作操作完再恢復。在 Cortex-M 內核上一般通過改寫 PRIMASK 或 BASEPRI 寄存器實現。第三一個足夠大的定時器計數器用來給任務提供周期計時。通常 MCU 自帶的 SysTick 或者通用定時器就夠了QuarkTS 本身不需要外部硬件輔助。選平臺的時候我的建議是第一步先別管性能挑一塊你手上最熟悉的開發(fā)板把串口打印和定時器中斷都驗證過的那塊板子拿來移植。移植內核最怕的是“底層有問題但不知道問題在哪”你在熟悉的環(huán)境里做可以把變量壓縮到最小。2.2 QuarkTS 的“移植層”到底只有哪幾個函數打開 QuarkTS 源碼目錄你會看到它把平臺相關的部分單獨隔離出來了。常見結構是一個quarkts.c和一個quarkts.h作為內核主體另外留了幾個由用戶實現的接口或者叫移植回調。不同小版本的接口名稱會有些出入但本質就四類一是 tick 中斷服務入口。定時器中斷觸發(fā)后你需要在這個中斷服務函數里調用內核的 tick 處理函數告訴內核“一個時間片過去了”。不同版本的 QuarkTS 這個函數叫法可能是qOS_Tick()也可能是qTick()具體以你下載到的頭文件為準。這個函數內部要做就緒隊列更新、任務切換檢查所以你在中斷服務函數里除了調用它盡量不要干別的耗時的活。二是臨界區(qū)進入和退出。QuarkTS 在修改就緒隊列、任務狀態(tài)時需要短暫地關掉中斷保證操作過程中不會被 tick 打斷。你通常只需要寫兩組宏分別是進入臨界區(qū)和退出臨界區(qū)然后在quarkts.h的移植配置區(qū)里把它映射好。三是可選的任務切換鉤子。在 Cortex-M 這類需要顯式保存寄存器上下文的內核上任務切換通常借助 PendSV 異常來完成。QuarkTS 本身自帶了一些通用切換代碼但不同編譯器、不同優(yōu)化等級下你可能需要微調一下內聯匯編或者棧對齊方式。四是掛起和解掛調度器的能力。當任務進入一些長時間阻塞的等待狀態(tài)時調度器可能要臨時把中斷里的切換動作掛起來避免反復做無意義的上下文切換。這個功能有的版本會開放給用戶有的版本內部自己處理移植時留意一下宏開關即可。2.3 以某 Cortex-M 內核芯片為例底層映射怎么做我這里用一塊 Cortex-M0 內核的國產開發(fā)板作為例子說明。Cortex-M0 沒有 BASEPRI 寄存器臨界區(qū)只能靠 PRIMASK 全關中斷來實現代碼很簡單/* port.c 示例 */ #include quarkts.h #include core_cm0.h void port_SysTick_Init(void) { /* 配置 SysTick 為 1ms 中斷時鐘源和處理頻率請按實際計算 */ SysTick_Config(SystemCoreClock / 1000); } void SysTick_Handler(void) { /* 進入內核 tick 處理 */ qOS_Tick(); }臨界區(qū)的宏可以這樣映射/* port.h 示例 */ #define QK_CRIT_ENTER() __disable_irq() #define QK_CRIT_EXIT() __enable_irq()內核配置區(qū)里把這個宏關聯進去即可。流程上就三步初始化定時器、定義 tick 中斷、實現臨界區(qū)。后面再把內核初始化、配置結構體填好QuarkTS 就能在你的單片機上跑起來了。這里多說一句Cortex-M3 和 M4 內核的同學臨界區(qū)建議用 BASEPRI 方式而不是 PRIMASK 全關中斷因為 BASEPRI 可以只屏蔽低于某個優(yōu)先級的中斷讓真正緊急的中斷在臨界區(qū)期間也能響應。這是后面調實時性時非常關鍵的一點。3. 實操過程從空工程到雙任務跑起來3.1 把源碼組織進工程的小建議QuarkTS 源碼可以從代碼托管平臺下載找到發(fā)布版本的壓縮包。拿到手以后不要直接把整個目錄全部塞進工程而是只復制真正用到的文件。我的習慣工程結構是這樣my_quarkts_demo/ ├── core/ │ ├── quarkts.c │ ├── quarkts.h │ └── qassert.h ├── port/ │ ├── port.c │ └── port.h ├── app/ │ ├── main.c │ └── app_task.c └── mcu/ └── (你的芯片啟動文件、外設庫等)這樣區(qū)分的好處是core目錄是內核源碼永遠不去改它port目錄放平臺相關代碼app目錄是業(yè)務邏輯。以后內核版本升級時直接替換core目錄里的文件就行自己的業(yè)務代碼不受影響。我見過有人把 QuarkTS 的源碼和自己的業(yè)務邏輯混在一個文件里改最后升級源碼時痛苦不堪不建議這樣做。3.2 系統配置結構體這里填錯最容易出怪問題QuarkTS 啟動之前一般要求填充一個全局配置結構體告訴內核你打算創(chuàng)建多少個任務、多少個隊列、多少個優(yōu)先級等級。不同版本的配置項名稱會有差異但核心參數逃不出下面這些。配置項推薦值說明最大任務數視業(yè)務而定建議 8~16一次性把內核可能用到的任務池開夠優(yōu)先級等級數8 到 16不是越高越好等級越多調度鏈表越復雜最大事件組數業(yè)務需要每個事件組可以包含多個事件位最大消息隊列數業(yè)務需要通常給 4~8 個就夠tick 周期1ms具體以定時器配置為準是否啟用搶占是需要實時響應就開邏輯極簡可以關配置項設置偏小了運行時會直接斷言失敗或者任務創(chuàng)建失敗設置偏大了RAM 會白占。你說不清楚到底要多少的時候先用一個大點的值跑通功能再逐步調小觀察內存占用。這個習慣能省掉很多調試時間。配置結構體的填充代碼大致長這樣qOS_Cfg_t app_qos_cfg; void app_qos_config_init(void) { app_qos_cfg.task_pool_size 16; app_qos_cfg.priority_levels 8; app_qos_cfg.use_preemption true; /* 其他成員按你的頭和實際需求補全 */ }配置完成以后調用內核初始化然后啟動調度器。順序一定要是初始化、配置、然后qOS_Run()進入調度循環(huán)qOS_Run()之后你的入口函數就不需要返回了。3.3 創(chuàng)建第一個任務LED 閃爍驗證 tick 鏈路我用一個最經典的 LED 閃爍任務來驗證整個移植鏈路是否通暢。第一版功能不求多只求能證明“內核收到 tick、任務被調度、任務能周期運行”。#include quarkts.h #include port.h qTCB_t tcb_led; qTCB_t tcb_printf; void task_led_run(qEvent_t evt, qTCB_t *tcb) { static uint8_t level 0; level !level; GPIO_WritePin(LED_PIN, level); } void task_printf_run(qEvent_t evt, qTCB_t *tcb) { /* 這里假設每 500ms 打印一次 */ printf(tick alive, led level toggled\n); } int main(void) { /* 1. 先初始化基礎硬件包括 tick 定時器 */ board_init(); port_SysTick_Init(); /* 2. 初始化內核 */ qOS_Init(); app_qos_config_init(); qOS_Config(app_qos_cfg); /* 3. 創(chuàng)建任務 參數里的周期值在不同版本里含義略有區(qū)別 原則上是“間隔多少個 tick 執(zhí)行一次”。 優(yōu)先級數字越小優(yōu)先級越高。 */ qTask_Create(task_led_run, 5, 20, tcb_led); qTask_Create(task_printf_run, 6, 500, tcb_printf); /* 4. 啟動調度器不再返回 */ qOS_Run(); return 0; }上面代碼里我用的是語義化的 QuarkTS 風格 API具體函數名和參數順序要對照你下載到的quarkts.h去看。第一次調試千萬不要管那么多先把 LED 任務建出來把周期設為 20 個 tick也就是用 1ms tick 算大概 20ms 閃爍一次。燒錄以后觀察 LED 是不是以可辨認的周期翻轉。這一步跑通說明 tick 中斷、內核調度、任務上下文切換這一整條鏈路已經打通了。這里我想強調一個容易誤解的點QuarkTS 的時間觸發(fā)任務它的“周期”通常是指任務被置為就緒狀態(tài)的時間間隔而不是從任務開始執(zhí)行到下次執(zhí)行之間的間隔。也就是說如果你在一個周期任務里執(zhí)行了很長時間比如超過了一個周期那任務的執(zhí)行起點會繼續(xù)按原始節(jié)拍移動表現為“本次還沒跑完下一次就緒時間又快到了”。這與裸機delay的語義有本質區(qū)別移植幾周后你調業(yè)務邏輯時這個概念必須刻在腦子里。3.4 用串口任務驗證多任務下互不拖累第二個任務我經常會做成周期打印任務每 500ms 打印一行字符。它的作用是驗證兩個任務能并行跑并且一個任務執(zhí)行耗時不會污染另一個任務的周期。調試時有個實用技巧在 LED 任務和打印任務里各放一個計數器每執(zhí)行一次加一然后用調試器查看兩個計數器的數值比例。如果你配置的周期比是 1:25那么最終計數器比例應該非常接近 1:25。如果比例明顯不對說明 tick 配置或者任務周期參數有偏差回頭檢查配置結構體。串口打印任務在內核剛移植成功時非常有價值但后面調正式業(yè)務時要注意不要在任務函數里頻繁調用printf因為重定向到串口的打印往往是阻塞式的一個 115200 波特率下打印幾十個字符就要耗費好幾毫秒嚴重時會把時間觸發(fā)任務的節(jié)奏拖亂。我的習慣是任務里只置一個標記主循環(huán)或專門的打印任務再統一輸出。4. 從雙任務到真實應用事件、隊列、軟定時器是怎么用的4.1 事件標志中斷里喚醒任務的標準姿勢QuarkTS 的典型事件觸發(fā)場景是這樣的外部按鍵按下觸發(fā) GPIO 中斷中斷服務函數里不適合做復雜處理于是置一個事件標志通知某個任務去執(zhí)行按鍵消抖和邏輯處理。事件標志的使用思路和裸機里的“標志位”很像區(qū)別在于它是內核管理的對象可以對任務進行精準喚醒而不是靠主循環(huán)輪詢。示意如下qEvent_t key_event; void EXTI_IRQHandler(void) { /* 清除中斷標志等常規(guī)操作 */ qEvt_Signal(key_event); } void task_key_run(qEvent_t evt, qTCB_t *tcb) { while (1) { /* 等待事件阻塞在這里 */ qEvt_Wait(key_event, QWAIT_FOREVER); do_key_scan_and_handle(); } }從裸機過來的朋友請注意事件等待任務里的while (1)結構和 QuarkTS 時間觸發(fā)任務不同。事件觸發(fā)任務如果從函數返回通常會被內核認為任務結束或者重新掛起具體行為取決于版本。你要養(yǎng)成習慣事件觸發(fā)任務寫成“等待事件→處理→再等待”的循環(huán)結構這個結構在裸機里很別扭但在事件驅動模型里非常自然。4.2 消息隊列任務間數據傳遞的正確做法事件標志適合傳遞“發(fā)生了沒有”這種信息但如果要傳遞“發(fā)生了什么數據”就不夠了。比如串口接收中斷把一幀數據收進來交給處理任務解析就需要消息隊列。qQueue_t uart_rx_queue; void UART_RX_IRQHandler(void) { uint8_t byte UART_ReadByte(); /* 隊列滿時返回失敗這里做簡單丟棄處理 */ qQueue_Send(uart_rx_queue, byte, sizeof(byte)); } void task_uart_process(qEvent_t evt, qTCB_t *tcb) { uint8_t data; while (1) { if (qQueue_Receive(uart_rx_queue, data, sizeof(data), QWAIT_FOREVER)) { handle_rx_frame(data); } } }中斷里調用qQueue_Send時要注意一點如果隊列滿這個函數的行為取決于版本和配置有的直接返回失敗有的可能會在中斷里做等待。等待這個動作在中斷上下文里是大忌會直接把系統卡住。所以無論內核怎么處理你的業(yè)務代碼里都應該在發(fā)送前檢查隊列是否有空間或者做好“滿則丟棄”的策略。4.3 軟件定時器比任務周期更靈活的控制手段有些場景不適合用周期任務比如“延時 300ms 后再做某個動作”“超時 200ms 沒收到數據就算通信失敗”。這類一次性或單次觸發(fā)的定時需求QuarkTS 提供了軟件定時器原語。軟件定時器的底層仍然是 tick 計數但使用上比創(chuàng)建一個完整任務輕量得多。典型的創(chuàng)建方式是在初始化階段注冊一個定時器回調函數啟動時設置超時 tick 數。到了時間后內核回調你的函數你可以在里面置事件標志、發(fā)隊列、或者直接執(zhí)行短邏輯。注意回調函數是在內核上下文里執(zhí)行的不能阻塞不能做耗時操作比較重的操作應該在回調里“通知任務去做”。5. 移植過程中最常翻車的點問題排查與調優(yōu)經驗5.1 任務完全不跑十有八九是 tick 鏈路斷了移植 QuarkTS 之后最打擊人的現象就是程序跑起來LED 不閃串口不打印一切看起來都沒反應。查這一步問題要按鏈路順序來。先確認定時器中斷有沒有真正觸發(fā)。在中斷服務函數里加一個 IO 翻轉用示波器看波形如果 IO 不翻轉說明定時器配置有問題內核喊破嗓子也沒用。確認中斷觸發(fā)之后再確認中斷服務函數里有沒有調用 QuarkTS 的 tick 處理函數。有些用戶移植時把中斷服務函數名字寫錯了比如平臺庫要求的名字和編譯器啟動文件里的名字不一致中斷根本沒掛上。另外常見的一個坑是定時器中斷里忘了清除中斷標志。SysTick 一般不需要手動清標志但通用定時器基本都要寫清除寄存器。標志沒清中斷會反復進入QuarkTS 內部狀態(tài)被連續(xù)推進任務表現就會異常比如周期明顯變短或者優(yōu)先級錯亂。5.2 搶占調度不生效先查優(yōu)先級配置再查臨界區(qū)長度如果你配置的任務已經有高低優(yōu)先級之分但高優(yōu)先級任務并沒有搶占低優(yōu)先級任務先從兩個方向排查。第一確認內核的搶占調度開關已經打開。有些版本默認是協作式調度高優(yōu)先級任務必須等低優(yōu)先級任務主動讓出 CPU 才有機會運行此時任務的執(zhí)行順序還是“排隊”的感知不到搶占。第二確認 tick 中斷可以打斷當前任務。搶占的前提是 tick 中斷在高優(yōu)先級任務就緒后能打斷正在運行的低優(yōu)先級任務。如果你的低優(yōu)先級任務里有一段比較長的臨界區(qū)而且臨界區(qū)里把中斷關了那這段臨界區(qū)里發(fā)生的任何高優(yōu)先級任務就緒事件都要等臨界區(qū)退出后才能被響應。這本質是優(yōu)先級被臨界區(qū)延后了不是內核的 bug但容易誤判。排查時可以設計一個測試低優(yōu)先級任務里做個 10ms 的忙等高優(yōu)先級任務每 2ms 翻轉一次 IO。如果 IO 波形在這 10ms 內出現中斷缺失說明有臨界區(qū)過長或者中斷被屏蔽的問題。逐段注釋業(yè)務代碼很快就能定位到是哪一段關過中斷。5.3 時間觸發(fā)任務抖動先懷疑打印和模塊執(zhí)行時間時間觸發(fā)任務最理想的運行情況是“每 20ms 在任何情況下都準點啟動”但很多因素會造成抖動。最常見的是任務內部執(zhí)行時間太長導致本次還沒跑完下一次 tick 就緒標志已經來了。這時候任務會表現為“連續(xù)執(zhí)行”“周期錯亂”看起來就像系統控制不住自己。解決思路有兩個方向。一是給任務內耗時的模塊做拆分把重活拆給多個任務級聯處理二是適當調大周期任務的周期值給任務留足執(zhí)行余量保證在一個周期內完成任務且有空閑余量。還有一個容易忽視的因素任務里的調試打印。調試階段用串口打印特別爽但一個printf可能占用幾十萬個時鐘周期把本來美如畫的時間觸發(fā)表完全打亂。我的習慣是調實時性的時候把打印任務單獨做成低優(yōu)先級任務或者干脆用調試器在線看變量別讓打印干擾時間敏感任務。5.4 跑一段時間隨機死機查棧溢出和內存越界內核本身資源開銷很小但如果業(yè)務任務函數里使用了較大的局部數組或者調用了遞歸函數任務棧就很容易爆掉。QuarkTS 的任務棧內存可以來源于靜態(tài)數組也可以來源于配置好的內存池棧溢出不一定馬上崩潰往往是某次臨界區(qū)嵌套或者長中斷之后突然復位排查起來很頭疼。我的排查順序是這樣的先看編譯器的鏈接 MAP 文件確認 QuarkTS 的任務棧區(qū)域分配在哪個段以及總 RAM 占用率是多少。再在任務函數入口放一個棧高水位標記周期性檢查任務棧剩余空間。如果發(fā)現某個任務棧剩余空間一直在下降說明這個任務的局部變量太大或者調用鏈太深需要加大棧配置或者優(yōu)化代碼結構。另外要特別注意不要在任務函數里動態(tài)分配大塊內存不要在中斷里調用可能分配內存的函數。QuarkTS 默認不依賴 malloc 的輕量特征一旦你自己開了動態(tài)內存就可能引入堆碎片問題表現為“跑幾天才崩一次”這種問題比棧溢出更隱蔽。5.5 一張自檢清單移植前逐項打鉤檢查項做法tick 周期是否滿足業(yè)務精度用定時器實測別依賴理論計算定時器中斷標志是否清除檢查芯片手冊確認清標志寄存器中斷服務函數名是否匹配對比啟動文件別寫錯名字臨界區(qū)是否嵌套安全確認退出時能正確恢復原狀態(tài)優(yōu)先級數量是否覆蓋所有任務只多不少避免運行期斷言失敗時間觸發(fā)任務是否有足夠執(zhí)行余量周期要大于任務最壞執(zhí)行時間任務內是否用了阻塞式 printf實時性敏感場景下嚴禁棧高水位是否監(jiān)控上線前至少做 72 小時壓力測試如果你遇到的問題不在上面列表里還有一個笨但有效的辦法把業(yè)務任務一個個注釋掉只剩 LED 心跳任務看問題是否復現。如果復現問題在內核移植配置層面如果不復現了問題在某一個業(yè)務任務里。這種二分排除法在嵌入式排障中永遠不過時。移植 QuarkTS 這件事本質上是在一個已經足夠好用的裸機循環(huán)之上增加了一層“調度維度”。一旦這條鏈路打通你會發(fā)現寫多任務 Demo 的速度明顯變快很多以前靠狀態(tài)機硬啃的邏輯現在拆成幾個事件觸發(fā)任務就清清楚楚了。我個人實際體會是不要一上來就追求把所有業(yè)務都塞進 QuarkTS先花半天把雙任務和串口打印鏈路跑通再逐步把按鍵、顯示、通信模塊一個一個遷進來。每一步都有可觀測的現象每遷完一個模塊就打包驗證一次這個節(jié)奏比一次性大改造穩(wěn)妥得多。后續(xù)如果想把 CPU 占用率、任務調度延遲這些指標做可視化也可以考慮接一個輕量級調試工具但那是移植成功之后的故事了。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久99操| 国产美女精品| 久久精品国产一区二区三区四区| 伊人久久丁香婷婷六月五月综合| 婷婷精品视频| 色色婷婷色色| 日韩乱轮AV| 26uuu亚洲| 亚洲激情av| 九九九激情综合| 婷婷俺去也| 99丁香五月婷| 99色婷婷视频| 色婷婷婷婷| 97一区二区| 亚洲视频操| 丁香狠狠| 激情五月天婷婷直播| 97日韩无套内| 亚洲爆乳无码精品AAA片蜜桃| 亚洲激情网| 国产成人AV人人爽人人澡Va| 91一起操| 五月婷婷久久久| 碰超亚洲| 99欧美热| 偷拍九九热| 婷婷性爱影院| 9热视频在线观看| Va另类视频| 啪啪91| 日产精品一线二线三线芒果| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 激情综合五月婷婷六月丁香| 五月丁花色综合网| 欧美Va在线| 久思思久视频| 亭亭丁香久久五月| 激情丁香婷婷六月天| 久久久A级视频| 91碰碰碰| 五月天电影网| 五月天大香蕉av| 五月天com| 久久久久亚洲AV成人无码电影| 婷婷香五月天| 婷婷五月成人| 九九色图| 六月天婷婷| 97色碰| 丁香五月手机在线| 丁香婷婷六月| 老师的粉嫩小又紧水又多A片视频| 丁香五月婷婷av| 午夜色丁香| 婷婷激情另类| 99性爱视频| 久久6这里只有精品| 色婷婷丁香五月| 中文字幕人妻在线| 丁香婷婷六月婷婷六月婷婷六月婷婷| 日本理论久久| 五月丁香天堂| 国内一级精品| 亚洲精品国产成人AV在线| 偷拍91九色| 精品视频网| 9久热在线精品| 国产精品岛国片在线观看免费| 激情丁香五月综合| 久久伊人大香蕉| 9久久精品| 婷婷色五月激情| 激情久久四色| 深爱五月最新网址| 国产99久久久| 丁香六月婷婷操逼网| 秋霞少妇AV网站| 色级停停| 久草大| 91色在线/日韩| www.五月婷婷| 五月丁香六月婷婷的女人| 五月在线| 久久黄色片| 午夜在线成人网站免费观看| 五月丁香六月激情综合| 六月丁香婷婷亚洲中文玖玖| 天天插天天射| 九九九激情网| 五月天天丁香婷婷在线中| 丁香婷婷六月激情综合| 丁香五月首页| 日韩熟女啪啪视频| 激情久久久| 五月花激情| 99性爱视频| 99久久综合狠狠综合久久| 国产综合81p| 99这里只有精品视频免费| 思思热思在线精品视频| 五月丁香激情综合啪啪| 操碰色一区就去操| www.zbzhongsen.com| 人人干天天操五月丁香| www.99婷婷| 久久怡红院| 艹色18p| 婷婷久久久| 另类激情五月| 激情深爱五月天| 丁香狠狠干| 亚州操逼网| 深爱激情四射| 激情AV| 天天透天天干| 五月天,激情四射,婷婷频道| 久久在线视频免费观看| 国产99热| 中文字幕av在线| 久久婷婷五月综合色区| se99在线| 久久久久人妻| 婷婷丁香五月av| 五月婷婷天天| 欧美久久久久久久久中文字幕| 久久五月视频| 亚洲五月花| 操b视频在线观看一区二区| 在线99热| 99爱视频在线观看这里只有精品| 色婷婷777狠狠| 婷婷色五月情| 亲子乱AV-区二区三区| 五月天五月色婷婷综合| 五月婷婷激情综合| 天天射影| 91丨九色丨东北熟女| 人人爽欧美婷婷久久久五月丁香| 99热色精品| 亚洲狠狠丁香婷婷香蕉| 丁香五月天五码婷婷| 丁香五月网址| 日本久久高清| 色色热| 丁香五月婷婷啪| 99热这里只有精品搜| 日本片日本片祼观看网站在线看中文版网页在线看 | 青草视频在线观看视频| 丁香五月aV| 丁香五月影院| 天天综合亚洲综合| 另类婷婷五月天啪帕帕| 五月婷婷婷婷| 国产精品丝| 婷婷十月激情综合网| 日韩丰满少妇无码内射| 激情五月天伊人av| 色噜噜五月天| 色五月丁香婷婷| 人妻AV在线观看| 人人澡玖玖一| 五月天婷婷色紫薇阁| 99热这里只有精品免费| 人人干人人操人人摸人人做| 婷婷丁香黄色| 狠狠色噜噜狠狠狠狠综合| wWW九九在线播放| 精品网站:999WWW| 伊人大香蕉在线视频| 夜夜骑夜夜撸| 入口五月婷婷六月香| 日日色综合| 欧美群妇大交乱婬网| 99综合| 久久网站观看免费欧洲国产| 99久久婷婷五月| 99热这里只有精品86| 超碰啪啪网| 99热精品在线播放| 综合久久五月天| 性做爰A片免费视频A片直播| 激情五月天啪啪视频| 99爱在线视频| 久久99热精品a片在线观看| 欧美大片| 婷婷精品综合| 国产成人在线精品| 极品少妇XXXX精品少妇偷拍| 日韩av网址大全| 色色色九九九五月婷婷| 丁香五月婷婷日本| 久久久思思热| www.金莲av| 激情综合五月色丁香婷婷| 婷婷五月丁香综合网| 亚州性爱99| 婷婷99狠| 五月丁香啪啪激情| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | www,超碰| 婷婷激情小说| 久久久精品色色色| 久久久97| 人五月天婷婷喷水| 亚洲AV中文在线| 欧美性二区| 久久精品一区二区三区四区| 五月丁香六月激情| www.激情五月天.com| 青柠影视免费高清电视剧| 久久九九大香蕉电院| 国产原创视频91九色| 婷婷性福五月天| 婷婷五月天久久久| 日操夜操天天操不卡| 五月婷婷丁香婷婷| 欧美性丁香色色五月天综合爱爱| 操婷婷基地| 欧美在线视频99| 亚洲日本激情| 99视频久久久| 99ER热精品视频| 噜噜色婷婷| 久操大香蕉| 成人午夜天| 五月天六月婷婷| 五月丁香婷婷综合| 殴美97色| 六月婷婷综合| 人妻激情在线| 婷婷五月天激情五月天| 亚洲网站在线鸭子av| 97luluse| 99亚洲精品| 99热在线观看| 色五月婷婷在线| 免费观看大片视频 丁香婷婷 六月欧美| 五月丁香六月婷婷免费| 情欲综合网| 丁香五月天啪啪| 激情碰碰碰| 97色 五月天丁香| 天天综合色| 九九在线精品| 91超级碰碰碰| 99综合在线| 丁香婷婷色情| 久久婷婷五月综合啪| www.深爱激情| 99热都是精品| 狠狠色97| 这里只有精品2| 99色综合| 婷婷99狠狠躁天天躁| 日本天堂免费99| 夜夜骑夜夜操| 亚洲视频操| 精品久久这里热66| 激情综合网址| 996er热| 超碰人人干| 激情丁香九九五月综合网| 26UUU精品一区二区| 国产精品色婷婷AV综合色色| 丁香五月成人社区| 欧日韩成人| 九九99热| 激情开心五月天| AVDV久久| 91久女| 五月婷婷久久网| 婷婷WWW久久| 97se在线视频| 婷婷天堂视频| 婷婷基地成人五月天| 五月天激情综合网站| 99热这里只有精品亚洲| site:feetmall.com| 丁香五月综合亚洲| 五月丁香精品| 国产黄大片在线观看画质优化| 国产亚洲精品久久久久久久久动漫| 成人无码精品1区2区3区免费看| 四LLL少妇BBBB槡BBBB| 免费看欧美成人A片无码| 99re热视频这里只精品| 91久草五月天婷婷| 97色在线| 狠狠激情五月天| 思思久久精品| 91Chinese在线| 亚洲精品V天堂中文字幕| 亚洲五月六月婷婷| 碰97久久| 欧美激情-区二区三区| 99在线精品在线视频| 在线网黄| 国产三级在线播放| 天天插天天插天天日| 五月天中文网| 久久精品这里只有精品免费首页| 无码碰碰| 五月丁香在线视频观看| 激情五月综合| 97在线观视频免费观看| 色欲天天综合| 亚洲色爱综合| 五月婷色| 久操福利| 丁香五月天堂网| 五月综合色| 五月色婷丁香| 色综合日日| 少妇激情五月天| 日本成人内射| 思思色综合网站| 另类图片色五月| 香蕉97碰碰碰欧美| 大功率国产在线| 深夜激情网| 日日夜夜干| 综合精品99| www.婷婷五月天啪啪| 五月丁香婷草| 久久影视婷婷五月| 国产日日操夜夜操的肉棒视频| 色婷婷888| 五月天sesese| 亚洲性爱99| 日本狠狠干| 老美AA片| 五月激情视频网| 久久久婷婷婷| 激情伊人| 日韩人妻无码专区| 综合色情网| 色婷婷成人五月| 202丰满熟女妇大| www.色综合.com| 国产精品婷婷午夜在线观看| 99热 精品在线| 久久9视频| 五月天婷婷爱| 丁香青青五月天| 91婷婷五月天综合视频| 噼里啪啦完整版中文在线观看| 亚洲av网站在线观看| 婷婷丁香五月亚洲| 色亭亭九月| 亚洲性图一区二区| 久久久精品免费啪啪国| 人人操人人爱丁香五月| 五月天天综合网色婷婷| 夜丁香五月婷婷| 老美AA片| 这里只有免费精品| 91大神在线免费看视频全集男男一起操| 夜夜爽日日躁| 婷婷激情五月呦呦| 五月天激情亚洲| 九月婷婷在线视频| 天天插插天天| 影音先锋 一区| 婷婷五月无码| 国产激情在线观看| 色色吧综合| 九色91国产| 操逼六区| 夜夜操少妇| se99视频| 天天碰夜夜操| 欧美日本综合网| 五月激情小说| 亚洲国产网址| 第四色婷婷五月| 久久婷婷五月天| 婷婷五月天成人在线视频| 五月激情六月宗合| 五月婷婷偷拍| 久久激情网| 99热 免费| 久久99国产综合精品免费| 精品久久人妻热| 熟妇人妻中文字幕无码老熟妇| 思思热99在线| 97碰在线免费观看| 在线播放中文字幕| 丁香五月网| 天天综合色99| 在线网黄| 丁香激情五月天| 色五月婷婷激情五月| 97一区二区| 日本色爽| 亚洲五月六丁香激情| 国产偷人爽久久久久久老妇APP| 99re这里有精品手机在线| 九九精品大香蕉| 丁香婷五月天开心六月| 激情欧美婷五月| 丁香五月婷综合| 91视频精品99| www.六月丁香看AV| 激情综合啪啪啪| 婷婷综合丁香| 婷婷五月天在线观看| 狠狠色综合网站| 久久天堂婷婷五月| 深爱激情网噜噜色| 狠狠色色色| 天天天添天天操| 亚洲亚洲人成综合网络| 5月婷婷六月丁香| 五月天成人综合| 欧亚色色| 激情又色又爽又黄的A片| 亚洲婷婷开心五月| 激情性爱五月天网页| 99er国产| 一区二区成人电影免费播放| 天天舔日日肏夜夜爽| 另类五月激情| 久久人妻伦理| 在线观看996精品| 婷婷五月色情| www.超碰| 欧美交换配乱吟粗大25P| 激情五月天综合网站网站网站| 婷婷五月综合久久中文字幕| 色五月综合| 色色五月天婷婷丁香| 日本少妇AA一级特黄大片| 99久热这里只有精品| 色五月xxx| 五月丁香成年黄色| 精品国产a| 久久久天堂国产精品女人| 日本熟女二区| 激情五月深爱婷婷| 九热视频这里只有精品| 激情5月婷婷狠狠干| 欧美日韩国产一区| 97超碰欧美中文字幕| 亚洲精品第一色色色色色色| 亚洲亚洲人成综合网络| 99热这里只有精品免费| 日本三级黄色大片| 婷婷五月天奸女| 婷婷国产成人| 天天日天天草| 丁香六月五月天| 天天综合天天玩夜夜玩天天玩夜夜玩 | 婷婷伊人| 亚洲久热| 少妇被下春药玩弄A片| 激情五月综合网| 五月激情天| 激情五月婷婷丁香| 五月在线| 综合网啪| 六月激情婷婷| 五月丁香色| 激情色色| 九九成人| 亚洲亚洲人成综合网络| 少妇被下春药玩弄A片| 99超级碰免费视频| 国产美女无遮挡裸体毛片A片| 六月丁丁香| 久热免费| 国精产品一区一区三区免费视频| 大地资源色婷婷视频在线| 丁香五月天社区| 婷婷五月花| 被强行糟蹋的女人A片| 99免费在线视频| 婷婷爱五月| 人人爱天天摸摸天天爱| 色婷婷成人影片| 天天综合图片| 综合色激情| 色五月婷婷影院| 婷婷激情小说| 综合色99| 久久黄色片| 久久加勤综合| 夜色综合网| 婷婷五月天黄色| 99re最新地址视频| 26uuu欧美亚洲日韩| 五月婷婷精品无在线| 婷婷五月丁香基地| 色综合99| 97色精品视频 | 婷婷五月天堂| 蜜桃五月天| 日本色99网站| 丁香婷婷网| 狠狠狠激情网| 色五月大| 国自产拍偷拍精品啪啪一区二区| 亚洲第二AV| www.91久久| 激情婷婷亚洲五月| 九九热最新| 久久九九色| 精品一二三区久久AAA片| 99热黄| 色~性~乱~伦~噜| 色情丁香五月天| www夜夜| 婷婷五月丁香五月| 婷婷丁香综合色AV| 天天搽天天射| 人人摸人人澡人人| 国产成人精品一区二三区熟女在线| 91人妻人人操| 婷婷五月激情四月综合 | 五月天社区狠狠| 丁香激情网| 国产古装妇女野外A片| 久草五月婷| 五月丁香爱婷婷深深| 色五月天视频| 综合激情婷婷| 99资源在线视频| 五月婷婷香蕉| 五月婷婷影| 大香蕉天堂色| 日 日干 日日做| 丁香婷婷色色| 国产性爱大片久久| 婷婷大美在线| 可以看的av网站| 婷婷丁香先锋资源网站| 婷婷色色网| 91精品综合久久久久久五月丁香| www.久久久久久久久久久| 99热在线免费观看精品| 五月婷婷与六月丁香图片激情| 青青草伊人婷婷| 激情五月天婷婷直播| 六月丁香VA| 丁香五月激情五月| 综合婷婷| 无码啪啪| 色欲婷婷五月天丁香| 激情五月婷婷色播网| 乱女乱妇熟女熟妇综合网站 | 色婷婷综合网| 久热 91| 夜夜操天天干| 无码一区二区三区四区五区91c| 玖月婷婷爱丁香| 九月丁香婷婷综合| 大香蕉五月婷婷| 九九久热| 色97啪啪| 五月婷婷影| 亚洲成人影视在线| 热99久久这里只有精品| 午夜精品人妻无码一区二区三区| 亚洲色爽| 五月网站| 战争与艾拉电影免费观看| 欧美成人精品A片免费一区99| 丁香五月婷婷啪啪啪| 人妻视频在线| 99在线播放视频| 久久9视频| 色呦呦美女| 欧美性猛交99久久久99| www.9797国产| w婷婷五月婷婷w| 七七九色| 思思热精品在线视频| 亚洲人妻av| 亚洲六月色| 激情综合啪啪啪| 丁香婷婷六月| 五月丁香六月婷精品视频| 97色婷婷| 欧美激情综合色丁香婷婷五月天 | 成人短视频在线免费观看| 日日综合网| 丁香五月婷婷大香蕉| 免费看成人747474九号视频在线观看| 久99久精品视频| 亚洲综合网 665566| 日韩婷婷五月| 99热在线观看| 天天爱综合网| 女人露出p毛视频www网站| 婷婷五月天影院| 伊人综合网4| 东京热五月婷婷| 婷婷天天婷婷天天澡| 色婷婷a v| 国产99热| 九九色情网站| 99精品在线观看视频| 日韩色五月| 九九成人| 激情丁香五月天图片| 爆乳熟女一区二区三区爆乳| 五月婷婷久久综合| 五月婷婷影| 久久五月视频| 婷婷狠狠干| 色在线99| 99热777| 91成人看片| 天天日天天插| 9九色首页| 第二色AⅤ| 性色综合网| 五月天激情图片| 色五月婷婷五月丁香五月| 天堂久久婷婷| 大香焦A∨| 久久激情五月| 亚洲色99| 丁香五月天激情AV| 激情五月天色网站| AV变态另类一区二区| 丁香六月婷婷久久综合| 日本五月天一页| 5月婷婷综合| 婷婷色五月天色| 青青草免费公开视频| 99热思思| 九一99| 婷婷五月丁香五月丁香| 色九月婷婷丁香| av一级棒av| 日韩黄黄| 婷婷丁香五月激情密臀av| 婷婷五月天99| 婷婷四月 成人 狠狠干| 任我鲁这里有精品视频| 色婷婷aV四虎| 五月Huangsewang| 丁香五月电影| 久久艹99| 五月天 婷 欧美亚洲| 国产精品久久久丁香五月八戒视频| 亚洲精品国产成人AV在线| 婷婷五月开心六月AV| 欧美日韩中文国产一区发布| 丁香五月激情综合| 免费AV播放| 久久精品人妻| 婷婷久久色| 欧美成人精品老美女噜噜噜| 色偷偷AV亚洲男人的天堂| 五月天成人在线播放| 丁香5月婷婷| 天天激情夜夜干| 婷婷五月天最新综合你懂的| 六月婷婷激情| 91婷婷色| 91丨九色丨熟女|新版| 婷婷五月丁香香蕉| 蜜乳人妻一区二区三区| 91热久| 大香伊人婷婷影院| 99日视频在线| 激情綜合網址| 日本欧美国产| 婷婷五月色影视先锋| 97碰碰九九视频| 狠狠干.com| 精品一二三区久久AAA片| 欧美日韩91| 99久久这里只有精品| 性爱视频99| 超碰人人艹| 久久久久9| 91色操| Va另类视频| 午夜青草资源| anquye五月| 热久视频| 99热这里只有精品66| 思思热视频| 亚洲日韩欧美综合VA| www.夜夜操.com| 97 A I色色| 五月婷婷亚洲色视频| 99视频精品全部观看10| 久久伦乱| 九九色99| 99人人干| 欧美色综合天天久久综合精品| 双性美人被调教到喷水A片| 搡BBBB搡BBB搡18| 中字幕视频在线永久在线观看免费| 艳妇野外情欲放荡HD| 大伊香蕉精品视频在线| 丁香五月 无码| 探花搜索结果 - 黄上黄| 五月天激情啪啪| 久久99精品视频| 五月婷婷 欧美| 丁香六月 人妻| 激情 婷婷 插| 久久超级碰视频| 黄色一级影片| 袁子仪视频观看| 另类激情五月| 六月久久婷婷| 色婷婷五月综合| 欧美A片在线视频免费观看| 婷婷五月综合丁香久久| 色五月天激情| 色五月在线| 激情综合激情综合| 成人在线99| aaaa久久| 婷婷色网站| 伊人网色婷婷五月天| 婷婷五月激情天| 亚美欧色影院| 伊人久久婷婷| 91欧美日韩| 激情深爱五月婷婷| 五月婷婷之美女图片| 五月丁香色色网| 五月丁香本色在线观看| 亚洲第一黄网| 日本 @ va 免费| 天天骑天天操| 中文字幕人妻AV| 丁香五月综合色婷婷| 天天色综合网1| 99热啪啪| 狠狠色丁香久久综合婷婷亚洲成人福利| 五月天啪啪视频| 天天操,夜夜骑| 婷婷五月天av| 五月天AV大香蕉| 人人射av| 色五月综合网| 婷婷丁香社区| 五月丁香成人版| 激情六月婷婷| 国产永久一黄| www国产亚洲色婷婷com| 青草激情综合| 98色花堂98t.R| AAA亚洲AV| 丁香婷婷色五月| 日韩精品无码AV| 国产色色网址网站| 激情綜合W W W,激情五月天| 中文av在线观看| 狠狠色婷婷六月激情网| 开心激情网五月天| 久久92| 久热这里只有精品99re | 婷婷六月偷拍| 少妇激情五月婷婷| 99综合网| 另类小说五月天| 丁香六月激情四射| 热九九九九| 婷婷五月丁香综合人妻| 五月丁香啪| 日本怕怕视频| 婷婷激情综合网| 久久久久久97| 五月激情在线| 99在线视频免费| 国产精品香蕉| 国产永久一黄| 狠狠搞亚洲| jiujiuxiangjiaowang| 综合五月亭亭9| 国产精品成人AV在线观看春天| 激情五月丁香婷婷夜夜操| 丁香五月天啪啪| 超碰在线视屏| 色五月丁香网| 久碰视频| 粉嫩AV久久一区二区三区| 激情啪啪五月天| 影音先锋女人AA鲁色资源| 五月花综合| 精品一二三区久久AAA片| 国产xxxxx在线观看| 亚洲综合色网| 五月丁香婷色| 色婷婷五月天av在线| 伊人六月丁香婷婷| 操草草草| 五月丁香六月婷婷在线观看| 99免费偷拍视频| av在线免费网站| 丁香五月影院| www.夜夜操| 亚洲 小说 欧美 激情 另类| 国产欧美熟妇另类久久久| 亚洲AV无码久久精品色欲| 97超碰婷婷五月天| 深爱激情六月天| 青青艹b| 国产.亚洲.欧洲视频在线| 综合久久婷婷| 国产毛片精品一区二区色欲黄A片| 伊人六月丁香婷婷| 伊综合蕉| 婷婷的99视频网站| 99热这里在线精品| 久久婷婷老| 狠狠色综合网| 丁香五月婷婷五月天在线| 婷婷操逼| 亚洲成人婷婷| 99无码超碰| 国产亚洲成AV人片在线观黄桃| 日韩AV色色色| 欧美色色色色色色色| 99在线观看精品视频| 色婷婷五月天堂资源| 久草视频大香蕉99| 色色色色网站| 狠狠久综合| 欧美激情综合色综合啪啪五月| 天天日天天舔| wuyuedingxiang99| 99re在线免费视频| 综合色色网| 色综合日日| 亚洲视频国产一区| 99久久户外勾搭| 六月丁香婷婷综合在线| 国产婷婷五月中文字幕高清| 另类亚洲电影| www.夜夜| 五月婷婷丁香婷婷| 午夜青草资源| 97碰碰叉| 天天做天天爱天天爽| 色五月婷婷综合| 久久这里只有国产| 91精产一区三区免费观看| 操骚货在线| 五月丁香成人网| 狠狠色丁香99| 九九热黄色| 97se在线视频| 日日躁夜夜躁狠狠久久AV| 123草逼网| 婷婷五月丁香香蕉| 丁香五月综合| 97成人在线视频精品| 激情五月婷婷| 色停停香蕉视频| 久久这里只有精品8| 激情五月婷婷免费视频| 国产操B视频| 嫩模草| 国产精品久久欧美久久一区| 亚洲 视频 导航 一区| 五月涩涩网| 亚洲成人在线免费| 1999天天操夜夜操| 激情综合网激情五月天| 婷婷伊人| 黄色五月婷婷| www.五月.com| 九九热经典视频在线观看| 久久精品爱爱| 色婷视频| 射琪琪| 人妻中文av| 色青青电影色五月| 日日躁夜夜躁狠狠久久AV| 亚洲高清在线| 五月天综合久久| 久99在线视频| 日韩AAAAAAAAAAA片| 婷婷丁香五月综合激情小说| 管管補管管紱| 婷婷六月爽| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 五月婷婷六月丁香| 亚洲综合九九| www.久久| 99久久久久| 99热超碰在线| 强伦轩人妻一区二区电影| 91九色在线| av在线观看网站| 99色中文| 色热久| 五月丁香啪啪| 97久久久| 天天综合精品| 色五月五月婷婷| 九九av| 天天躁日日躁狠狠躁日日躁2022年5月9日| 欧美日韩91| 日日操夜夜撸| 九九色婷婷| 被强行糟蹋的女人A片| 久久色情| 1024亚洲无码| 久久丁香| 91麻豆国产三级精品福利在线观看| 九九综合九| 婷婷丁香综合网| 岛囯综合激情网| 午夜激情久久| 九洲一级A片| 激情床戏| 电影爱拉战争免费观看| 婷婷激情五月综合在线视频| 激情美女五月天激情在线| 99热在线免费| 九九色图| 99re久久| 激情五月综合网丁| 六月激情丁香一道本7777| 久久人人超| 天天日天天做天天舔| 六月色色综合| 开心五月深爱激情| 五月天淫乱视频| 五月激情婷婷丁香| 国产午夜伦鲁鲁| 亚洲AV另类| 在线另类视频| 欧洲日韩一区二区三区| 激情五月天激情综合网| 日本在线视频www色| 亚洲激情网| 成人精品网站在线观看| 中文字幕不卡+婷婷五月| 色色色色综合网| 丁香五月人妻熟女| 五月婷婷婷婷| 久久99网站| 成人AV播放| 色呦呦免费观看| 五月丁香六月综合激情网| 天天操比比| 深爱婷婷网| 狠狠色噜噜狠狠狠777奇米| 六月婷久久| 五月四色色| 99热老司机| 中文字幕丰满乱孑伦无码专区 | 黄色AV日韩| 狠狠干狠狠干| 狠狠第四色| www.婷婷五月天啪啪| 五月婷婷导航| 婷婷丁香五月天综合在线日韩| 亚洲成人av在线播放| 天天做天天双| 久久丁香综合| 丁香五月亚洲综合丝袜| 99视频自拍| 久久欧洲综合网| 久久99热这里只频精品6学生| 婷婷五月激情在线| 日本va网站| 五月婷婷狠狠干| 色色欧美。| 开心婷婷五月天综合| 久久性爱视频这里只有精品| 婷婷色在线| 婷婷丁香97| 久久这里只有欧美| 久久综合99| 亚洲无aV在线中文字幕| 色天天综合| 国产暴力强伦轩1区二区小说| 丁香久月| 色欲AV导航| 日韩啪啪网| 99精品久久久久| 激情图片婷婷| 综合AV在线| 久久久久久久久月丁| 久久精品爱爱| 综合久| 色九月欧美| 国产精品久久7777777精品无码| 黄桃AV无码免费一区二区三区| 曰曰久久| 五月激情天| 久久人操-久草婷婷-成人AV| 婷婷丁香五月激情图片| www.99热在线观看| 五月丁香婷婷色色| 色噜久| 婷婷五月天在线一区| 亚洲国产精品VA在线看黑人 | 六月丁香五月天| XX久久| 99re热在线视频观看| 另类国产欧美视频| AV79| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品 | 五月婷婷先锋| 好激情在线综合网| 日韩丰满少妇无码内射| 六月丁香射婷婷欧美色图片| 嫩BBB槡BBBB搡BBBB| 91啪啪| 亚洲综合五月天| 婷婷日本在线| 婷婷五月天精品| 国产婷婷五月| 婷婷亚洲欧美丁香五月| 99热在线网站| 色欲午夜无码久久久久久张津瑜 | 96丁香六月婷婷蜜桃综合久久| 天堂综合久| 国产av基地| 91五月天| 精品乱码视频| AV九九| 五月婷无码| 97caop| 婷婷金品综合视频| 大香蕉人在线65| 无码色| 久操操| 久久激情网| 9999色色色色| 亚洲天堂九九九| 亚洲色热| av九九| 国产XXXX搡XXXXX搡麻豆| 成人婷婷深爱综合网| 中文字幕丰满乱孑伦无码专区 | 天天做天天爱天天爽夜夜揉| 色欧洲| 五月婷婷亚洲综合网| 91se视频| 激情綜合W W W,激情五月天| 欧美性爱日韩性爱| 碰碰女| 综合五月天亚洲婷婷| 欧洲MV日韩MV国产| 色99视| 99久久婷婷综合| 麻豆雪千夏| 六月丁香基地| 香蕉五月婷婷| 亚洲九区| 99久久99热| 开心久久网婷婷| 色五月天在线观看| 精品综合久久久久久五月天| 欧美三级视频下载| www.婷婷六月天| www。五月天激情| 天天色2017| 丁香五月中文字幕色播| 久久婷婷五月国产激情综合片| 五月久久丁香| 色婷婷69| 另类综合国产| 色啪影院| 国产毛片操B| 日韩啪啪视频| 婷婷综合爱| 玖玖综合色| www.婷婷五月.com| 色屌丝中文字幕| 五月天黄色激情小说| 五月婷婷av| 欧美偷偷操| 久久人妻久久| 六月婷婷在线| 狠狠狠狠狠狠狠狠狠狠狠色宗合图片| 99热www| 少妇性BBB搡BBB爽爽爽电影| 991国产精选视频在线播放下载| 丁香婷婷五月天亚洲| WWW·色色色·COM| 亚洲色啪| 婷婷亚洲五月| 五月丁香六月激情综合在线| 免费97碰碰| 婷婷情色五月| 五月丁香影视| 六月婷婷色色色| 九九热精品6| 婷婷丁香五月久久| 看逼中文字幕| 碰97 久| 久热9| 天天干天天操| 森林影视大全,最好看的2019年视频 | 大香蕉啪啪啪| 亚洲四色五月| 久久婷婷青青| 九九在线精点品| 日韩在线9| 国产偷人妻精品一区| 天天激情夜夜干| 色色色色热热| 婷婷六月啪啪| 在线91日韩| 91久久人人操| 成人AV在线中文版| 这里只有精彩视频| 99久久久免费| 五月久久婷婷丁香| 五月丁香六月婷婷开心网| 五月天激情网址| 性爱在线播放av| www.婷婷五月天.com| 婷婷激情在线| 手机旧版看人妻1025| 丁香五月天社区婷婷| 日韩青青| 7777国产盗摄农村女人| 丁香九月激情| 九九综合| 五月综合色| 天天天天操| 久热免费视频| 婷婷丁香五月综合免费视频百花| 99热6色| 伊人午夜综合色啪| 久久婷婷五月综合啪| 五月丁香激情在线| 婷婷五月开心中文字幕在线| 九九操综合网| 99热精品9| 五月天成人网婷婷| 日日射天天射| 五月色俺婷婷| 亚洲XX日本| 色99综合视频| 久久少妇视频| 婷婷丁香五月亚洲| 色播五月网| 91丨九色丨熟女| 91超级碰碰| 亚洲99热| 嫩草AV久久伊人妇女超级A| 欧美成人一区二区三区在线视频 | 色婷婷丁香五月| 亚洲另类婷婷综合| 思思热在线视频精品| 久久久久婷婷五月热综合| 天堂网啪啪| 天天爱天天爽| 五月丁香久久综合| 九九热99热| 久草婷婷| 91九九九九九九| 婷婷五月综合社区在线| 涩涩婷婷五月| 日本人妻A片成人免费看片| 97人妻碰碰碰久| 欧美99热| 婷婷噜噜| 五月久久婷婷天堂视频| 婷婷金品综合视频| 欧洲MV日韩MV国产| 亚洲成人无码片| 亚洲成人网站在线| 婷婷八月激情| 婷婷丁香五月天亚洲| 丁香五月在线视频黑人| 五月婷婷六月丁香在线| 亚洲日日操| 五月天丁香| 九久九精品| 婷婷色丁香五月| 操逼福利视频| 色欲久久久久| 九九热超碰| 久久99大| 日本三久久| 久久er九九| 亚洲色热| 国精产品一区一区三区免费视频| 无码碰碰| 二色av| 日日做夜夜爱| 射久久丁香五月| 国产熟女一区二区三区五月婷| 202丰满熟女妇大| 婷婷丁香五月色偷偷| 天天插天天狠| 狠狠xx| 99色综合| 2013AV天堂| 色综合播放| 激情综合网五月| 91综合视频丁香| 99在线视频精品| 97韩国久久电影院| 综合久久99| 伊人在线另类| 99热网站| 丁香婷婷激情六月五月开心| 国产亚洲成AV人片在线观黄桃| 久久国产AV| 久久九九99字幕| AA丁香综合激情| 亚洲蜜乳AV| 99热欧| 久久婷婷色| 91久久国产综合久久| 久久黄色网扯| 久碰婷婷视频| 97搞在线| 久久这里面只有精品视频| 九九无码| 玖玖婷婷五月天毛片| 99人这里只有精品| 五月婷色色| 激情五月天色色色| 日韩成人精品一区久久久久| 99欧美| 婷婷操久久| 亚洲va在线| 少妇水多A片太爽了| 久久久婷| 97色热| 久久五月天 91| 五月婷综合网| 欧美性色A片免费免费观看的| 无码色色色色色| 婷婷激情视频欧美视频自拍视频欧美剧 | 五月婷婷丁香综合,亚洲天堂| 亚洲avjiujiur91| jiZZdr| 一本久道综合99| EEUSS鲁片一区二区三区| 天天久久婷婷| SESE无码AV| 丰满人妻妇伦又伦精品国产 | 99干日本| 丁香五月婷婷香| 无码一级片| 丁香成人视频| 久久婷综| 丁香五月亚洲无码| 第九色区av天堂| 激情久久四色| 精品色色| 超碰99在线观看| 色吧五月婷婷| 操操操操操操婷婷五月天| 日韩成人电影AV| 国产精品社区| 丁香五月欧美成人| 五月丁香久久网| 婷婷激情五月| 91无码视频| 婷婷导航| 激情婷婷内射| 午夜精品久久久久久久爽| 成人婷婷深爱综合网|