日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

GD32+FreeRTOS+TCP協(xié)議棧移植實戰(zhàn):從選型到聯(lián)調全記錄

GD32+FreeRTOS+TCP協(xié)議棧移植實戰(zhàn):從選型到聯(lián)調全記錄 簡介面向GD32F450與LAN8720A的FreeRTOS_TCP移植工程為嵌入式開發(fā)者提供了一套完整的RTOS結合TCP/IP協(xié)議棧參考實現(xiàn)適合需要學習網(wǎng)絡通信、任務調度及外設驅動的中高級軟硬件工程師也適用于物聯(lián)網(wǎng)終端、智能家居、工業(yè)聯(lián)網(wǎng)等產品原型開發(fā)。資源包共846個文件大小3.11MB以383個H頭文件與285個C源文件為核心輔以匯編啟動文件、Keil工程文件uvprojx/uvoptx、鏈接腳本、Makefile及若干調試腳本可配合常見IDE直接編譯燒錄驗證。工程覆蓋FreeRTOS內核在GD32F450ARM Cortex-M4上的移植要點以及TCP/IP協(xié)議棧的集成過程涉及任務調度、信號量/互斥鎖、內存池管理、LAN8720A驅動、MII/RMII接口配置、TCP/UDP收發(fā)與中斷服務等關鍵環(huán)節(jié)。已有1310人學習下載可幫助開發(fā)者避開從零移植的典型坑點快速獲得可運行的網(wǎng)絡通信平臺并理解RTOS與網(wǎng)絡協(xié)議棧協(xié)同工作的異步處理思路。 把主控換成國產芯片還要保留網(wǎng)絡通信能力在 GD32 上同時跑 FreeRTOS 和 TCP 協(xié)議棧這套組合到底怎么搭這篇復盤把從選型、移植到聯(lián)調的所有關鍵節(jié)點都過一遍踩過的坑也一并列出來。1. 為什么選 GD32 FreeRTOS TCP 這條路線而不是裸機硬扛1.1 GD32 到底哪里香從一個實際項目出發(fā)我手頭這個項目倒不是什么高精尖設備就是一臺需要聯(lián)網(wǎng)上報數(shù)據(jù)的工業(yè)控制器原來用的是某國際大廠的 M4 系列芯片功能上完全夠用但供應鏈那邊一直提醒要準備替代方案。調研了一圈GD32F407 系列算是呼聲最高的一檔Cortex-M4F 內核主頻能到 200MHz內置以太網(wǎng) MAC配合一顆外部 PHY 芯片就能實現(xiàn) 10/100M 以太網(wǎng)再加上它和原方案在引腳上基本兼容硬件改版成本可控——這一點在項目里比任何參數(shù)都值錢。當然兼容說的是封裝和部分外設的電氣特性寄存器級完全不是一回事所以代碼不能直接搬。網(wǎng)上有人傳GD32 就是 STM32 的國產平替代碼改個宏定義就能跑這話只說對了一半。芯片底層外設的寄存器布局不同庫函數(shù)風格雖然相似但中斷控制器、時鐘樹、Flash 等待周期這些細節(jié)都有差異。實際移植時外設驅動代碼基本是重寫的只是邏輯結構可以參考原來那套。這點心理準備必須提前做好否則中期調試會被各種看起來應該一樣但就是不對的問題折磨到懷疑人生。選擇 GD32 還有一個隱藏優(yōu)勢庫里自帶的例程覆蓋了以太網(wǎng)、USB、FATFS 這些常用外設和中間件尤其是以太網(wǎng)這一塊官方例程直接給了 lwIP 的集成參考而不是讓你從零啃數(shù)據(jù)手冊。對做產品的人來說這是巨大的時間節(jié)省。如果你還在 GD32 和 PY32、CH32F407 這類芯片之間猶豫我的建議很直接看你要不要用網(wǎng)絡功能網(wǎng)絡相關例程和資料豐富度GD32 目前優(yōu)勢明顯。1.2 FreeRTOS 帶來的是結構不是負擔單做一個 TCP 通信裸機加中斷能不能做能。我也見過不少老工程師用裸機狀態(tài)機把網(wǎng)絡協(xié)議棧跑得很穩(wěn)。但問題在于一旦系統(tǒng)里除了 TCP 還有按鍵、顯示、數(shù)據(jù)采集、存儲裸機的主循環(huán)會迅速膨脹成一團亂麻。這個項目除了網(wǎng)絡通信還要同時處理傳感器采集和 FATFS 寫日志任務一旦超過三四個RTOS 的價值就完全體現(xiàn)出來了每個功能模塊拆成獨立任務分配各自的棧空間用隊列或信號量做任務間通信調試時只需要盯住每個任務的狀態(tài)而不是在中斷和主循環(huán)之間來回跳。FreeRTOS 在這類項目里基本是默認選擇——不是因為它功能最強而是因為它資料多、使用者多。不管是韋東山那套視頻教程還是各路移植筆記、面試題匯總搜任何一個報錯信息都能找到前人的記錄。嵌入式開發(fā)里生態(tài)的豐富程度有時候比內核本身更影響開發(fā)效率。但 FreeRTOS 不是銀彈它也會引入自己的問題任務棧分配不合理導致溢出、優(yōu)先級配置不當導致低優(yōu)先級任務餓死、中斷服務函數(shù)里調用危險 API 導致系統(tǒng)崩潰。這些問題在裸機里不存在到 RTOS 里就成了必修課。所以我的原則是功能簡單、任務固定就用裸機別為了用 RTOS而上 RTOS功能復雜、擴展勢頭明顯就直接上 FreeRTOS別等代碼寫到一半再重構。1.3 TCP 協(xié)議棧lwIP 幾乎是公認答案嵌入式設備要跑 TCP/IPlwIP 基本是唯一一個被廣泛驗證過的開源選擇。它和 FreeRTOS 的配合已經非常成熟官方文檔甚至直接給出了 NO_SYS0 的 API 調用模式支持多線程方式運行 TCP/IP 核心還能通過 sys_thread_new 創(chuàng)建協(xié)議棧線程和 FreeRTOS 無縫對接。相比 uIP 那類極簡協(xié)議棧lwIP 功能完整接口接近標準 socket調試工具鏈也齊全。選擇 lwIP 時有個大方向要想清楚跑在 RTOS 之上TCP 校驗和、數(shù)據(jù)拷貝這些操作是由內核還是由網(wǎng)卡任務處理內存管理用的是自動分配的 pbuf 還是自定義的池。這些配置直接決定內存占用和收發(fā)性能。lwIP 默認配置相對保守但足夠穩(wěn)定這也是我對這個項目的定位——要的是一個能長期運行不跑飛的 TCP 連接不是極限吞吐所以配置上求穩(wěn)為主。關于這部分細節(jié)第 4 章會展開說。2. 開發(fā)環(huán)境與工程骨架從 pack 包到第一塊網(wǎng)卡2.1 Keil、Embedded Builder、VSCode 誰更適合這個項目搭建 GD32 開發(fā)環(huán)境主流選項無非三個Keil MDK、GD32 Embedded Builder、VSCode 編譯鏈。我以前用 Keil 用得多但這個項目我一開始就換了思路——先試了 GD32 Embedded Builder。它是兆易創(chuàng)新基于 Eclipse 改的免費 IDE自帶編譯鏈和調試器工程模板直接從芯片廠商庫里生成不用自己搭三件套這對想快速起項目的開發(fā)者來說非常友好。實際用下來Embedded Builder 的優(yōu)勢是開箱即用、原生支持官方標準固件庫、芯片定義都內置新建工程時還能直接選 FreeRTOS 和 lwIP 組件省去手動拷貝源碼的步驟。它對中文環(huán)境的支持也比以前預期好雖然談不上完美的漢化但菜單和配置項多數(shù)能看懂。缺點是啟動速度一般插件生態(tài)比 VSCode 少不少寫大工程時的流暢度不如 VSCode。做完網(wǎng)絡調試器的演示工程之后我又把正式項目切回了 Keil 環(huán)境——原因很實際團隊成員更熟 Keil而且 AC6 編譯器對 FreeRTOS 和 lwIP 的支持很成熟代碼補全和 Keil 的調試工具用起來更順手。VSCode 是另一條路線適合喜歡用 clangd 做代碼跳轉和靜態(tài)檢查的人。網(wǎng)上搜VSCode FreeRTOS 移植能找到不少教程但我個人建議如果剛接觸 GD32先用廠商原生的 Embedded Builder 或者 Keil 把工程跑通再切換到 VSCode 環(huán)境否則環(huán)境問題會和業(yè)務代碼問題混在一起排查起來非常頭疼。2.2 pack 包與固件庫這里容易埋坑不管用哪個 IDE都繞不開芯片支持包和固件庫。Keil 環(huán)境下GD32 的 pack 包可以直接在 Keil 的 Pack Installer 里搜索GD32F4xx下載也可以去官網(wǎng)手動下載然后雙擊安裝。這個流程本身不難但版本問題經常被忽略——GD32F4xx 標準固件庫分為多個版本不同版本的庫函數(shù)命名和引腳配置宏可能略有差異。建議統(tǒng)一使用官方 SDK 包里的庫版本不要混用網(wǎng)上轉發(fā)的舊版。Embedded Builder 就簡單一點建工程時選擇芯片型號IDE 會自動拉取對應的芯片定義和啟動文件基本不用手動管理 pack 包。如果發(fā)現(xiàn)工程編譯報找不到設備頭文件這類低級錯誤十有八九是新建工程時芯片選錯了系列或者庫路徑沒配好。固件庫的選擇上GD32 官方提供標準外設庫和后來出的全新系列庫。標準外設庫風格類似 STM32F1 的標準庫函數(shù)名、結構體命名都是 GPIO_InitTypeDef 這套上手成本極低。新庫更結構化但資料相對少。這個項目我用的是標準外設庫因為 lwIP 移植參考例程基于它寫的照著改效率最高。2.3 AC6 編譯器下推薦開啟的選項Keil MDK 現(xiàn)在默認用 AC6ARM Compiler 6編譯它基于 Clang對 C99 和 GNU 擴展的支持比 AC5 好很多編譯速度也快。但 FreeRTOS 和 lwIP 這兩個開源項目里有一些代碼寫得比較放飛自我在 AC5 下可能只是警告到 AC6 下直接變錯誤。遇到#include freertos/freertos.h 檢測到 #include 錯誤這類問題多半不是頭文件本身的問題而是工程的 include path 沒有把 FreeRTOS 源碼目錄、port 目錄、以及應用配置目錄加全。編譯器報錯時先檢查頭文件路徑再檢查語法層面的兼容性順序不能反。我建議在 Keil 里把 C99 模式打開并加上 -Wno-missing-prototypes 之類寬松一點的警告選項先保證代碼能編過再逐步收緊。另外如果系統(tǒng)提示考慮更新 compile_commands.json那是給 clangd 或其他工具用的編譯數(shù)據(jù)庫Keil 不依賴它但如果用 VSCode 看代碼需要安裝相應插件并手動生成這個文件才能消除誤報。3. FreeRTOS 移植中真正卡住人的幾處細節(jié)3.1 移植文件組成與 heap 算法的選擇FreeRTOS 的移植看起來唬人但核心文件就三塊一是內核源碼包括 tasks.c、queue.c、list.c、timers.c、event_groups.c二是針對具體編譯器和架構的 port 文件Keil 環(huán)境下對應的是 portable/RVDS/ARM_CM4F 目錄下的 port.c 和 portmacro.h用 GCC 編譯鏈的話則對應 portable/GCC/ARM_CM4F三是用戶提供的 FreeRTOSConfig.h用于裁剪系統(tǒng)功能。這里要提一嘴 heap 的選擇。FreeRTOS 提供了 heap_1 到 heap_5 幾種不同實現(xiàn)heap_1 最簡單只支持創(chuàng)建任務但從不釋放內存heap_3 直接包裝了編譯器的 malloc 和 free但前提是編譯器庫線程安全heap_4 是我在這個項目的推薦——它支持內存合并、可以釋放已分配的內存塊而且不容易產生嚴重的外部碎片。項目里如果頻繁創(chuàng)建和刪除任務或隊列heap_4 是穩(wěn)的選擇。堆大小需要在 FreeRTOSConfig.h 里通過 configTOTAL_HEAP_SIZE 配置TCP 協(xié)議棧加網(wǎng)絡任務比較吃內存我直接給了 64KB 的余量如果 Flash 緊張可以適當壓縮但千萬別壓到 20KB 以下否則 lwIP 初始化可能直接失敗。另外網(wǎng)上很多學習筆記建議把 croutine.c 也加進工程其實協(xié)程功能多數(shù)項目用不到為了編譯干凈建議去掉。裁剪的意義在于讓代碼路徑盡量短排查問題時每一步都看得清楚。3.2 SysTick、PendSV 與中斷優(yōu)先級配置FreeRTOS 移植之后最常見的現(xiàn)象是任務創(chuàng)建成功但調度器一啟動就死機或者任務永遠不切換。這種問題九成出在時鐘和中斷優(yōu)先級的配置上。GD32 的片上定時器資源豐富但 FreeRTOS 的時間基準默認建議用 SysTick這個系統(tǒng)定時器不必單獨初始化FreeRTOS 自己會接管。你需要確定的是 SysTick 的時鐘源以及什么時候調用 vTaskDelay 這類 API 時系統(tǒng) tick 是否在走。SysTick 的優(yōu)先級必須設置為最低優(yōu)先級這樣它不會搶占其他中斷尤其不會搶占以太網(wǎng)接收這類實時性要求更高的外部中斷否則網(wǎng)絡數(shù)據(jù)包處理會被系統(tǒng)節(jié)拍頻繁打斷。另一件容易忽略的事是 PendSV 和 SVC 兩個異常。PendSV 用于上下文切換它的優(yōu)先級必須設置為最低確保上下文切換不會阻塞硬件中斷SVC 則用于啟動第一個任務優(yōu)先級不影響運行。在 Keil 環(huán)境下FreeRTOS 的 port.c 文件會自己設置這兩個異常優(yōu)先級前提是你沒有在初始化代碼里改掉它。如果你在啟動文件或者 main 函數(shù)里手動寫過 NVIC 相關配置需要檢查優(yōu)先級組是否設置正確。GD32 的中斷優(yōu)先級分組建議保持在默認的4 位搶占優(yōu)先級、0 位子優(yōu)先級模式這與 FreeRTOS 的 port 層假設一致改了會導致優(yōu)先級判斷錯亂。3.3 頭文件報紅include path 與 compile_commands.json在 VSCode 里看 FreeRTOS 代碼最讓人煩躁的就是滿屏紅色波浪線提示找不到 freertos.h。原因很簡單VSCode 的 C/C 插件和 clangd 并不知道你的工程用了哪些頭文件目錄。解決思路有兩個一是用 Keil 的工程文件導出編譯數(shù)據(jù)庫或者用 Embedded Builder 的構建日志生成 compile_commands.json二是手動在 VSCode 的 c_cpp_properties.json 里補充 includePath。我實際測試下來clangd 的體驗比微軟插件更好但配置成本稍高。如果你只是臨時看看代碼手動加 includePath 就夠了如果打算長期在 VSCode 里開發(fā)建議直接配合 CMake 或 ninja 這類現(xiàn)代構建系統(tǒng)讓工具自動維護 compile_commands.json效率完全不是一個級別。這一點在 STM32H7 或者 CH32F407 上移植 FreeRTOS 時同樣適用屬于通用經驗。4. 讓 lwIP 在 GD32 上跑起來網(wǎng)卡驅動的接法4.1 硬件側準備RMII 接口與 PHY 芯片GD32F407 內置的是 10/100M 以太網(wǎng) MAC但物理層收發(fā)器PHY需要外接。這顆 PHY 芯片我選的是 LAN8720A千兆 PHY 放在一個百兆 MAC 上當然不匹配但這顆芯片本身就支持 10/100M而且是 RMII 接口四條數(shù)據(jù)線加時鐘就能實現(xiàn)以太網(wǎng)物理層通信比起古老的 MII 接口省了一大半引腳。選它還有一個現(xiàn)實原因模塊化程度高幾乎所有國產開發(fā)板都帶有一顆 LAN8720A參考電路和驅動代碼海量踩坑成本低。硬件配置上有幾個細節(jié)必須注意一是 RMII 的 50MHz 參考時鐘一般由 MCU 的 MCO 引腳輸出或者由外部晶體提供這個時鐘如果歪了網(wǎng)卡根本無法正常工作二是 PHY 的復位引腳上電后要給一個低電平復位脈沖復位完成后還要等待 PHY 初始化完成通常需要幾十毫秒代碼里必須有相應延時三是 PHY 地址LAN8720A 的默認地址是 0x00但某些模塊會把地址引腳拉到別的電平導致 MDIO 通信不上初始化失敗時先檢查這個。GD32 的以太網(wǎng) MAC 初始化參考官方例程就能搞定但有一個坑MAC 外設的時鐘默認可能是關閉的需要在 RCC 配置里打開相關外設時鐘同時配置 GPIO 復用為 RMII 功能否則寄存器配置再正確引腳也不會輸出以太網(wǎng)信號。這種問題單看代碼很難發(fā)現(xiàn)用邏輯分析儀量 PHY 的 TX 引腳是否有數(shù)據(jù)輸出才能定位。4.2 接收鏈路中斷通知任務數(shù)據(jù)交給協(xié)議棧網(wǎng)卡驅動的核心是收發(fā)兩條路徑。發(fā)送路徑相對簡單上層調用 lwIP 的 netif-output 函數(shù)最終會走到你自己實現(xiàn)的 low_level_output 函數(shù)把 pbuf 里的數(shù)據(jù)拷貝到 MAC 描述符然后觸發(fā)發(fā)送。這里需要注意 pbuf 可能是一個鏈表結構數(shù)據(jù)在內存在多個內存片段不能直接拿第一個節(jié)點去填充 DMA 描述符需要做內存拷貝。接收路徑設計則直接影響 CPU 占用率和實時性。我的做法是啟用 MAC 接收中斷在中斷服務函數(shù)里直接調用 lwIP 提供的 netif-input但前提是已經把 lwIP 的 sys 層配置成了中斷支持模式。另一種更穩(wěn)妥的做法是在中斷里只做一件事——給網(wǎng)卡接收任務發(fā)送一個二值信號量然后由接收任務去檢查 DMA 描述符是否有新數(shù)據(jù)再調用 netif-input 交給協(xié)議棧。這種中斷信號量任務的模式讓中斷服務函數(shù)非常短避免在中斷上下文中執(zhí)行過多邏輯。實測下來GD32 跑這套接收鏈路配合 FIFO 深度足夠大的 DMA 描述符百兆網(wǎng)口的接收丟包率能維持在非常低的水平。如果出現(xiàn)丟包優(yōu)先檢查 DMA 描述符數(shù)量是否太少、pbuf 池是否耗盡而不是懷疑協(xié)議棧。4.3 lwIP 內存與緩存配置的幾個關鍵參數(shù)lwIP 的 lwipopts.h 配置決定了性能和內存占用的平衡點。這個文件是移植過程中最容易糊弄但實際上很關鍵的地方。我項目里用的幾個關鍵參數(shù)MEM_SIZE內存堆大小建議 32KB 起步如果有多個并發(fā)連接可以給到 64KBPBUF_POOL_SIZE數(shù)據(jù)包池數(shù)量每個包池默認大小是 PBUF_POOL_BUFSIZE一般給 20~40 個如果經常并發(fā)收發(fā)大數(shù)據(jù)建議加到 50TCP_WNDTCP 接收窗口默認 4096 偏小建議設為 8192 到 16384接收窗口太小會嚴重影響大文件傳輸速度TCP_SND_BUF發(fā)送緩沖區(qū)同理建議 8192 起否則發(fā)送大包時會頻繁緩沖等待LWIP_SO_RCVTIMEO / LWIP_SO_SNDTIMEO收發(fā)超時支持開關我建議打開因為這關系到應用層能否處理長時間無數(shù)據(jù)的連接異常。這些參數(shù)直接影響內存占用調大一個參數(shù)往往意味著多占幾 KB 甚至幾十 KB 的 RAM。在 GD32F407 這種 192KB RAM 的芯片上必須算好總賬確認所有任務棧、lwIP 內存堆、pbuf 池加在一起不會超過 RAM 上限否則 Keil 編譯順利通過運行時卻會在某個莫名的訪問中崩掉。5. TCP 應用層設計握手、接口選擇與連接異常5.1 三次握手過程的工程意義TCP 通信的第一步是建立連接而建立連接的過程就是教科書里的三次握手客戶端發(fā)送 SYN 包服務端收到后回復 SYNACK客戶端再回復 ACK。網(wǎng)上關于三次握手的討論非常多但從嵌入式開發(fā)者的視角看三次握手背后有兩個很實際的工程意義。一是握手的包交換本身是判斷網(wǎng)絡路徑是否通暢的試金石。我在聯(lián)調時遇到過一種情況程序邏輯完全正確但在公司網(wǎng)絡環(huán)境下連接總是超時抓包發(fā)現(xiàn) SYN 發(fā)出后沒有任何響應后來查到是辦公網(wǎng)封鎖了非標準端口——三層握手直接在一次失敗重傳中就暴露了這個問題。二是 TIME_WAIT 狀態(tài)的理解。連接關閉時主動關閉的一方會進入 TIME_WAIT 狀態(tài)等待 2MSL最大報文生存時間才釋放端口。嵌入式設備如果做服務端頻繁地和上位機建立連接、斷開連接可能因為端口被占用而無法立刻重新監(jiān)聽這時候很多人會誤以為是協(xié)議棧 bug其實就是 TIME_WAIT 機制在工作加 SO_REUSEADDR 就能解決這點第 6 章還會展開。如果只是理論考試背一下 SYN、SYNACK、ACK 就夠用了但在做嵌入式聯(lián)網(wǎng)產品時建議用 Wireshark 實際抓一次自己設備的握手過程看到三個包按正確的序列號來回才算真正理解這段話。5.2 netconn API 還是 socket APIlwIP 提供了兩套應用編程接口高層的 socket API 和相對底層的 netconn API。很多新手一上來就選 socket API因為跟 PC 端編程經驗一脈相承但實際上在 lwIP 集成 FreeRTOS 的模式下這兩套接口各有適用場景。netconn API 是 socket API 的基礎它直接面向連接支持阻塞/非阻塞兩種模式適合在嵌入式任務里實現(xiàn)一個任務處理一個連接的模型。socket API 則在 netconn 之上增加了一層 POSIX 兼容封裝代碼遷移成本低、可讀性好但會多一層函數(shù)調用開銷內存占用也稍高一些。我的建議是如果項目里只有一兩個 TCP 連接處理邏輯簡單直接使用 netconn API代碼更精簡也更容易控制內存使用如果未來可能需要兼容 PC 端代碼或者要跑比較復雜的網(wǎng)絡服務用 socket API 更便于維護。這個項目里我最終選擇的是 socket API 風格因為上位機通信協(xié)議本身是從 PC 端移植過來的保持代碼風格統(tǒng)一能減少一個轉換層。兩種接口實測并發(fā)處理 4~6 個連接都沒有問題不必在這個問題上糾結太久。5.3 RST、超時、?;钆c端口復用調試 TCP 時最常見的幾個異常連接被 RST、連接超時、長時間無數(shù)據(jù)后斷開。對應的原因和處理方式各不相同。RST 包的本質是對端認為當前連接狀態(tài)無效。比如服務端端口根本沒有進程監(jiān)聽客戶端 connect 會立刻收到 RST 引起 ECONNREFUSED如果設備斷電重啟后立刻接受連接但舊連接還沒超時重發(fā)舊包也會引發(fā) RST。聯(lián)調中如果抓包看到 RST第一反應不是懷疑代碼而是檢查對端端口是否監(jiān)聽、設備是否重置過連接狀態(tài)。連接超時比 RST 更難排查因為失敗是漸進式的。SYN 發(fā)出后協(xié)議棧會嘗試多次重傳重傳次數(shù)由 TCP_MAXRTX 配置控制每次超時時間線性增加總耗時可能長達一兩分鐘。如果應用層等不了這么長時間建議在 socket 上設置 connect 超時SDK 里一般直接支持 connect 加超時參數(shù)超時后主動取消連接并返回錯誤碼而不是讓任務傻等。?;顧C制是長連接的必需品。TCP keepalive 默認可能需要數(shù)小時才探測一次這個間隔對嵌入式設備太長。我通常把?;钐綔y時間配置為 30 秒不同協(xié)議棧配置項不同連續(xù)幾次探測無響應就主動斷開連接讓應用層重新建立連接。另外大量使用短連接時記得打開 SO_REUSEADDR否則每次斷開后端口都要等 TIME_WAIT 結束才能重新綁定設備重啟后的恢復速度會非常感人。6. 實測踩坑記錄從編譯報錯到連接穩(wěn)定6.1 堆棧溢出檢測一次真實的任務崩潰排查FreeRTOS 項目跑著跑著突然 HardFault相信每個人都遇到過。我第一次遇到網(wǎng)絡任務崩潰時是在壓測連續(xù)收發(fā) 1KB 數(shù)據(jù) 20 分鐘后設備直接死機。當時第一反應是查 lwIP 的配置懷疑內存耗盡或者 DMA 描述符泄露排查了大半天沒有結果。后來才想到 FreeRTOS 自己帶了堆棧溢出檢測機制。configCHECK_FOR_STACK_OVERFLOW 可以設置成 1 或 2設為 2 時會檢查任務棧邊界標志是否被破壞配合 vApplicationStackOverflowHook 鉤子函數(shù)在崩潰瞬間能定位到具體是哪個任務棧溢出。打開這個開關重測果然捕獲到網(wǎng)絡接收任務的棧溢出——因為我在接收回調里做了比較重的協(xié)議解析和日志寫入把原本預計的 512 字節(jié)??臻g撐爆了。任務棧大小的設置沒有捷徑只能估算加實測考慮最深的函數(shù)調用鏈、局部變量占用量、可能的中斷嵌套消耗。建議剛開始給網(wǎng)絡任務配置 1024 字節(jié)如果溢出再逐步加大同時保留堆棧溢出檢測能力。千萬不要為了省內存把棧壓得剛剛好因為運行一段時間后的內存布局變化可能讓棧溢出出現(xiàn)在完全想不到的位置。6.2 bind 報錯與端口 TIME_WAIT 問題聯(lián)調過程中我在上位機側遇到過一個經典的報錯listen 一個 TCP 端口時提示only one usage of each socket address地址僅限使用一次。當時程序第二次啟動監(jiān)聽同一個端口就失敗第一次程序退出后端口沒有立即釋放。這就是典型的 TIME_WAIT 問題主動關閉連接的一方端口會保留一段時間。解決方案是在服務端 socket 監(jiān)聽前設置 SO_REUSEADDR地址復用這樣即使上一個連接仍處于 TIME_WAIT 狀態(tài)也能重新綁定同一端口。lwIP 里對應的宏是 SO_REUSEADDR需要確保 lwipopts.h 里已經打開 LWIP_SO_REUSEADDR 這個開關。如果你用的是 PC 端聯(lián)調工具也存在同樣的問題Python 或 C 程序里加上 setsockopt 的對應調用即可。排查這個問題時用命令查看端口監(jiān)聽狀態(tài)是最直觀的方法。如果看到端口狀態(tài)是 TIME_WAIT基本可以確定就是這個原因不需要過度懷疑協(xié)議?;蚵酚善鳌:芏鄤偨佑| TCP 編程的開發(fā)者第一次碰到這個報錯會以為是端口被占用然后去殺進程其實只要理解了 TIME_WAIT 機制一行配置就能解決。6.3 聯(lián)調時的排查順序最后總結一下我在這類項目聯(lián)調時的完整排查順序。TCP 通信調不通先從底層往上逐層查不要一開始就改代碼否則會陷入越改越亂的循環(huán)。第一步看物理層PHY 芯片的 LINK 狀態(tài)是否正常用邏輯分析儀或示波器量 RMII 參考時鐘是否存在RX 引腳是否有差分信號。物理層不通上層配置再多也沒用。第二步看鏈路層檢查 MAC 初始化是否成功、MDIO 是否能夠讀到 PHY 的寄存器比如 ID 寄存器是否正確。讀不到 ID 基本就是硬件連接或者復位時序問題。第三步看 IP 層用 ping 命令去 ping 設備地址能通說明 IP 層正常不能通就檢查 lwIP 的 netif 是否配置正確、MAC 地址是否有效。第四步才是應用層用 TCP 調試助手或者寫個小腳本測試服務端的 accept 和收發(fā)邏輯。這套流程看起來繁瑣但每一次都能幫我快速縮小問題范圍。我自己最慘的一次經歷是跳過了前三步直接改應用層折騰兩天后發(fā)現(xiàn)是 PHY 參考時鐘配置錯了一個 5 分鐘的檢查拖成了 48 小時的排查?;氐介_頭那個問題GD32 FreeRTOS TCP 這套組合到底靠不靠譜我的答案是相當靠譜。前提是走對路徑官方例程起步、lwIP 配置求穩(wěn)、堆棧檢測常開、聯(lián)調分層排查。只要你把這幾件事做扎實這套組合完全能支撐一個穩(wěn)定聯(lián)網(wǎng)的嵌入式產品。最后再分享一個個人習慣——每次改完配置或驅動我都會用 Git 打一個 tag尤其是 lwipopts.h 這類參數(shù)文件改前改后跑一遍壓測因為影響內存布局的參數(shù)往往不是立刻出問題而是會在某個流量峰值突然暴露有版本回溯能省下大量排查時間。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久精品操| 男人的天堂1024| 91伊人| 试看日韩黄片| 亚洲成人免费电影| 翔田千里AV无码秘 三区| 午夜久久一区二区无码中出| 北京美女一区二区| 熟女91网| 久久欧美1卡2卡3| 国产精品噜噜噜日日日| 久久久久久久久久8888| 天天干夜夜肏| 91成人无码| 日韩黄色成人性爱| 欧美亚洲首页| 免费的av网| 人妻献身系列第54部| 国产人伦精品一区二区三区| 丰满人妻-区二区三区免费看| 久久五月视频| 男人天堂网站| 国产AV人人 夜夜人人澡| www.亚洲黄色| 国产人妻久久精品一区二区三区| 大香蕉97久久| 中文字幕五月婷婷免费| 欧美天堂亚洲电影院一区在线播放| 成年人网站在线免费观看| 日本99视频| 国产偷拍网站| 97精品中文字幕| 久久亚洲AV无码专区国产精品| 999熟女精品| 啊啊啊操一区| 91狠狠综合久久| 99热这里只有精品8| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 大香蕉十区| 中亚精品极乱| www亚洲免费| 欧美性夜| 欧美色综合网| 亚洲影视第一页| 天天天乱色综合全| 无码少妇精品一区二区60岁老人| 偷偷人人精品女女久久| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 国产精品久久久久无码A√| 东北老熟女| 少妇第一页| m欧洲一级午老| 另类图片五月| 99热超碰| 亚洲精品一二三四区| 狠狠干综合| 97国产成人精品免费视频| 超碰精品97| 色综合超碰超| 亚洲情色 自拍| 久久久少妇诱惑精品视频| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 97色诱| 五月婷婷综合网| 亚洲精品三区在线观看| 精品人妻一区二区乱码一区二区| 麻豆人妻少妇在线免费观看| 国产精品一级二级在线| 东京热大香焦| 日夜尻逼网| 欧美激情色婷婷花野真衣一区二区 | 97蜜桃综合| 操九九九九九九| 欧美不卡在线美女| 丝袜喷水在线| 久久超碰久| 欧美嫩性色| 99热欧美| 爱爱久久| 干超碰碰熟女| 欲香欲色| 性爱综合一区二区| 午夜高清成人在线视频| 久99视频| 亚洲综合贴图91| 亚洲美女高潮喷水视频| 搡老熟女免费视频| 久久久国产成人一区二区三区在线| 97亚洲欧美| 国语对白在线播放视频| 91精品国产高清久久久久久,亚洲成人 | 校园春色综合色| 精品大全99999| 久热影视| 久操网无码在线| 清纯唯美激情四射| 大香蕉欧美伊| 国产精品免费美女视频| www.高清无码诱惑一区.com| 亚洲性猛| 手机在线视频国内精品| 欧美老妇综合网| 禁止观看美女黄| 青青草国产一区二区三区| 黄片在线免费在线观看| 久啪视频| 亚洲成a人片在线观看中文!!!| 夜夜高潮夜夜爽| 99久久久久| 色哟哟AⅤ| 中文字幕一区二区三区50路| 最新三级网址| 欧日a| 长长久久88视频| 99re99视频在线免费观看| 9 1果冻精品视频| 97色网| 粉嫩绯色AV一区二区在线| 欧洲一级性爱视频在线观看| yiren97| 丰满人妻-区二区三区免费看| 影音先锋少妇| 丝袜视频一区二区在线播放国产中文 | 人人爽夜夜操| 日本精品加勒比海一区| 欧美,日韩,亚洲视频| 岛国精品视频在线观看| 五月天色电影| 大香网站| 中文字幕成人乱码熟女精品国50| 懂色AV蜜臀无码精品APP| 久久熟女人| 欧美色图综合网| 中亚av| 久久久久少妇| 久久久久78| 黄色片,com| 97一区二压| 日韩三级av片| 桃色五月天| 俄罗斯及免费在线看| 91丨九色丨东北熟女| 97超碰色| 亚洲影视高清第一页| 成年人黄色视频免费| 麻豆蜜桃视频在线观看| 婷婷五月天激情小说| 91色人妻| 无套内射性感少妇视频| 亚洲丝袜少妇在线| 欧美日产国产在线成人第一区| 九九英色视频| 久久久久亚洲Aⅴ无码| 久久av成人无码免费| 任你干在线视频| aaa亚无码专区| 人妻 欧美亚洲| 白嫩嫩一区| 国产一区二区视频在线播放| 超碰97 线线 在现| 欧美自拍网| 午夜精品久久久99| 亚洲AV无码乱码在线观看性色| 亚洲国产欧美日韩人妻日中文| 一级二级三级黑人无码| 日本精品一区二区不卡| 青青欧洲黑| 人妻少妇精品一区二区三区| 家庭乱伦性爱av| 精品大全99999| 99re在线精品78| 无码国产精品久久久久| 欧美一二三| 欧美色图天堂网m| 少妇xx精品| 一级片在线观看高清无码| 天天拍夜夜| 亚洲欧美97| 欧美日韩亚洲高清不卡一区二区三区| caorenqi shipin| 色黄污美女啪啪啪免费网站| 亚洲本色精品一区二区久久| AV麻豆免费一区| 精品久久久久,69国产成人精| 国岛片视频| 黄片色区软件| 人妻少妇一区二区| 亚洲国产一级精品毛一级精品看免费视频 | 97在线视频观看| 亚洲成人贴图| 欧美日韩大黄片| 亚洲熟女av中文字幕| 91少妇高潮| 精品射1999| 色99在线| 色狠狠一区二区三区香蕉| 天天情欲宗合网| 四虎免费在线播放| 亚洲欧洲自拍图片专区满春格| 女沟厕偷窥piss小便| 精品国产国产AV| 久久久国产三级黄色片| www亚洲免费| 97狠狠| 很黄很污的免费网站| 午夜精品久久一区二区| 超碰导航97| 人妻熟女一区二区三区在线| 日韩成人大片一区二区| 屁股久久久久久久久久| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 色狠狠 - 百度| 精品人妻免费观看| 另类小说欧美激情校园春色| 日韩中文9| 97人亚洲综合字幕| 久操高青| 日日AAvv| 亚洲。日韩。欧美| 欧美日韩99精品麻豆传媒| 人妻人人做人人澡人人爽欧美一区| 亚洲熟女人妻中文字幕一区二区 | 亚洲激情综合| 亚洲激情网一二三四区| 亚洲无码精品AV久久久| 婷婷性网| 91福利网在线观看| 噜噜噜噜天天狠狠| 五月天色图| 精品人人| 久草视频制服诱惑| 久草草一二三四区久久| 青娱乐91| 天天日日日射| 无码一区二区三区四区五区六区七区八区九区十区视频 | 成人精品视频一区二区| 淫淫总合网| 成年女人18级毛片毛片免费观看| 学生妹天天看| 操国产逼| J?P?NESEHD熟女熟妇伦| 久久超碰国产一区二区三区| 9118禁| 欧亚在线视频| 日产操逼| 最新精品久久蜜桃| 五月丁香六月婷综合成人综合| 欧美性爱第一区| 久久高清欧美国产| 国产精品99久久久www| 亚洲欧洲另类| 传媒免费一区二区三区| 一级免费精品| 亚洲国产综合图区中文字幕| 日韩黄色av中文字幕| 五月丁香婷婷色| 搡老人老9丨女老熟人| 亚洲综合97| 日韩强奸av| 色青青久久影视| 中文字幕精品一区二区精品| 欧美亚洲涩涩| 欧美片第一页| 久久精品福利影院| 性色av蜜臀av色欲aV| 91操操| a级理论午夜日本| 成人久久无码www| juliaann精品熟女一区| 久久久久久久久女黄| 啊啊啊啊好爽好舒服一区二区易域| 日本女厕偷拍| 欧美成熟性爱精品| 岛国黄色短视频| 大香蕉色网| 国产传媒日韩| 欧美性爱一级操| 久久久久网站-538在线视频-欧美永久乱码| 青青久久艹| 亚洲AV无码乱码在线观看性色| 欧美狠狠弄| 欧美日韩亚洲高清不卡一区二区三区| 无码人妻精品酒店| 九九热在线视频| 国产人妻精品一区二区三区秋霞 | 亚洲欧美综合网站| 狠肏骚人妻| 成人av动漫在线观看| 欧美亚洲手机在线| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 亚洲永久AV无码精品秋霞| 日本国产亚洲一区在线观看| 天天爽夜夜爽夜夜爽精| 精品亚洲国产成人精品| 九九热精彩视频| 久久久久国产精品久久久| 久艹日日日| 亚洲日韩美女丝袜美腿人妻视频| 黄色免费网| 内射小黄片| 澳门成人网站久国产日韩| 330dv亚洲成年视频网| 乱伦Av网| 天堂v无码免费视频| 欧美A√综合网 | 精品无人区麻豆乱码久久久| 强奸乱伦Av网| 欧美v日韩v亚洲v最新在线| 玖玖蜜臀资源网| 嫩呦国产一区二区三区AV| AV女资源| 91嫩草欧美| 丁香婷婷久久| 操逼操网| 亚洲乱色熟女一区| 欧美玖玖爱免费玖玖| 午夜天堂精品久久久久91| 男人的天堂,欧美亚洲另类国产日韩,日本高清一区二区 | 奶水 人妻 哺乳 在线| 免费视频97| 国产精品嫩草影院午夜两性| 国产日韩欧美操逼视频| 亚洲另类综合欧美| 人妻激情在线视频| 69人妻精品一区二区绯色| 久久久久免费少妇| 欧美精品久久久久久久久88| 日韩射图| 中文字幕一区二区视频在线观看| 精品中文字幕一区二区| 久久久熟妇熟女国产| 偷窥自拍亚洲| 亚洲自拍小说| 久久黄色性爱视频| 一本久道在线综合视频| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 免费精品中文字幕| 岛国片在线视频网站| 老熟女网站| 日本道人妻久久久在线不卡色视频| 亚州久久9| 青草视频在线看看看看看看看看看| 最新日产中文在线麻豆| 欧美视频一区二区在线| 久久无码成人| 国产无码高清操逼视频| 欧美色www亚洲国产阿娇要播| 3P丝袜熟女 色综合| 乱色老一区二区三区的观看方式| 亚洲网污污污污| 国产精品。| 国产老熟女| 99热亚洲天堂| 校园春色制服丝袜中文字亚洲| 激情熟女12P| 白丝AV| AV男人天堂网| 青青草依人大香蕉| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 1204人成网站色www| 99蜜桃臀久久久欧美精品网站| 九九久久一区二区三区| 久久超碰亚洲人| 91视频观看网站| 刺激性视频黄页| 色综合色综合网| 中日韩欧美精品无码AⅤ一区二区| 在线a v| 亚洲乱色熟女一区| 精品无码久久久久久国产浪潮| 九九无码久久精品视频| 亚洲国产欧美中文永久| 日韩激情电影中文字幕| 亚洲区小说| 色丁香五月婷婷| 成人av毛片在线观看| 97精品97久久| 人人操,操人人| 热天堂一区二区| 手机在线视频国内精品| www.人人cao| 99在线免费公开视频| 欧美91精彩| 欧美大色交| 超碰 国产熟女精品一区| 日韩精品一区,二区 九九...老司机| 美腿色图| 亚洲AV成人无码一区二区三区在线观看| 久操免费观看| 青青青操| 狠狠色丁香| 黄片视频观看| 亚洲国产精品无码AV久久| 中国AAAAAA黄色片| 国产乱婷婷精品二区三区| 青青草视频久久久久| 粉嫩AV输入| 99日视频在线免费| 99久久99久久免费精品蜜臀| 强奸乱伦 亚洲一区| 国产无码成人无码| 天天干夜夜操网| 91热爆在线| 人妻精品4K4K4K4K4| 欧美亚综合色图| 神马久久久久久久久久| 男人的天堂com| 乱性AV| 久久精品国产亚洲AV片多多| 日本免费中文一区二区三区四区| A啊啊在线观看| 国产少妇内射| 大香蕉免费3| 色欲日韩欧美在线一区| 日韩一999精品| 超碰在线1234区| 91中出| 玖玖爱免费观看视频| 天天综合网国产| 黄色不卡视频| 久久九色| 天天精品| 91少妇香蕉久久精品| 视频黄站| 人妻精品视频一区二区三区| 激情五月天色色网| 久久久99999久网站| 亚洲欧美内射| 草草影院最新网址| 蜜桃精品一区二区三区ww| 校园春色亚洲无码| 亚洲国产精品久久久男人的天堂| 男同专区一区二区三区在线| 日本欧美一区二区三区免费| 91老熟女逼| 午夜视频久久久| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 人人看人人爰人人操| 99久久久久| 熟妇女伦乱视频视频| 亚洲无码超碰免费| 91色碰| 日本天天干天天日一区| 国产白嫩精品久久| 香蕉99秘 一区精品蜜桃臀| 亚洲97久久精品亚洲| 操香逼| 亚洲综合嫩| 色情综合| 97鸡把在线视频| 国产1769在线| 四虎免费在线播放| 久久久国产成人一区二区三区在线| 久久超碰97中文字幕| 五月丁香激情四射| 农村妇女一级二级三级视频| 伊香蕉综合久久久久久久噜噜噜| 欧美在线干| 亚洲AV不卡在线观看| 大香蕉专区| 欧美专利1区2区3区4区5区免费| 熟女少妇一区二区三区| 日韩性爱高清免费视频| 亚洲在线观看| 女人高潮大叫一级毛片| 欧美宗合网| 五月丁香啪啪| 97se亚洲综合自| 精品区国产区一区二区三区| 亚洲影视高清第一页| 日韩av影片在线观看| 玖玖资源中文字幕制服丝袜| 国产色图乱伦| 欧美综合色站| 人妻中文字幕精品无码| 操亚州| 在线综合色| 久久精品99久久久久久| 久久一区二区三区入口| 日本道人妻久久久在线不卡色视频| 十八禁视频网站| 亚洲女优有码无码高清| 日韩国产成人自拍视频| 夫妻AV网站| 欧美日韩91| 青草精品视频-日本久久久久网站| 熟女人妻久久中文字幕一二区| 国产精品乱码久久久| 亚洲天天艹| 欧美91精彩| 精品亚洲一区在线观看| 久久久熟妇熟女国产| .精品人妻一区二区三| 久久大线蕉一区| 三级网色| AV女优男人的天堂| www.狠狠干.coom| 97国产人人| 377p欧洲日本亚洲大胆| 九九精品美女高溯喷水| av网站国产主播在线| 久久久久久久久女黄| 在线午夜成人无码视频| 精品然女一区二区| 免费看欧美美女黄色大片 | JIZZJIZZ亚洲女人被躁| 久久m| 国产资源中文字幕在线| 综合干干干av久久久综合网| h无码动漫在线观看| 一级性爱aaaa| 97亚洲中文| 丁香六月激情| 少妇人妻太紧太深av| 欧美后入式| 久久久久久性爱片| 天天色黄色影院天天操| 亚洲第一视频 欧美风情 日韩| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 国产吞精a级片激情电影| 色爱天堂| 久草资源在线视频官方总站日韩丝袜美腿 | 国产老熟女| 天天看高清麻豆| 色九九九九久| 国产精品亚洲免费| 精品人体无圣光凹凸| 啪啪啪亚欧美视频| ai欧美亚洲小说| 91欧美偷拍| 蜜臀AV秘一区翔田千里| 亚州精品一区二区三区香中文字幕在线| 秋霞午夜成人福利片片| 传媒免费一区二区三区| 欧美精品日韩一区二区| 丰满人妻一区二区中文| 第四色奇米影视777| 免费视频一二三区| 天天干,夜夜爽| 中国一级特黄大片护士| 精品少妇人妻一区二区三区| 亚洲色9| 800zy一区二区| 国产97色在线| 无码操逼视频一下| 日本大香蕉综合网| 精品二区久久| 熟女在线视频| 国产黄色小视频网站| 夜夜免费视频| 伊人玖玖网| 色婷婷电影网| 91老熟女视频| 亚洲色图国产另类| 久久人人爽人人爽人人片Ⅴ| 无遮挡男女激烈动态图| 99RE在线视频精品,这里只有精品| 中文字幕视频免费| 青春草莓视频在线观看网址| 亚洲美女精品| 国产成年免费大片黄在线观看| 蜜桃视频一区二区三区| 久久久夜夜嗨免费视频| 日夜尻逼网| 欧美性爱无码一区二区三区| 午夜精品久久久久| 日韩一级特黄av毛片| 日韩91网| 亚州色图欧美| 啊啊啊操一区| 国产麻豆福利av在线播放| 羞答答AV中文字| 91狠狠综合久久久久久| 91久久国产精品| 人人操人人射人人干| 91天天爱| 亚洲码和欧洲精品激情系列| 男人的天堂一区三区| 欧美日韩人人早| 猛交交| 一线黄色免费性爱片| 易易A毛视频| 少妇色综合| 九九毛片这里只有精品| 亚洲一区二区精品福利| 97在线视频观看| 亚洲天天影视色综合| 人人超碰在线观看黄| 一本一道人妻久久一区二区三区 | 天堂v无码免费视频| 亚洲欧美校园| 亚洲深夜福利| 免费观看一区| 久久精品久久久久久久久| 中文字幕精品乱码| 日韩人妻精品中文字幕| 国产视频一区二区在线| 婷婷性爱| 韩日巨乳美女免费视频在线观看| caopeng97| 人妻少妇蜜桃视频欧美一区| 欧美一区91大爱| 亚洲情色电影网| 夜夜高潮夜夜爽高清视频一 | 久久偷拍人| 天天天天天天天天综合| 国产综合网站在线播放| 色色色色网站| 国产九九九九九九九九| 操逼网站视频漫画国产| 国产67194| 校园春色综合色| oumeizonghese,www| 欧美综合在线第一页| 荡小穴在线观看| 久操99| 国产精品91一样| 欧美日韩少妇色情| 色婷婷日韩精品一区二区三区| 啊啊啊啊好疼| 91亚·色| 久久久国产精品亚洲精品| 夜夜躁狠狠躁日日躁av| 色综合天天| 婷婷激情五月| 亚洲视频二区| 亚洲小说视频| 五月丁香黄色网| 欧美一区二区三区日韩| 大香蕉十区| 日日骚网站| 亚洲 自拍偷拍 欧美| 又大又黄国产| 天天干1区2区在线| 91 欧美| 亚洲国产精品9999在线观看| 不卡免费av在线播放| 天天射网| 天天综合网网欲色| 欧美日韩亚洲少妇寂寞影院正在播放 | 一级黄色影片| 日韩欧美资源| 欧美日韩*字幕一区| 婷婷久久久| 久啪视频| 成人精品在线| 性色一线| 美女黄色91| 乱伦a片视频| 久久婷婷一区二| 人妻熟女一区二区| 人妻偷拍一区二区三区| 天天综合网在线| 日本阿v天堂在线观看| 五月香婷婷| 99re99在线视频| 精品久久99| 插插综合网天天影视网| 人人人人插| 亚洲精品黑丝| 五月天综合| 黑人免费福利视频| 男人的天堂.com| 亚洲无线码欧洲精品区别| 9超碰免费| 毛片久久| 一级黄碟| 91 亚洲 欧洲| 国产中文大片资源中文字幕| 国产AV线| 99综合免费视频| 人人操人人精品影片| 韩日色费| 亚洲熟女一区| 人妻-91porn| 2017,超碰| 北条麻妃99精品青青久久| 国产中出内射一区二区| 色娱乐色呦呦夜夜夜夜av| 26uuu国产免费观看| 欧美日韩97| 国产亚卅97| 九区国产| 国产精品99久久久www| 久久久蜜桃臀无码视频| 天美一区在线| 久久 亚洲 日韩 人妻| 丁香五月天激情综合| 久综合国内精品自在自线| 欧美日日人人天天| 黄页大片在线观看| 国产在线视视频有精品| 日本性交操一区二区不卡系列| 色综合1991| 肉丝网站91| 午夜寂寞欧美| 欧美探花网| 91制服丝袜| 国偷自 一区二区| 欧美色棕合| 亚洲最新a在线观看| 综合网亚洲| 久久久久久中文| 天堂精品一区| 欧美色图人妻| 亚洲精品天天影视综合网 | 久久久少妇诱惑精品视频| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 99精品成人免费看| 国产又黄又爽| 91色狼| 亚洲中文丝袜美腿诱惑字幕| 福利五区| 亚欧美色图| 亚洲老司机123专区| 欧美精品人妻视频| 97久久精品亚洲| 欧美少妇色综合| 九九av| 国产精品麻豆成人av| 五月丁香黄色网| 久久少妇| 熟女探花啪啪| 人人爱人人乐人人操| 亚洲综合草草| 九九九九九九免费视频| 亚洲色图伊人网| 日日骚精品视频| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 黑操B| 天天舔天天 | 91网九色蝌蚪操熟女| 60秒不遮不挡| 97色碰| 欧美性天天| 91岛国动作片| 日本伦乱九九九综合| 91精品人妻偷情| 翔田千里A片一区二区| 中国大陆国产高清AⅤ毛片| 综合免费无码中文| 大胆91| a男人的天堂| 97一区二区蜜臀| 九九综合网| 久久区| 自拍内地三级在线观看| 少妇一区二区三区高速| 不卡一区二区日本视频| 日韩免费人妻色情网站| 国产性爱欧美性爱在线| 精品午夜福利| www亚洲免费| 91粉嫩萝控精品福利网站_精品影音先锋国 | 四虎在线播放| 校园春色五月天| w w w.久久精品| 99精品久久| 亚洲一区在线观看欧洲| 日韩精品一区二区日韩| 国产一区二区视频在线播放| 电影69乱码96| 亚洲综合嫩| 久久激情亚洲精品无码?V| 91蜜臀熟女| 亚洲有薄码区久久在线一区| 中文字幕天堂在线| 国产极品美女高潮无套在线观看| 涩五月婷婷| 91色欧美| 免费夜夜爱黄色视频毛片| 日韩黄色小说| 风流老熟女一区二区三区l| 久久一二三四五六七八九区区| 欧美18老人禁| 后入 亚洲 美女 射| 俞拍久久国应视频| 亚州少妇| 操逼无码操逼| 欧美性色综合网| 91成人亚洲色图| 免费一级a毛片久久久久久鸭绿欲 国产精品亚洲天堂网址 | 国产又猛又粗又爽又黄| 在线只有精品| 男人综合网| 亚洲国产一区二区三区在线| 97超碰护士| 91色艳| 欧美性爱一区二区三区| 色色激情五月天| 男人的天堂久久久| 精品国产一区二区三区av在线资源| 五月天久久人妻| 18禁免费视频| 美腿丝袜高跟网免费视频免费视频| 日本成人在线不卡一区二区三区 | 精品人妻视频一区二区在线播放 | 性爱网站一区二区| 欧美第二页午夜| 91干熟女| 日本高清免费一本视频在线观看| 超碰无码五月97| 99热超碰在线| 91美女网站| 人妻无码视频一区二区三区久久| 白嫩国模丰满一二三区| 强奸熟女一区二区三区| 欧美性色网| 国产亚洲日本| 国内91熟女人妻丝袜天天精品视频在线| 97欧美日韩| 性色av一区二区| 国产精品老师| 嫩草美女久久| AV女资源| 亚洲成人无码影院| 亚洲全色网| 91精品婷婷国产综合久久竹菊| 色丁香五月婷婷| 国产一区自拍欧美日韩| 久九9精品| 啊啊啊啊二区好大| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 国产精品视频91久久| 欧美桃色网| 狠狠躁天天躁日日躁| 日韩人体偷拍| 国语av最新自产拍在线观看| 中文字幕AV中出| 69丨亚洲丨精品丨入口免费播放| baisiav| 超碰在线99| 久久久久国产一区二| 欧洲成人性爱视频| 日本久久女同性恋视频| 欧美翘臀视频网站一区二区三区 | 九热久| 熟女熟妇一区二区三四区 | 超碰97在线 欧美 国产| 超碰久久中文| 欧美人妻精品| 亚洲精品久| 国模限制级电影| 中文字幕黑人大片| 狠狠干狠狠色| 99热精品在线播放| 色五月69夫妻| 色吧五月| 久操大香蕉| 狠狠欧美| 国产视频三区四区| 淫妻综合网| 久久久久成人蜜桃精品| 亚洲情色第一页| 伊人97色天使| 成人女人国产| 97爱爱影院| 日日夜夜模| 久久有码视频| 亲子敌伦对白在线播放| 男人的天堂一区| 婷婷涩嫩草鲁丝久久午夜精品| 日韩黄片影院| 色婷婷婷五月天激情四射| 欧美激情总合网| 国产地址二三| 狠狠干91| 亚洲中文字幕久久人妻| 国产少妇肉丝在线观看| 欧美老妇女内射网址| 天操天操夜操夜月月年年操操| 91欧美网| 久久夜夜| 国产女人操逼视频| 按摩中文字幕| 青草精品视频一日本久久久久网站| 成人午夜高潮av猛片| 操逼操逼视频操逼| 丁香六月激情综合| 动漫区日韩区欧美区| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 人妻熟女av国产网站| 精品人妻夜夜草| 国产乱码久久久| 青青草一区二区高清无码视频| 亚洲综合大片| 91欧美丝袜| 超碰在线一区二区三区| 操逼无码一区| 久久 久久国内精品亚洲| 中文字幕国产在线天堂| AV综合中文字幕干| 性色av一区二区| 少妇综合| 91AV老熟女视频| 东京热男人的天堂| 伊人成人中文字幕久久网| 天天大干大香蕉| 淫荡熟女乱伦网| 偷拍亚洲高清图片| 国产精品不卡高清在线观看| 午夜免费福利视频一区| 97精品久久久久中文字幕| 在线播放中文字幕| 51一区二区三区| 久久m| 国产欧美精选激情视频| 极品粉嫩少妇视频| 97人人夜夜精品视频| 丝袜无码a片| 亚洲精品一二牛牛| 少妇被玩视频二三区| 亚洲成人贴图| 97色色国产视频| 亚洲,日韩,欧美,成人播放| 日日夜夜青青草母狗| 免费观看国产不卡av| 中出789在线视频| 久久久久成人亚洲国产| 国产特级毛片AAAAAA高潮流水 | 国产精品亚洲美女久久久久| 蜜桃AV天堂| av在线资源| 久久伊人东京热| 日本有码久久| 亚洲国产另类在线中文| 激情文学 国产一二三aV| 五月丁香社区婷婷日韩欧美精品影院 | 五月婷婷六月色| 天天影视亚洲| 少好三P| 96久久久精品| 美女主播色欲91抠b在线播放| 久久人妻办公室视频| 97综合网| 国产suv精品一区| 欧美色视频在线| 亚洲色图日韩丝袜制服一区二区五月在线 | 一区二区激情国产熟女| 呦呦一区| 老色鬼成人精品视频下载大在线观看| 超碰久热| 岛国片国产成人亚洲播放| 国语精品av| 中文字幕诱惑制服人妻丝袜美丝袜美| 美女被艹尤物视频| 在线无码视频| 亚洲精品 欧美精品| 操逼www.| 91色婷婷综合久久中文字幕二区| 口爆综合网| 美女一区二区国产精品| 国产精品4p在线观看| 蜜臀久久久99久久久久 | 男人的天堂午夜av| 日韩av在线精品观看| 中文字幕青青草| 色九九综合AV| 人妻天天爽夜夜爽爽| 色综合久久888| renqi久久久久久久久久久久| 国产精品无码久久久久2028| 欧美懂色综合网| 五月色网| J?P?NESEHD熟女熟妇伦| 欧美激情欧美精品| 国产丝袜视频| 久久毛卡| 又粗又长又爽在线观看| 一本色道综合久久欧美日韩精品| 欧美与日韩97| 丰满搜索结果 -第18页- 久久高清无码 | 婷婷色网| 欧美日韩操逼动图| 亚洲同性aV综合| 天天综合麻豆视频| 亚洲一区操| 日韩黄色小说| 亚洲国产欧美日韩人妻日中文| 日本人妻伦在线中文字幕| 在线观看午夜婷婷久久久久清性观看| AV综合中文字幕干| 成人自拍三级在线观看| 日韩无码AB| 91chinese在线| 久久亚洲欧美中文字幕国语| 蜜臀久久99精品久久久久久成人小说 | 91精品啪在线观看国产城中村| 欧美丝袜中文字幕07在线| 欧美亚性天堂| 美女AV一区二区| 欧美岛国精品在线观看| 大香蕉伊人一区在线观看| 色第一页| 久久影视二区三区行押| 天天做日日做天天欢。| 伊色综合天堂色97| 精品视频久久区| 成人av动漫在线观看| 色天使大香蕉| 久久久久幕乱码| 黄色香蕉视频网站一区| 操逼逼福利视频| 欧美天堂在线| 人人爱人人操人人性| aV中文麻| 国产精品视频白浆免费| 啊啊啊好大好湿| 少妇高潮一区二区三区在线| 亚洲日韩人妻中文字幕一区| 国产精品无码av嫩草| 麻豆黄四叶草网站| 国产精品夜夜| 老熟妇一区二区三区…| 日本熟妇一区二区三区| 中文字幕精品亚洲熟女| 天天干天天操天天拍| 在线v中文字幕一区二区三区| 一区不卡在线观看av| 大香蕉中文| 四虎影视 亚洲无码| 啊啊啊不要啊啊受不了了视频在线| 97超碰jingpin| 丁香激情五月天| 国产一区免费午夜视频| 无遮挡男女激烈动态图| 熟女人妻一区二区三区免费看| 99热在线只有精品| 国产第二页| 久久夜黄色无码A级大片| 婷婷视频网| 天堂资源站| 人人操我人人干| 一牛影视久久久一区二区三区| 91色人| 手机在线A片| 一区二区三区四区姦女| 日韩射精| 99热免费| 九九九九热| 九月丁香| 亚洲男人天堂网站| 强奸乱伦资源| 91爱欧美| 在线播放免费av福利片| 一本久久精品中文字| 日本欧美韩国国产在线| 天天视频黄| 亚洲色人阁| 91中出在线| 六月色色| 久久同城AV| 精品成人亚洲午夜电影| 中文幕97| A 在线网址| 日产成人久久| 免费视频a级毛片免费视频| 精彩久久中文| 亚洲四虎熟女精品| 久操免费电影| 欧美手机在线综合| 丁香五月天啪啪| 美女刺激久久国产欧美| 99热超碰在线| 亚洲无码久久久久久久| 91 亚洲 欧美 日韩 国产 综合| 中文字幕,人妻,日韩| 国产又黄又粗的视频| 女人天堂av在线播放| 超碰78| 中文 人妻 制服| 不卡免费av在线播放| 亚洲图片欧美另类综合免费视频大大香| 亚洲色综合| 青青草视频久久| 色综合91| 精品亚州18| 日韩三级在线观看mp4| 欧美视频激情久久久久久| 青青草色插素人| 91精品国产91久久久久久久久久久久| 搡老女人老熟女91老熟女综合网| 亚洲脚交| 欧美日韩色| 在线日韩精品一区二区三区| 久久产精品一区二区三区电影| 91无码人妻| 日韩在线观看AV| 亚洲欧美另类图片| 久久久久久久久久9| 国产粉嫩蜜臀av一区二区三区 | 亚洲日韩视频二区| 手机在线中文字幕国产 | 两女互慰AV高潮喷水在线观看| 三级日韩一区二区三区| 国产精品制服丝袜清纯唯美| 污啪啪啪视频| 日本不卡二三区| 粉嫩久久久久| 熟女精品日韩一区二区三区| 欧美 亚洲| 最新中文字幕在线亚洲| 91人妻最真实刺激绿帽| 国产免费黄色一级大片| 久久岛国| 青青草国产一区二区三区| 18岁禁 茉莉成人久久| 一区二区三区 丝袜 高跟 美腿| 国产成人欧美一区二区三区的国产| 青女偷拍网| 日韩97精| 国产青视频| 人人考人人摸人人干| 日本激情免费大片| 素人一区二区三区日韩| 亚洲av资源| 亚州欧美在线| 四虎精品永久在线观看| 久欲AV| 欧美人妻一区二区| 密臀在线免费观看| 国产热av| 亚洲熟妇A V黑人| 日本伦乱九九九综合| 欧美性天天| a级免费在线观看| 熟女91网站| 干超碰碰熟女| 日本成人在线不卡一区二区三区 | 91性情| 高清无码在线播放网站| 超碰三级秋霞| KK色在线影院| 97干在线视频| 国产亚洲日本精品在线| 狠插 制服 自拍| 综合久久2017| 91狼人| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 97色爱| 亚欧洲日韩国产精品| 久久久亚洲欧美综合| 五月天激情小说| 人妖欧美一区二区| 免费精品人妻一区二区三| 丁香五月偷拍| 麻豆天美在线喷水AV| 热思思免费视频| 天天综合日韩网| 91老司机视频| 麻豆国产免费影片| 91日产欧美| 激情 欧美 亚洲 小说| 中文字幕艹艹| 免费观看一区| 亚洲.欧美.丝袜.中文.综合| 91劲爆| 欧美十八禁导航成人| 打av高清| 超碰吊日色|