日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满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
返回資訊列表
国产人妻精品久久久一区二区三区| 九九热视频在线观看| 亚洲黄色网址| 欧美色日本| 蜜臀AV网站| ji熟女.com| 99热婷婷一区二区三| 亚洲。日韩。欧美| 天美AV片| 五月天婷婷基地| 熟女激情综合网| 96久久久久| 欧美一二在线| 久久免费老司机精品| 大香蕉视频一二三区| 超碰色97| 搡老熟女国产1000部| 色婷婷激情| 欧美精品精品一区二区| 另类亚洲一区二区三区| 青青草色AV| 啊啊啊不要好爽日韩无码一区| www久久99| 久久久久久AⅤ无码免费肉站| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 日韩中文字幕国产| 五月丁香久久| 老熟妇一区二区三区…| 熟妇视频一区二区三区在线| 久久风骚城市| 天天色怡春院| 九一综合网| 国产剧情在线| 极品粉嫩少妇视频| 91美女视频直播| 粘花网06av视频| 国产原创精品| 欧美色997| 婷婷五月影院| 色5月婷婷| 中日韩久久久| 人妻一区视频| 欧美精品91| 囯产精品久久久久久久久久梁医生 | 久久系列| 九九九九九九九九九国产精品| 99热18这里只有精品| 麻豆熟妇乱妇熟色A片在线看| 国产天天骚| 亚洲精品蜜桃久久久一区二区三区| 综合欧美激情网| 99色热国产视频精品| 人人操人人93| 91少妇| 国产sv美女内射| 婷婷91| 久久岛国| 国产农村妇女精品| 人人操人人色网| 性夜影院爽黄A爽免费动漫| 男同专区一区二区三区在线| 婷婷丁香熟妇综合网| 精品福利视频| 超碰1997| 91色伦| 久久亚洲一区女同性恋中文字幕| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 男人的天堂,欧美亚洲另类国产日韩,日本高清一区二区 | 中文字幕天天天天天| 91九久| 青青草原综合久久大伊人精品| aaa淫乱视频| 激情四射五月天| 少妇天堂| 日韩黄色av中文字幕| 巨爆乳一区二区爆乳区| 久久久久久AV无码免费网站| 高凊专区人人操| 操逼999| 亚洲人精品久久久| 熟妇综合一区二区三区| 日韩成人电影AV| 殴美,日韩国产伦精品| 色999;丁香五月| 激情丁香五月婷婷| 欧美乱色| 91网站在线播放| 午夜毛片亚洲精品片国产久久久| 日韩性爱毛片操骚逼| 插日本熟女视频| 婷婷六月天| 亚洲欧美中日韩| 久久天堂网| 国产一国产一级毛片古装| 亚洲图片婷婷五月天| 操99| 国产精品在线一区二区| 78操B| 国产无码三级视频在线观看| 日本一级性爱| 骚妻少妇精品性色无码四色A V| 亚洲精品97| 免费强奸av| 人妻精品一区二区全免费| 久久99久久99精品天美传媒棢·纸:. | 超碰亚洲欧美日韩无| 超碰地址97| 久久免费少妇| av凤凰久久久| 天天操熟妇| 亚洲综合999| 无码av永久免费专区网站| 天天干2区3区| 欧美色图片欧美色图| 91老熟女| 97人人射| 久久精品无码一区二区三区| 日韩精品黄片免费观看| 日韩无码服务区| 思思热在线视频免费| 国产超碰国产97| 伊人久久亚洲色欲综合网站| 日韩无码三级影院| 欧美内射少妇| 亚洲无992tv| 综合色色网| 国产又大又粗又长视频| 91精品伊人久久久大香线蕉91| 日日夜夜骚| 日韩电影在线观看网址| 欧美狠狠鲁| 精品国模无码| 一及黄久一点| 国产精品嫩草久久久久| 蜜桃一区二区三区| 一级啊性爱在线视频| 亚洲 欧美 另类 日韩 人妻一区| aaaa黄片| 人人妻人人澡人人爽人人精品浪潮| HEYZO高无码国产精品227| 欧美白嫩女HD| 一级啊性爱在线视频| 亚洲综合色男人网| 日骚逼视频| 91操操| 久久久中文| 69精品少妇一区二区三区蜜桃| 久久久四区| 色爱欲亚洲| 亚洲一区在线观看欧洲 | 日韩欧美传媒一区国产| AV天天在线观看| 亚洲熟女av中文字幕| 91久久国外网| 你懂的在线观看区国产 | 久热影视| 天天躁狠狠躁av| 无码乱人伦中文视频| 激情四射五月天| 国产亚洲精品自在线亚洲情侣| 中出20p| 激激五月| 偷拍自拍在线视频观看| 97精品网| 亚洲清纯唯美| 97天天爽| 亚洲日韩美国人妻| 色综合天天爱去电影网| 动漫片子网站3黄| 你想操日本小逼吗| 亚洲毛片基地专区| 久久久久久免费电影| 久久麻豆一区二区| 最新日日夜夜天天干干| 欧美日韩另类字幕中文| 日韩性爱电影一区| 日韩免费簧片| 日本熟妇自慰性高潮一区二区三区| 综合啪啪| 国产精品亚洲天堂网址| 久久国产成人精品国产成人亚洲| 91超碰碰在线| 67194无码不卡| 91干熟女| 久久亚洲精品成人av| 男人的天堂一区| 天操天操夜操夜月操月年年操| 婷婷中文网| 天天操人人操狠狠插| 大逼色网站| AV中文字幕剧情1区2区3| 天天日少妇逼AV| 91av一区二区在线观看| 91人妻少妇| 狠狠热这里都是精品| 九九综合久久| 国产网红精品| 午夜无码精品免费看性色| 欧美草草高清日韩视频| 欧美日韩国产精品久久色婷婷| 天天操天天射青青草| 色欲日韩欧美在线一区| 国产性久久久| 五十路三级片| av毛片aaaaa免费看| 精品国产乱码久久久久久日本公司| 麻豆黄色五月天| 免费视频无码| 天天综合网国产| 在线观看黄色电话| 国产精品无码AV网站| 久久这里只精品免费福利| 91少妇高潮| 男人天堂免费| 97热视频在线观看| 全国男人天堂网| 国产免费一区| 俺也射| 蜜桃臀久久| 免费亚洲国产精品久久一区| 日韩不卡网操逼中文字幕日韩| 久久9亚洲| 操穴国产| 亚洲成人精品久久久| 99999精品视频| 超碰人人乐97| 国产专区路线| 97超碰色屌| 97视频www| 超碰97极品9| 丝袜美腿操av| 成人小说另类在线| 无码人妻一区二区三区色欲aⅴ| 1240青青草一区二区三区视频天爱| 国产精品噜噜噜日日日| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 亚洲成人av色网| 久热无码| 亚洲日产专区婷婷| 亚洲自拍青操视频| 91成人18| 精品国产91内射久久| 一起草三级AV电影在线观看 | 毛片视频白嫩| 久久久中文版| 欧美在线干| 99超碰网| 久热最新在线杭州| 妇女性内射冈站HDWWWCOM| 高清国产精品福利网站| 99国产精品视频尤物| 日韩乱伦视频| 色九月综合| 天堂亚洲精品久久老牛| 综合久久99| 中国大陆国产高清AⅤ毛片| 操逼操网| 三级片大波波| julia国产在线 | 四虎AV无码| 国产熟妇一区二区| 久久久性| 欧美顶级黄片AAAAA在线免费看| 可以免费观看的AV| 欧美A√综合网| 密臀在线视频| 日韩欧美成人性爱在线| 色五91| 美女干逼2| av天堂电影网| 999亚洲国产视频| 九色 人妻 大香蕉| 人人妻人人澡人人爽人人精品浪潮| 日日超碰亚洲| 国产精品青草综合久久| 人妻熟女一区二区三区在线| 呦呦一区| 综合免费无码中文| 亚洲少妇诱惑| 久男人久久| 香蕉国产精品麻豆亚洲欧美日韩| 激情第四色| 亚熟hd视频在线| 中文字幕蜜乳av| www.av在线观看| 久久久禁| 国产精品一区二区校花| 久久久∴| 日本操逼视频不卡直接放| 91美女中出| 超碰97欧美日韩| A 天堂| 激情综合久久| 東南亚性呦成人伦理资源在线视频| 美国精品国产精品| 国产吹潮女在线观看| 欧美中文字幕精品人妻| 日韩一级二级| 好湿好紧视频| 亚洲精品人妻吞精av| 久久久久久裸体| 黄色无码高清黄色无码网站| 爱射综合| 久久久久少妇| 99操碰| 国产日韩欧美| 日韩欧美俄罗斯A片| 内射黑丝袜| 8050午夜少妇无码| 99热精品在线观看| 九九激情网| 亚洲欧美变态| 人妻少妇久久久| 0755午夜福利视频| 日韩AV电影网站| 少妇精品| 国产大片精久久久久久| 国产精品一区二区久久精品| 男人天堂2019亚洲| 久操精品| 久热久操| 婷婷五月天色色| 91熟女网| 色五月婷婷色| 天天视频黄| 熟妇艹鸡八| 国产精品久久久久久久毛片1| 伊人操操| 亚洲蜜桃V妇女| 99精品九九九九九九| 91狠| 精品九九国产无码| 2020中文字幕在线| 99色综合| 岛国AB视频| 国产吹潮女在线观看| 天天日少妇逼AV| 翔田千里AV无码秘 三区| 丝袜无码a片| 亚洲黄网在哪免费看| 中文字幕激情小说| 久久人妻四季| 一块操欧美性爱| 日韩欧美传媒一区国产| 加勒比av网| 色播五月丁香| 亚欧视频在线| 欧美91精品国产自产| 日韩美女高潮喷水视频| 亚洲激情网| 99精品国产户外露出| 欧美亚洲国产日本在线,久久精品国产| 色狠狠综合| 污色区网站| 欧美综合色图网| 99re只有精品| 欧美日韩理论一区| 色五月亚洲| 一本精品日本在线视频精品| 色拍偷亚洲| 久久侵犯人妻爽爽爽| 日韩人妻中文视频| 日韩激情毛片一级久久久| 亚洲日韩97| 91电影色诱| 国产性久久久| 九九精品无码专区免费| 亚洲色婷婷综合久久久久中文| 国产精品。| 口爆综合网| 免费?级毛片无码?∨蜜芽试看| 欧美 亚洲精品首页| 我中文字幕6区| 超碰 av 女人天堂| 青久操| 久久婷婷在线观看视频| 久久怡红院| 国产精品自拍xxxx| 日本熟女免费視颖| 日韩无码操逼片| 97色碰| 久久丝袜| 亚洲最新a在线观看| 天天色黄色影院天天操| 精品人妻中文字幕高清| 国产精品麻豆成人av| 中文在线视频| 久久精品视| 亚洲国内精品成人不卡| 久久天天躁日日躁狠狠躁| av情色影音| 欧美亚洲国内自拍| 黄色网址久久精品欧美喷水| 黑丝内射一区二区三区| 长长久久88视频| 99热99色| 天天日天天舔| 亚洲91少妇| 青青草在线视频欧美| 1024久久高清视频| 伊人久久大香线综合无码| 欧色综合| 亚欧美综合| 欧美日韩国产精品久久色婷婷| 五十路人妻在线| 色五月激情AV在线| 亚洲欧美91√| 日韩有码专区| 日韩一二三区| 久操网无码在线| 久久国产逼| 操迟操逼在巾线Fre看| 久久亚洲欧美中文字幕国语| 欧美日本中字另类在线| 亚洲中文一区二区三区| 久久免费精品视频免一| 99天堂网| 啊啊啊不要啊啊受不了了视频在线| 性爱AV天堂| 青青草中出视频 | ?亚洲伊人伊成久久人综合网| 9999免费精彩视频| 澳门成人网站久国产日韩| 另类亚洲一区二区三区| 熟妇人妻精品一区二区视频色欲| 白丝被操91| 人人贴人人摸| 92人人操人人| 久热这里| 免费网站观看www在线观| 亚洲男人的天堂在线看| 欧美色吧综合| 一级特黄aaa大片在线观看成人一级片在线观看| 不卡中文字幕aⅴ在线| 精人妻一区二区三区| 亚洲午夜精品久久久中文影院| 天天综合~91| 中日韩熟女| 亚洲午夜福利在线影院| 91久久国产综合久久| 91亚州欧美| 老司机福利社视频在线观看| 人妻一区二区三区四区视频 | 97视频网站在线观看| 成人精品一区二区三区| 人妻天天爽夜夜爽2| 曰本特级特黄特色黄色A级网站高清在线免费看 | 精品视频久久区| 超碰在线综合97| 韩国一级做a久久久久| 国产高清MV操逼视频| 丁香五月婷婷基地| 久久久久久久久久久久欧美日| 精品日日人妻| 欧美黑人精品一区二区| 欧美综合加勒比在线| 亚洲人妻久久久| A一区片| 99色热| 99国内熟女露脸视频| av网站在线看| 上海一级黄片| 国产精品久久久九九九| 看日韩黄片| 大香蕉啪啪啪| 东京热,男人的天堂| 奇米四色网| 天天综合,91综合永久| 色婷婷一区二区三区久久午夜| 亚洲天天综合| 国产尤物AV尤物在线观看不卡| 91丝袜美女| 亚洲一区二区 麻豆传媒| 91久久九九精品国产综合| 色情五月丁香| www.久久超碰| AA丁香综合激情| 夜夜国自区| 强奸国产在线| 日韩不卡一二三四| 中国东北熟女老太婆内谢| 综合久久2017| 美女自卫慰黄网站免费| 国产久久一区二区| 色色色欧美| 色阁阁AV综合网| 亚洲一区二区三区不卡国产欧美| 97视频7| 亚洲密乳AV| 久久精品国产精品亚洲艾通辽熟妇 | 亚洲揄拍网| 人人干人人操人人爱| 第四色亚洲色图| 色激情综合网站| 色999人与兽| 欧美综合网| 人妻在线中出视频| 久久这里只精品免费福利| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 国色综合天| 日本天天操| 欧美狠狠| 五十路熟女工口| 91人妻做a观看视频| 伊人亚洲综合| 午夜婷婷| 日本爽爽爽爽爽爽免费视频| 青草香蕉网| 思思热在线视频在线| 青青国产在线拍揄自揄拍| 操逼逼一区视频| 日产123区精品免费观看| 殴美在线AⅤ| 9美女超碰在线免费观看| 亚州操操穴网| 天天色,天天干,天天干| 中文字幕精品三级久久久| 色播综合| site:sinbotex.com| 五月婷婷综合在线| 国产家庭乱伦性爱视频| 亚洲激情深爱文学小说网站| 999狠狠综合| 92一区二区| 亚洲 欧美 另类 日韩 人妻一区| 日韩欧美日韩| 欧美综合777| 亚洲日本韩国极品一区二区| 亚洲中文日韩欧美大香蕉视频| 青青操日韩| 日韩久久.一级黄色片| 欧美韩日精品资源| 欧美性生活综合| 污色区网站| 日韩精品国模| 超碰性爱97| 99国产精品视频尤物| 日韩天天综合| 国产精品久久久久久久久久久久久久久久 | 亚洲天堂7777| 亚洲熟女乱色一区二区三区| 91在线丝袜| 夜夜高潮夜夜爽| 欧美疯狂做爰xxxx| 超碰无码加勒比| av天堂电影网| 96一区二区三区| 啊啊啊啊二区好大| 任我爽视频在线观看| 自慰白浆在线观看| 日韩亚洲精品一区二区| 国内精品嫩模A∨私拍小视频| 熟妇女伦乱视频视频| 97干天天| 99国产精品久久久久久久成人热| 人妻少妇色综合| 久久精品国产亚洲AV高级北京| 2021国产成人精品久久| 亚欧洲日韩国产精品| 啊啊好多水| 久热91| 天天日天天搞天天干| 91狠狠综| 亚州综合网| 91色欧美| 国产搭汕a级片| 亚洲在线A| 久久久少妇诱惑精品视频| 亚洲一区亚洲天堂| 一级黄碟在线观看| 国产嫩草精品A88AV在线| 中文字幕在线观看视频www| 国产激情在线观看| 欧美熟女操屄| 欧美综合区| 久久精品亚洲成a人天堂| 强奸乱伦资源| 少妇高潮对白在线观看| 黑人黄片在线免费观看| 免费毛片在线播放| 久久九色| 99热精品在线| 午夜高清成人在线视频| 色爱综合网| 日本黄色大片一级视频免费麻豆| 在线播放一级无码视频 | 中国小夫妻勾搭露脸淫荡对白| 超碰午夜在线| 伊人网在线观看| 884t在线| 欧美亚洲一区二区久久久婷精品大包诱| 色五月综合网| 色噜噜国产在线| 亚洲天堂自拍| 日本熟妇精品九九| 亚洲少妇综合在线播放| 强奸乱伦av电影| 国产精品青草综合久久| 91视频国品一二三区| 黄页大片在线观看| 人妻社区男人天堂| 亚洲一二三| 97在线欧洲| 另类老少妇| 中文字幕第2页| 波多野42部激情无码喷潮| 无码高清国产AV| 亚洲天堂 视频你懂的| 中文字幕日韩综合| 黄资源| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 亚洲欧美在线丝袜| 少妇熟女1区2区3区| 久草视频在线视频在线视频在线观看| 人人透人人操| 欧美大香蕉97| 秘书高跟黑色丝袜国产91在线| 精品999999| 高清无码 国产精品| 天天天操天天天爱| 无码91| 3d成人精品一区二区| 97啪啪| 玖玖无码超碰| 国产人伦精品一区二区三区 | 熟妇高潮精品一区二区三区下载| 五月婷婷色色| 又黑又大又粗| 男人的天堂在线| 二男一女成人A片| 超碰91在线| 国产一区二区三区久久精品太古里| 天天干天天干天天干| 玖玖爱一区在线| 91精品国产一区三一| 欧美性,亚州色| 91亚洲青青草原精品1区| 亚洲久热| 蜜桃成人1区2区3区| 国产99 中文字幕日韩小视频| 国产二区视频在线观看电影| www.久久制服糖| 情色五月天网| 亚洲永久永久永久永久一级一级一级精品| 中文字幕在线观看丝袜| 美女视频尤物网在线看| 日韩性爱视频在线免费观看| 色五月婷婷久久| 熟女人妻av在线资源,黄色的资源| 国产欧美日韩臀| 免费国产电影一区二区| 国内91熟女人妻丝袜天天精品视频在线 | 综合久久婷婷| 中文字幕熟女人妻丝袜丝| 国产精品久久久久久久AV大片 | 国产精品久久久视频| 亚洲中文字幕av| 综合一区中亚洲国产成人综合精品 | 欧美一二三区四五区| 国产精品片| 啊啊啊好爽快点啊啊啊嗯嗯| 一本色道综合久久欧美日韩精品| 影音先锋国产精品| 亚洲色综网| 懂色AV蜜臀无码精品APP| 色女99一级片在线观看| 狠狠久久手机视频精品| 久久久999网站| 欧美性爱日韩高清| 久久香蕉超碰97国产精品| 人人做天天爱| 久日91在线| 亚洲制服aⅴ中文字幕| 新精精品久久精品| 日韩一级性爱无码| 少妇69中文| 无码外流操逼视频| 老女人老91妇女老热女| 福利在线黄片| 久久啊啊啊| 久久精品欧美一区蜜桃| 丝袜人妻av一区二区| 伊人精品视频| 另类一区| 婷婷激情四射| 中美日韩毛片| 18禁的网站在线| 亚洲人天堂| 成人老鸭窝人人在线视频| 久久久久久亚洲中文| 搡老熟女国产1000部| 国产操偷| 欧美超碰在线| 日本精品性生活久久久| 伦理片秋霞免费影院| 97天天操| 久久99精品国产| 国产99 中文字幕日韩小视频| 天天噜| 日本淫穴在线| 激情五月天色播| 国语对白露脸XXXXXX | 欧美热图99| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 麻豆60秒| 中国女人内射6XXXXX| 日本二三四区| 一区,二区,三区视频| 欧美一级黄片免费播放| 国产 日韩 欧美一区| 久久深夜无码| 91啪啪视频| 蜜乳成人AV| 九九干| 密臀AV在线| 操91| 国产女人高潮嗷嗷嗷叫小说| 91成人无码| 啊啊啊好疼| 台湾佬中文娱乐自偷自拍| 亚洲av成人精品一区| 无码精品啪啪啪一区二区三区三州| 95人妻爽爽人人做人人澡 | 亚洲国男人的天堂| 少妇干B| 久久这里只有精品9| 久久偷偷色综合蜜桃| 欧美三级免费伊人| 久久激情视频| 久久久久久国产无码精品| 欧美一区二区男人天堂| 91少妇高潮| 久久超碰av在线| 激情五月天丁香| 久久久无码av精| 久久双插| 欧美岛国精品在线观看| 欧美性五月| 日本男人插女人的逼黄色| 97蜜桃综合| 五月天激情网图片| 国产日韩欧美三级片| 淫荡熟女乱伦网| 人人做,人人操,人人摸| 97精品视频| 色综合大香蕉| 日本男人插女人的逼黄色| 久九干| 久久一区无码| 人人考人人摸人人干| 青青操综合网| 精品国产91av一区二区三区| 中文字幕天堂在线| 美女t无毒不卡不卡| 色阁阁AV综合网| 射丝袜大香蕉| 久操| 骚妻少妇精品性色无码四色A V| 亚洲AV乱码专区国产噜噜亚洲 | 国产美女91| 性欧美| 91九色丰满高潮| 日日日日做夜夜夜夜做无码97| 超碰98综合网| 综合天天。| 欧美最婬乱婬爆婬牲视频| 色综合20p| 风月影院男女十八禁| AV色图| 日本幼女18+| 国产精品久久泡妞网站| 精品91日日夜夜超清资源| 中文字幕丰满子伦无码专区在线视频最新| 久9无限国产| 丰满人妻被猛烈进入中| 黄片qw| 太久视频| 亚洲综合色网| 色月天AV导航| 中文字幕人乱码中文字的预防方法| 加勒比少妇AV婷婷六月天超碰超碰| 日韩在线人妻网站| 欧美国产有色电影| 国产AV天美传媒一区二区三区 | 色爽——AV| 日韩不卡网操逼中文字幕日韩| 加勒比综合九九99视频在线播放| 人人操人人射人人干| 天天影视之亚洲综合网| 射综合网| 亚洲好看强奸乱伦| 丁香五月性| 乱理日韩中文| 亚洲色棕合| 久久久久亚洲Av无码专区老牛影视| 欧美美女视频| 自拍偷拍草一草| 久久国产免费激情视频| 黄色av一区二区在线| 韩国久久97| 欧美论理片| 欧美日韩另类激情图片| 日韩操逼HD| 午夜高清成人在线视频| 五月丁香综合啪啪| 日日夜夜草草草| 91综合天天| 强奸乱伦亚洲第一页| 色婷婷五月综合| 亚洲 欧美 综合 91| 午夜性刺激视频免费观看| 精品人妻一区二区视频| 激情综合97| 精品一区99999| 1769一区| 一本一道人妻久久一区二区三区| 亚洲老司机123专区| 欧美第一页| 婷婷丁香在线| 久操av在线| 欧美天天干| 99精品丰满人妻无| 94色色电影网| 激情五月天社区| 九久久九精品视频| 综合色91| 国产成人无码网站在线视频| 日韩中文9| 女同女同恋久久级三级| 天美国产三级传媒| 欧美青青草视频| 麻豆国产97在线| 欧美日韩情色一区二区| 国产日韩怡红院| 国产精品操| 开心五月深爱五月| 四虎精品亚洲| 丁香六月东京热| 91欧美丨精品丨入口| 欧美第二页午夜| 免费观看欧美日韩操逼视频| 亚洲一级特黄大片在线播放91| 91热| 久久久久久中文版| 亚洲黄色a级片| 精品无码一区二区三区色欲| 国产精品麻豆免费视频| 人妻天堂三区| xxxx网站亚洲精品| 小少妇| 亚洲AV色图| 亚洲国产尤物yw在线观看| 992这里有精品| 中文字幕人妻丝袜乱一区三区| 亚洲一本大道中文字幕无码在线| 九九av| 偷拍自拍在线视频观看| 国产偷人妻精品一区二区在线| 999精品国产高清一区二区| 亚洲国产第一页综合视频| 巨乳特殊服务按摩| 国产一级黄色片在线观看| 国产精品视频| 国语国产操逼伊人AV网| 中国的操老妇女| 日日碰狠狠添天天爽超| 激情四射五月天| 亚洲AV无码AV吞精久久久久| 99国内熟女露脸视频| 老司机射| 亚洲天堂资源在线| 野狼激情网| a片偷拍视频| 欧亚日韩三区| 亚洲午夜福利视频| 91A欧美电影网站| 艹我哪美一区无码| 欧美劲爆第一页| 在线观看中文av字幕| 91日韩网站| 超碰国产情侣自拍网| 国产第12页| 碰人碰碰人人开房人肉| 九九aV| 麻豆国产97在线| 九九av| 婷婷精品| 人妻啪| 欧美熟妇亚洲版| 狠狠干,狠狠操| 国内亚洲高清无码| 国产精品丝袜久久亚洲不卡| 久久男女激情视频网站 | 久久性爱视频99| 午夜精品久久999热蜜桃介男人用| 十八禁视频网站| 手机在线大香蕉| yirendaxiangjiashipin| 乱伦av国产| 舔足天天操天天射| 日本九九久久99| 日韩人妻资源在线看| 97av在线观看| 欧美丝袜激情| 欧美顶级黄片AAAAA在线免费看| 巨乳特殊服务按摩| 91热情品| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 成人日本精品九区| 亚洲激情在线观看一区| 超碰午夜| 久久久久中出| 一区二区娱乐网站| 一本色道久久天天射天天干| 男人天堂毛片| 日本新免费二区三区| 91国产丝袜美女| 澳门成人网站久国产日韩| 一区二区三区精品视频| 100啪啪视频大全| 91综合天天看| 国产熟妇一区二区| 欧美在线官网| 亚洲AV免费在线| 日韩乱伦影音先锋| 亚洲欧洲日本精品中文a∨| 97久久国产精品女不卡| 欧美少妇内射| 嫩草一区二区在线观看| 欧美传媒| 成年无码动漫av片无尽在线| 亚洲中文字幕av| 中出后入| 啊啊啊好舒服好爽啊啊啊视频| 男人亚洲91首页在线| 婷婷五月天AV| 国产精品视频精品一二| av资源在线播放天堂| 熟女色综合久久| 久久男人精品| 国产高清成人mv在线观看| 少妇一区二区三区精选| 毛片久久| 国产精品久久久久久久AV大片| 最新亚洲黄色免费电影 | 久久久久久久国产a∨| 欧洲特黄毛片免费看欧洲毛片| 密臀在线一区尤物| 懂色AV网| 国产精品色哟哟| 亚洲精品男人的天堂| 看一级黄色视频| 亚洲人妻AV| 99热这里只有精品8| 色五月综合网| 美女被艹尤物视频| 开心六月色| 91热色| 婷婷色婷婷| 一本久道在线综合视频| 成年人网站在线免费观看| 人妻天堂网| 91高清欧美| 中文字幕丝袜| 久久精品高清无码一区| 日韩久久三区| 国产操逼逼网| 一级日本牲交大片好爽在线看| 一本大道青青| 欧美中字二区| 国产精品一区二区在钱播放| 亚洲熟女乱色| 天天看特黄的免费网站| 亚洲激情AV| www网站黄| 亚洲中文国际强奸字幕| 中文日本免费高清| 国产高清免费不卡av| 女人被男人桶爽视频网站| 国产一区二区免费福利片| 欧美的性爱网站免费| 强奸国产在线| 欧美黄色大香蕉一区二区| 欧美人妻少妇| 99无码狠狠久久| 高清国产性猛交xxxx乱大交| 精品久久99| 狠狠狠狠狠狠| 久久99精品视频| 人妻在线臀日韩| 一本大道青青| 啊啊啊无码| 91 丝袜在线播放| 狠狠中文字幕| 色999人与兽| 亚洲AV色图一区| 久久99草| 曰韩少妇无码| 91丝袜在线观看| 男人的天堂2019AV| 超碰97最新人妻| 曰韩人妻中文字幕在线| 全球成人中文在线| 欧中日成人免费影视| 亚洲视频精选| 天天干天天狼在线视频| 午夜啊啊啊| 日韩色| 日韩激情啪啪啪| 91丝袜在线观看| 丁香五月天激情综合| 啊啊啊啊啊好舒服视频| 九九人妻| www.伪伪| 国产精品对白内射| 亚洲性综合11| 日韩亚洲国产视频| 日本丝袜美腿人妻九九| 亚洲欧美综合网 | 激情小说亚洲| 夜夜爽爽爽| 久久久91| 91在线美女| 国产二区三区免费视频| 成人精品一区二区三区| 无码人妻丰满热妇又大又粗| 亚洲自拍小说| 国产女人高潮视频| 7777奇米影视久久| 97 国产精品| 天美精品av| 亚洲97超碰| 岛国艾薇凹凸视频天堂| 2019午夜福利视频| 成年人性爱日韩| 精品人妻视频一区二区三区蜜桃视频| 日韩无码操逼片| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 五十路六十路七十路熟婆| 激情开心五月天| 97亚洲中文| 亚洲情色在线| 少妇高潮99p| 免费的很黄很污的全部视频| 蜜臀久久99精品久久久久电影| 婷婷性爱| 欧美日韩亚洲一区二区在线观看| 国产精品久久久久999| 亚州操操穴网| 欧美特大AA级黄片| 97色视频在线| 国产精品 久久久精品一牛| 青草精品视频一日本久久久久网站| 超碰国产情侣自拍网| 日本人人操人人操| 一区操逼| 日韩视频中文字幕| 99草精| 91 国产丝袜在线播放-百度| 精品176精品2| 日本操逼aaaaa| 久久久久久久久九九久孕交| 99精品欧美一区二区三区桃色| 啊啊啊 在线| 激情露脸爱| 日欧毛片久久| 亚洲日韩东京热一区| 亚洲蜜臀精品视频久久| 一二三卡欧美日韩人妻免费精品| juliaann丝袜大战黑鬼| 日韩人妻精品久久久久| 国产91美女高潮| 丰满人妻一区二区三区免费,| 九九久久99| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 久久久穴999| 强奸少妇AV导航网| 亚洲免费日韩在线一区二区| 国产女主播视频在线观看| 台湾佬中文娱乐网久久久久久久久久com | …中文字幕亚洲乱,97人妻无码费视…| 久久超碰天天| 国产精品一区二区三区在线密挑| 色综合久久88色综合久久天天| 麻豆视频国产一区二区| 一区二区三区黄片免费观看| 国产一区二区在线电影| 久久99精品视频| 韩国一区二区精品亚洲| 精品人妻1237| 婷婷中文字幕| 69人妻人人揉人人躁人人精品| 操逼999| 亚洲天天操| 成人网站 免费观看| 日韩性色b| 久热精品在线| 97日韩| 免费观看的黄色的网站| 久操视频资源站公开| 这里只有精品视频| 97国产中文| 小视频国产| 黄色乱论网站| 蜜臀AV午夜精品久| 国产中文大片资源中文字幕| 丁香五月天激情综合| 狠狠躁AV| 香蕉综合网| 欧美美女自慰一区二区三区| 欧洲乱码一区二区| 禁十八久久| 久久精品一区一起草| 超碰在线综合97| 91伊人久| 成人女人国产| 黄片视频观看| 宅男91视频在线播放| 欧美精品系列| 天堂8在线新版官网| 国外91| 国产黄片精品在线| 久草新免费| 中国操逼无码| 麻豆久久久久久久久丝袜 | 精品在线观看视频在线| 热久日综合| 亚洲欧美国产其他二区| 人妻久久久久久久久久久久久久久| 最新国产亚洲精品精品国产亚洲综合| 免费福利视频中文字幕| 久操B网| 人人贴人人摸| 97超碰久| 国产热RE99久久6国产精品首| 青青草原成人| 人妻中文在线| 亚洲欧美成人网站AAA| 久久精品亚洲婷婷| 翔田千里AⅤHD无码| 久草精品一区 | 综合亚洲欧美| 欧美精品人妻视频| 岛国色情视频在线观看| 激情小说亚洲视频| 激情五月婷婷| 国产51色综合久久免费| 久久久精品一区二区| 九色97| 日韩欧美国产一区二区三区四区| 精品美女人人干| 色妺妺在线视频| 国产美女在线精品免费看| 日韩无码AB| 天天肏美女| 强奸乱伦亚洲第一页| 五十路成人在线视频二区三区| www.婷婷六月天| 四虎免费在线观看| 天天干1区2区在线|