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

ARTICLE DETAIL

資訊詳情

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

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

RP2350雙Type-C開發(fā)板實(shí)戰(zhàn):從C SDK到MicroPython的USB開發(fā)指南 把開發(fā)板直接插進(jìn)電腦 USB 口就能燒錄、調(diào)試、運(yùn)行程序這是很多嵌入式開發(fā)者夢寐以求的體驗(yàn)。微雪 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è)計(jì)思路然后帶你把 C SDK 和 MicroPython 兩種開發(fā)環(huán)境都搭起來完成點(diǎn)亮 LED、GPIO 控制、串口輸出和 USB 設(shè)備模式幾個實(shí)戰(zhàn)。最后整理常見的插上沒反應(yīng)、識別不到設(shè)備、編譯報錯等問題的排查方法和最佳實(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 雙核在指令集、浮點(diǎn)運(yùn)算、中斷響應(yīng)和安全特性上都有提升。更特別的是這顆芯片還支持 RISC-V 架構(gòu)的 Hazard3 內(nèi)核你可以通過修改 SDK 的編譯參數(shù)把程序編譯成 RISC-V 版本運(yùn)行。這種“一顆芯片兩種內(nèi)核”的設(shè)計(jì)在主流 MCU 里非常少見對想學(xué)習(xí)不同 CPU 架構(gòu)的開發(fā)者來說是很好的實(shí)驗(yàn)平臺。其次是存儲和安全性。RP2350 內(nèi)置 520KB SRAM相比 RP2040 的 264KB 翻了一倍。它還加入了安全啟動、簽名固件校驗(yàn)、硬件隨機(jī)數(shù)生成器等功能雖然這些功能在簡單的學(xué)習(xí)項(xiàng)目里不一定用得上但在產(chǎn)品原型和需要固件保護(hù)的場景下價值很高。從生態(tài)角度看RP2350 保持了和 RP2040 高度一致的 GPIO 和外設(shè)框架大部分 RP2040 上的 SDK 代碼、驅(qū)動庫和 datasheet 閱讀經(jīng)驗(yàn)都能直接遷移過來。如果你已經(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 或者單獨(dú)的 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è)備插到母座上。因?yàn)?RP2350 自帶 USB 控制器這塊板子可以做 USB Host 方向的實(shí)驗(yàn)也可以做 USB Device 方向的實(shí)驗(yàn)一個公頭一個母座正好把兩種模式都覆蓋了。這種形態(tài)特別適合幾類場景硬件原型驗(yàn)證不用再找線、理線直接把板子插上去寫代碼桌面清爽很多。USB 設(shè)備開發(fā)比如做 HID 鍵盤、鼠標(biāo)、USB 串口、自定義 HID 設(shè)備時公頭直插電腦非常方便。與樹莓派配合板子公頭插到樹莓派 USB 口母座還能再接其他外設(shè)形成一個緊湊的測試節(jié)點(diǎn)。便攜實(shí)驗(yàn)板子體積很小適合裝在口袋或者小盒子里拿到哪插到哪。當(dāng)然這種形態(tài)也有需要注意的地方。比如公頭直插后板子的方向是固定的如果兩邊設(shè)備距離近可能會擋到旁邊的 USB 口又比如公頭長期直接插拔對 PCB 焊盤的機(jī)械強(qiáng)度有一定要求插拔時最好拿住板子兩端不要只捏著公頭用力掰。1.3 這塊開發(fā)板適合誰用如果你屬于下面幾類人這塊板子會比較對胃口想低成本體驗(yàn) RP2350 新特性的樹莓派 Pico 老用戶。需要快速做 USB 外設(shè)原型的嵌入式工程師。在樹莓派上做串口通信、傳感器數(shù)據(jù)采集的愛好者。喜歡收集各種形態(tài)開發(fā)板研究 Type-C 接口設(shè)計(jì)的硬件愛好者。高校嵌入式課程、創(chuàng)新實(shí)訓(xùn)項(xiàng)目里需要一個“小巧、可靠、容易上手”的 MCU 平臺的學(xué)生。如果你只是需要一塊最傳統(tǒng)的、帶排針、方便插面包板的開發(fā)板那 Pico 2 或者帶排針的 RP2350 板子可能更合適但如果你想體驗(yàn)“即插即用”的開發(fā)方式或者對 USB 開發(fā)感興趣這塊板子的設(shè)計(jì)就很值得一試。2. 開發(fā)環(huán)境準(zhǔn)備2.1 開發(fā)方式選擇C SDK、MicroPython 還是 ArduinoRP2350 官方推薦的開發(fā)方式是 C/C SDK也就是 pico-sdk適合對性能、外設(shè)控制、USB 協(xié)議棧有要求的場景。MicroPython 則適合快速驗(yàn)證、學(xué)習(xí) Python 語法、操作 GPIO 和簡單外設(shè)。此外樹莓派官方也維護(hù)了 Arduino 內(nèi)核支持如果你習(xí)慣 Arduino 生態(tài)也可以用 Arduino IDE 開發(fā)。如果你之前沒有嵌入式開發(fā)經(jīng)驗(yàn)我的建議是先用 MicroPython 把硬件接口跑通理解 GPIO、PWM、I2C、UART 這些概念然后再切換到 C SDK 做更深入的開發(fā)。如果你有單片機(jī)基礎(chǔ)可以直接從 C SDK 開始這樣對 RP2350 底層機(jī)制的了解會更扎實(shí)。本文會先講 C SDK 的搭建再給 MicroPython 的實(shí)戰(zhàn)例子。因?yàn)楹芏嘈掠脩粼诃h(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)實(shí)際情況調(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 可以運(yùn)行樹莓派官方 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 實(shí)驗(yàn)時會用到。這里要特別提醒Type-C 的引腳定義雖然看起來統(tǒng)一但不同設(shè)備的供電方向和 CC 邏輯不一樣。直插公頭開發(fā)板的設(shè)計(jì)已經(jīng)把設(shè)備端的 CC 電阻、上拉下拉邏輯集成好了。如果自己畫板子或者改線一定要仔細(xì)看參考設(shè)計(jì)否則很容易出現(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è)備可能會造成兩個電源同時供電或者反向電流的問題。在實(shí)際項(xiàng)目中我建議不要同時在公頭和母座兩端接入兩個主動供電的 USB 設(shè)備。如果需要母座外接大電流設(shè)備先確認(rèn)板子的電源路徑設(shè)計(jì)和電流承載能力。進(jìn)行 USB Host 實(shí)驗(yàn)時盡量用帶外部供電的 USB Hub避免從 MCU 板載電源取太多電流。在向板子供電前最好用萬用表測量 VBUS 和 GND 之間電壓確認(rèn)方向正確再插設(shè)備。4. 實(shí)戰(zhàn)一使用 C SDK 點(diǎn)亮板載 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)鍵點(diǎ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) { // 點(diǎn)亮 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 串口打印一條日志方便我們在電腦上看到程序確實(shí)在運(yùn)行。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)去板子會自動重啟運(yùn)行。如果你在使用picotool也可以用命令燒錄picotool load build/led_demo.uf2 picotool rebootpicotool的優(yōu)點(diǎn)是燒錄前可以查看板子的狀態(tài)比如固件是 ARM 版本還是 RISC-V 版本燒錄時也更方便集成到自動化腳本中。4.6 驗(yàn)證結(jié)果如果一切正常你會看到板載 LED 以 1Hz 的頻率閃爍。打開串口終端連接板子的 USB 串口波特率設(shè)置為 115200可以看到不斷打印的LED ON和LED OFF。如果 LED 不亮優(yōu)先檢查LED_PIN 是否和原理圖一致。板子是否真的進(jìn)入運(yùn)行模式。串口終端連接的端口是否是板子枚舉出來的端口。5. 實(shí)戰(zhàn)二使用 MicroPython 控制 GPIO、PWM、ADC5.1 連接 REPL如果你想快速驗(yàn)證硬件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)連接后就可以在編輯器里寫代碼并一鍵運(yùn)行。5.2 控制 GPIO 點(diǎn)亮 LED在 REPL 里輸入from machine import Pin import time led_pin 25 # 請按實(shí)際板子原理圖修改 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 實(shí)現(xiàn)呼吸燈PWM 是嵌入式開發(fā)里非常常用的功能可以用來控制 LED 亮度、蜂鳴器音調(diào)、電機(jī)轉(zhuǎn)速等。RP2350 的每個 PWM 通道可以輸出不同占空比的方波。下面的例子用 PWM 讓 LED 從暗到亮再變暗形成“呼吸”效果from machine import Pin, PWM import time led_pin 25 # 請按實(shí)際板子原理圖修改 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)部有溫度傳感器可以做一個不需要外接任何傳感器的實(shí)驗(yàn)。在 MicroPython 中內(nèi)部溫度傳感器通常通過 ADC 通道讀取具體通道號需要查芯片數(shù)據(jù)手冊。以常見的 RP2040 經(jīng)驗(yàn)來說內(nèi)部溫度傳感器一般映射到 ADC4RP2350 的映射方式我建議以官方 MicroPython 文檔和 datasheet 為準(zhǔn)。下面是一個示例思路from machine import ADC import time # 請根據(jù)實(shí)際固件和芯片文檔確認(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í)際通信時兩個設(shè)備的 TX 接 RX、RX 接 TXGND 必須共地。5.6 保存 main.py 開機(jī)自啟MicroPython 的一個特點(diǎn)是只要把腳本保存為main.py放在板子的文件系統(tǒng)中每次上電都會自動執(zhí)行。不過要注意如果在main.py里寫了死循環(huán)程序會在后臺一直運(yùn)行可能會影響到你通過 REPL 交互。調(diào)試階段建議先不要保存為main.py而是在 REPL 里邊運(yùn)行邊改確認(rèn)邏輯沒有問題后再保存成開機(jī)自啟腳本。6. 實(shí)戰(zhàn)三USB 設(shè)備模式初體驗(yàn)6.1 為什么這塊板子適合做 USB 開發(fā)很多開發(fā)板雖然帶 USB 接口但那個 USB 口只是用于燒錄或者串口調(diào)試芯片本身并不能編程成自定義 USB 設(shè)備。RP2350 自帶 USB 控制器配合樹莓派官方的 TinyUSB 移植可以實(shí)現(xiàn)非常多的 USB 設(shè)備功能。再加上這塊板子是公頭直插設(shè)計(jì)做 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例程里面實(shí)現(xiàn)了鍵盤和鼠標(biāo)的復(fù)合設(shè)備。我們可以參考這個例程做一個輕量版本按一下板子上的按鍵電腦就會被輸入一串字符。需要注意HID 鍵盤功能可以用來做各種自動化輸入但這種能力只應(yīng)該在你自己電腦、測試環(huán)境、以及獲得授權(quán)的設(shè)備上使用不要用于未經(jīng)許可的自動輸入或繞過限制等行為。做實(shí)驗(yàn)時目標(biāo)設(shè)備最好是你自己的開發(fā)測試機(jī)。核心邏輯可以這樣設(shè)計(jì)配置 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)控時使用。有一點(diǎn)需要提醒如果在代碼里大量使用printf()而電腦沒有打開串口終端USB 的 CDC 緩沖區(qū)可能會滿導(dǎo)致程序卡在printf()處。生產(chǎn)代碼中建議限制日志輸出的頻率或者在輸出前判斷tud_cdc_connected()。6.4 運(yùn)行驗(yàn)證把編譯好的 UF2 燒錄進(jìn)板子后插到電腦上。Windows 會識別到一個 USB 輸入設(shè)備或 USB 串口設(shè)備。如果是鍵盤示例你在文本編輯器里點(diǎn)擊一下光標(biāo)位置按下板子按鍵文本編輯器里應(yīng)該會出現(xiàn)對應(yīng)的字符。如果是串口示例打開設(shè)備管理器找到新出現(xiàn)的 COM 口用串口工具連接應(yīng)該能看到板子打印的日志信息。你也可以在樹莓派上做同樣的驗(yàn)證。樹莓派插上這塊板子后系統(tǒng)會識別出/dev/ttyACM0或/dev/ttyUSB0用screen /dev/ttyACM0 115200打開串口就能看到板子發(fā)送的數(shù)據(jù)。這種“樹莓派 RP2350 開發(fā)板”的組合在很多物聯(lián)網(wǎng)項(xiàng)目的原型階段都很實(shí)用。7. 常見問題與排查思路在實(shí)際使用中尤其是第一次接觸 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 后程序不運(yùn)行固件本身異常、板子沒有正確重啟、燒錄文件不對重新進(jìn)入 BOOT 模式燒錄換其他 UF2 驗(yàn)證LED 不亮引腳號錯誤、GPIO 配置錯誤、板載 LED 損壞查看原理圖確認(rèn) LED 引腳用萬用表測量MicroPython 無法進(jìn)入 REPL固件沒燒成功、串口端口選擇錯誤重新燒錄 MicroPython檢查設(shè)備管理器端口號使用 USB 串口時程序卡死CDC 緩沖區(qū)滿、電腦未打開串口終端連接串口工具限制 printf 輸出頻率公頭插入樹莓派后板子供電不足樹莓派 USB 口供電限制、線材問題使用帶外部供電的 USB Hub下面挑幾個重點(diǎn)展開。7.1 插入后電腦沒有反應(yīng)這是大家遇到的第一個坎??赡苄杂腥惖谝还^接觸問題。有些 Type-C 公頭因?yàn)橥鈿す畈迦牒鬀]有完全卡到位VBUS 或 D/D- 接觸不良。可以稍微用力推緊或者換一個 USB 口試。第二板子處于某種未激活狀態(tài)。如果之前燒錄過異常固件可能會禁用 USB 功能。這時按住 BOOT 按鍵再重新插入 USB強(qiáng)制進(jìn)入 UF2 燒錄模式看電腦是否彈出 RP2 盤符。第三電腦 USB 口本身有問題。臺式機(jī)前置面板的 USB 口供電不穩(wěn)可以先插到主機(jī)背面接口試試。如果手邊有其他開發(fā)板也可以對比驗(yàn)證。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è)備單獨(dú)供電但要注意電氣隔離和共地問題。7.5 排查 checklist遇到問題不要慌按順序檢查插上板子后電腦有沒有彈窗提示設(shè)備管理器是否多出 USB 設(shè)備或 COM 口按住 BOOT 鍵再插是否出現(xiàn) RP2 U 盤是否燒錄了正確的固件文件串口工具選擇和波特率是否正確板子是否有明顯發(fā)熱、異味等異常換一臺電腦、換一個 USB 口是否能復(fù)現(xiàn)大多數(shù)問題都可以在這幾步里找到答案。8. 最佳實(shí)踐與工程建議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ù)邏輯代碼。如果項(xiàng)目比較大還可以把板級配置做成 CMake 選項(xiàng)在編譯時通過-D參數(shù)指定不同硬件平臺。8.3 合理使用 printf避免阻塞問題在 USB CDC 模式下printf是通過 USB 協(xié)議棧發(fā)送的。如果電腦沒有打開對應(yīng)串口或者 CDC 緩沖區(qū)滿了printf可能會阻塞 MCU 運(yùn)行。在調(diào)試階段沒有問題但在產(chǎn)品原型或長時間運(yùn)行場景中一定要控制日志輸出頻率比如每 100ms 打印一次而不是在死循環(huán)里快速打印。8.4 Type-C 公頭插拔的小技巧這類開發(fā)板的公頭直接焊接在 PCB 上機(jī)械強(qiáng)度取決于焊盤設(shè)計(jì)和外殼。插拔時不要只捏著公頭左右搖晃應(yīng)該拿住板子兩側(cè)垂直方向用力。頻繁插拔后如果發(fā)現(xiàn)接觸不良可以用酒精棉簽輕輕擦拭公頭觸點(diǎn)不要用硬物刮擦。8.5 安全邊界與合法授權(quán)RP2350 可以做很多 USB 設(shè)備模擬實(shí)驗(yàn)比如模擬鍵盤輸入、實(shí)現(xiàn)自定義 HID 協(xié)議。這些功能本身是正常的開發(fā)技術(shù)但請務(wù)必只在你自己擁有或明確獲得授權(quán)的設(shè)備上進(jìn)行測試。未經(jīng)許可在他人電腦上模擬鍵盤、自動輸入、繞過登錄驗(yàn)證等行為可能涉及安全和法律風(fēng)險千萬不要嘗試。8.6 用 Flash 存儲和日志記錄關(guān)鍵信息RP2350 的 SRAM 雖大但掉電丟失。如果項(xiàng)目需要保存配置參數(shù)或運(yùn)行日志建議使用外部 Flash 存儲。在開發(fā)早期就設(shè)計(jì)好參數(shù)存儲結(jié)構(gòu)比如使用 JSON 文本或固定二進(jìn)制格式并做好讀寫校驗(yàn)?zāi)鼙苊夂笃诠δ軓?fù)雜后難以遷移。8.7 定期備份固件和 SDK 版本開發(fā)板固件、pico-sdk、MicroPython 固件這些組件的版本變化很快。今天能編譯通過的代碼過幾個月可能因?yàn)?SDK API 更新而報錯。建議在項(xiàng)目里記錄 pico-sdk 的 commit 號。保留編譯好的 UF2 文件作為備份。重要工程使用 git 管理源碼。鎖定 MicroPython 固件版本不要隨意升級。9. 總結(jié)與下一步方向從芯片層面看RP2350 是一顆很值得投入時間學(xué)習(xí)的雙核微控制器尤其是它同時支持 Arm Cortex-M33 和 RISC-V 這一點(diǎn)能幫你同時打開兩條架構(gòu)知識線。從開發(fā)板形態(tài)看微雪 RP2350-USB-CM 雙 Type-C 公頭/母座的設(shè)計(jì)非常巧妙——公頭解決供電和通信母座保留擴(kuò)展可能特別適合 USB 外設(shè)開發(fā)和無線的桌面實(shí)驗(yàn)。本文帶你把 C SDK 和 MicroPython 兩種開發(fā)方式都走了一遍從點(diǎn)亮 LED 到 PWM、ADC、UART 再到 USB HID 和 CDC 串口示例。代碼和配置都可以直接復(fù)制使用但記得根據(jù)你手上的板子原理圖修改引腳和配置項(xiàng)。接下來你可以往這幾個方向繼續(xù)深入研究 RP2350 的 DMA、PIO、硬件定時器做更復(fù)雜的外設(shè)控制。嘗試編譯一個 RISC-V 版本的固件對比 Arm 和 RISC-V 在編譯產(chǎn)物和運(yùn)行時的差異。使用 TinyUSB 實(shí)現(xiàn)復(fù)合 USB 設(shè)備比如同時做鍵盤和串口。把這塊板子作為傳感器采集節(jié)點(diǎn)插在樹莓派上跑一個小型數(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
返回資訊列表
1769国内精品视频| 中文久久爆乳| 午夜天堂精品久久久久91| 青苹果影院男人的天堂| 7777奇米影视久久| 欧美日韩免费专区在线| 亚洲诱惑天堂 | 日本精品五区| 性爱久久| 亚欧美综合网| 日韩精品一二三四| 一区AV| 久久亚洲婷婷| 巨乳特殊服务按摩| AA丁香综合激情| 欧美97视频| 亚洲中文字幕精品一区| 99re3这里只有精品| 992大香蕉| 日韩激情中文字幕有码| 96超碰网| 成人在线日韩| 999 久久久| 日韩欧美午夜一区二区| 久久草视频污视频| 夜夜影视四色| 91久久久亚洲| 国产suv精品一区二区四区999| 国产精品爱欲| 超碰成人免费| 岛园激情| 一区二区三区日韩欧美| 丝袜AV一区二区三区| 超碰97人妻| 婷婷五月天在线观看| av草草在线电影| 亚洲 自拍偷拍 欧美| 97超碰巨乳| 亚欧毛片基地国产毛片基地| 丁香五月天久久精品视频一区二区三区| 亚洲国产日韩欧美熟妇在线| 另类老少妇| Av手机版天堂网| 久久动漫精品视频这里只有精品| 在线观看亚洲专区| 91 欧美| 欧亚综合一卡二卡中文字幕| 成人26uuu| 国产性刺激| 国产成久久综合片| 久久99久久99精品天美传媒棢·纸:. | 粉嫩小泬久久久一区二区| 人人摸.人人色| 国模久久在线| 18一区二区三区| 国产午夜福利电影免费在线观看 | 国产日韩欧美亚洲精品95| 日日干夜夜欢| 久久久啊啊| 日本日逼高清| 99999re| 四季AV综合网址| 日韩A优精品在线观看| 欧美色91| 欧美黑人性猛交91| 清纯唯美亚洲| 国产一区二区成人av在线播放| 国产精品懂色tv影视免费观看| 婷婷五月天激情四射| 久草综合网| 免费9 1久久| 国产精品成人无码av无码免费| 色噜噜综合网| 大屁股熟女一区二区三区| 欧美在线|亚洲| 啊啊啊免费| 噜噜噜久久亚洲精品色情| 五月色网| 国产日产精品久久快鸭的功能介绍| 青草香蕉网| 色色婷婷五月天| 日本不卡一区二区| 精品国产乱码久久久| 久久有码| 男人天堂2012| 亚洲图片欧洲图片aⅴ| 亚洲丝袜综合| 日韩专区久久久| 18一区二区三区| 91色色色| 精品性爱一二三区| 91社区伊人| 狠狠躁久久躁| 四虎在线播放| 狠日欧美| 丰满少妇乱子伦精品无| 吻戏激情性巴克| 日韩激情啪啪| 97中文天堂| 人夜夜精品网站香蕉嫩草| 日日超碰亚洲| 亚洲诱惑| 久久只有精品一区二区三区| 国产欧洲精品亚洲午夜拍精品| 婷婷五月丁香五月| 99热99色| 丁香五月婷婷色| 国产 亚洲 丝袜 制服| 激情抓乳插进去啪啪啪日韩 | 国产高清视频无码在线| 亲子敌伦对白在线播放| 操国产逼| 亚洲97成人在线观看| 校园春色亚洲色图| 84YTCOM性无码| 黑白配性爱AV成| 日韩精品一区,二区 九九...老司机| 成人网欧美风情| 久久理论字幕视频| 天美传媒在线一区| 熟女网站最新| 激情文学 亚洲图片| 校园春色宗合网| 久啪| 91狠狠综合久久| 精品一区二区三区蜜桃| 热久久这里只有精品| av线电影| 亚洲综合中文字幕有码| 青青久久久| 精品视频一区二区| 国产女人视频三四五区| 亚洲无码一区成人免费午夜| 狠狠色伊人亚洲综合网站色| 国产视频三区四区| 无码99| 国产精品黄色三级av| 一二三四区电影| 牛黄色久午久| 熟女中出视频| 国产aⅴ无码片毛片一级网站| 台湾佬激情综合| 色欲人妻一区二区在线| 啊啊啊在线看| 96麻豆精品一区二区三区| 激情小说在线视频| 免费在线观看国内色片网站网址| 激情六月天| 3571色综合一区二区二区| 日本一二区免费| 精品一区二区三区四区女 | 久久婷婷色综合一区二区三区| 97玖玖人妻| 久久中出在线| 麻豆色约约| 久久99国产精品| 上特色A在线| 操逼逼一区视频| 中文字幕日韩人妻视频一区二区三区| 无码99| 99国产天美| 2019亚洲男人天堂| 亚洲色图综合| 日韩激情毛片一级久久久| 天天做日日做天天欢。| 亚洲日韩肥臀视频在线观看| 黑人干亚洲| 91n欧美| 国产无码高清操逼视频| 伊人色综合欧美| 亚洲欧美综合网| 欧美精品成人一区二区在线观看 | 久久九七| 欧美裸体美女日麻屄| 黄色十八禁| 国产超碰人人爽人人做| 欧美日韩精品一区二区三区高清| 人人艹亚洲| 亚洲美女av无码| 欧美91久久久久| 日韩欧美字幕亚洲一区二区| 亚洲干B| 综合五月天| 婷婷色一区| 日韩欧美大力操| 少妇无码av专区线| 午夜呻吟欧美| 试看日韩黄片| 狠狠操狠狠插| 亚洲欧美内射| 国产中文精品一区二区在线观看| 爱射综合| 一级二级三级黑人无码| 欧美后进式| 9 1超碰九色| 亚洲综合另类小说色区亚洲成av人片在www| 成人午夜视频免费播放| 四虎在线播放| 3D污黄视频在线观看| 欧美日韩人人早| 91天天综合日韩欧美| 乱伦系列一区二区| 330Dv国产女人终合视频极品人与兽| 玖玖久久久| 五月丁香六月婷综合成人综合 | 久久久久久久免费A片国产成a人亚洲精∨品无码 | 熟妇亚洲一区二区三区| 12一15性XXXX粉嫩国产| 动漫爆乳3D奶水一区在线观看| 校园春色亚洲无码| 91精品女厕偷拍视频| 国产精品网站免费| 最新岛国大片| 蜜臀无码一区二区| 日韩黄色电影网站| 97超碰色情| 色情婷婷| 91九九| 男人的天堂在线有码| 高颜值美女口爆高潮浪叫| 偷拍自拍在线视频观看| 九久久精品| 成人日本视频人妻在线| 超碰在线在公开超碰在线在公开| 久久久久久AⅤ无码免费肉站| 精品一二三区女同| 欧美一区二区一级岛国大片| 天美国产三级传媒| 久久人妻| 热热色色综合| 天堂种子在线www网资源| 日韩熟女无码| 国产品精品自在在线午夜免费| 综合久久久久久久综合网| 九久久九精品视频| 久操网线| 麻豆九九九| 粉嫩少妇自慰在线| 江都AV在线| 亚洲激情网一二三四区| 婷婷五月天丁香| 99九九精品| 老司机射| 九九探花视频在线观看| 国产伦乱91| 欧亚乱色熟女一区二区| 国产理论视频在线播放| 丰满人妻无码一区二区三区| 午夜AV人气不卡| 日韩综合成人免费视频| 国产一区在线观看无码AV| 国产一区二区三区高清视频| 大屁股人妻女教师撅着屁股| 樱花蜜乳av| 日本人妻伦在线中文字幕| 老外又粗又长一晚做五次| 六月婷婷五月丁香| 成人五月香网在线| 亚洲综合一| 色哟哟av网址| 少妇人妻在线| 美女裸体无遮挡永久免费观看网站| 精品人妻视频一区二区三区蜜桃视频| 国产黄a三级三级三级av在线看| 91久久18禁| 人人九九精| 久一区久久蜜桃| 久久av无码| 久久美女福利是上海美女| JULIA一区二区三区在线播放| 日韩美脚一区二区网站| 成熟熟女国产精品一区二区| 极品色综合| 日韩黄片影院| www.av在线观看| 中文字幕版| 加勒比伊人影院| 欧美 亚洲 另类 综合| 97色操| 眼镜人妻101.com| 亚洲一区二区精品福利| 国产欧美一区二区| 欧美,日韩,中文,另类| 成年人免费观看网站| 色臀av| 丁香九月激情啪| aaaa少妇高潮大片| 99蜜桃臀亚洲成人在线观看| 国产在线播放成人免费| 亚洲激情久久| 男人的天堂视频精品乱在线| 欧美日韩性爱操大逼| 国产激情视频在线观看| 大香蕉啪啪啪啪在线| 东京热视频网| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | av天天在线观看| 国产情色第一第二页在线观看| 91欧洲国产成人久久精品网站| 色色五月婷婷| 久久国产乱子伦精品免费女,网站| 大屁股xxxxx| 久久精品高清无码一区| 丁香五六月啪啪| 亚洲精品久| 精品人妻一区二区三区在| 色 婷97| 欧美性爱免费短视频| 综合久欧洲| 亚洲精品少妇| 91色插| 99精品视频在线观看免费| 亚洲色天堂九9| 色婷婷综合网站| 欧美一区二区三区不卡高清视频| 99www.bibizy香蕉资源国产一区二区三区高清 | 人妻精品一区二区三区| 日本综合久久| 伊人专区一区二区三区| 18禁中文字幕| 欧美精品双插| 国产女人高潮视频| 精品成人av一区二区三区在线| 欧美91精品国产自产| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 9ⅰ久久久天天| 天天日少妇逼AV| 日本女优在线视频福利| 欧洲欧美视频一区二区| 搡老熟女免费视频| 久久久新亚洲AV| 亚洲天天影视综合网| 欧美一区二区情色| 蜜桃久久综合视频| 丝袜 亚洲 偷拍| 天天日天天色| 日本一级黄色电影| 99免费在线视频| 校园激情狠狠四射| 日本免费一区二区不卡| 人人摸人人舔一区二区| 中文字幕国产在线天堂| 日韩综合色网| 欧美啪啪天堂| 精品国产乱码久久久久久久| 久干网| 亚洲有码 视频一区| 天天操人人操狠狠插| 天天爽天天操| 秋霞免费无码视频日韩A片| 欧美AAAA黄片| 91热热色| 9久9久9久9久视频网站| 日韩噜噜69| 好爽,再快点啊哈嗯嗯嗯嗯| 精品国产精品一区二区| 九九热在线视频| 五月丁香激情综合| 婷婷色播婷婷| 国产激情av女片自拍| 九九干| 国产一级高跟丝袜| 特级丰满少妇一级AAAA爱毛片| 在线色导航| 国产精选三级在线观看| 午夜一区二区三区国产| 熟女乱3伦999| 囯戸精品高潮呻吟旡码| 操操逼视频| 五月丁香激情四射| 九九视频黄色片| 9色国产精品一区粉嫩| 久久免费9| 亚州欧美色图| 素人一区二区三区日韩| 国产强奸超碰AV| 日韩AV片| 欧美少妇高潮久久91| 天天操天天日天天干| 劲爆欧美人妖三区91| 国内操逼视频二区| 水滴偷拍| 黄色片一区二区三区四区五区| 亚洲精品天堂久久A∨51成人漫| 一级特级aaaa毛片免费观看 | 香蕉免费一区二区三区不读| 丝袜视频网国产90| 国产家庭乱伦表演| 免费啪啪啪网站18岁| 欧美专利1区2区3区4区5区免费| 操逼精品视频| 国产无马在线| 床上啊啊啊一区二区三区| 亚洲中文字幕日产无码久久| 亚洲第一页色网| 天天躁日日躁成人字幕aⅴ| 美日韩成人| 日本欧美色| 啊啊啊好舒服视频| 美女被艹尤物视频| 热久日综合| 天天日骚逼熟女| 一区二区三区免费岛国片| 日日夜夜骚| 日韩精品在线视频,日韩精品……| caoni国产亚洲av| 九九九网页| 狠狠干91| 色哟哟511老熟女| 天天日日日射| 一级二级三级黑人无码| 欧美日韩操逼嗦吊| 欧美精品欧美精品系列| 国产91乱伦| 日韩人妻操B| 日韩十八禁| 最新欧洲欧美日本激情网站| 99999精品| 国产蜜臀精品一区免费尤物| 搡老女人老91二区| 国产超碰| 国产熟女无套内射| 亚洲一二三精品久久网| 日韩国产精品人妻无码久久久| 青青操青娱乐| 十八禁黄色| 丁香五月激情啪啪| 久久精品操| 一色网男人的天堂| 成人一级性爱| 99re在线视频这里只有精品| 人妻嗯啊啊在线播放| 青青草在线视频美女| 97人人干| 少妇无码av专区线| 中文字幕第95页| www.91色综合| 欧美大波激情xxxx| 加勒比伊人综合| 在线观看精品国产免费| 亚洲自拍青操视频| 97精品国产97久久久久久免费| 丝袜狂射91| 久99久视频精选| 日韩欧美俄罗斯A片| 69av一区二区三区| 97se综合网| 一区二区三区高清天码| 天美传媒AV在线| 在线强奷到舒服的无码视频| 精品二区久久| 骚鸭AV| 亚洲aw毛茸茸在线 | 欧美日韩第一页| 狠狠入| 久久精品日韩专区免费观看| 久久久av爱| 91在线色综合| 欧美性爱五月天| 亚洲精品aa久久伊人| 日韩日本欧美在线观看| 91网站18在线| 日韩影片中文字幕一区二区三区| 久99久视频精选| 亚洲黄色视频在线观看视频| 精品欧美不卡在线播放| 九九九久久久| 96一区二区| 99热精品在线观看| 九九热精品视频六| 大但人体久久久久| 日韩91网| 91春色| 清纯唯美综合| 91亚洲人| 神马久久午夜| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 亚洲精品黑丝| 国产精品在线免费| 激情色图| 1769国内精品视频| 黄色AAAAA欧美| 精品久久97| 亚洲老司机123专区| 亭亭在线资源| 日韩人人精品| 1769成人国产精品视频| 波多野42部激情无码喷潮| 婷婷五月天成人网| 久久中文字幕一区不卡| 青青青青操国内视频在线| 男人的天堂日韩| 日本高清熟女久久一区| 久久久久久久久久久久久久9999| 九九人人操| 久久综合五月天| 日本一级性爱| 亚洲熟女中文字幕在线| 色情综合| 久热久| 欧日a| 日韩中文字幕在线视频观看| 中文字幕精品一区二区精| 在线无码视频| 亚洲中文国际强奸字幕 | 张柏芝国产一区在线观看| 精品传媒在线一区| 神马午夜久久| 国产亚洲精品一区二区三区| 黄色片一区二区三区四区五区 | 日韩精彩视频| 俺也射| 日韩成人人妻网站| 夜夜嗨一区二区三区直播内容| 亚洲少妇视频| 超碰97亚洲| 免费精品无码一级毛片牛牛影视 | 日韩人妻精品| 国产中午字一暮区| 91精品人妻一区二区三区蜜臀| 九九九九精品精| 蜜臀99久久精品久久久懂爱| 国产成人亚洲精品无码最新在线| 中文日本免费高清| 牛牛久久国产精品视频一二三| 黄色不卡视频| 天天欧美| 先锋影音av先锋一区| 欧美另类精品xxxx| 高潮的A片激情扒开一区| 91社操逼| 成人免费福利在线观看| 久久午夜伦| 四虎免费看黄| 成人无码欧美一级A片狼牙直播| 一区二区不卡视| a一区二区三区乱码在线| AV电影在线播放| 亚洲另类色图片| 久久视频,这里只有精品| 激情一区二区| 欧美精品xxxwww| 67914亚洲精品| 欧美综合在线91| 综合五月天| www.亚洲黄色| 五月丁香激情综合网| 97干色天堂| 夜夜嗨一区二区三区三州加勒比| 浓厚中出中文字幕在线| 日韩av影片在线观看| 黄色污污污污污污网站| 少妇天堂网络| 天天影视网色欲色香| 人人搞人人插人人操| 自拍大香蕉乱插| 东北老女人的激情视频| 日夜精品| 无码最新| 裸体美女免费看网站青草| 四虎视频在线观看| 亚洲精品国语在线播放| 操逼片中文| 亚洲天堂另类美腿| 久久在肏| 免费精品99| 欧美大片一区二区三区 | 自拍欧美| 九九九999久久久网站| 亚洲最新a在线观看| 影音综合网| 外国91| 免费看黄片现成| 伊人四虎综合| 三级网色| 9999伦理视频| 东京热男人的天堂| 青青国产精品在线| 一区二区影视| 丁香五月激情综合| 97伦综合| 伊人色综合网电影| 中文字幕一区二区三区四五区| 高清无码 国产精品| 色天使大香蕉| 亚洲综合另类| 欧美后进式| julia国产在线| 美女黄频a美女大全免费皮| 天天影视网色欲色香| 亚洲国产婷婷在线播放| 精品人妻一区二区乱码一区二区| 国产欧美日本亚洲精品| 另类亚洲图色| 日韩综合无码色欲vv| 欧美激情超碰777| 日韩啊V| 久热色情精品| 欧美日韩国产成人高清| 97激情97激情| 中文字幕一区二区三区字幕| 欧美日韩国产电影| 国产理论视频在线播放| 日本精品久久久久久久| 国产女人高潮嗷嗷嗷叫小说 | 操逼www.| 在线中文AV| 一级片在线观看高清无码| 色综合加勒比四四季| 超碰国产精品无码| 美女丝袜激情小说| 婷色五月| 五月婷亚洲精品天堂| 久久久9品一区二区三区| 明星性猛交ⅹxxx乱大交| 色97| 夜夜操美女| 新精精品久久精品| 激情久久久| 蜜桃久久一区二区| 91超碰人人| 人人玩人人添人人澡免费| 四虎在线免费视频| 日本色色网| a片自拍直播视频| 色鬼在线综合| 91三级理论片播放器| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 极品AV网站在线观看| 亚洲制服欧美另类内射| 78久久| 久久一本大香蕉| 国产免费一区二区在线A片视频| 97中文综合| 色婷婷综合久久中文字幕雪峰| 国产精品女久久久久av爽| 精品人妻av区天天看片| 欧美激情久| www.狠狠操| 1024人妻熟女一区二区三区| 啊啊啊网站| 97久久国产精品| 久久久99久9| 日日摸夜夜夜夜爽| 日本性感人妻91| 亚洲中文字幕久久无码精品| 99热导航| 人妻激情另类| 日韩乱伦影音先锋| 亚洲美女av无码| 国产成人啪一区二区| 校园春色欧美色图| 可以看的av| 强奸乱伦日韩AV| 十八禁啪啪视频| 午夜福利合集| 锕锕好爽 死我在线观看| 青青草日本无码| 激情综合五月天| 亚洲一级特黄大片在线播放91| 神马麻豆福利院| 精品超碰色| 亚州色图狠狠干| 澳门人妻久久| 天天综合,91综合永久| 色综合网1| 久久久久久国产手机AV| 国产美女销魂在线观看不卡| 日日超碰亚洲| 青草一区二区| 天天插夜夜爽| 青青草精玖玖69精品| 日韩久久三区| 欧洲色| 丁香五月激情综合国产| 国产懂色精品国产av| yiqicaoav| 欧洲精品二区| 国产99热| 91宗合网| 91亚洲综合在线| 加勒比色99999| 欧美综合自拍亚洲综合图| 久久国产999| 91 亚洲情侣偷拍 久久| 久久国产精品91| 色色婷婷五月| 色婷婷狠狠18禁| 啪啪一区| 香蕉综合网| 看看小穴| 九九九九九九九九九九九免费国产| 亚洲中文字幕网| 99激情视频| 午夜大香蕉| 校园春色综合| 人人澡人人爽人人精品| 人人人人人人少妇| 久久色激情一区二区三区| 欧美日韩99精品麻豆传媒| 日韩亚洲美女一区久久| av在线人气| 亚洲色图20p| 亚洲成人妻日韩在线| 亚洲一区二区 麻豆传媒| 国产第11页| 亚洲自拍青操视频| 啊啊啊啊啊啊在线| 亚洲中文字幕熟女| 欧美色视频在线| 欧美十八禁网站| 亚洲成人一区二区精品| 99精品在线播放| 蜜桃久久综合视频| 亚洲视频小说| 综合情欲网| 九九热三级片| 国产欧美日本亚洲精品| 亚洲AV成人无码一二三久久| 欧美日韩操逼动图| 偷窥自拍亚洲天堂网爆| 厕所偷拍在线| 欧美成人一区二区| 亚洲成人ab| 亚欧毛片基地国产毛片基地| 欧美成人一级免费电影| 婷婷久久大香蕉| 九月丁香婷婷| 久噜噜| 欧美激情内射| 无遮挡男女激烈动态图| 日韩欧美国产高清视频| 欧美AB在线观看| 欧美日韩另类字幕中文| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 免费?级毛片无码?∨蜜芽试看| 国产一区二区三区导航| 色蜜AV| 亚洲美女 晚间男人天堂 | 手机在线视频国内精品| 丝袜美腿欧美| 秋霞福利网| 丁香婷婷五月| 国产小u女在线观看| 国产天天骚| 96超碰网| 一本一道波多野毛片中文在线| 夜夜嗨一区二区| 精品999日本| 精品熟妇视频一区二区| 国产拍偷精品网站| 午夜福利精品| 亚洲蜜臀懂色| 天天射夜夜骑| 日本日皮视频逼| 丝袜综合色图| 亚洲图片另类| 国模精品一区二区三区苹果色戒| 日韩精品99久久久久久中文字幕 | 亚洲精品色| 亚洲 欧美 日韩另类 麻豆| 日本不卡高清视频| 日韩综合无码色欲vv| 伦伦成年午夜免费视频| 欧美日不卡| 福利天天都操| 国产51色综合久久免费| 狼人综合婷婷激情四射 | 久久免费精彩视频| 久久一本大香蕉| 久操电影| 久久精品视频久久久| 亚洲第二页| 岛国片在线观看视频亚洲| 午夜精品久久久久久久99热影院| 99最新日韩偷拍视频| 亚洲va有码在线天堂| 操我啊啊啊啊啊| 丁香九月婷婷| 二色av| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 熟妇女伦乱视频视频| 国产福利小视频高清在线观看| 亚洲不卡av在线| 日韩熟女操逼| 91丝袜美腿网站| 青青草依人大香蕉| 操一区| 国产精品一区在线播放| 欧美日韩香蕉| 日日摸日日碰| 偷拍自拍在线视频观看| 欧美综合网1| 久久三| 国产欧洲精品亚洲午夜拍精品| 啊啊啊啊啊啊在线| 一区二区日韩欧美久久| 麻豆天美在线| 久久久久久久人妻| 9Ⅰ超碰| 97福利视频| 久久久青青草| 国产13区| 97亚洲综合影院| 日本色色色| 久久精品人妻一区| 欧美激情 日韩精品| 日本精品网站在线中文| 美女毛片999| 久久91视频| 熟女一区二区三区四区| 狠狠色婷婷7777久| 亚洲97超碰| 超碰 av 女人天堂| 韩国黄片aaaa| 91熟女视频网| 超91综合网| 日韩欧美大力操| 96精品一区| 免费观看欧美日韩操逼视频| 白丝一区| 日本97久久久精品| 一区二区三区黄片免费观看| 国产青青美女玩逼视频| 国产欧美日韩精品中文| 青青草一区二区高清无码视频| 97免费在线视频在线观看| 国产传媒午夜理伦精品| 蜜臀va69| 淫淫总合网| 日韩人妻有码免费视频| 欧美日韩亚洲五月天婷婷| 99久久网站| 国产午夜在线观看| 欧美黑人168页欧美黑人167| 色婷婷五月综合| 午夜啊啊| 亚洲色性情三级| 美中日韩无码| 四方色播| 久久精品成人一区二区三区蜜臀| 开心五月深爱五月| 免费AV中文网在线观看| 国产欧美后入| 熟妇熟女视频一区二区三区| 免费观看国产小粉嫩喷水精品午| 我想要啊 啊 啊| 久久欧洲| 91久久久久久久| 91午夜无码| 人妻丝袜一区二区三区在线| 91久久18禁| 婷婷综合激情| 大香蕉久| 操b在线观看| 中文字幕在线免费观看| 亚洲精品 欧美精品| www.婷婷| 最近2019中文字幕国语免费版| av毛片aaaaa免费看| 热久久无毒不卡| 色色99| 天天日天天舔天天喷天天射| 乳欲人妻办公室奶水| 婷婷五月天激情四射| 大白逼三四级| 歐美性天天| 91N欧美| 国产三级电影免费观看| 尤物黄色在线观看网站| 97色欧洲| 99re热| 久久久久久久78| a久久| 国产精品老师| 26uuu国产日韩综合在线观看| 风月影院十八禁| 日曰骚久久精品| 色噜噜人妻av中文字幕| 精品二999| 午夜福利在线视频1000| 国产日韩精品一区二区三区| 亚洲男人bt天堂| 亚卅熟女乱色| 美国一区二区免费视频| 久久超碰日韩精品| 青青草这里只有精品| 极品一区二区三区免费| 久久成人网站| 日本最新1区2区3区| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 人人么人人操| 黑人猛交| 97爱爱爱| 偷拍精品一区二区三区| 国产免费黄色一级大片| 极品销魂美女一区二区| 一区在线精品中文字幕| 91亚洲欧美| 亚洲国产精品无码AV久久| 青青操国产夫妻| 91亚洲网| v91av| 色综合加勒比| 99久久久无码国产精品性啊聊| 久久免费少妇| 精品人妻中文字幕高清| 可以免费看黄片的视频| 综合网欧美| 伊人国产成人av网站| 国产精品免费1区2区视频| 三级日韩一区二区三区| 免费αV在线视频| 性爱乱伦视频免费| 夜夜影视四色| 国精精品无码一二三区水多多| 久久东京伊人一本到鬼色| 视频在线观看免费一区二区三区 | 99啪啪视频| 夜夜嗨一区二区| 厕所偷拍在线| 午夜精品99久久久久传媒| 欧美日韩免费专区在线| 欧美亚洲涩涩| 中日992视频| 91啪啪| 性暴力欧美猛交在线直播| 人妻啪| 天天干天天狼在线视频| 禁片 高清 在线观看视频网站| 黄色乱论网站| 蜜臀久久久国产| 亚洲精品久久久久久| 国产精品熟女一区二区三区| 亚洲天天更新| 国产三级资源在线观看| 免费的黄片wwwwww| 一区二区三区四区色图| 亚洲综合在线高清| 超碰97首页| 亚洲久久久久| 思思热免费在线视频| 欧美成人都市人妻| 久久夜夜夜夜| 日韩三级av片| 男人天堂电影院| 少妇无码av专区线| 中文字幕第页| 久久久111| 亚洲欧美综合图片| 亚洲同性aV综合| 日韩综合97P| www欧美91| 日韩在线地址一| 香蕉热人人精品| 啪啪啪大香蕉| 内射黑丝袜| 校园春色五月天| 精品视频免费在线一区| 丁香六月天| 欧美91久久久久| 国产后入| 在线观看中文av字幕| 91精品国产综合久久久蜜臀| 亚洲精品一二三四区| 亚洲中文字幕一区| 老司机午夜精品视频| 国产一级137片内射麻豆| 午夜男女爽爽爽在线视频| 国产男女无套97| 999精品女人| 中文字幕狠狠玩| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 国产97av| 日本免费一级AAA大片器| 免费观看有码高清视频| 97精选久久| 91深夜夜| 一区二区三区国产精产| 午夜经典| 欧美日韩操逼嗦吊| 亚洲人在线成线成人| 成人九九| 欧美三级中文字幕hd| 欧洲天天在线| 国产精品另类一区大香蕉| 国内外内射高清视频| 色婷婷五月综合激情中文字幕| 超碰免费欧美7| 青春草莓视频在线观看网址| 97干在线视频| 亚洲资源吧| 國產尤物AV尤物在線觀看| 久悠悠av| 亚洲丝袜少妇在线| 五月综合久久| 日韩欧美偷拍美女视频| 欧美一二三级精品在线| 78p欧美| 精品无码久久久久久久杏吧| 自慰白浆在线观看| 国产免费一区| 超碰国产精品久| 麻豆天美国美国产| 不卡在线观看视频| 成年女人18级毛片毛片免费观看| 午夜AV污污污| 在线欧美69V免费观看视频| 大香蕉国产中文自拍| 操逼操2| 久久久艹艹艹| 亚洲自拍偷拍视频在线| 婷色五月天| 大香蕉中文| 欧美狠狠操| 亚洲?V无码专区在线电影| 精品久久久不卡一区二区| 亚洲阿v天堂无码z2018| 2017大香蕉国产精品久久| 欧洲久久一二线| 嗯嗯嗯嗯啊啊啊好紧好大| 欧美v亚洲v综合v国产v妖精| 91色五月俺来也| 久久亚州精品成人Av无| 啊啊啊啊啊啊啊在线| 日韩欧美午夜视频在线| 女生看匆91网站| 麻豆精品久久久久久久| 不卡中文字幕aⅴ在线| 成熟熟女国产精品一区二区| 国产资源中文字幕在线| 啊啊啊在线观看免费视频| 日韩欧美成人性爱在线| 日韩无码服务区| 欧亚性爱啪啪| 国语精品av| 麻豆国产原创AV色哟哟| 欧洲亚洲国产综合在线| 国产性感在线观看| 国产福利在线视频网站| 国产午夜福利合集| 91久青| 亚洲AV无码AV吞精久久久久| 日日躁夜夜躁狠狠躁超爽| 亚洲A色| 日韩一级特黄av毛片| 少妇内射视频| 丁香六月婷婷久久综合| 国产精品99精品视频网站| 97chaopenrihan| 丁香五月婷婷基地| 国产传媒午夜理伦精品| daxiangjiao你懂的| 久久人妻视频| 色九九九九九九| 青草av在线| 一区二区三区国产在线播放| 欧美猛交黑寡妇中文字幕| 亚欧国产无码精品在线| 久久综合九色综合欧洲98| 亚洲男人的天堂在线看| 日韩有码一区三区| 欧美18老人禁| 青青草原伊人网| 日本欧美色| 91精品综合久久久久久五月丁香| 涩涩涩综合| 麻豆天美在线| 欧洲亚洲综合| 久久久久久久久久黄色网| 九九99精品| 人人搞人人插人人操| 久久久91福利姬| 天天日天天射天天干| 色人久久| 乱伦一区二区三区‘| 又粗又长又大国产不卡| 97超碰色中文字幕| 青青草色情网站视频| 久久一二三四五六七八九区区区| 99国产在线 精品 视频| 天天日天天操天天射河南省| 都市激情人妻一区二区青青操视频| 日本黄 R色 成 人网站| 国产操逼视频在线观看| 男人的天堂va| 性欧美999| 超碰97极品9| 日韩丝袜高跟制服在线观看| 夜夜操av亚洲一区二区| 日韩免费人妻色情网站| 亚洲制服欧美另类内射| 日本潮催一卡操| 亚洲综合20p| 四虎在线视频| 啊啊在线| 97亚洲欧美日韩| 精品国产嫩穴视频| www.狠狠| 超碰av在线| 六月丁香久久| 国产亚洲色婷婷久久99精品91葵花宝典| 永久免费av无码网站国产app| 91亚洲网| juliaann欧美丝袜办公室| 九久9热| 亚洲精品97在线| 美女在线H91| 自拍盗摄一区| 亚洲色堂免费视频| 女优免费一区二区永久| 色五月激情网| 色播丁香| 亚洲AV无码天美传媒一区| 九九色影院| 婷婷伊人网| 国产原创自拍| 九色 人妻 大香蕉| 黄色AV影视| 91麻豆天美国产欧美日| 翘臀vidoes| 国产少妇与亚洲av| 人妻天天爽夜夜爽精品2| 一区二区 日韩 欧美 国产 传媒| 久久熟女人| 亚洲 图片 欧美 色图| 97 国产一区| 又摸又舔在线观看网站| 国产伦精品免编号公布| 蜜臀在线免费观看在线免费观看| 91四海无码日韩欧美| 美女t无毒不卡不卡| 网友自拍第1页 | www.色操逼| 97最新在线播放视频| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 日韩精品-原创伙伴| 亚洲黄色| 97干97色| 亚欧无码线免费观看视频| JuliaAnn丝袜熟女系列| 国产熟女无套内射| 成人国产视频在线观看| 欧美人与动性人交a| 免费一级特黄特色大片在线观看看| 国产日韩精品人妻久久久久色欲网站| 日韩欧美国产一区二区三区四区| 美女熟妇色| 在线国产福利网址导航| 久久婷综合| 人妻一区二区三区| 97色涩| 999九九九九国产动| 2020中文字幕在线观看| 人人妻碰人人免费| av日韩手机在线影视| 91亚洲黑人| 久久久久ab| 97碰碰色| 精品一区二区在线针对华人免费观看这里只有精品免费观看 |