久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

ESP32 USB CDC功能詳解:從原理到無線串口網(wǎng)關(guān)實戰(zhàn)

ESP32 USB CDC功能詳解:從原理到無線串口網(wǎng)關(guān)實戰(zhàn) 1. 項目概述為什么ESP32的USB CDC功能值得你花時間如果你手頭有ESP32-S2、ESP32-S3或者ESP32-C3/C6這些帶原生USB接口的芯片卻還在用傳統(tǒng)的USB轉(zhuǎn)串口芯片比如CP2102、CH340來和電腦通信那可能就有點“大材小用”了。今天要聊的USB CDCCommunication Device Class功能就是讓ESP32直接“變身”為一個虛擬串口設(shè)備省掉外部芯片一根USB線搞定供電、程序上傳和串口調(diào)試。這不僅僅是省了一個元件、幾根線那么簡單它意味著更穩(wěn)定的連接、更高的通信速率輕松上兆波特率以及更簡潔的硬件設(shè)計。對于做數(shù)據(jù)采集、物聯(lián)網(wǎng)網(wǎng)關(guān)或者需要高速日志輸出的項目來說這個功能簡直是“神器”。我折騰過不少ESP32項目從早期的純串口調(diào)試到后來用上CDC體驗提升是立竿見影的特別是調(diào)試那些需要頻繁打印大量傳感器數(shù)據(jù)的應(yīng)用時CDC的穩(wěn)定性優(yōu)勢就出來了。2. 核心原理與硬件選型不是所有ESP32都能玩轉(zhuǎn)CDC2.1 USB CDC到底是什么它和傳統(tǒng)串口有何不同簡單來說USB CDC是USB協(xié)議中定義的一個設(shè)備類別專門用于實現(xiàn)類似串行端口COM口的通信。當ESP32啟用CDC功能并通過USB連接到電腦時電腦操作系統(tǒng)會將其識別為一個新的串行端口比如COM5或/dev/ttyACM0你可以像使用普通串口一樣用Arduino IDE的串口監(jiān)視器、Putty或者任何串口工具與之通信。但它和傳統(tǒng)UART串口有本質(zhì)區(qū)別物理層不同傳統(tǒng)UART使用TX、RX、GND三根線進行異步串行通信。USB CDC則走的是USB協(xié)議使用D、D-差分信號線通信協(xié)議棧復(fù)雜得多。協(xié)議棧與驅(qū)動UART通信幾乎無需驅(qū)動或使用簡單的轉(zhuǎn)接芯片驅(qū)動。USB CDC需要設(shè)備端ESP32實現(xiàn)完整的USB設(shè)備協(xié)議棧并在電腦端安裝對應(yīng)的CDC驅(qū)動程序通常系統(tǒng)自帶或由Arduino IDE提供。性能與功能UART波特率有上限通常幾兆bps且是點對點。USB CDC基于USB總線速度更快全速USB 12Mbps高速USB 480Mbps并且可以與其他USB功能如HID、MSC復(fù)合在一個接口上。在ESP32上實現(xiàn)CDC本質(zhì)上是利用其內(nèi)置的USB外設(shè)控制器運行一個輕量級的USB設(shè)備協(xié)議棧并響應(yīng)主機電腦的CDC類請求虛擬出一個串口通道。2.2 硬件門檻認清你的ESP32型號這是最關(guān)鍵的一步。只有具備原生USB DeviceUSB OTG功能的ESP32系列芯片才能支持作為CDC設(shè)備。最常見的支持型號包括ESP32-S2單核擁有一個USB OTG接口是較早支持CDC的型號。ESP32-S3雙核性能更強USB接口功能更完善支持CDC也支持JTAG調(diào)試是目前的主流選擇。ESP32-C3基于RISC-V的單核芯片也支持USB CDC。ESP32-C6支持Wi-Fi 6和藍牙5.0同樣具備USB功能。重要提示經(jīng)典的ESP32如ESP32-D0WDQ6也就是我們常說的ESP32 DevKitC V4用的那種沒有原生的USB Device功能。它上面的USB口僅用于供電和通過板載的USB轉(zhuǎn)串口芯片如CP2102進行通信。所以如果你用的是這類開發(fā)板本文討論的“USB CDC”功能與你無緣你用的依然是傳統(tǒng)的UART over USB轉(zhuǎn)接芯片。實操心得如何快速確認看開發(fā)板原理圖。如果芯片的USB引腳通常標為USB_D / USB_D- 或 DP / DM直接連接到了Type-C或Micro-USB接口的對應(yīng)數(shù)據(jù)引腳而沒有經(jīng)過任何像CP2102這樣的串口轉(zhuǎn)換芯片那基本就支持。或者更簡單的方法是在Arduino IDE的板卡管理器里選擇對應(yīng)的S2/S3/C3型號如果“上傳方法”選項里出現(xiàn)了“USB CDC”或“Internal USB”之類的選項那就對了。3. 軟件環(huán)境搭建與核心庫解析3.1 Arduino IDE與板卡支持包的安裝安裝Arduino IDE確保使用較新版本的Arduino IDE建議1.8.19以上或2.0以上。舊版本可能對新的ESP32系列支持不完善。添加ESP32板卡支持URL打開Arduino IDE進入“文件” - “首選項”。在“附加開發(fā)板管理器網(wǎng)址”中添加以下URL如果已有其他URL用逗號分隔https://espressif.github.io/arduino-esp32/package_esp32_index.json安裝板卡支持包打開“工具” - “開發(fā)板” - “開發(fā)板管理器”。搜索“esp32”。你應(yīng)該能看到由“Espressif Systems”提供的“esp32”平臺。選擇最新版本進行安裝。安裝過程會下載所有必要的工具鏈和庫包括USB CDC所需的底層支持。3.2 關(guān)鍵庫USB CDC與TinyUSB在Arduino ESP32核心中USB CDC功能的實現(xiàn)主要依賴于兩個部分Arduino核心內(nèi)置的USB CDC類當你選擇了支持USB CDC的開發(fā)板后核心會默認啟用一個Serial對象但這個Serial可能指向的就是USB CDC虛擬串口而不是硬件UART0。具體行為取決于開發(fā)板的定義。底層的TinyUSB棧Espressif的Arduino核心使用開源的TinyUSB庫作為其USB設(shè)備協(xié)議棧的實現(xiàn)。這是一個輕量級、跨平臺的USB設(shè)備協(xié)議棧支持包括CDC在內(nèi)的多種USB設(shè)備類。對于大多數(shù)應(yīng)用你不需要直接調(diào)用TinyUSB的APIArduino核心已經(jīng)做了封裝。注意事項關(guān)于Serial和Serial0這是一個常見的困惑點。在傳統(tǒng)的ESP32無原生USB開發(fā)板上我們通常用Serial.begin(115200)來初始化與電腦通信的UART0連接著板載USB轉(zhuǎn)串口芯片。而在支持USB CDC的開發(fā)板上情況可能變化有些板型定義Board Definition會將Serial對象重定向到USB CDC虛擬串口。這意味著你直接使用Serial.print()輸出就會走到USB CDC。為了兼容性硬件UART0可能被映射到另一個對象比如Serial0。最可靠的做法是在代碼開頭通過#define或條件編譯來明確使用哪個串口或者查閱你所選具體開發(fā)板的文檔。例如在ESP32-S3-DevKitC-1開發(fā)板上常見的做法是// 使用USB CDC作為主調(diào)試串口 #define SERIAL_DEBUG Serial void setup() { SERIAL_DEBUG.begin(115200); // 初始化USB CDC串口 delay(1000); // 給電腦一點時間識別并打開端口 SERIAL_DEBUG.println(Hello from ESP32-S3 via USB CDC!); } void loop() { // 你的代碼 }4. 基礎(chǔ)功能實現(xiàn)與代碼詳解4.1 第一個USB CDC程序點亮LED并回傳信息讓我們從一個最基礎(chǔ)的例子開始實現(xiàn)通過USB CDC接收指令控制板載LED并回傳狀態(tài)。/* * ESP32-S3 USB CDC 基礎(chǔ)控制示例 * 功能通過串口監(jiān)視器發(fā)送 1 開燈發(fā)送 0 關(guān)燈發(fā)送 ? 查詢狀態(tài)。 */ #define LED_BUILTIN 48 // ESP32-S3-DevKitC-1的板載LED引腳根據(jù)你的板子修改 #define DEBUG_SERIAL Serial // 明確指定使用USB CDC虛擬串口 bool ledState false; void setup() { pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, LOW); DEBUG_SERIAL.begin(115200); // 初始化USB CDC波特率參數(shù)在CDC模式下有時被忽略但建議保留 // 等待USB連接建立。對于CDC電腦需要時間安裝驅(qū)動/創(chuàng)建端口。 while (!DEBUG_SERIAL) { delay(10); } DEBUG_SERIAL.println(\n\nESP32-S3 USB CDC Demo Ready.); DEBUG_SERIAL.println(Send 1 to turn LED ON); DEBUG_SERIAL.println(Send 0 to turn LED OFF); DEBUG_SERIAL.println(Send ? to get current status); } void loop() { if (DEBUG_SERIAL.available() 0) { char incomingByte DEBUG_SERIAL.read(); switch (incomingByte) { case 1: digitalWrite(LED_BUILTIN, HIGH); ledState true; DEBUG_SERIAL.println(LED turned ON.); break; case 0: digitalWrite(LED_BUILTIN, LOW); ledState false; DEBUG_SERIAL.println(LED turned OFF.); break; case ?: DEBUG_SERIAL.print(Current LED state: ); DEBUG_SERIAL.println(ledState ? ON : OFF); break; default: DEBUG_SERIAL.print(Unknown command: ); DEBUG_SERIAL.println(incomingByte); break; } } // 可以在這里添加其他非阻塞任務(wù) }代碼解析與注意事項while (!DEBUG_SERIAL) { delay(10); }這行代碼在USB CDC場景下至關(guān)重要。它等待USB連接被主機電腦正確枚舉并準備好。如果沒有這個等待程序可能在上電后立即開始發(fā)送數(shù)據(jù)而此時電腦端的端口還未就緒導(dǎo)致前幾條打印信息丟失。DEBUG_SERIAL.begin(115200)對于USB CDC實際的通信速率是USB總線速率這個波特率參數(shù)通常被忽略但設(shè)置一個值是一個好習(xí)慣保持了與傳統(tǒng)串口編程的一致性。引腳定義務(wù)必根據(jù)你的實際開發(fā)板型號查找正確的板載LED引腳。ESP32-S3-DevKitC-1通常是GPIO48。4.2 上傳代碼的特殊步驟無需手動復(fù)位使用USB CDC功能上傳代碼與傳統(tǒng)的UART上傳有一個顯著區(qū)別你通常不需要手動按板子上的“BOOT”和“RST”按鈕來進入下載模式。在Arduino IDE的“工具”菜單中選擇正確的開發(fā)板例如“ESP32S3 Dev Module”。選擇正確的USB CDC支持選項在“USB CDC On Boot”或類似選項中選擇“Enabled”。這確保芯片一啟動就初始化USB CDC功能便于IDE自動連接。選擇上傳方法選擇“USB CDC”或“Internal USB”。這告訴IDE通過USB直接與芯片的ROM引導(dǎo)程序通信進行上傳。選擇正確的端口將開發(fā)板通過USB線連接到電腦。稍等片刻你應(yīng)該會在端口列表中看到一個以芯片命名的端口如“ESP32-S3 USB Device (COMxx)”或“/dev/ttyACM0”選擇它。點擊上傳。IDE會先嘗試與開發(fā)板通信使其自動進入下載模式。你可能會在底部信息窗口看到“Connecting...”的提示然后開始編譯和上傳。整個過程應(yīng)該是無縫的。注意如果遇到上傳失敗提示“Failed to connect to ESP32: Timed out waiting for packet header”可以嘗試以下步驟確保USB線是數(shù)據(jù)線而不僅僅是充電線。按住開發(fā)板上的“BOOT”按鈕不放然后短暫按一下“RST”按鈕再釋放“BOOT”按鈕強制進入下載模式然后立即點擊上傳。檢查電腦設(shè)備管理器中是否有未知設(shè)備或感嘆號設(shè)備可能需要手動安裝驅(qū)動Arduino IDE安裝目錄下的drivers文件夾里通常有。5. 高級應(yīng)用與性能優(yōu)化5.1 復(fù)合設(shè)備CDC MSCU盤模式或 CDC HIDTinyUSB棧的強大之處在于可以輕松實現(xiàn)復(fù)合設(shè)備。例如你可以讓ESP32同時表現(xiàn)為一個虛擬串口和一個U盤Mass Storage Class, MSC或者一個虛擬串口和一個鍵盤HID。實現(xiàn)CDCMSC復(fù)合設(shè)備數(shù)據(jù)記錄器示例這個場景很實用ESP32將傳感器數(shù)據(jù)記錄到內(nèi)部的SPIFFS文件系統(tǒng)中同時通過USB CDC提供實時調(diào)試接口。當連接到電腦時它還能作為一個U盤讓用戶直接拷貝走數(shù)據(jù)文件。這通常需要修改開發(fā)板的配置文件boards.txt或自定義的platformio.ini啟用MSC支持并編寫相應(yīng)的文件系統(tǒng)操作和USB描述符配置代碼。在Arduino ESP32核心中可以通過定義宏來實現(xiàn)。由于涉及較深的配置這里給出概念步驟啟用MSC支持在代碼開頭或編譯選項中定義宏如#define CONFIG_TINYUSB_MSC_ENABLED 1。初始化文件系統(tǒng)使用SPIFFS或LittleFS庫初始化閃存文件系統(tǒng)。注冊MSC回調(diào)函數(shù)實現(xiàn)磁盤讀寫、容量查詢等回調(diào)函數(shù)并將其注冊到TinyUSB的MSC驅(qū)動中。USB描述符需要提供一個復(fù)合設(shè)備的USB描述符同時包含CDC和MSC的接口描述。實操心得創(chuàng)建復(fù)合設(shè)備對初學(xué)者有一定挑戰(zhàn)建議先從Arduino核心庫或TinyUSB的官方示例中尋找現(xiàn)成的復(fù)合設(shè)備例程在其基礎(chǔ)上修改。配置錯誤的描述符會導(dǎo)致電腦無法識別設(shè)備。5.2 提升CDC通信的可靠性與速度緩沖區(qū)管理增大發(fā)送緩沖區(qū)默認的串口發(fā)送緩沖區(qū)可能較小。對于高速數(shù)據(jù)流可以嘗試在begin()之前使用Serial.setTxBufferSize(size)來增大緩沖區(qū)例如2048字節(jié)防止數(shù)據(jù)丟失。及時讀取接收緩沖區(qū)在loop()中頻繁檢查Serial.available()并處理數(shù)據(jù)避免接收緩沖區(qū)溢出。對于命令解析建議使用狀態(tài)機或定長協(xié)議而不是依賴delay()。流控制Flow Control雖然虛擬串口不一定支持硬件流控RTS/CTS但可以在應(yīng)用層實現(xiàn)軟件流控制如XON/XOFF協(xié)議或使用自定義的ACK/NACK協(xié)議來確保大數(shù)據(jù)塊傳輸?shù)目煽啃?。例如發(fā)送方在發(fā)送一段數(shù)據(jù)后等待接收方的確認字符超時未收到則重發(fā)。非阻塞式設(shè)計與任務(wù)分離避免在loop()中使用長時間的delay()。對于需要定時發(fā)送數(shù)據(jù)如每秒發(fā)送一次傳感器讀數(shù)的場景使用millis()進行非阻塞定時。如果程序復(fù)雜考慮使用FreeRTOS任務(wù)將USB CDC的數(shù)據(jù)收發(fā)和處理放在一個獨立的任務(wù)中與其他傳感器采集任務(wù)分離提高系統(tǒng)響應(yīng)性。// 非阻塞定時發(fā)送示例 unsigned long previousMillis 0; const long interval 1000; // 間隔1秒 void loop() { unsigned long currentMillis millis(); // 處理接收到的命令非阻塞 handleSerialCommand(); // 定時發(fā)送數(shù)據(jù)非阻塞 if (currentMillis - previousMillis interval) { previousMillis currentMillis; sendSensorData(); } // 其他任務(wù)... }6. 實戰(zhàn)項目基于USB CDC的無線串口透傳網(wǎng)關(guān)讓我們結(jié)合一個實際項目將ESP32的USB CDC和Wi-Fi功能結(jié)合起來制作一個無線串口透傳網(wǎng)關(guān)。這個設(shè)備一端通過USB CDC連接電腦作為一個虛擬COM口另一端通過Wi-Fi連接到一個TCP服務(wù)器或者另一個串口設(shè)備實現(xiàn)雙向數(shù)據(jù)透傳。這在工業(yè)遠程調(diào)試、無人機數(shù)傳等場景非常有用。6.1 系統(tǒng)架構(gòu)與設(shè)計思路電腦 (串口工具) --[USB CDC]-- ESP32 --[Wi-Fi TCP]-- 遠程服務(wù)器/設(shè)備核心思路ESP32扮演一個橋接角色。它從USB CDC虛擬串口讀取數(shù)據(jù)通過Wi-Fi TCP客戶端發(fā)送到遠程服務(wù)器同時從TCP連接接收數(shù)據(jù)原樣寫回USB CDC虛擬串口。這樣電腦上的串口工具就像直接連接到了遠程的TCP服務(wù)一樣。6.2 核心代碼實現(xiàn)#include WiFi.h #include WiFiClient.h #define DEBUG_SERIAL Serial // USB CDC #define NETWORK_SSID 你的Wi-Fi名稱 #define NETWORK_PASS 你的Wi-Fi密碼 #define TCP_SERVER_IP 192.168.1.100 // 遠程TCP服務(wù)器IP #define TCP_SERVER_PORT 8080 // 遠程TCP服務(wù)器端口 WiFiClient tcpClient; bool wifiConnected false; bool tcpConnected false; void setup() { DEBUG_SERIAL.begin(115200); while (!DEBUG_SERIAL) { delay(10); } DEBUG_SERIAL.println(\n ESP32 Wireless Serial Gateway ); // 連接Wi-Fi connectToWiFi(); // 連接TCP服務(wù)器 connectToTCPServer(); } void loop() { // 1. 檢查并維持Wi-Fi連接 if (WiFi.status() ! WL_CONNECTED) { wifiConnected false; tcpConnected false; DEBUG_SERIAL.println(Wi-Fi disconnected. Reconnecting...); connectToWiFi(); } // 2. 檢查并維持TCP連接 if (wifiConnected !tcpConnected) { connectToTCPServer(); } if (wifiConnected tcpConnected !tcpClient.connected()) { DEBUG_SERIAL.println(TCP connection lost.); tcpConnected false; tcpClient.stop(); delay(1000); connectToTCPServer(); } // 3. 數(shù)據(jù)透傳USB CDC - TCP if (tcpConnected DEBUG_SERIAL.available() 0) { size_t len DEBUG_SERIAL.available(); uint8_t buf[len]; DEBUG_SERIAL.readBytes(buf, len); tcpClient.write(buf, len); // 發(fā)送到網(wǎng)絡(luò) // DEBUG_SERIAL.print([Sent] ); // 可選本地回顯已發(fā)送數(shù)據(jù)調(diào)試用 } // 4. 數(shù)據(jù)透傳TCP - USB CDC if (tcpConnected tcpClient.available() 0) { size_t len tcpClient.available(); uint8_t buf[len]; tcpClient.readBytes(buf, len); DEBUG_SERIAL.write(buf, len); // 發(fā)送到USB CDC // DEBUG_SERIAL.print([Rcvd] ); // 可選本地回顯已接收數(shù)據(jù)調(diào)試用 } // 短暫延時避免過度占用CPU delay(1); } void connectToWiFi() { DEBUG_SERIAL.printf(Connecting to %s, NETWORK_SSID); WiFi.begin(NETWORK_SSID, NETWORK_PASS); int attempts 0; while (WiFi.status() ! WL_CONNECTED attempts 20) { delay(500); DEBUG_SERIAL.print(.); attempts; } DEBUG_SERIAL.println(); if (WiFi.status() WL_CONNECTED) { wifiConnected true; DEBUG_SERIAL.print(Wi-Fi connected. IP: ); DEBUG_SERIAL.println(WiFi.localIP()); } else { DEBUG_SERIAL.println(Wi-Fi connection FAILED!); } } void connectToTCPServer() { if (!wifiConnected) return; DEBUG_SERIAL.printf(Connecting to TCP server %s:%d..., TCP_SERVER_IP, TCP_SERVER_PORT); if (tcpClient.connect(TCP_SERVER_IP, TCP_SERVER_PORT)) { tcpConnected true; DEBUG_SERIAL.println(SUCCESS); DEBUG_SERIAL.println(Gateway is now active. Data will be forwarded between USB CDC and TCP.); } else { DEBUG_SERIAL.println(FAILED); tcpConnected false; } }6.3 項目配置與使用流程硬件ESP32-S3開發(fā)板USB數(shù)據(jù)線。軟件準備在電腦上安裝一個TCP服務(wù)器模擬工具如NetAssist、Hercules監(jiān)聽8080端口。在Arduino IDE中打開上述代碼修改NETWORK_SSID、NETWORK_PASS、TCP_SERVER_IP為你實際的環(huán)境參數(shù)。操作步驟將代碼上傳到ESP32。打開Arduino IDE的串口監(jiān)視器你將看到ESP32連接Wi-Fi和TCP服務(wù)器的過程。在TCP服務(wù)器工具中你應(yīng)該能看到ESP32作為客戶端連接上來。測試透傳在串口監(jiān)視器中發(fā)送一段文字如Hello TCP Server在TCP服務(wù)器端應(yīng)該能接收到。在TCP服務(wù)器端發(fā)送一段文字如Hello USB CDC在串口監(jiān)視器中應(yīng)該能顯示出來。注意事項與優(yōu)化點緩沖區(qū)與性能這個示例使用了簡單的available()和readBytes()對于低速數(shù)據(jù)沒問題。如果數(shù)據(jù)流量大建議使用更大的環(huán)形緩沖區(qū)并考慮使用FreeRTOS任務(wù)分別處理收發(fā)。錯誤處理與重連代碼中包含了基本的斷線重連邏輯但在實際工業(yè)環(huán)境中可能需要更健壯的機制比如指數(shù)退避重連、看門狗等。安全代碼中Wi-Fi密碼是明文實際產(chǎn)品中應(yīng)考慮使用WiFiManager庫讓用戶配網(wǎng)或使用更安全的存儲方式。功能擴展可以很容易地擴展為同時支持多個TCP連接、支持UDP協(xié)議、增加AT指令集配置通過USB CDC配置目標服務(wù)器IP和端口等功能。7. 常見問題與深度排查指南即使按照步驟操作你也可能會遇到一些坑。下面是我在多次項目中總結(jié)出來的常見問題及解決方法。7.1 電腦無法識別CDC串口端口不出現(xiàn)這是最常見的問題。癥狀開發(fā)板已連接設(shè)備管理器Windows或ls /dev/tty*Linux/Mac中沒有出現(xiàn)預(yù)期的COM口或ttyACM設(shè)備。排查步驟檢查硬件與連線確認使用的是數(shù)據(jù)USB線并且連接到了開發(fā)板上正確的USB口有些板子有多個USB口僅一個支持Device模式。檢查板型與配置在Arduino IDE中務(wù)必選擇正確的、支持USB CDC的開發(fā)板型號如ESP32-S3 Dev Module并確認“USB CDC On Boot”選項已啟用。檢查驅(qū)動程序Windows打開設(shè)備管理器查看“通用串行總線控制器”或“其他設(shè)備”下是否有帶黃色感嘆號的“ESP32-S3”或“USB串行設(shè)備”等未知設(shè)備。如果有需要手動安裝驅(qū)動。驅(qū)動通常位于Arduino IDE安裝目錄的drivers文件夾下例如...\Arduino\hardware\espressif\esp32\tools\dist中的esptool驅(qū)動或者Espressif官方提供的CDC驅(qū)動。也可以嘗試讓W(xué)indows自動在線搜索驅(qū)動。Linux通常內(nèi)核自帶cdc_acm驅(qū)動會自動識別。如果沒有可能需要將當前用戶加入dialout組以獲得端口訪問權(quán)限sudo usermod -a -G dialout $USER然后注銷重新登錄。macOS通常即插即用。如果不行嘗試重啟電腦或使用ls /dev/cu.*查看。檢查代碼確保在setup()函數(shù)中有Serial.begin()和等待連接的循環(huán)while(!Serial);。對于某些板子如果“USB CDC On Boot”未啟用則需要按一下復(fù)位鍵才能在啟動后激活CDC。嘗試不同的USB口有些電腦的USB口尤其是前置或經(jīng)過集線器的供電或數(shù)據(jù)能力不足換到主板后置的原生USB口試試。7.2 上傳代碼失敗癥狀點擊上傳后Arduino IDE卡在“Connecting...”或提示超時錯誤。排查步驟確認上傳方法在“工具”-“上傳方法”中必須選擇“USB CDC”或“Internal USB”而不是“UART”或“Custom”。手動進入下載模式這是最后的殺手锏。對于ESP32-S3按住開發(fā)板上的BOOT或IO0按鈕不放。然后短暫地按一下RST復(fù)位按鈕。松開RST按鈕此時繼續(xù)按住BOOT按鈕。在Arduino IDE中點擊上傳。當你看到日志開始輸出如“Connecting...”時松開BOOT按鈕。芯片應(yīng)能進入下載模式并開始上傳。關(guān)閉占用端口的程序確保串口監(jiān)視器、其他串口工具或IDE已經(jīng)關(guān)閉它們會獨占端口導(dǎo)致上傳失敗。檢查端口選擇確保選擇的端口確實是ESP32的CDC端口而不是其他設(shè)備的串口。7.3 串口監(jiān)視器無輸出或輸出亂碼癥狀端口連接成功但打開串口監(jiān)視器后沒有數(shù)據(jù)或者顯示亂碼。排查步驟波特率匹配雖然USB CDC不依賴波特率但Arduino串口監(jiān)視器仍需設(shè)置一個波特率。確保監(jiān)視器的波特率與代碼中Serial.begin()設(shè)置的波特率一致通常是115200。檢查代碼輸出確認代碼中確實有Serial.print語句在執(zhí)行。可以在setup()里最開始加一句Serial.println(Setup Start);來測試。流控制設(shè)置在串口監(jiān)視器中將“流控制”選項設(shè)置為“無”None。等待時間如前所述在setup()開始時加一個短暫的delay(2000)或使用while(!Serial)等待確保電腦端驅(qū)動完全加載后再開始打印。亂碼問題如果輸出是持續(xù)不斷的亂碼很可能是波特率嚴重不匹配雖然概率低或硬件問題。如果只是偶爾出現(xiàn)亂碼可能是數(shù)據(jù)沖突或緩沖區(qū)問題檢查代碼中是否有多個任務(wù)同時訪問Serial對象需加信號量保護。7.4 USB CDC與硬件UART的沖突與共用有時你需要同時使用USB CDC和硬件UART例如連接一個GPS模塊到UART1。解決方案明確對象使用Serial代表USB CDC使用Serial1、Serial2等代表硬件UART。引腳分配ESP32的硬件UART可以映射到很多GPIO引腳。在初始化時指定TX和RX引腳。#define UART1_TX_PIN 17 #define UART1_RX_PIN 18 HardwareSerial SerialGPS(1); // 使用UART1 void setup() { Serial.begin(115200); // USB CDC SerialGPS.begin(9600, SERIAL_8N1, UART1_RX_PIN, UART1_TX_PIN); // 硬件UART1 }資源管理兩個串口是完全獨立的可以同時收發(fā)數(shù)據(jù)。在loop()中分別檢查Serial.available()和SerialGPS.available()即可。7.5 功耗考慮當ESP32通過USB連接時由USB總線供電功耗不是大問題。但在電池供電且需要USB CDC通信的場景下需要注意USB模塊本身會消耗一定電流毫安級。在不需要通信時可以考慮通過軟件禁用USB CDC以降低功耗但這通常比較復(fù)雜需要深度配置TinyUSB并可能涉及睡眠模式。對于大多數(shù)應(yīng)用如果連接了USB線通常就不必過于擔心功耗。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91亚洲影视| 九九热免费视频| 九九国产| 综合色图亚洲欧美| 97最新在线播放视频| 亚洲熟女诱惑| 国内97干免费看| 欧美性爱五月天| 国产一级特黄大片处女| 多毛小伙内射老太婆| 欧美综合自拍亚洲综合图| 欧美日韩国产传媒在线精品| 自拍大香蕉乱插| 人人妻人人爽一区二区三区| 欧美综合亚洲| 啊啊啊好舒服视频在线观看| 毛片17S| 吻戏激情性巴克| 亚州操逼图| AV天堂国产| 久久超碰日韩精品| 国产精品一区在线播放| 亚洲熟女偷拍在线观看| 欧美白嫩在线放| 操人妻丝袜高跟| 亚洲国产激情国产av| 欧美成人AⅤ大片在线观看| 欧美 亚洲 在线| 欧美色图电影| 欧美性爱一区二区三区| 18禁久久| 亚洲清纯综合| 亚洲牲交| 777超碰| 久9爱精品| 欧美96交| 色亚洲欧美| 国产精品电| 青青青艹在线视频| 大香蕉青青9| 人妻酒店出差被中出免费在线播放| 小泽玛利亚一二三| 色性荡荡荡荡视频| 青青草视频久久久久| 国精品一区二区三| 国产精品天干天干综合网麻豆| 美女露胸露屁股| 亚洲精品天天影视综合网 | 欧美精品一区二区少妇免费A片| 91肉丝| 黄片www视频免费| a'v在线资源| a亚洲欧美色欲| 国产在线视频午夜精华在| 天美91| 97爱爱爱| 琪琪精品免费一区二区三区| 色综合久| 欧日韩不卡视.频| 色av中文字| 国产福利夜| 欧美暴力猛交| 无码人妻精品一区二区三区99不卡| 人妻献身系列第54部| 岛国免费黄色网址| 激情五月天综合网| 中文在线久久字幕| q2午夜理论片夜色av| 久久久亚洲熟妇资源| 久久久久夜夜夜夜| 欧美,日韩综合久久| 亚洲无线码一区国产欧美国| 91久热这里只有精品| 欧美日日夜夜| 日天天九九天堂666| 欧美激情1区| 亚洲av性爱电影| www.伪伪| 东京热激情视频一二三区| 天天综合网久久ww| 欧美爱三级日韩久久| 日本一区二区成人在线| 区一在线观看| 91高清欧美| 9色国产精品一区粉嫩| 国产操逼视频在线观看| 伊人色综合网| 91劲爆| 好色综合| 3p国产色噜噜一区| 日韩在线97| 久草在线| 思思热在线| 四虎AV影视国产精品亚洲精品| 中文字幕一二三av| 欧美午夜视频免费观看| 亚洲AO在线| 国产精品大屁股999| 17c嫩草51久久91嫩草| 亚洲欧美日韩夜夜| 久草精品视频| 一区二区三区黄片免费观看| 丝袜综合| 精品九九九| 99视频在线| 呻吟 欧美 日本 中出| 日韩综合无码色欲vv| 国产超碰在线| 久久午夜色播影院免费高清| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 亚洲成人妻日韩在线| 亚洲色图一区二区三区| 亚洲官网在线| 黑人娇小av在线播放| 婷婷伊人网| 老熟乱一区二区三区四区| 国产日韩欧美亚洲精品95| 亚洲国产精品乱码在线观看| 成人小说另类在线| 日日AV加勒比| 中文字幕日韩专区精品系列| 亚洲 另类 丝袜 自拍 动漫| 亚洲91在线播放影院| 国产精品青青草| 亚洲小说视频| 欧美熟爽综合| 污污汅18禁网站在线永久免费观看| 手机不卡视频不卡在线一二三区| 成人国产视频在线观看| 91久久午夜无码鲁丝片久久人妻| 草草网站影院白丝内射| 色综合20p| 精品国产91av一区二区三区| 91在线国产后入风骚翘臀美女素人| 乱伦AVxx| 疯操AV| 91久久久久久久久久久| 欧美成人性爱视频在线播放| yazhousetuoumei| 秋霞成人一级在线观看| 男人精品天堂一区| 美女露胸露屁股| 中文字幕高清精品一区| 日本ZZ高免费A级视频| 婷婷五月天成人| 操逼日韩无码| 超碰99在线| 久久欧美1卡2卡3| 岛国在线免费视频| 麻豆一区二区三区在线看 | 99re视频在线播放青草| 久久最新视频免费观看| 日韩av影片在线观看| 日韩精品国模| 9999伦理视频| 亚洲av乱伦色图网站| 国产伦精品| 欧美午夜色妇色鬼| 粉嫩绯色AV一区二区在线| 97精品一区二区视频在线观看| 青青操青娱乐| 99久久精品无码一区二区| 欧洲亚洲人妻无码高清久久三区四区| 五十路熟女工口| 操逼www.| yw尤物av无码点击进入麻豆| 蜜臀99久久精品| 国色天香av| 国产一区二区a毛片| 91性网| 亚洲熟女一区| 伊人影院中文字幕| 亚洲精美粉嫩嫩泬在线观看 | 色悠久久久av| 91丝袜在线观看视频在线观看| 国产女同视频在线播放| 不卡日本一区二区| 91亚.色| 亚洲中文人妻色| 亚洲免费人妻在| 欧美亚洲小说| 中文熟女五十乱码在线| 裸体1区| 91老司机在线视频免费观看 | 国产第二页| 蜜桃视频精品一区二区| 尤物国产一区在线观看| 91Chinese在线| 先锋色眉乱伦资源| a片久久久久久久久久久久| 熟妇高潮二区三区| 欧美韩日精品资源| 亚洲熟久久| 蜜臀AV成人精品蜜臀AV久久| 在线综合 亚洲 欧美中文字幕 | 亚洲色入欧美| 嗯嗯,好大,好爽,好骚 | WWW啪啪的com| 亚洲 无码 偷拍| 欧美日韩国产成人高清| 九九九九日本| 懂色AV蜜臀无码精品APP| 日韩免费高清大片在线| 91色色网站| 亚洲国产综合图区中文字幕| 激情综合色| 天天色综亚洲91污| 特级毛片特黄久久免费看 | 99欧美| 留下AⅤ黄色片| 探花在线免费观看视频国产一区| 91精品久久久久五月天精品| www.久久最新地址| a级理论午夜日本| 午夜啪啪片| 岛国色情视频在线观看| 乱伦日本色图AⅤ| 日本精品无码三级网站| 18禁的网站在线| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 97精品国产97久久久久久户外免费| 日本国产成人亚洲精品无码| 九九99久久| 五月综合色| 激情网五月天| 亚洲日韩AV视色| 口爆综合网| 国产精品老熟女一区二区| 人人天天欧洲| 午夜天堂网| 青娱乐蜜桃臀AV色婷| www.男人天堂| 久久久久久久久久久久色网| 91久久久久久久久久久| 久久爽爽精品| 乱人乱色一区二区三区免费 | 五月婷婷丁香六月| 嗯嗯啊啊好疼| 激情内射| 成人国产视频在线观看| 亚洲h片在线免费观看| 中文字幕一区二区韩| 图片区小说区| 久操在97| 久热伊人| 一级毛片久久久久久久女人18| 国产亚洲精品美女久久久m| 久久婷婷精品| 爱爱久久| 亚洲熟女人妻中文字幕一区二区| 国产精品久久久久无码Av网曝门| 成人午夜小视频手机在线看| 日日橹狠狠爱欧美超碰| 天天干人妻视频| 亚洲全色网| 日韩久久.一级黄色片| 97香蕉碰碰人妻国产欧美| 伊人久久青青草| 天天干人妻| 色97干| 欧美黄色大片在线观看| 亚洲,欧美,春色,另类| 国产熟女精品区| 熟女人妻一区二区三区| 欧美一级黄片免费播放| 精品国产99| 亚洲深夜福利| 日韩在线观看字幕精品| 无码人妻丰满熟妇奶水区毛片| 黑人干亚洲| 伊人天天久久动态图| 先锋色眉乱伦资源| 日韩视频小说在线观看| 久久无码一区二区二三区性色| 一级性爱aaaa| julia ann久久| 乱伦熟女专区| 麻豆天美久久91| 蜜臀网址在线| 亚洲综合精品国产一区| 久久视频少妇美女| 国产精品毛片?v一区二区三区| 99综合视频一体| 青青草久草AV| 国产精品一二三在线看| 国产精品密臀网在线观看| 亚洲全色网| 99久久9| 人人九九精| 美女一区二区国产精品| 99精品高潮| 国产午夜福利电影免费在线观看 | 高颜值美女口爆高潮浪叫| 亚洲精品人妻在线| 超碰这里有精品| 日本操大逼| 青青草啪啪网| 天天日天天搞天天干| 99自拍B亚洲| 日本天天干天天操一区| 95人妻爽爽人人做人人澡| 日本亚欧爱爱| 男人夜色天堂ss| 久草新在线| 俺去久久| 99老司机精品视频在线观看| 免费成人在线熟妇网| 亚洲国产成人精品999| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 九月丁香综合网| 熟女精品一区二区在线观看| 日本色色色视频| 91精产一区二区三区| 超碰成人公开| 一本色道久久综合狠狠操| 夜色AV无码手机在线影院| 操少妞在线视频| 黄色毛片A片| 亚洲国产亚洲天堂| 中文字幕在线观看AV| 免费视频在线一区二区不卡| 精品美女少妇一区二区三区| 精品黑人一区二区| 亚洲综合电影| 青青草手机在线免费观看| 自拍偷拍 高清无码| 国产后入清纯| 色婷婷激情| 久久国产成人精品国产成人亚洲 | 欧洲性爱无码区| 69人妻精品丰满熟女区| 欧美国产日韩高清在线| 伊人热综合| 黄色片G G G| 婷婷色在线| 色欲久久久久综合网| 嗯嗯,好大,好爽,好骚| 人人射人人操人人摸| 97伊人超碰| 欧亚乱色熟一区二区三四区| 亚洲日韩美国人妻| 九九热三级片| 舔人妻中文免费视频| 91啪9色| 免费亚洲黄色视频在线观看| 久久久久夜夜夜夜| 免费超碰97久久| 91蜜臀熟女| 黑人操一区二区| 人妻色偷色噜| 日本幼女18+| 天天澡天天爽日日av| 亚洲精品无码少妇久久| 日操粉逼逼| 日本国产亚洲一区在线观看| 91欧美经典| 九一精品牛牛一区二区| 台湾佬激情综合| 色小视频蜜乳| 3p国产欧美99热| 黄色操人| 中文字幕日韩专区精品系列| 91国产操逼视频| 欧美激情精品久久久久久| 在线观看视频91| 97国产色综合| 九九热免费视频| 日韩欧美字幕亚洲一区二区 | 美女主播色欲91抠b在线播放| 五月激情综合网| 综合操逼| 一区操逼日比视频| 日本黄色大片一级视频免费麻豆| 国产高清自拍视频| 亚洲欧洲激情卡通另类文学四射小说网站 | 午夜精品久久久久| 久久嫩草国产成人一区| 欧美日韩国产中文超碰| 99热超碰| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒| 国产成人精品无码久久| 色黄污美女啪啪啪免费网站| 亚洲图片激情综合另类| 色操逼网| 自怕偷自怕亚洲精品| A 天堂| 日本一道在线播放高清| 强被迫伦姧在线观看无码网站| 一二三区精品视频| 大香蕉中文| 精品人妻av区天天看片| 天天射夜夜操| 白丝被操91| 国产福利视频精品视频| 八戒午夜福利理论片| 精品国产91内射久久| 欧美成年人性爱视频免费观看| 欲香欲色| 激情抓乳插进去啪啪啪日韩| 亚洲色图日韩精品| 99热在线播放| 夜夜爽妓女| 久久人爽| 玖玖综合视频| 久久久久久久97| 操国产逼| 日韩亚洲精品一区二区| 亚洲经典啪啪| 校园春色之综合网| 美骚妇av高清在线| 超碰视97中文| 久久久久99999| 老司机福利青青草| 手机看av网站在线看| 日本大片日本一区二区免费高清 | 伊人五月天婷婷| ..日韩av毛片精品久久久| 综合久久欧美| 日韩伦理久 久久 清纯| av72网| 久久久久久久久久久久色网| 伊人一区二区在线播放| 五月丁香综合啪啪| 久久25| 色综合20p| 国产综合久| 搡老熟女免费视频| 五月丁香社区婷婷日韩欧美精品影院 | 国产网红精品| 天天摸,夜夜摸| 殴洲老熟女| 秘书高跟黑色丝袜国产91在线| 97免费在线观看| 日本免费人成视频播放120秒| 五月丁香色色网| 97超碰热线| 精品人妻一区二区三区四区| 伊人精品久久网站| 好湿好紧好爽 视频| 97热视频在线观看| 无码人妻精品一区二区三区99不卡| 一级久久久久久久久久久 | 人妻中文字幕精品无码| 色婷婷五月天| 后入福利| 波多野结衣一级视频| 九九在线视频| 蜜桃AV天堂| 久思思热视频在线观看| 99热亚洲天堂| 九九九九亚洲| 中文字幕精品区先锋资源| 大香蕉在线86| 91亚洲欧美| 天美麻花大全视频| 另类视频在线| 国产一区二区三三视频| 久9久| 欧美人妻制服| 五月天色图| 国产99999久久精品| se01国产在线视频| 欧美色66| 日韩性爱视频在线免费观看| 麻豆人妻少妇在线免费观看| 强奸乱伦AV网址| 91AV老熟女视频| 超碰91在线| 久久久久成人蜜桃精品| 天天做天天爱| 久久a久久| 九九九九九九视频免费| 偷窥自拍亚洲色图| 国产午夜在线观看| 国产一区二区三区不卡手机在线| 国产无码久久高清| 欧美性后入| 蜜乳AV免费观看| 国产人伦精品一区二区三区| 国产9 9在线 | 亚洲| 亚洲男人天堂网久久| 欧美亚洲天堂| 欧美综合加勒比在线| 亚洲欧洲自拍图片专区满春格| 色综合加勒比四四季| 美女熟妇色| 成人熟女区| 久久美女国产| 人人妻人人爽人人精品| 久久大香蕉手机高清| 在线观看中文字幕| 欧美日韩一干二干| 熟女人妻一区二区三区| 美女久久久久久久久久久| 久久久久成人蜜桃精品| 国产精品视频自拍在线| 99热18这里只有精品| 亚洲国产欧美中文永久| 久久系列| 精品97久久综合| 亚洲图片欧洲图片aⅴ| 伊人性在线视频| 91neishe| 在线观看中文av字幕| 欧美色图欧美| 女生自91网站| 99成人| 99亚洲精品| 操老熟女AV| 青青草日本无码| 人妻啪| 青青草公开在线免费不卡视频| 久久精品视频久久久| 日本三级A片网站com| 久久有码视频| 人人澡综合涩| 伊人成人中文字幕久久网| 国产又色又粗又黄又爽| 四虎AV在线播放| 亚洲宗合电影| 久久久人体| 亚洲高清无码在线桃色| 色姑娘综合网| 999国产精品999久久久久久| 美女91在线观看| 五月综合色| 国产精品久久久久中文字幕| 久久少妇| 先锋女优在线观看视频| 久艹99| 久久伊人网视频一区二区三区 | 性色高清..……| 少妇与黑人高潮在线| 国内自拍 日韩激情 99| 国产精品爱欲| 亚洲国产综合图区中文字幕| 夜夜嗨一区| 97资源免费视频| 国产精品久久久视频| 久久99网站| 伊人激情五月天一区二区| 亚洲阿v天堂在线| 91久久婷婷| 97久久国产亚洲精品超碰热| 精品久久久久久久久久久久 | 97超碰人人模人人拍人人| 日韩内| 黑人粗大V S日韩女优视频| 国产婷婷一区| 人妻天天爽夜夜爽精品2| 午夜免费视频1000| 色情五月婷婷| 中文字幕成人| 大香蕉九九| 亚洲色诱惑| 国产一级黄色片在线观看| 丰满人妻一区二区三区四区| 岛国1区2区3区在线观看| 97亚洲精品| 亚洲毛片基地专区| 欲香欲色| 精品无码一区二区三区色欲| 26uuu成人影片| AV乱伦专区| 亚洲97成人在线观看| 欧美精品精品一区二区| 熟女乱3伦999| 亚洲国产欧美一区二区潘金莲| 成年人网站在线免费观看| 视频一区二区免费在线| 伊人五月天婷婷| 久久青青草原免费视频| 三级色综合| 久久久国产亚洲精品系列| 亚洲国产一级精品毛一级精品看免费视频| 91成人在线免费视频| 九九综合久久| 日本三级黄页| 99999精品成人| 91爱看| 天天综合站| 九九九九九精品视频| 亚洲综合91| 不卡中文字幕aⅴ在线| 北约熟女超碰| 日本久久精品| 中文字幕少妇色| 黑人精品久久97| 91模特在线观看| 蜜臀中文字幕| 国产女人高潮嗷嗷嗷叫小说| 120分钟婬片免费看| 亚洲美乱| 国产精品3| 日韩啪啪视频| 伊人久久综合精品欧美| 欧美九9 9 9| 懂色AV中文| 黑丝制服中文字幕| 内射小黄片| 国内精品久久久久影院亚洲| 国产suv精品一区二区四区999| 老鸭窝黄色视频网站| 天天操福利视频综合网站| 无码精品久久久久久亚洲| 黄片色区软件| 毛片视频白嫩| 快播久久人人aV| 色欲久久久久综合网| 国产女人成人精品视频| 10000部十八禁看电影| 久久在肏| 天天色综亚洲91污| 精品精品精品| 中日韩久久久免费看| 偷拍偷窥与盗摄视频专区| 婷婷久月| 日韩欧亚中文在线| 亚洲无码精品AV久久久| 久9视频| 综合91网| 99久久久无码国产精品性啊聊| 乱伦熟女区| 91真人天天在线| 少妇久久久久久| 97人人操人人干| 啊啊啊啊好疼视频| www亚洲免费| 中文字幕丝袜美腿| 四虎免费在线观看| 久久xx| 青青草五月份天| 双插性欧美一二三区| 激情图片伦理国产一区二区日韩| 日韩九九九| 精品人人插人人操| 亚洲精品黑丝| 免费作爱一级视频| 青青伊人加勒比海| 影视综合无码少妇| 超碰97最新人妻| 国产精品一区二区手机看片| 99热超碰| 成人免费性爱视视| 厕所偷拍在线| 日韩欧美亚洲自拍偷拍| 99999国产| 色五天伊人| 啊啊啊不要啊啊受不了了视频在线| 91老熟女老女人国产老太| 香蕉欧美| 国产免费大片| 日韩无限资源| 国产精品久久久久绯色| 小说区 图片区色 综合区| 欧美亚洲丝袜人妻制服99| 老熟女91视频| 欧美极品女人的天堂| 亚州性色| 九九久久久九九| 日韩无码视频黄色| 亚洲黄日韩无码专区| 内射小黄片| 97自拍一区| 超碰在线观看av不卡| 国产熟女精品区| 久久久无码av精| 九九九九一区| 91色情黑丝搞鸡在线观看一区二区三区三州| 清纯唯美综合亚洲| 97在线视频观看| 亚洲超碰97| 中文字幕视频2区| heyZO天然素人无码AⅤ专区| 97超碰人操| 欧美成va视频网站| 久久久精品网站| 青青草乱入乱欲视频在线观看| 综合操逼| 91美女视频在线观看| 人人妻人人玩人人澡人人爽| 人妻天天操天天爽视频免费| 亚洲精品乱码线路中文字幕| 欧美专区17页| 美腿色图| 国产男人又猛又粗又爽| 丝袜足交视频| 亚洲欲| 五月丁香色色网| 台湾一区国产高清在线| 久久风骚城市| 东京成人一区| 欧美性爱五月天| 一区二区三区亚洲| 欧美色图电影| 亚洲性图91| 香蕉99秘 精品一区丁香| 九九干| 久久久新亚洲AV| 视频黄站| 干b在线性社区| 天天综合色| 国产亲戚伦亲在线| 小说区 图片区色 综合区| 久久久91福利姬| 亚洲91网。| 精品精品精品| 久操不卡视频| 伦伦成年午夜免费视频| 成·人免费午夜在线观看| 国产女主播视频在线观看| 内射黑人| 婷婷色一区| 六月激情婷婷| 蜜乳性色无码专日粉嫩骚逼AV| 亚洲影院无码在线| 久久精品—区二区三区内射| 狠久久| 亚洲欧美天| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 9长久久精品| 国产夜夜艹| 91久久精品蜜臀| 免费看一级a性色生活片久久无| 一级@啪啪视频| 精品人成视频在线观看| 97综合国产| 色臀AV| 欧美亚洲丝袜人妻制服中文99| 亚洲AV人人澡人人爱| 日本九九久久99| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 欧美成人性爱视频免费观看| 人人看人人爰人人操| 日韩福利综合一区| 家庭乱伦麻豆| 少妇久久久久久| 人妻碰碰碰碰碰碰| 亚洲情色第一页| 精品精品精品| 狠狠狠狠狠狠| 大香蕉色十月| 成人欧美一区二区三区黑人一| 97人人模人人爽人人| 国产精品探花视频| 看日韩操逼| 国产精品久久久久亚洲av| 激情国产乱伦Av| ji熟女.com| 日本无码1| 啪啪视频亚洲第一| 国产精品一级片在线看| 涩涩这里只有精品视频| 操逼操逼逼操操逼91 | 亚洲欧洲小说图片视频| 天天摸,夜夜摸| 精品国产网站| 日韩熟女精品无码专区一区二区| 午夜性| 亚洲欧洲精品成人| 熟女精品一区二区在线观看| 老熟妇一区二区三区啪啪| 久久是精品| 春色综合免费| 黄页av| 免费一二区| 亚洲欧洲综合成人av一区| 先锋激情∨在线视频播放| 久久久久成人亚洲国产| 亚洲精品人妻吞精av| 天天操夜夜操| 亚洲中文字幕精品久久久久久直播| 操碰91| 日本 免费 一区二区三区 久久香蕉 | 久久久久久久久久久久黄色| 国产一区二区三区久久精品太古里| 欧美国产有色电影| JuliaAnnXXX888| 国产三级片在线观看| 欧洲综合无码| 人人摸人人叼| 少妇蜜汁| 婷婷五月天无码| 伦理第一页| 再深点灬舒服灬太大了添视频| 搡老人老9丨女老熟人| 亚洲天堂电影精品一区| 麻豆九九九| 91亚洲黄色网| 欧美性爽xyxOOOO| 入口操逼网站| 97色插| 色九色久| 国产中出内射一区二区| 最新国产精品久久精品| 96精品在线| 国内外毛片在线观看| 91欧洲入口| 人人贴人人摸| 欧美制服另类丝袜| 日本三级韩国三级美三级91| 人人操欧美风骚| 先锋色眉乱伦资源| 97操97色| 蜜桃AV天堂| 麻花豆传媒剧国产MV出差| 亚洲天堂热| 操淫穴亚洲五月丁香| 日韩色| 色婷婷狠狠18禁| 人妻黑丝袜电影| av激情亚洲五月天| 国内精品伊人久久久久影院会| 伊人影院在线理论播放| 狠狠入| 久久美女国产| 日韩国产十八禁| 色九久| 国产超碰人人操| 三级片大波波| 天天综合91| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 美中日韩无码| 欧美乱妇狂野欧美在线视频| 少妇高潮九九九九| 五月婷婷综合激情| 日韩精品系列| 久久毛卡| www.99热在线只有精品| 国产精品96| 无码外流操逼视频| 激情四射婷婷四五月天| 中国91AV| 俺去俺来也在线www| 九九自拍伦理| 天天干人人干天天日97| 一区中文字幕二区日韩| 欧美日韩插逼视频| 一区二区娱乐网站| 凹凸 69堂 在线播放| 亚洲欧美精品福利在线| 中文欧丝袜诱惑| 日韩av在线免费网站| 大香蕉欧美国产日韩高潮| 日韩亚洲中文有码视频| 日本99一区二区| 日韩美女操b| 国产怡红院| 亚洲中文字幕在线视频一区二区| 99热99re超碰精品| 国产熟女精品一区二区| 天色综合网| a'v在线资源| 91熟女综合| 久久久久久久九九九九九九| 韩日巨乳美女免费视频在线观看| 亚洲高清无码在线桃色| 中文字幕人乱码中文字的预防方法 | 国产精品91一样| 综合伊人网12色| 欧美大战久久久伊人| 人妻中文字幕精品无码| 青青草一区二区三区四| 亚洲九月丁香| 香蕉99秘 一区精品蜜桃臀| www.99热| 欧美一区二区三区互相| 日韩精品国模| 欧美精品自慰系列寂寞少妇| 成人三级片一区二区三区视频| 99热色精品| 蜜乳视频网站| 久色99999| 97精品综合久久| 国产精品懂色tv影视免费观看| 久久久久9久久久久| 黄色AAAAA欧美| 亚洲骚男同com| 亚洲天堂东京热| 成人小说另类在线| 97在线播放| 久久久久久性爱视频| 性爱免费视频成人| 老熟妇91| 91天堂视频| 激情av| 欧美日产国产在线成人第一区| 久久99精品九九久久久婷婷| 99久久久| 亚洲高清无毛一区二区| 黑白配性爱AV成| 亚洲天堂人妻一区二区| 国产日韩精品人妻久久久久色欲网站| 91热色| 日韩中文字幕熟妇人妻| 伊人女女资源在线观看| 大学生美女口爆| 亚洲激情欧美色图| 手机久操欧美综合色码| 9999免费精彩视频| 国产精品成人无码a v毛片| 中文字幕免费看| 草久久久| 99热这里只有精品9| 日本一区二区三区午夜观看| 亚洲色婷婷综合久久久久中文| 亚洲熟妇无码一区二区三区| 九九亚洲视频| 成人免费看吃奶视频网站| 天堂男人网| 0755午夜福利视频| 淫乱图区| 91久久午夜无码鲁丝片久久人妻| 高清无码一区二区三区| WWW.操逼.COM| 亚洲 在线| 丝袜高跟澳门91视频| 麻豆AV96熟妇人妻| www.色婷婷.com| 一区二区三区精品久久| 日本熟女中文字幕一区| 黄骗免费网站| 亚洲国产天堂| 女同性恋中文字幕| 中文在线视频| 久久同城AV| 女一区二区| 日本精品88888888| 日韩性爱播放| 久久精品国产亚洲AV无码做| 日韩高清黄片| 青娱乐淫乱1314| 亚洲在线| 国产热av| 人人妻天天做天天爽| 国产性爱欧美性爱在线| 日本啊啊啊啊啊视频| 久久熟妇五十路一区| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 亚洲欧美日韩中文播放| 男人天堂欧美| 国产精品久久泡妞网站| 久久久日本电影| 久久久月天| 精品人妻丰满熟妇一区二区三| 五月天婷婷社区| 欧美图片色五月天| 国产精品白丝www| 欧美综合自拍亚洲综合图| 91热色| 久久在肏| 9Ⅰ超碰| 韩国一级做a久久久久| 白丝av| 日本韩高清无砖码22o| 色姑娘综合网| 青娱乐休闲视频在线观看| 99无码| 秋霞网无码| 日韩免费福利在线观看| 国产精品免费日韩| 爱我干综合| 国产亚洲色婷婷久久99精品91| 久操大香蕉手机视频在线看| 欧美极度丰满熟妇hd| 五月婷婷激情| 最新亚洲风情电影| 日日干男人的天堂| 欧美综合综合| 色在线视频导航| 一级人妻性爱视频| 96久久精品一二三区色欲| 97在线精品观看视频| 成人av动漫在线观看| 国产伊人自拍| 色天使大香蕉| 99视频自拍区| 中文字幕天堂在线| 一本大道不卡一二三区| 久久亚洲婷婷| 超碰精品| 日本最新1区2区3区| 国产精品久久久久久久久久久久久久吹| 久久无码精品| 超碰在线香蕉| 男人的天堂亚洲| 青苹果影院男人的天堂| KK色在线影院| 国产无吗在线播放| 国产精品探花视频| 久久国产精品91| 99热亚洲天堂| 91久久精品美女高潮喷水| 手机看片91人妻| 国产精品呦一区二区三区| 天堂精品在线| 中文字幕欧美日本乱码一线二线 | 天天精品| 久久国产精品一级二级三级| 屁股久久久久久久久| 操国产高清| 另类小色呦| 亚洲大色堂| 国产女人视频三四五区| 无码天天操| 精品射1999| 丰满人妻-区二区三区| 密乳AV免费观看| 超碰久久中文| 91网站在线播放| 黄色大片免费在线| 精品夜夜澡人妻无码| 天堂涩涩| 欧美伊人久久综合网| 天天影视网综合少妇| 久久精品国产精品| 国模无码人体一区二区三| 日韩一区二区精品视频| 日日夜夜草草草| 好爽视频在线观看视频 | 欧美色五月| 97超碰伊人| 三级激情网站| 另类av天堂| 国内亚洲高清无码| 99欧美| 无马一区二区| 五月丁香影院| 欧美韩日精品资源| 欧美国产欧美在线观看| 75大香蕉| 男女性无套 免费九一| 怡红院视频在线| 亚洲精品九九九| www.色操逼| 日曰骚久久精品| 天天插天天操| 久久↗↗| 18禁超污无遮挡无码免费网| 美女91色黄18| 美女尤物人人操| 亚洲日韩乱码中文无码蜜桃臀网站| 久久亚州精品成人Av无| 青娱乐亚洲热| 人妻精品免费一二三区| 97爱欧美| 永久免费观看的毛片的网站| 69精品在线| 欧美日韩在线视频网站| 激情一区二区三区在线观看| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 91深夜夜| 最新亚洲风情电影| 操迟操逼在巾线Fre看| 国产情色在线| 亚洲毛片一级带毛片基地| 日本孕妇孕交| 亚洲免费看片| 中国91AV| 91人妻丝袜无码| 日韩成人在线性爱视频| 久久久婷婷| 日韩A优精品在线观看| 午夜精品久久久久久久| 综合操逼| 蜜臀久久99精品久久久久久婷婷 | 欧美少妇高潮视频| 男人的天堂2010| 亚洲91网| 亚洲色入欧美| 五月天色图| 亚洲加勒比久久日本道| 蜜桃中文字日产乱幕4区| 一区二区三区黄色片a| 啊啊啊在线看| 天天日天天色| 久久久精品中文字幕爱豆| 日本大香蕉| 国产操偷| 亚洲欧美另类图片| 天天天天做夜夜夜夜做| 国产白嫩漂亮KTV在线| 亚洲 欧美 色图| 天天看片麻豆| 黑人精品成人一区二区三区 | 天天综合有色网| 日韩一二三区| 欧美大干日韩| 殴美牲| 激情视屏国产乱伦强奸| 99超碰网| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 国产和美国毛片| 色性综合| 蜜乳AV网址| 99热这里只有精品18| 日韩资源网| 人妻夜夜爽天天爽麻豆三区网站 | 伦理弟一页| 欧亚性爱啪啪| 看日韩黄片| 九九九九精品在线| 亚洲色资源| 午夜丁香婷婷| 国产亚洲中文不卡二区| 成年无码动漫av片无尽在线 | 一起草欧美| 国内一级精品| 国产人妻精品一区二区三区秋霞| 国产精品白虎| 久久婷婷视频| 亚川综合视频| 亚洲国产精品久久AV| 综合亚洲网| 色超碰综合| 激情露脸爱| 人妻天堂综合网| 婷婷丁香在线| 人人妻人人爽 97人人看碰人免费公开视频 | 大鸡巴久久| 超碰69| 欧美暴力猛交| 精品女人999| 九热视频| 麻豆这里只有精品| 亚洲成人美女无吗| 亚洲无码国产探花在线观看| 欧在线一二区| 风韵犹存大大大大香蕉| 超碰天天操你比| 99热99re超碰精品| 超碰国产精品无码| 亚洲欧美日韩免费电影| 91另类| 一二三四区操操Av| 亚洲色图第一页| 国产人妻精品一区二区三区秋霞 | 韩国成人精品久久久免费看| 91老司机在线| 久久这里只| 精品人妻一区二区三区不卡断 | 国产综合久久久麻桃个 | 嫩草美女久久| 强被迫伦姧在线观看无码网站| 97久久超碰| 欧美成人免费在线观看| 日本大香蕉综合网| 夜夜爽夜夜操| 蜜桃狠狠色伊人亚洲综合网站| 色婷婷淫色网| 亚州九九九精品视频| 男人的天堂日韩| 91色射| 欧美在线综合| 96国产精品| 特色a在线上| 亚洲伊人久久综合97| 性天堂| 亚洲国产欧美一区二区潘金莲| 尤物网址|