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

ARTICLE DETAIL

資訊詳情

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

RP2350雙Type-C開發(fā)板實戰(zhàn):從C SDK到MicroPython的USB開發(fā)指南

RP2350雙Type-C開發(fā)板實戰(zhàn):從C SDK到MicroPython的USB開發(fā)指南 把開發(fā)板直接插進(jìn)電腦 USB 口就能燒錄、調(diào)試、運行程序這是很多嵌入式開發(fā)者夢寐以求的體驗。微雪 RP2350-USB-CM 就是這樣一塊形態(tài)特別的迷你開發(fā)板它把樹莓派最新的 RP2350 雙核微控制器和兩個 Type-C 接口組合在一起其中一個 Type-C 是公頭可以直接插到電腦、樹莓派或擴(kuò)展塢上另一個 Type-C 是母座可以再連接其他 USB 設(shè)備。換句話說不需要額外準(zhǔn)備數(shù)據(jù)線拿起來一插就是一個即插即用的 USB 小模塊。本文會從 RP2350 這顆芯片講起分析這塊開發(fā)板的接口形態(tài)和硬件設(shè)計思路然后帶你把 C SDK 和 MicroPython 兩種開發(fā)環(huán)境都搭起來完成點亮 LED、GPIO 控制、串口輸出和 USB 設(shè)備模式幾個實戰(zhàn)。最后整理常見的插上沒反應(yīng)、識別不到設(shè)備、編譯報錯等問題的排查方法和最佳實踐希望能幫你快速上手這塊有意思的開發(fā)板。1. RP2350 與這塊開發(fā)板的定位1.1 RP2350 芯片到底強(qiáng)在哪RP2350 是樹莓派基金會繼 RP2040 之后推出的新一代雙核微控制器也是樹莓派 Pico 2 系列使用的核心芯片。對熟悉樹莓派 Pico 的用戶來說RP2040 已經(jīng)給大家留下了“性價比高、外設(shè)豐富、資料齊全”的印象而 RP2350 在它基礎(chǔ)上做了明顯升級。首先是內(nèi)核變化。RP2350 內(nèi)置雙核 Arm Cortex-M33 處理器主頻最高可以跑到 150MHz 左右相比 RP2040 的 Cortex-M0 雙核在指令集、浮點運算、中斷響應(yīng)和安全特性上都有提升。更特別的是這顆芯片還支持 RISC-V 架構(gòu)的 Hazard3 內(nèi)核你可以通過修改 SDK 的編譯參數(shù)把程序編譯成 RISC-V 版本運行。這種“一顆芯片兩種內(nèi)核”的設(shè)計在主流 MCU 里非常少見對想學(xué)習(xí)不同 CPU 架構(gòu)的開發(fā)者來說是很好的實驗平臺。其次是存儲和安全性。RP2350 內(nèi)置 520KB SRAM相比 RP2040 的 264KB 翻了一倍。它還加入了安全啟動、簽名固件校驗、硬件隨機(jī)數(shù)生成器等功能雖然這些功能在簡單的學(xué)習(xí)項目里不一定用得上但在產(chǎn)品原型和需要固件保護(hù)的場景下價值很高。從生態(tài)角度看RP2350 保持了和 RP2040 高度一致的 GPIO 和外設(shè)框架大部分 RP2040 上的 SDK 代碼、驅(qū)動庫和 datasheet 閱讀經(jīng)驗都能直接遷移過來。如果你已經(jīng)玩過樹莓派 Pico那么轉(zhuǎn)到 RP2350 的成本非常低如果你是第一次接觸樹莓派微控制器直接學(xué) RP2350 也是不錯的選擇畢竟這是當(dāng)前樹莓派 MCU 生態(tài)里的最新方案。1.2 雙 Type-C 公頭/母座的形態(tài)價值微雪 RP2350-USB-CM 這塊板子最大的辨識度就是它沒有用傳統(tǒng)的 Micro USB 或者單獨的 Type-C 座子加數(shù)據(jù)線方案而是把 Type-C 公頭直接做在了板子一端。使用時直接把公頭插進(jìn)電腦 USB 口、樹莓派的 USB 口或者任何 USB-A/Type-C 擴(kuò)展塢板子就完成供電和數(shù)據(jù)連接了。母座則給你保留了繼續(xù)擴(kuò)展的能力。你可以把 U 盤、Type-C 轉(zhuǎn)串口模塊、傳感器 Hub 等設(shè)備插到母座上。因為 RP2350 自帶 USB 控制器這塊板子可以做 USB Host 方向的實驗也可以做 USB Device 方向的實驗一個公頭一個母座正好把兩種模式都覆蓋了。這種形態(tài)特別適合幾類場景硬件原型驗證不用再找線、理線直接把板子插上去寫代碼桌面清爽很多。USB 設(shè)備開發(fā)比如做 HID 鍵盤、鼠標(biāo)、USB 串口、自定義 HID 設(shè)備時公頭直插電腦非常方便。與樹莓派配合板子公頭插到樹莓派 USB 口母座還能再接其他外設(shè)形成一個緊湊的測試節(jié)點。便攜實驗板子體積很小適合裝在口袋或者小盒子里拿到哪插到哪。當(dāng)然這種形態(tài)也有需要注意的地方。比如公頭直插后板子的方向是固定的如果兩邊設(shè)備距離近可能會擋到旁邊的 USB 口又比如公頭長期直接插拔對 PCB 焊盤的機(jī)械強(qiáng)度有一定要求插拔時最好拿住板子兩端不要只捏著公頭用力掰。1.3 這塊開發(fā)板適合誰用如果你屬于下面幾類人這塊板子會比較對胃口想低成本體驗 RP2350 新特性的樹莓派 Pico 老用戶。需要快速做 USB 外設(shè)原型的嵌入式工程師。在樹莓派上做串口通信、傳感器數(shù)據(jù)采集的愛好者。喜歡收集各種形態(tài)開發(fā)板研究 Type-C 接口設(shè)計的硬件愛好者。高校嵌入式課程、創(chuàng)新實訓(xùn)項目里需要一個“小巧、可靠、容易上手”的 MCU 平臺的學(xué)生。如果你只是需要一塊最傳統(tǒng)的、帶排針、方便插面包板的開發(fā)板那 Pico 2 或者帶排針的 RP2350 板子可能更合適但如果你想體驗“即插即用”的開發(fā)方式或者對 USB 開發(fā)感興趣這塊板子的設(shè)計就很值得一試。2. 開發(fā)環(huán)境準(zhǔn)備2.1 開發(fā)方式選擇C SDK、MicroPython 還是 ArduinoRP2350 官方推薦的開發(fā)方式是 C/C SDK也就是 pico-sdk適合對性能、外設(shè)控制、USB 協(xié)議棧有要求的場景。MicroPython 則適合快速驗證、學(xué)習(xí) Python 語法、操作 GPIO 和簡單外設(shè)。此外樹莓派官方也維護(hù)了 Arduino 內(nèi)核支持如果你習(xí)慣 Arduino 生態(tài)也可以用 Arduino IDE 開發(fā)。如果你之前沒有嵌入式開發(fā)經(jīng)驗我的建議是先用 MicroPython 把硬件接口跑通理解 GPIO、PWM、I2C、UART 這些概念然后再切換到 C SDK 做更深入的開發(fā)。如果你有單片機(jī)基礎(chǔ)可以直接從 C SDK 開始這樣對 RP2350 底層機(jī)制的了解會更扎實。本文會先講 C SDK 的搭建再給 MicroPython 的實戰(zhàn)例子。因為很多新用戶在環(huán)境搭建階段容易卡住這里盡量把步驟拆細(xì)。2.2 C SDK 工具鏈搭建在 Windows 上推薦使用樹莓派官方提供的 Pico VS Code 擴(kuò)展它會自動幫你安裝 CMake、ARM GCC 編譯器和 pico-sdk。如果不想用 VS Code也可以手動安裝ARM GNU 工具鏈也就是 arm-none-eabi-gcc。CMake 3.13 以上版本。Ninja 或 Make 構(gòu)建工具。Git用于拉取 SDK 代碼。在 Linux例如 Ubuntu/Debian上可以用下面的命令安裝基礎(chǔ)依賴然后再手動拉取 SDK。注意這里以常見環(huán)境為例版本需要根據(jù)你的系統(tǒng)實際情況調(diào)整sudo apt update sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi build-essential git拉取 SDK 和示例代碼git clone https://github.com/raspberrypi/pico-sdk.git cd pico-sdk git submodule update --init cd .. git clone https://github.com/raspberrypi/pico-examples.git在編譯任何工程之前需要設(shè)置環(huán)境變量PICO_SDK_PATH讓 CMake 能找到 SDKexport PICO_SDK_PATH/path/to/pico-sdk如果你用的是 VS Code 擴(kuò)展擴(kuò)展會自動處理 SDK 路徑不需要手動設(shè)置。如果你是在命令行編譯記得每次打開新終端時重新 export或者把它寫進(jìn)~/.bashrc。2.3 MicroPython 固件準(zhǔn)備RP2350 可以運行樹莓派官方 MicroPython。你可以在樹莓派官方文檔或 MicroPython 官網(wǎng)找到適用于 RP2350 的 UF2 固件文件。下載后把開發(fā)板的 Type-C 公頭插到電腦 USB 口按住板子上的 BOOT 按鍵再上電不同板子進(jìn)入燒錄模式的方式可能有差異具體看板載絲印和原理圖電腦會彈出一個名為 RP2 的 U 盤。把下載好的.uf2文件拖進(jìn)這個 U 盤板子會自動重啟并進(jìn)入 MicroPython 模式。如果你用的是 C SDK 編譯出來的 UF2 文件也可以用同樣方式燒錄。這個拖拽燒錄機(jī)制是 RP2040/RP2350 系列開發(fā)板非常方便的地方不需要額外的下載器。2.4 怎么判斷電腦是否識別開發(fā)板無論是燒錄還是后續(xù)調(diào)試首先要確認(rèn)開發(fā)板已經(jīng)被電腦正常識別。在 Windows 下可以打開設(shè)備管理器展開“端口 (COM 和 LPT)”或者“通用串行總線設(shè)備”分類。如果板子處于 MicroPython/UF2 模式通常會顯示為一個串口設(shè)備或者出現(xiàn)一個名為 RP2 的 USB 大容量存儲設(shè)備。如果處于未知設(shè)備狀態(tài)說明驅(qū)動或連接可能有問題。在 Linux 下可以用lsusb查看 USB 設(shè)備列表用dmesg | tail查看內(nèi)核日志lsusb dmesg | tail -20如果看到類似Raspberry Pi RP2或者Pico的條目說明設(shè)備已經(jīng)被識別。如果沒有任何輸出可以先換一個 USB 口、換一臺電腦試試排除公頭接觸問題。3. 雙 Type-C 接口與 RP2350 引腳剖析3.1 Type-C 接口的通用引腳認(rèn)知既然這塊板子的核心特色是 Type-C先來梳理一下 Type-C 接口常見的引腳概念。Type-C 連接器通常有 16 個引腳左右不同引腳承擔(dān)不同功能VBUS 和 GND電源引腳負(fù)責(zé)供電。CC1 和 CC2配置通道用來協(xié)商供電方向、電流能力、設(shè)備角色。D 和 D-USB 2.0 數(shù)據(jù)線用于 USB 2.0 通信。SBU1 和 SBU2邊帶使用引腳一般用于音頻、DisplayPort 等模式。高速差分?jǐn)?shù)據(jù)對用于 USB 3.0/3.1、DisplayPort、Thunderbolt 等高速信號。在這塊開發(fā)板上公頭直插電腦D/D- 信號會連接到 RP2350 的 USB 數(shù)據(jù)引腳CC 引腳會處理好設(shè)備角色識別讓電腦把板子識別為 USB 設(shè)備。母座則可以用來接入其他 Type-C 設(shè)備做 USB Host 實驗時會用到。這里要特別提醒Type-C 的引腳定義雖然看起來統(tǒng)一但不同設(shè)備的供電方向和 CC 邏輯不一樣。直插公頭開發(fā)板的設(shè)計已經(jīng)把設(shè)備端的 CC 電阻、上拉下拉邏輯集成好了。如果自己畫板子或者改線一定要仔細(xì)看參考設(shè)計否則很容易出現(xiàn)“插上沒反應(yīng)”的情況。3.2 這塊板子的 GPIO 與引腳布局RP2350 最多可以提供幾十個 GPIO支持 UART、SPI、I2C、PWM、ADC 等常見外設(shè)功能。微雪 RP2350-USB-CM 由于板子很小可能沒有把所有 GPIO 以排針形式引出來而是通過半孔、郵票孔或者金手指方式引出。具體引出哪些引腳、板載 LED 接在哪個 GPIO、按鍵接在哪個 GPIO一定要以板子配套的原理圖為準(zhǔn)。我在下面所有例程里都會把引腳號定義成宏或變量而不是直接硬編碼。這樣做的好處是如果你的板子 LED 不在 GPIO 25只需要改一個宏代碼其他部分不需要動。同時要記得RP2350 是 3.3V 邏輯電平的芯片所有 GPIO 不能直接輸入 5V 電壓。如果要把 5V 傳感器模塊接到 GPIO需要加電平轉(zhuǎn)換電路或者使用支持 5V 容忍的引腳具體要查 datasheet 確認(rèn)。給開發(fā)板供電時公頭插入的 USB 口一般提供 5V但板上會通過穩(wěn)壓電路轉(zhuǎn)成 3.3V 給芯片使用。3.3 雙 Type-C 串接時的電源與信號注意這塊板子兩個 Type-C 接口都在同一個電氣路徑上使用時要特別注意電源方向。公頭插電腦時母座那邊輸出的電源取決于板子內(nèi)部是否做了 VBUS 轉(zhuǎn)換。如果母座也接入了一個外部設(shè)備而這個設(shè)備本身就是供電設(shè)備可能會造成兩個電源同時供電或者反向電流的問題。在實際項目中我建議不要同時在公頭和母座兩端接入兩個主動供電的 USB 設(shè)備。如果需要母座外接大電流設(shè)備先確認(rèn)板子的電源路徑設(shè)計和電流承載能力。進(jìn)行 USB Host 實驗時盡量用帶外部供電的 USB Hub避免從 MCU 板載電源取太多電流。在向板子供電前最好用萬用表測量 VBUS 和 GND 之間電壓確認(rèn)方向正確再插設(shè)備。4. 實戰(zhàn)一使用 C SDK 點亮板載 LED4.1 新建工程結(jié)構(gòu)現(xiàn)在來寫第一個 C SDK 工程。先創(chuàng)建一個簡單的工程目錄rp2350-led-demo/ ├── CMakeLists.txt └── main.c這個工程只需要兩個文件。為了便于在不同板子上復(fù)用代碼里不直接寫死 LED 引腳而是通過宏定義指定。4.2 編寫 CMakeLists.txtCMakeLists.txt負(fù)責(zé)讓 CMake 找到 pico-sdk并生成編譯目標(biāo)cmake_minimum_required(VERSION 3.13) include(pico_sdk_init.cmake) project(rp2350_led_demo C CXX ASM) pico_sdk_init() add_executable(led_demo main.c ) target_link_libraries(led_demo pico_stdlib ) pico_enable_stdio_usb(led_demo 1) pico_enable_stdio_uart(led_demo 0) pico_add_extra_outputs(led_demo)這里幾個關(guān)鍵點pico_sdk_init()必須在project()之后調(diào)用。pico_enable_stdio_usb(led_demo 1)會把標(biāo)準(zhǔn)輸入輸出重定向到 USB 串口方便后面用 printf 打印信息。pico_add_extra_outputs(led_demo)會生成.uf2和.hex等額外輸出文件。4.3 編寫 main.c#include pico/stdlib.h // LED 引腳號請根據(jù)你手上板子的原理圖修改 // 樹莓派 Pico 2 官方板一般默認(rèn) 25其他板子不一定是這個值 #ifndef LED_PIN #define LED_PIN 25 #endif int main() { // 初始化 stdio以便使用 printf 輸出 stdio_init_all(); // 初始化 GPIO 為輸出 gpio_init(LED_PIN); gpio_set_dir(LED_PIN, GPIO_OUT); while (true) { // 點亮 LED gpio_put(LED_PIN, 1); printf(LED ON\n); sleep_ms(500); // 熄滅 LED gpio_put(LED_PIN, 0); printf(LED OFF\n); sleep_ms(500); } }這段代碼的邏輯很簡單先把 LED 引腳配置成輸出模式然后循環(huán)里 500ms 亮、500ms 滅。每次狀態(tài)切換時通過 USB 串口打印一條日志方便我們在電腦上看到程序確實在運行。4.4 編譯工程在工程目錄下執(zhí)行cmake -B build -DPICO_SDK_PATH/path/to/pico-sdk cmake --build build如果 CMake 配置正確你應(yīng)該會在build目錄下看到生成的led_demo.uf2文件。4.5 燒錄到開發(fā)板把開發(fā)板公頭插到電腦 USB 口按住 BOOT 按鍵然后在保持按鍵的狀態(tài)下再次上電電腦會彈出名為 RP2 的 U 盤。把led_demo.uf2拖進(jìn)去板子會自動重啟運行。如果你在使用picotool也可以用命令燒錄picotool load build/led_demo.uf2 picotool rebootpicotool的優(yōu)點是燒錄前可以查看板子的狀態(tài)比如固件是 ARM 版本還是 RISC-V 版本燒錄時也更方便集成到自動化腳本中。4.6 驗證結(jié)果如果一切正常你會看到板載 LED 以 1Hz 的頻率閃爍。打開串口終端連接板子的 USB 串口波特率設(shè)置為 115200可以看到不斷打印的LED ON和LED OFF。如果 LED 不亮優(yōu)先檢查LED_PIN 是否和原理圖一致。板子是否真的進(jìn)入運行模式。串口終端連接的端口是否是板子枚舉出來的端口。5. 實戰(zhàn)二使用 MicroPython 控制 GPIO、PWM、ADC5.1 連接 REPL如果你想快速驗證硬件MicroPython 是最方便的方式。下載 RP2350 對應(yīng)的 MicroPython UF2 固件后拖拽燒錄到板子。再次插入電腦時設(shè)備管理器會出現(xiàn)一個串口。用串口工具如 PuTTY、Thonny 或 VS Code Serial Monitor連接這個串口默認(rèn)波特率 115200就能進(jìn)入 MicroPython REPL 環(huán)境。如果你用的是 Thonny直接在右下角選擇解釋器為 MicroPython (Raspberry Pi Pico)連接后就可以在編輯器里寫代碼并一鍵運行。5.2 控制 GPIO 點亮 LED在 REPL 里輸入from machine import Pin import time led_pin 25 # 請按實際板子原理圖修改 led Pin(led_pin, Pin.OUT) while True: led.value(1) time.sleep(0.5) led.value(0) time.sleep(0.5)如果不方便輸入多行代碼可以先把腳本保存為main.py然后放到板子的可移動磁盤中。MicroPython 啟動時會自動執(zhí)行main.py。5.3 用 PWM 實現(xiàn)呼吸燈PWM 是嵌入式開發(fā)里非常常用的功能可以用來控制 LED 亮度、蜂鳴器音調(diào)、電機(jī)轉(zhuǎn)速等。RP2350 的每個 PWM 通道可以輸出不同占空比的方波。下面的例子用 PWM 讓 LED 從暗到亮再變暗形成“呼吸”效果from machine import Pin, PWM import time led_pin 25 # 請按實際板子原理圖修改 pwm PWM(Pin(led_pin)) pwm.freq(1000) # 設(shè)置 PWM 頻率為 1kHz duty 0 step 1000 # RP2350 的 PWM 通常為 16 位最大占空比 65535 while True: duty step if duty 65535 or duty 0: step -step pwm.duty_u16(duty) time.sleep_ms(2)注意不同 MicroPython 版本對 PWM 的 API 有所差異有的版本使用duty_u16()有的使用duty()。以你下載的固件版本為準(zhǔn)。如果報錯AttributeError可以在 REPL 里用help(PWM)查看支持的方法。5.4 讀取 RP2350 內(nèi)部溫度傳感器RP2350 內(nèi)部有溫度傳感器可以做一個不需要外接任何傳感器的實驗。在 MicroPython 中內(nèi)部溫度傳感器通常通過 ADC 通道讀取具體通道號需要查芯片數(shù)據(jù)手冊。以常見的 RP2040 經(jīng)驗來說內(nèi)部溫度傳感器一般映射到 ADC4RP2350 的映射方式我建議以官方 MicroPython 文檔和 datasheet 為準(zhǔn)。下面是一個示例思路from machine import ADC import time # 請根據(jù)實際固件和芯片文檔確認(rèn) ADC 通道 adc ADC(4) while True: val adc.read_u16() voltage val / 65535 * 3.3 temperature 27 - (voltage - 0.706) / 0.001721 print(Temperature:, temperature, C) time.sleep(1)如果讀數(shù)明顯異常不要直接使用先把 ADC 電壓換算公式和芯片手冊里的對應(yīng)關(guān)系核對清楚。5.5 通過 UART 與樹莓派通信USBCM 公頭插到樹莓派的 USB 口后很容易把這塊板子當(dāng)作一個 USB 串口設(shè)備。但在 MicroPython 層面如果你想和樹莓派的 GPIO UART 直接通信可以用板子引出的 UART 引腳對接。下面是一個簡單的回環(huán)測試from machine import UART, Pin uart UART(0, baudrate115200, txPin(0), rxPin(1)) uart.write(bHello from RP2350\r\n) data uart.read() if data: print(data)UART 的引腳號和 UART 編號要根據(jù)板子引出的引腳來配置。實際通信時兩個設(shè)備的 TX 接 RX、RX 接 TXGND 必須共地。5.6 保存 main.py 開機(jī)自啟MicroPython 的一個特點是只要把腳本保存為main.py放在板子的文件系統(tǒng)中每次上電都會自動執(zhí)行。不過要注意如果在main.py里寫了死循環(huán)程序會在后臺一直運行可能會影響到你通過 REPL 交互。調(diào)試階段建議先不要保存為main.py而是在 REPL 里邊運行邊改確認(rèn)邏輯沒有問題后再保存成開機(jī)自啟腳本。6. 實戰(zhàn)三USB 設(shè)備模式初體驗6.1 為什么這塊板子適合做 USB 開發(fā)很多開發(fā)板雖然帶 USB 接口但那個 USB 口只是用于燒錄或者串口調(diào)試芯片本身并不能編程成自定義 USB 設(shè)備。RP2350 自帶 USB 控制器配合樹莓派官方的 TinyUSB 移植可以實現(xiàn)非常多的 USB 設(shè)備功能。再加上這塊板子是公頭直插設(shè)計做 USB 開發(fā)時連數(shù)據(jù)線都不用準(zhǔn)備。下面我會演示兩個例子一個是把板子模擬成 USB 鍵盤另一個是模擬成 USB 串口。這兩個例子都不需要額外硬件只需要一塊板子和一臺電腦。6.2 TinyUSB 的 HID 鍵盤示例思路TinyUSB 是樹莓派 Pico SDK 里默認(rèn)集成的 USB 協(xié)議棧。pico-examples 倉庫里有一個usb/device/dev_hid_composite例程里面實現(xiàn)了鍵盤和鼠標(biāo)的復(fù)合設(shè)備。我們可以參考這個例程做一個輕量版本按一下板子上的按鍵電腦就會被輸入一串字符。需要注意HID 鍵盤功能可以用來做各種自動化輸入但這種能力只應(yīng)該在你自己電腦、測試環(huán)境、以及獲得授權(quán)的設(shè)備上使用不要用于未經(jīng)許可的自動輸入或繞過限制等行為。做實驗時目標(biāo)設(shè)備最好是你自己的開發(fā)測試機(jī)。核心邏輯可以這樣設(shè)計配置 TinyUSB HID 回調(diào)。按鍵按下時在tud_hid_keyboard_report()中發(fā)送一次按鍵狀態(tài)。松開時發(fā)送空狀態(tài)表示沒有按鍵按下。在 C SDK 中關(guān)鍵偽代碼如下#include bsp/board.h #include tusb.h extern void tud_hid_keyboard_report(uint8_t report_id, uint8_t modifier, uint8_t keycode); static void send_key(uint8_t keycode) { tud_hid_keyboard_report(0, 0, keycode); board_delay(50); tud_hid_keyboard_report(0, 0, 0); } int main(void) { board_init(); tusb_init(); while (1) { tud_task(); // tinyusb 必須周期調(diào)用 if (board_button_read()) { send_key(HID_KEY_A); } } }tud_hid_keyboard_report()的具體簽名、HID_KEY_A等鍵碼定義會隨 TinyUSB 版本變化建議直接參考 pico-examples 里的dev_hid_composite例程。編譯和燒錄方式與第 4 章的 LED 工程完全一致。6.3 模擬 USB 串口打印數(shù)據(jù)除了 HID 鍵盤把 RP2350 模擬成 USB 串口也是很常用的用法。這樣開發(fā)板插上電腦后會多出一個 COM 口你可以用任何串口工具和 MCU 交互。pico-examples 里的usb/device/dev_lowlevel、dev_hid_composite都包含 CDC 串口功能但更簡單的方式是直接使用 pico_stdio 的 USB 重定向。回顧第 4 章的 CMake 配置pico_enable_stdio_usb(led_demo 1) pico_enable_stdio_uart(led_demo 0)只要把 stdio 輸出重定向到 USBprintf()的內(nèi)容就會通過 USB CDC 虛擬串口發(fā)送到電腦。這個方法寫日志非常方便適合在做傳感器采集、狀態(tài)監(jiān)控時使用。有一點需要提醒如果在代碼里大量使用printf()而電腦沒有打開串口終端USB 的 CDC 緩沖區(qū)可能會滿導(dǎo)致程序卡在printf()處。生產(chǎn)代碼中建議限制日志輸出的頻率或者在輸出前判斷tud_cdc_connected()。6.4 運行驗證把編譯好的 UF2 燒錄進(jìn)板子后插到電腦上。Windows 會識別到一個 USB 輸入設(shè)備或 USB 串口設(shè)備。如果是鍵盤示例你在文本編輯器里點擊一下光標(biāo)位置按下板子按鍵文本編輯器里應(yīng)該會出現(xiàn)對應(yīng)的字符。如果是串口示例打開設(shè)備管理器找到新出現(xiàn)的 COM 口用串口工具連接應(yīng)該能看到板子打印的日志信息。你也可以在樹莓派上做同樣的驗證。樹莓派插上這塊板子后系統(tǒng)會識別出/dev/ttyACM0或/dev/ttyUSB0用screen /dev/ttyACM0 115200打開串口就能看到板子發(fā)送的數(shù)據(jù)。這種“樹莓派 RP2350 開發(fā)板”的組合在很多物聯(lián)網(wǎng)項目的原型階段都很實用。7. 常見問題與排查思路在實際使用中尤其是第一次接觸 RP2350 或 Type-C 公頭形態(tài)開發(fā)板時可能會遇到不少問題。我把常見的現(xiàn)象、原因和解決思路整理如下。問題現(xiàn)象常見原因解決思路插入電腦后沒有任何反應(yīng)公頭接觸不良、板子未供電、電腦 USB 口故障換 USB 口試、檢查公頭是否插到位、換電腦試彈出未知設(shè)備或驅(qū)動錯誤板子處于異常固件狀態(tài)、USB 數(shù)據(jù)線接觸問題進(jìn) BOOT 模式重新燒錄查看設(shè)備管理器狀態(tài)C SDK 編譯報錯找不到 pico-sdk未設(shè)置 PICO_SDK_PATH 或路徑錯誤檢查環(huán)境變量確認(rèn) SDK 已經(jīng) clone 到本地?zé)?UF2 后程序不運行固件本身異常、板子沒有正確重啟、燒錄文件不對重新進(jìn)入 BOOT 模式燒錄換其他 UF2 驗證LED 不亮引腳號錯誤、GPIO 配置錯誤、板載 LED 損壞查看原理圖確認(rèn) LED 引腳用萬用表測量MicroPython 無法進(jìn)入 REPL固件沒燒成功、串口端口選擇錯誤重新燒錄 MicroPython檢查設(shè)備管理器端口號使用 USB 串口時程序卡死CDC 緩沖區(qū)滿、電腦未打開串口終端連接串口工具限制 printf 輸出頻率公頭插入樹莓派后板子供電不足樹莓派 USB 口供電限制、線材問題使用帶外部供電的 USB Hub下面挑幾個重點展開。7.1 插入后電腦沒有反應(yīng)這是大家遇到的第一個坎??赡苄杂腥惖谝还^接觸問題。有些 Type-C 公頭因為外殼公差插入后沒有完全卡到位VBUS 或 D/D- 接觸不良??梢陨晕⒂昧ν凭o或者換一個 USB 口試。第二板子處于某種未激活狀態(tài)。如果之前燒錄過異常固件可能會禁用 USB 功能。這時按住 BOOT 按鍵再重新插入 USB強(qiáng)制進(jìn)入 UF2 燒錄模式看電腦是否彈出 RP2 盤符。第三電腦 USB 口本身有問題。臺式機(jī)前置面板的 USB 口供電不穩(wěn)可以先插到主機(jī)背面接口試試。如果手邊有其他開發(fā)板也可以對比驗證。7.2 編譯報錯找不到 pico-sdkC SDK 編譯時最常見的錯誤是Could not find PICO_SDK_PATH原因通常是環(huán)境變量沒有設(shè)置。在 Linux 下執(zhí)行export PICO_SDK_PATH/your/path/pico-sdk在 Windows 下可以通過系統(tǒng)環(huán)境變量設(shè)置。如果你用的是 VS Code 擴(kuò)展檢查擴(kuò)展是否已經(jīng)下載 SDK。另外如果 pico-sdk 是通過 git clone 下來的一定要先執(zhí)行g(shù)it submodule update --init否則里面依賴的 TinyUSB 等子模塊是空的編譯到 USB 相關(guān)代碼時會報錯。7.3 MicroPython 無法連接 REPL如果燒錄完 MicroPython 固件后設(shè)備管理器沒有出現(xiàn) COM 口可能是固件沒有燒錄成功。可以按住 BOOT 再插一次確認(rèn) U 盤出現(xiàn)后重新拖入 UF2。如果串口工具連上了但輸入回車沒有反應(yīng)檢查波特率是否為 115200同時確認(rèn)沒有別的軟件如 Thonny占用同一個串口。7.4 與樹莓派連接時的供電問題樹莓派的 USB 口能夠提供一定的電流但如果同時給 RP2350 開發(fā)板以及母座上外接的設(shè)備供電可能電流不夠。一個典型表現(xiàn)是板子插到樹莓派上偶爾能識別但外接設(shè)備一工作就掉線。解決辦法是用一個帶外部電源的 USB Hub或者給母座外接設(shè)備單獨供電但要注意電氣隔離和共地問題。7.5 排查 checklist遇到問題不要慌按順序檢查插上板子后電腦有沒有彈窗提示設(shè)備管理器是否多出 USB 設(shè)備或 COM 口按住 BOOT 鍵再插是否出現(xiàn) RP2 U 盤是否燒錄了正確的固件文件串口工具選擇和波特率是否正確板子是否有明顯發(fā)熱、異味等異常換一臺電腦、換一個 USB 口是否能復(fù)現(xiàn)大多數(shù)問題都可以在這幾步里找到答案。8. 最佳實踐與工程建議8.1 先讀原理圖再寫代碼微雪這類小尺寸開發(fā)板引腳引出方式和常見 Pico 開發(fā)板有差異。動手寫代碼前一定先打開官方的原理圖和引腳圖確認(rèn)板載 LED 連接的是哪個 GPIO。板載按鍵連接的是哪個 GPIO按下時是高電平還是低電平。哪些 GPIO 引出來了哪些沒有。公頭和母座的 VBUS、D/D-、CC 信號在板上是怎么連接的。這樣能避免很多低級錯誤。尤其是 LED 引腳號不同板子差異很大直接照抄 Pico 的 GPIO 25 不保證通用。8.2 用宏和配置文件管理硬件差異嵌入式工程里硬件引腳盡量不要散落在代碼里。一種常見做法是在頭文件里統(tǒng)一做宏定義#define BOARD_LED_PIN 25 #define BOARD_BUTTON_PIN 12這樣換板子時只需要修改頭文件不需要改動業(yè)務(wù)邏輯代碼。如果項目比較大還可以把板級配置做成 CMake 選項在編譯時通過-D參數(shù)指定不同硬件平臺。8.3 合理使用 printf避免阻塞問題在 USB CDC 模式下printf是通過 USB 協(xié)議棧發(fā)送的。如果電腦沒有打開對應(yīng)串口或者 CDC 緩沖區(qū)滿了printf可能會阻塞 MCU 運行。在調(diào)試階段沒有問題但在產(chǎn)品原型或長時間運行場景中一定要控制日志輸出頻率比如每 100ms 打印一次而不是在死循環(huán)里快速打印。8.4 Type-C 公頭插拔的小技巧這類開發(fā)板的公頭直接焊接在 PCB 上機(jī)械強(qiáng)度取決于焊盤設(shè)計和外殼。插拔時不要只捏著公頭左右搖晃應(yīng)該拿住板子兩側(cè)垂直方向用力。頻繁插拔后如果發(fā)現(xiàn)接觸不良可以用酒精棉簽輕輕擦拭公頭觸點不要用硬物刮擦。8.5 安全邊界與合法授權(quán)RP2350 可以做很多 USB 設(shè)備模擬實驗比如模擬鍵盤輸入、實現(xiàn)自定義 HID 協(xié)議。這些功能本身是正常的開發(fā)技術(shù)但請務(wù)必只在你自己擁有或明確獲得授權(quán)的設(shè)備上進(jìn)行測試。未經(jīng)許可在他人電腦上模擬鍵盤、自動輸入、繞過登錄驗證等行為可能涉及安全和法律風(fēng)險千萬不要嘗試。8.6 用 Flash 存儲和日志記錄關(guān)鍵信息RP2350 的 SRAM 雖大但掉電丟失。如果項目需要保存配置參數(shù)或運行日志建議使用外部 Flash 存儲。在開發(fā)早期就設(shè)計好參數(shù)存儲結(jié)構(gòu)比如使用 JSON 文本或固定二進(jìn)制格式并做好讀寫校驗?zāi)鼙苊夂笃诠δ軓?fù)雜后難以遷移。8.7 定期備份固件和 SDK 版本開發(fā)板固件、pico-sdk、MicroPython 固件這些組件的版本變化很快。今天能編譯通過的代碼過幾個月可能因為 SDK API 更新而報錯。建議在項目里記錄 pico-sdk 的 commit 號。保留編譯好的 UF2 文件作為備份。重要工程使用 git 管理源碼。鎖定 MicroPython 固件版本不要隨意升級。9. 總結(jié)與下一步方向從芯片層面看RP2350 是一顆很值得投入時間學(xué)習(xí)的雙核微控制器尤其是它同時支持 Arm Cortex-M33 和 RISC-V 這一點能幫你同時打開兩條架構(gòu)知識線。從開發(fā)板形態(tài)看微雪 RP2350-USB-CM 雙 Type-C 公頭/母座的設(shè)計非常巧妙——公頭解決供電和通信母座保留擴(kuò)展可能特別適合 USB 外設(shè)開發(fā)和無線的桌面實驗。本文帶你把 C SDK 和 MicroPython 兩種開發(fā)方式都走了一遍從點亮 LED 到 PWM、ADC、UART 再到 USB HID 和 CDC 串口示例。代碼和配置都可以直接復(fù)制使用但記得根據(jù)你手上的板子原理圖修改引腳和配置項。接下來你可以往這幾個方向繼續(xù)深入研究 RP2350 的 DMA、PIO、硬件定時器做更復(fù)雜的外設(shè)控制。嘗試編譯一個 RISC-V 版本的固件對比 Arm 和 RISC-V 在編譯產(chǎn)物和運行時的差異。使用 TinyUSB 實現(xiàn)復(fù)合 USB 設(shè)備比如同時做鍵盤和串口。把這塊板子作為傳感器采集節(jié)點插在樹莓派上跑一個小型數(shù)據(jù)采集系統(tǒng)。閱讀 pico-sdk 的源碼和官方文檔自己封裝一套方便復(fù)用的板級驅(qū)動。一塊開發(fā)板最值得花時間的部分不是把官方例程跑通而是去理解它的原理圖、SDK 結(jié)構(gòu)和 USB 枚舉過程。當(dāng)你把 Type-C 公頭插進(jìn)電腦的那一刻電腦經(jīng)過什么樣的流程識別出這個設(shè)備固件是從哪一步開始執(zhí)行的這些問題如果都能在腦子里有清晰的答案你的嵌入式功底就又深了一層。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
狠狠色婷婷7777久| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 亚洲综合热| 狠狠色 综合色区| 激情综合青草| 91九色PORNY肉丝在线| 天天综合图片| 国产综合丁香五月天| 五月婷婷六月丁香激情| 久久 婷婷 五月天| 九九久久精品| 五月天色婷婷网| 97操碰在线97| 亚洲欧美成人在线| 久久综合伊人综合在线| 999精品久久久久久久| 色婷狠狠| 熟女色专区| 人人爱操| 色色色成人网| 婷婷综合五月| 狠狠插日日干撸| 久草婷婷在线| 久久大香蕉同僚| 久久人操| 在线观看视频1区| 五月天婷婷在线观看| 超碰爱爱爱| 六月丁香啪啪啪| 婷婷五月天堂网| 玖玖在线视频| 婷婷五月另类网站| 大香蕉人妻| 色婷婷久久| 久久伊人日日夜夜| 91成人电影| 六月丁香五月天| 人人舔人人色人人高潮| 丁香玖玖| 亚洲最大视频| 日日做天天操夜夜爽| 久操欧美在线观看97| 五月情色天| 亚洲天堂AV综合网| 成人va在线播放| 六月色五月天天婷婷| 色播色丁香五月| 超碰人人干| 5月丁香婷婷| 伊人婷婷99热精品| 婷婷六月综合激情| 五月天婷婷丁香| 91avse| 亚洲精品V天堂中文字幕| 97操男人的天堂| 啪啪啪综合网| 五月婷婷香| 婷婷精品| 九九热大香蕉| 欲色人妻| 日本欧美成人片AAAA| 婷婷在线激情| 色五月成人在线| 色激情综合| 婷婷在线五月综合| 99久热| 婷婷性色| 99热这里只有精品69| 2015超碰| 丁香五月激情五月| 久久在线视频免费观看| 日本三级日本三级99| 思思热久久爱| 色99视| 久久五月婷婷丁香| 久久五月婷综合网| 电影91久久久| 五月婷视频| 色婷婷先锋| 精品一区二区三区木瓜| 国产阿姨日皮艹逼内射视频| WWW,五月天| 色色婷婷婷丁香五月天| 五月丁香久久| 日本色五月| 97色色综合| 美女要搞搞天天搞搞搞网站| 免费视频WWW在线观看网站| 五月天伊人久久久久| 婷婷五月天论坛| 99re热在线视频| 一起操 91N.com| 亚洲妇女熟BBW| 久99热| 这里只有精品免费视频| 天天天天天天噜| 99视频久久免费视频| 丁香九月综合激情| 9月色婷婷| 婷婷酒色网| 激情AV| 超碰com| 五月婷亚洲精品| 精品一区二区三区木瓜| 综合色色婷婷| www.俺去也com| 日日干日日色| 激情播丁香| 五月丁香狠狠爱| 久99久视频免费观看| AV操一操| 99色视| 新激情婷婷| 夜精品无码A片一区二区蜜桃 | 国产亚洲精品久久久久苍井松| www99精品| 六月婷婷开心| 丁香五月婷婷大香蕉| 一级操逼内射在线视频| 99热免费在线| 久久人人九| 丁香五月欧美色综合| 亚洲av另类在线观看| 粉嫩AV久久一区二区三区| 欧美人妻一区二区| 色婷婷六月| 99热国产精品| 日本狠狠色| 婷婷久久五月| 日日夜夜天天| 婷婷五月天综合久久日美女| 丁香婷婷婷婷十二月在线观看视频| 婷婷丁香激情五月天色色色| 久草网大香视频| 99在线视频喷水| 亚洲综合碰| 在线不卡的视频| 成人精品网站在线观看| 中文字幕激情综合| 一级片sese片.COM| 婷婷伊人激情婷婷| 天天摸天天日天天舔| 在线观看玖玖资源免费观看| 可以看的AV网站| 丁香欧美| 五月天激情AV| 国产成人高清| 99无码| 桃色五月天| 四川BBB搡BBB搡多人乱亂| 亚洲亚洲人成综合网络| 秋霞网在线免费基地五月婷婷丁香| 色色色1网址| 日韩精品电影| 淫荡家庭AV| 久久黄色免费视频| 性爱五月婷婷| 狠狠色婷婷7777久| 激情小说之五月| 色五月丁香伊人五月| 久久激情五月婷婷| 狠狠干在线| 久久久97| 哇嘎成人久久| 五月天快乐开心激情网| 夜夜夜夜夜操| 99精品网| 婷婷黄色五月| 激情丁香婷婷五月天| 亚洲久久婷婷丁香五月天| 思思精品久久艹 | 伊人激情网| 岛国操B不卡在线| 99操久久| 天天做天天爱天天玩夜夜爽| 日韩欧美一级大黄网站| 九月婷婷在线视频| av网址在线| 玖玖99福利| 色色 9| 九九热最新| 婷婷伊人綜合中文字幕| 婷婷五月综合中文字幕| 69热在线| 激情综合网五月激情| 97婷婷狠狠| 日本三级日本三级99| 五月天天丁香婷婷| 9久久精品| 天天爱天天做天天爽| 能看的av网站| www色婷婷com| 色噜噜狠狠色综合日日| 久久91久久91色欲精品| 热久久视频99| 日日干天天| 九月停停| 成人精品在线观看| 色婷婷色婷婷五月| 五月天丁香网| 天堂色色色| 夜夜骑日日操| 大香蕉99热| 国产成人精品一区二三区熟女在线| 伊人五月天久久| 色六月天天激情综合网| 五月天丁香综合| 玩熟女五十AV一二三区| 婷婷五月亚洲激情| 丁香五月欧美成人| 丁香婷婷午夜| 先锋av性爱成人电影| 99久在线精品| 久久精品噜噜噜成人A∨色欲| 色网站99| 丁香六月激情综合| 91色吧网| 亚洲综合色色色| 成人av免费观看| 激情中文在线| 婷婷五月丁香在线视频| 伊人九九68| 九九久久精品| 99热播放| 六月丁香色色色| 欧洲亚洲激情五月天在线| 色婷婷丁香五月| 成人婷婷色综合| www.99色| 久久这里这里有精品免费视频| 亚洲综合丁香五月天| 九九热最新| 天堂综合久久| 五月天激情图片| 超碰人妻公开在线| 婷婷 激情 五月| 激情五月综合网| 啪啪色区| 激情图片久久| 久久久久久久久久久97| 这里只有精品视频在线| 久久婷婷综合色丁香| 丁香伊人激情| 最近中文字幕2019视频1| 亭亭五月丁香综合欧美| 4399成人黄A片| 超碰无码318604| www.天天干| 五月婷婷综合色啪| 五月天激情AV| 久久久久久9热不雅视频| 久久这有这里精品| 99久久9| 亚洲图片 丁香婷婷| 亚洲激情高潮| 国产精品涩涩涩视频网站 | 五月婷婷av| 成人在线视频一区| 丁香五月婷婷偷拍| 毛片新网地| 丁香五月天婷婷中文字幕| 久久女人九九| 美国十月色婷婷在线观看| 麻豆123区| 婷婷五月深深爱| 欧美性爱丁香五月| 四川操逼站| 久久性爱视频这里只有精品 | 99热这里只有精品国产精品| av一区免费看| 开心激情婷婷| 97AV在线视频| 天天色播| 五月婷婷啪啪网| 国模狼狼| 五月天淫乱视频| 色婷婷91| 色婷婷久久综合中文久久一本| 综合色色婷婷| 九九伊人网| www色婷婷久久综合久色| 色色婷婷五月| 色色婷五月天| 五月婷A V在线| 深爱五月亚洲| 婷婷丁香视频| 日日爽日日| 婷婷成人网五月天| 东京热五月婷婷| 夜夜撸日日骑| 九九这里是免费的视频5| 99热爱爱干干日| 丁香六月婷婷综合| 国产欧美日韩综合精品一区二区| 五月婷婷六月少妇激情| 超碰人人超碰| 精品影院| 99热只有这里有精品| AV动漫不卡无码免费| 婷婷九月丁香| 婷婷天天综合| 非洲一级AV| 99爱在线精品视频免费观看| 操熟女成人网| 内射综合网| 日狠狠| 爱草视频在线| 色情五月天。| 大战熟女丰满人妻AV| 五月婷婷丁香色播网| 久久综合五月婷婷| 五月激情综合网| 综合热无码| 99热在线网站| 激情综合网五月婷婷| 五月婷六月综合在线观看| 色狠狠色噜噜AV天堂五区| 婷婷丁香五月高清| 日韩色色小视频| 成人综合视频网址| 国产熟女一区二区三区五月婷| Xx色综合| 在线资源av-超碰中文在线-成人AV| 99爱视频在线观看这里只有精品| 深爱1激情网| 91se在线视频| 韩国97天堂| 综合五月婷婷| 五月丁香人妻| 色婷婷在线视频久| 大香蕉狼人久久| 风流少妇A片一区二区蜜桃 | 97色色-99久久| 免费黄网不卡AV| 五月天激情网站| 日本的α片xxxwww| 综合色网站| 五月丁香综合| 九九操操| 韩国激情五月天综合网| 狠狠色丁香婷婷基地| 激情 婷婷| 日本一级一级一级一级| 激情综合网五月激情网| 五月社区丁香| 色啪影院| 2013AV天堂| 丁香五月激情网| 五月婷婷成人| 五月天婷婷丁香社区| 午夜天堂啪啪| 99久在线精品99re5热视频| 99在线精品视频| 久热免费视频| 色播五月丁香| 婷婷涩涩网| 久久 婷婷 五月天| 综合色、色综合| 性一交一乱一交A片久久四色| 国内精品玖玖| 丁香五月婷婷色五月| 五月丁香色婷婷色| 中文字幕高清av| 图片区 小说区 区 亚洲五月| 五月天婷婷激情| 五月婷婷六月激情网| 五月丁香婷婷啪啪| 99精品视频偷拍| 日本一区二区三区精品视频| 久久无码成人| 免费看欧美成人A片无码| 成人国产综合| 五月天丁香久久| 久久人妻伦理| 激情六月婷| 欧美婷婷五月无砖| 婷婷五月天播| 久久永久网址| 亚洲思思热久| 97久久视频| 91久久综合亚洲噜噜成人在线| 日本在线观看99| 免费看欧美成人A片无码| 啪啪91| 欧美五月婷婷| 色欲天天综合| 久草A片| 79色色色色| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 色色丁香| 99re8这里只有精品99re8热视频| 色五月色五天色情网| 五月婷婷成人| 伊人五月天| 丁香五月天AV| 深爱五月激情五月| 丁香六月婷婷综合| 五月丁香六月激情综合| 国产综合色婷婷精品久久| 高清无码网址| 人妻精品在线| 天天激情站| 亚洲色综合| 99碰碰| 色欲av伊人久久大香线蕉影院 | 婷婷综合性爱网| 久久人妻熟女一区二区| 大色鬼综合| 亚洲情综合五月天| 欧美一级a | 丁香六月婷| 色噜噜狠狠色综无码久久合欧美| 色色丁香| 玖玖婷婷色欲| 丁香五月成人丝袜| 色五月五月婷婷| 欧美啪啪9| 综激情网| 久热这里这里有精品| 亚洲第一色色色| 激情精品久久| 日本色频| 伊人综合网4| 九九亚洲小视频| 久久久99精品| 99热这里只有精品9| 天天天天天天操| 天天干天天插| 日日天天干| 99色综合| 久草九一| 大香蕉中文| 日韩无码成人电影| 丁香五月成人论坛| 91精品综合久久久久久五月丁香| www.maotanji.com| 六月丁香久久| 日本三级第一页| 五月天婷婷涩涩| 色色色色色五月丁香| 综合婷婷| 99亚洲综合| 狠狠操.COM| 日韩无码色色| 99热这里是精品| 一本大道伊人AV久久综合| 五月做爱| 97操操| 天天日夜夜草进麻麻的子宫| 中文在线视频久1| 五月丁香婷婷久久| 婷婷视频在线| 九九热99免费视频| 婷婷五月天色网久| 五月色综合| 欧美日韩aaa| 狠狠干最新地址| 五月天婷婷激情在线色图| 久久女婷| 中出内射的人妻视频| 狠狠干 狠狠操| 婷婷丁香六月| www.五月天| 久久久五月天婷婷成人网| 亚洲九区| 久久精品亚洲一级牲爱综合| 一本久道综合色婷婷五月| 无码人妻丰满熟妇奶水区码| 色五月婷婷自拍| 亚洲V国产V欧美V久久久久久| 婷婷亚州综合| 狠狠操天天操| 色情五月婷| 精国产品一区二区三区A片| 激情综合婷婷久久| 六月伊人婷婷| 伊人激情啪啪| 色五月丁香com| 色噜噜夜夜夜综合网| 美女要搞搞天天搞搞搞网站| 天天操加勒比| 五月婷婷久久爱| 六月色婷婷色| 久久思思热| 亚洲乱码日产精品BD| 九九热99免费视频| 色综合久久88色综合天天| 久久久精品色| 操久久精| 午夜色丁香| 五月婷婷色五月| 开心久久网婷婷| 2025中文在线视频字幕免费观看| 香蕉国产2013| 丁香五月天论坛| 日日干日日| 精品女人九九九| 激情综合丁| 99爱这里只有精品免费视频| 日本一级大片| 九九精品在线网| 狠狠插狠狠插| 碰碰91| 玖玖精品视频| 欧美97超碰| 5月色婷婷| 九九性爱网| 色婷婷五月天av在线| 天天做天天爱天天摸| 亚洲婷婷激情综合激情999精品| 亚洲人人操| 女婷久久| 中文字幕成人影视| 婷婷之玖玖| 99这里只有精品在线观看| 天天舔天天爽| 五月婷婷综合激情网| 俺去也五月天| 丁香五月九九| 久久久精品色| 色吊丝99| 亚洲五月天婷婷在线| 午夜69成人做爰视频| 99综合免费视频| 91超级碰在线| 亚洲综合999| 色播五月婷婷五月| 亚洲影院婷婷色| 五月丁香婷婷综合激情基地| 97人人操人人干| 婷婷伊人久久| 91欧美日韩综合| 3p久久| 97碰碰人人| 五月婷婷综合在线| 中文久久婷婷| 超碰在线超碰| 欧美色宗和激情| 另类 在线| 久久丁香婷婷五月| 人人草人人爱| 97碰碰在线观看视频| 激情五月天婷婷五月天| 99视频91| 五月天成人小说| 欧美久久久久久久久中文字幕| 狠色色狠网| 欧美日韩一区二区三区四区| 五月激情综合美女久久| 4399欧美另类视频| 国产无人区大片| 色五月婷婷影院| 激情图片婷婷| 人妻人人操| 深爱激情五月婷婷| 99热这里只有精品亚洲| 99ree6| 五月天另类小说久久小说网| 丁香五月色色婷| 几激情五月婷婷色五月色天堂| 激情人妻蜜夜系列区| 亚洲另类久久| 一级黄色操B| 免费看成人747474九号视频在线观看| www.99婷婷| 99爱在线精品视频免费观看| 丁香五月另类小说在线阅读| 国产精品电| 久久 视频这里只有精总| 日本丰满久久| 综合五月丁香六月婷婷| 久99| 国产成人综合亚洲| 综合激情深爱| 久色88| www.五月婷婷| 婷婷亚洲激情在线观看视频| 男同色五月开心五月激情五月| 色99网站| 狠狠干婷婷| 最近免费中文字幕大全高清大全1| 狠狠操狠狠狠| 五月天婷婷色情| 婷婷综合色色| 69婷婷丁香午夜| 亚洲国产黄色电影| 播播网色播播| wuyuedingxiang99| 99久久五月婷婷| 婷婷情色五月天| 日韩欧美一区二区三区四区| 亚洲中文AV| 色情五月天丁香社区| 精热在线综合网| 婷婷伊人五月天| 日日夜夜干| 天天日日人| 天堂二区| 六月丁香久久| AV天堂婷婷五月天| 激情久久综合| 99热亚洲只有色| 99九无网码| 婷婷五月综合欧美在线播放| 绿色小导航AV| 五月天偷拍| 天天做天天爱天天要| 综合久| 婷婷五月激情欧美大胆视频| 青青草tp| 天天爽天天干天天| 伊人久久婷婷| 激情婷婷五月在线合集| 色五月丁香婷婷| 26uuu国产激情视频| 久久五月网| 婷婷综合性爱网| 97碰超级人人看| 欧美va| 丁香婷婷黄网站| 99色在线观看视频者| 91爱啪啪| 亚洲六月色| 亚洲丁香五月综合| 婷婷五月网图片区| 色婷婷8| 亚洲1区| www,色色色网站| 九九热这里精品| 亚洲AV无码成人精品区电影网| 婷婷综合视频| 亚洲另类婷婷综合| 婷婷五月天成人小说| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 午夜无码熟熟妇丰满人妻| 五月综合丁香婷婷| 色五月天成人在线| 五月丁香六月色婷婷综合五月天| 99人妻碰碰碰久久久久视| 欧美性猛交XXXX乱大交极品| 97干在线视频| 久婷五月| 深情五月天| 中文字幕丁香五月| 性爱先锋AV| AV动漫不卡无码免费| 噢美99| 色色性爱视频| 色婷精品91| 五月天天爽| 色色色.com| 激情五月激情综合俺也去婷婷小说| 欧美亚洲成人在线| 六月丁香AV| 97精品人人A片免费看| 91久久久久久久| 久久久久久性爱视频| 婷婷免费无视频| 【乱子伦】黄色| 超碰91av| 欧美日韩成人免费在线| 中文字幕网站在线观看| 日本一級黃色一級片| 九九亚洲| 久热免费| 天天插天天爽| 久久在线大香蕉| 天天天综合网| 五月丁香在线综合| 伊人五月丁香| 丁香五月婷婷色| 色色亚卅| 亚洲VA在线| 激情亚洲色图片丁香综合| 丁香色六月婷婷| 日本怕怕视频| 五月丁香日本在线视频观看| 97干免费视频| 欧美三级欧美一级| yellow视频在线观看91| 激情丁香六月| 色色丁香婷婷综合| 欧美色色色色色| 嫩草视频在线观看| 久热9| 久久婷五月| 五月婷婷激情网| 激情AV| 五月天激情综合在线| 金品在线视频99| 色婷婷狠狠久久YY| 丁香婷婷五月色成人网站| 天堂久久婷婷| 色久九| 色婷婷av在线观看| 五月丁香六月婷婷,婷| xxxx五月| 色色婷婷综合网| 激情婷婷五月基地| 色婷婷久久综合中文久久一本| 色五月色综合| 99久久6| 亚洲丁香五月天视频| 五月丁香综合网| 99热国内精品| 26uuu成人网| 天天操天天插| 99色人| 欧美色色日韩| 激情综合在线观看| 久热这里只有精品性色AV| 思思热99er在线视频| www.五月婷婷久久.com| 婷婷五月激情在线视频| 91无码高清| 丁香五月影院| 五月网站| 丁香久久九九99| 99热综合网| 九九精品在线视频观看| 美女婷婷六月色| 久久人妻在线| 色婷婷88| 婷婷丁香六月| 婷婷五月丁香四射| 日本在线视频播放91| 《诡秘之主》在线观看| 色五月成人在线| 色婷婷五月天视频网站| 五月婷婷丁香五月| 丁香五月天网站| 成人午夜视频精品一区| 亚洲国产网站| 激情小说五月天社区丁香| 日夜夜天天| 丰满人妻一区二区三区| 日本九九九九| 99人人干人人操| 成人午夜无码视频| 国产精品激情五月天色婷婷| 成人网站免费在线播放| 国产精品18久久久| 色综合香蕉| 激情五婷精品网在线观看网址| 99r这里| 新97人人上人人| 亚洲AV在线免费看| 99干视频| SS丁香五月婷婷| 淫视馆AV在线| 丁香狠狠干| 99在线免费视频| 久久色情| 亚洲色A| 四色五月婷婷| 一起操 91N.com| 欧美成性色| 五月激情婷婷丁香| 婷婷色网| 大香蕉久热| 激情激情激情网| 五月婷婷狠狠干| 少妇高潮A片无套内谢麻豆传| 色婷婷五月成人网| 五月丁香六月婷婷不卡免费无码| 激情五月天天狠狠久久| 大香焦啪啪啪| 伊人网欧美在线男人天堂五月丁香| www.色擼擼.com| 婷婷99狠狠躁天天| 丁香,开心成人,久久| 激情另类综合| 五月激情综合美女久久| 专区无日本视频高清8| 色偷偷色婷婷| 日操夜撸| 国产又黄又爽又色的免费| 婷婷综合网性| 免费播放99性爱视频| 丁香五月天视频| 天天插天天插天天插天天插| 可以看的av| 97婷婷狠狠| 丁香五月综合在线观看| 无码人妻精品一区二区蜜桃色欲| 射久久丁香五月| 婷婷五月天男人影院色色网| 美日韩成人| www久久久久久久97| 99re这里只有精品视频了| 天天做天天爽| 色噜噜狠狠色综合日日| 天天干天天拍| 99久久偷拍视频| 激情五月综合免费| 玖玖婷婷五月天| 五月丁香黄色| 人人干人人操人人摸| 色色欧美。| 丁香女人五月天| 亭亭色色五月天| 天堂综合久久| 欧美婷婷成人| 思思re最新视频| 五月丁香啪啪网| 丁香久久综合| 久久久久激情网| 99精品视频免费观看| 亚洲欧洲美女在线观| 5月丁香综合网| 丝袜大香蕉| 国产激情视频在线观看| 狠狠色狠狠| 丁香六月婷婷综合欧美| 色青五月天| 国产又色又爽又黄又免费| 欧美激情 日韩无码 婷婷 五月天| 激情五月丁香婷婷| 99热久久日本| 丁香婷婷五月| 在线免费视频caop| 五月丁香久久丝袜啪啪| 综合色99| 日韩人妻无码一区二区| 五月婷婷AV| 人妻熟妇国产精品| 五月婷久久| 超碰人人艹| 久久五月综合| 婷婷综合在线| 色色色色热| 99热99在线| 婷婷天堂站| 久久久久久草黄色片AV在线观看 | 色婷婷精品小视频| 五月丁香影院| 国产日产成人亚洲欧美国产VA| 久久久com| 开心婷婷中文字慕| 狠狠操综合| 五月婷婷播| 丰满少妇猛烈A片免费看观看| 五月丁香六月欧美综合| www.色五月| 天天日天天做天天操| 欧美性生交XXXXX无码小说| 色久五月| 99精品综合在线| 成人色五婷婷| 久久宗合影| 亚洲黄色精品| 天天日天天做天天舔| 久久九九网| 伊人六月丁香婷婷| 日韩无码专区| 丁香五月开心五月激情| 狠狠爱婷婷色| 九九九九国产| 九九视频这里只有精品在线播放 | 婷婷综合色| 人人播| 噜噜噜色噜噜| 伊人大香久久| 情色婷婷五月天| 在线国产精品色| 免费观看全黄做爰的视频| 99热这里只有精品无码| 99久久精彩视频| 国产操碰| 日日天天操| www.亚洲激情.com| 国产精品电影网| 婷婷丁香社区网| 99原创自拍视频在线观看| 99色免费观看全部| www91久久| 99在线小视频| 婷婷久久六月费| 丁香五月婷婷99| 久久久久久久久99精品| 天天日天天狠狠操| 人妻视频一区而且二区| 五月丁香综合影院| 9久精品| 免费三级黄色| 91九色欧美| 99人这里只有精品| 91猫咪国产在线播放| 996er热| 678五月丁香亚洲综合| 就去色色五月丁香婷婷久久久| 天天做天天爱天天要| 色九月婷婷综合| 刘玥av在线| 五月婷婷深深爱| 嫩草综合网| 婷婷终合色图| 99精品在这里| 99热精品在线| 玖操97| 五月丁香人妻| 亚洲五月情| 天堂久久精品| 日本久久激情| 成人在线精品| 日日操,夜夜爽| 色五月激情| 91男人操女人视频| 激情四射网| 亚洲五月情| 色色综合网站| 色婷婷第四色| 日本综合久久| 色欲AV导航| 婷婷在线播放av| www.1024久久| 中文字幕 码精品视频网站| 五月天最新网| 婷婷亚洲五月丁香综合在线 | 深情五月天| 亚洲国产色婷婷| 免费看欧美成人A片无码| 亚洲碰碰碰| 天天摸天天高潮天天爽| 久久99综合| 久久激情婷婷| 少妇人妻丰满做爰XXX| 久久婷婷色色| 色色亚卅| 人人爽在线视频综合网| 婷婷网影院| a性生活久久无| 伊人色综合网| 成人一级片| 婷婷五月天激情网站| 91精品综合久久久久久五月丁香| 综合久久激情久久| 亚洲无码色| 六月婷婷久久| 日屌日日操日日色| 99色丁香婷婷综合网| 五月停亭六月,六月停亭的英语 | 情欲综合网| 久久99久久久久久| 亚洲成人av在线播放| 9色婷婷| 色色操| www热久久yy9| 色五月色五天色情网| 人妻射精AV| 99热综合网| 日韩有码久久| 日本婷婷色| 亚洲黄色影视| 四色永久成人网站| 色五月欧美| 久久五月天激情| 婷婷六月中文字幕| 六月丁花香啪啪激情欧美| 欧美色五月| 人人爽欧美婷婷久久久五月丁香| 中文字幕丁香五月| 五月天丁香啪啪综合| 久草天堂| 色噜噜狠狠色综合成人网| 99日在线观看视频| 色吊丝99| 综合在线观看99| 中文字幕婷婷9月天| 亚洲日韩一页精品发布| 狠狠干狠狠干| 久婷婷婷| 91久久九久久九久久九久久九久久| 色婷婷丁香| 日操夜撸| 五月天影院| 丁香婷在线| 成人九九视频| 婷婷丁香第一页| 激情五月天在线| 色五月久久成人婷婷| 色五月丁香总合网| 五月激情丁香六月狠狠干| 这里只有精品日韩| 99热免费网站| 五月丁香啪啪激情| 精品人人操| 中文字幕在线免费观看视频| 国产欧美第五十五页| 丁香蜜臀黄色婷婷五月天| 五月色婷婷中文字幕| 久久久.COM| 成人在线精品| 婷婷和五月天| 国产精品久久久99视频| 国产xxxxx在线观看| 大香蕉九操| 人妻中文在线| 丁香五月婷婷婷婷欧美综合| 色婷婷丁香六月| 妻久久久久| 色插综合网| 九热视频这里只有精品| 婷婷五月天另类网站| 久久精品9| 婷婷中文字幕网| 丁香五月综合激情久久潮喷| 男人天堂 久久| 大香蕉九九热| 操人91| 精品婷婷五月天| 人人干Av| 五月综合六月丁| 九九精品在线观看视频6| 五月开心激情| www.91在线观看| 九九性视频| 丁香六月婷婷色XXXXX| www.99视频| 日本狠狠干| 久久久久久久久月丁| 国产a视频| 98色丁香五月婷婷综合网| 婷婷射图五月天| 激情小说五月天社区丁香| 婷婷综合五月激情| 色五狠狠| 久久久久久久久99精品| 久草五月婷婷| 99色综合| 婷婷黄色网| 99caobi| 久操婷婷| 婷五月天天| 日日做夜夜爱| 五月天婷婷激情| 99精品视频免费观看| 最近中文字幕大全免费版在线| 亚洲激情四谢| 九九色天堂| 91丨九色丨东北熟女| 天天日夜夜操五月| 七七色色综合| 伊人综合网站| 久久一伦| 五月天婷婷基地综合网| WWW.五月天9999| 丁香五月另类小说| AV在线资源| 思思re最新视频| 色情婷婷。| 欧美激情丁香五月| 激情综合五月色丁香婷婷 | 丁香五月婷婷大香蕉| 97狠狠色| 变态 另类 在线| 成人中文字幕在线| 天天爽,天天操。| 九九热最新| AAA久久| 国产精品18久久久| 久久狠婷婷| 六月色婷婷欧美| 99精品免费欧美小视频| 亚洲热久久| 99精品手机在线视频| 超碰在线人妻| 久久性爱视频这里只有精品| 色五月在线观看| 91人人人人人人人| 性五月激情| 深夜激情网| 欧美一级色| 久久九九激情五月天 | 激情影院内射| 欧美精品18| 婷婷六月丁香五月图区| 久久99久久99精品免视看婷| 99热精品在线免费观看| 最新高清无码专区| 五月丁香六月激情综合| 深爱五月日韩| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 97婷婷丁香| 开心激情网在线| 欧美大肥婆大肥BBBBB| 一区二区乱码视频| 久久人妻www| 啪啪啪大香蕉| 97久人人| 色色色色色色网| 九九碰九九爱97| 色婷婷丁香AV综合| 99热在线免费观看精品| 97久久草草超级碰碰碰| 婷婷五月天成人视频| 69堂午夜视频最新地址| 亚洲性爱电影| 超级久久久| 色五月丁香激情视频| 成人视频一区| 丁香久月| 337午夜福利| 国自产拍偷拍精品啪啪一区二区| 六月丁香啪啪啪| 99亚洲精品视频| 五月天社区婷婷| 五月天久久久| 国产精品国产| 涩涩激情五月婷婷| 婷婷激情综合网| 色情五月婷婷| 激情色播| 成人五月天丁香婷| bukadeavzaixian| 五月婷六月丁香| 丁香五月激情综合| 日本一级| 99这里热| 久久婷婷五| 五月激情五月婷婷五月天在线| 免费看欧美成人A片无码| 五月天综合在线| 大香蕉99热| 婷婷五月天情色| 九九热在线视频观看| 黑人巨粗进入警花疼哭A片| 91操片| 99精品22| 日本91在线播放| 亲子乱AV一区二区三区下载| 丁香五月色五月| 91美女啪啪| 久婷婷久草| 精品夜夜澡人妻无码AV| 五月天婷婷午夜丁香| 九九色色| 久婷婷色| 玖玖五月丁香| 婷婷丁香五月激情密臀av| 日日爽日日| 国产原创视频91九色| 丁香婷婷在线| 久久密臀婷婷| 五月综合色播播丁香婷婷| 91操碰| 天天色爽| 免费看欧美成人A片无码| 五月婷婷六月丁| 色五月婷婷丁香五月| 丁香五月电影| 99视频精品在线| site:901-07.com| 色噜噜综合网| www.狠狠操.co m| 久久人妻精品| 五月丁香六月欧美综合| 国产真人做爰视频免费| 色 五月俺去也| 99ree6| 情婷婷五月天| 久久久99精品免费观看| WWW.开心五月天.COM| 97久久婷婷色| 亚洲狠狠干| 屁股翘好撅高迎合跪趴| 极品人妻VIDEOSSS人妻| 青青草深爱激情网| 婷婷综合中文| 538在线精品| 最新色色五月天| 欧美性爱五月天| 激情www.98com| 丁香六月av| 国产成人+综合亚洲+天堂| 五月丁香六月婷婷综合在线| 大伊香蕉精品视频在线| 色停停五月天| 日本不卡中文字幕| 色综合五月天| 色五月丁香六月婷婷| 97久人人| 天天日天天干天天操| 涩涩婷婷五月| 啪啪色区| 激情五月天视频| 欧美性色五月天| 九九热在线99| 中文字幕永久在线| 5月丁香六月婷婷| 色七七九九| 熟妇内谢69XXXXXA片| 色99网| 午夜成人天堂久久无码日韩久久| 色婷视频| 可以看的AV网站| 婷婷伊人綜合中文字幕| 日韩丁香涩| 婷婷五月天综合AV| WWW色五月天| 激情丁香五月| 97碰在线| 九月色婷婷综合| 狠狠色噜噜狠狠狠狠综合| 日日操夜夜擼| 日日干日日| 五月婷高清视频| 99九九在线视频| 欧美久热| 色婷婷人人| 老司机伊人| 日本性激情色播| 色久女| 九九综合影音先锋| 丁香综合网| 狠狠操狠狠狠| 久久人人九九| 91人妻九色大屁股| 婷婷五月激情五月激情| 襙逼网| 亚洲视频二区| 日本性视频| 国产亚洲99久久精品| 国产精品五月天婷婷| 欧美色图45678| 性爱五月婷婷| 91日本在线观看| 婷婷五月天视频| 六月婷婷网站| 久久久中文| 婷婷五月丁香性爱| 婷婷伊人| 99狠狠色| 亚洲AV色婷婷人禽五月天| 婷婷激情五月综合| 综合亚洲AV| 久久五月婷天天干| 99re这里只有| 婷婷五月情| 五月噜噜| 亚洲婷婷五月天综合| 超级碰碰碰97免费| 亚洲黄色网址| 色婷婷六月天| 91狠狠综合网| 五月婷婷丁香网| 99热这里只有精品手机在线观看| 大香蕉久久草| 夜夜AVV| 日韩在线看AV| 色五月天在线观看| 五月天婷综合| 99在线亚洲| 四虎婷婷五月天| 激情久久 婷婷| 97碰精品| 日日操夜夜擼| 狠狠操狠狠插| 色五月婷婷久久| 五月丁香综合网| 丁香五月天成人| 激情合网婷婷| 欧美婷婷六月丁香综合色连续高潮抽搐| 97干在线看| 久久精品日| 色域五月丁香|