国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲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
返回資訊列表
日日AAvv| 欧美性夜| 睡产熟女乱伦| 亚洲av热热色| 青青草在线视频播放器| 国模艳艳啪啪一区| 久久曰曰| 最近2018中文字幕在线高清第一页| 色色色天美视频| 懂色AV一区二区三区| 亚州综合图片| 久久亚洲欧美中文字幕国语| 91欧美丨精品丨入口| 97亚洲综合影院| 六月激情网| 久久激情婷婷| 少妇蜜汁| 亚洲一区二区三区春色| 天天看天天综合成人网| 国产成人精品网站| 人妻少妇精品一区二区三区| 欧美色图 色综合图| 超碰在线国产| 亚洲色天| 九一亚洲国产免费| 小草av不卡亚洲二区| 久久性爱视频免费看| 97精品国产97久久久久久免费| 亚洲高潮影院| 精品久久久无码| 国产97亚洲| 欧美综合骚| 久午视频| 一区,二区,三区视频| 乱伦熟妇一区二区| 国产精品久久久久久久免牛肉蒲团 | 日日骚一区二区三区| 国产一区二区精品久久99| 九九热超碰97亚洲最新香蕉 | 麻豆一区在线| 亚洲日韩精品在线播放| 亚洲国产美女久久久久 | 国产伦精品一区二区三区在线观 | 99久久精品无码一区二区毛片免费| 久久久亚洲精品电影免费看| 操B视频日韩无码| 78p欧美| 十八禁av无码免费网站APP| 日本久久综合| 亚洲av无码成人精品国产| 91久久久老司机| 97国产成人精品免费视频| 男人天堂无码| 淫淫总合网| 日日躁夜夜躁狠狠躁超爽| 婷婷五月在线视频| 家庭乱伦性爱av| 97精品国产精品免费观看| 偷看洗澡一二三区美女| 久久久久久一日韩字幕无码| 欧美亚洲清纯| 在线观看十八禁| 强奸乱伦亚洲第一页| 日本道人妻久久久在线不卡色视频| 天天拍天天操| 蜜乳Av成人片网站| 亚洲国产97| 第二页中文字幕| 久久永久无码人妻视频| 美女黑人91神马| 久久久97| 久久精品中文字幕无码l| 亚洲综合色图欧美| 亚洲资源网| 五月天激情小说| 亚洲熟伦熟妇AV无码春色| 日韩色女精品| 综合网久久| AAA久久| 91香蕉国产尤物视频| 久久久久久久久久久久久久久性生活视频| 人人操我人人干| 东京热,男人的天堂| 天天日日夜夜| 日韩欧美字幕亚洲一区二区| 欧美成熟性爱精品| 大香蕉淫人| 日韩人人精品| 亚洲清纯唯美| 欧美成人都市人妻| 首页中文字幕中文字幕免费| 蜜乳成人AV| 五月丁香黄色网| 我想要 啊 啊 啊| 在线观看无码三级少妇| 色九九九九久| 青青草在线视频美女| 青春草莓视频在线观看网址| 四色永久成人网站| 中文字幕av丝袜| 欧美性天天| 3028国产精品| 99色骚| 青娱乐淫乱1314| 日本天天人人狠狠在线日美女| 999 久久久| 91熟女丨91老女人| 99热99在线| 欧美日韩精品国产91| 久热这里只有精品9| 国产精品麻豆成人av| 午夜福利精品| 久草男人天堂| 久久男人精品| 中文乱码99| 亚洲综合有码| 中日高清无码操逼视频| 久艹99| 亚洲另类小说卡通动漫| 国产精品91一样| 欧美美女视频| 99中出在线| 精品久久久久久久| 午夜呻吟欧美| 91色人妻| 亭亭丁香激情| 婷婷丁香激情| 大香蕉综合| 凹凸精品熟女在线观看| 精品久久青青草| 妇女一区二区三区| 性爱视频久久| 亚洲国产丝袜熟女av| 国内外色色色色色成人视频| 久久精品国产亚洲av水密被窝| 亚洲午夜福利视频| 精品久久久久综合无码| 日本大片日本一区二区免费高清| 夜夜爽夜夜高潮夜夜爽| 啪啪视频mP4| 婷婷婷婷婷婷久久久久| 精品免费1| 亚洲日韩美女丝袜美腿人妻视频| 躁躁日曰躁2020| 超碰95| 日韩999| 中文字幕黄色一起草| 最新国产精品久久精品| 亚洲在线91| 人妻熟女字幕一区二区| 78精品| 青青爽| 91精品无码久久久久久久| 91丝袜美腿网站| 国产精品人妻免费精品| 麻豆国产第一| 秋霞曰韩R级| 人妻另类| 日本三级人妻a人妻一在线| а√天堂资源官网在线资源| 青娱乐大香蕉| 国产激情片在线观看| 九九九九九精品| 在线天堂999| 青娱乐国产精品| 欧美三四五区| 久久久久9久久久久| 影音先锋日本一区二区| 日韩日韩日韩-国产乱码精品一区二区| 黄片直播三级黄片两女一男| 伊香蕉综合久久久久久久噜噜噜 | 国产日韩无码一区二区三区久久区| 四虎视频在线观看| 欧美日不卡| 国产家庭乱伦性爱视频| 91中文字幕在线观看| 欧美图片偷拍| 69精品久久久久中文字幕| 日本精品一区二区三区四区的功能| 久久超碰亚洲人| 最新日韩黄片| 中文日本免费高清| 91中文字幕制服丝袜免费视频| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 精品九九九九九九九九九| 亚洲一区二区中文字幕| 韩日性爱av| 欧美亚洲图片| 亚洲影视综合| 插B在线观看| 91欧美长吊| 欧美黄色片在线播放| 日本精品九九九| 中日无幕一二三四区| 人妻精品一区二区在线| 高清无码一区二区三区| 欧洲在线性爱视频| 久久加勒比| 秋霞福利网| 白丝1区2区3区| 亚洲成?V人片在线观看福利| 日人妻视频91| 美女尤物人人操| 被操高清无码视频| 精品九九九九九九| 欧美的精品的视频| 欲色综合| 欧中美三级一区二区三区| 免费成人在线熟妇网| 国产怡红院| 黑人精品成人一区二区三区| 萌白酱自拍视频| 91人妻人人澡人人爽人人精品| 久热伊人| 欧美性高潮| 欧美亚洲宗合色性图| 亚洲精品日日夜夜52| 亚洲精品国产熟女| 亚洲第一黄色av网站| 老子午夜伦不卡影院| 国产91影院| 另类欧美| 欧美白嫩在线放| 久久嫩草国产成人一区| 福利天堂| 97在线观看视频| 日本淫色网| 大奶啊啊好爽| 粘花网06av视频| 2011国产精品| 日韩精品99久久久久久中文字幕| 成人日韩中文字幕| 嫩草黄页| 国产精品不卡少妇白| 91 国产丝袜在线播放-百度| 亚洲精品天天影视综合网| 人妻一区二区三区| 日韩钢筋无码高清啾啾啾| 熟女自慰久久久| 欧美色色色| 久久综合九九| 18精品一区| 男人的天堂在线2| 妇女视频网站| 91精品少妇搡搡搡| 亚洲自拍偷拍视频在线| 啪啪AV导航| 日韩av不卡在线观看| 免费看一级a性色生活片久久无| 大香蕉520| 激情五月婷婷| 超碰综合97在线| 亚洲 欧美综合| 中文字幕蜜乳av| 69少妇一区二区| 在线无码操| 国产成人亚洲精品自产在线 | 亚洲视频精选| 人人摸.人人色| 婷婷五月成人| 丝袜亚洲91| 777超碰| 波多野结衣一级视频| 国产免费永久精品无码| 大香樵伊人网| 久久久久斤小| 91性高朝久久久久久久久| 日韩探花精品在线视频| 色综合中文字幕不卡| 欧美日韩在线小说| 伊人网综合在线视频| 免费视频无码| 午夜无码熟妇丰满人妻| 老熟妇91| 亚洲欧美一区二区三区一猛片| www.91色综合| 人伦四五区| www.亚洲黄色| 韩国一区二区精品亚洲| 91老妇女| 自拍大香蕉乱插| 午夜福利在线视频1000| 99色网| av强奸乱轮| 日本狠狠干| 少好三P| 天天弄天天操| 青青草久久一区网| 超碰成人人人爽人人爽| 91狠| 色逼综合| 亚洲天堂电影精品一区| 亚洲丝袜综合| 天天在线91| 97超碰资源网| 九九玖玖精品| 婷婷五月天基地| 成人乱码一区二区三少妇| 色哟哟 日韩精品| AV女优男人的天堂| 亚洲天堂资源在线| 久久9999| 99视频自拍区| 欧美96交| 超碰人人干天天射| 欧美另类丝袜熟女| 91n处女在线观看| 久草资源欧美在线视频| 开心六月色| 国产11页| 97午夜剧场日韩| 日韩AV片| 亚洲,欧美,春色,另类| 俺去也婷婷| 天天干美少妇一区| 欧美黑人猛交春色影视大全| 成年女人一区| 大香蕉综合| 韩国三级三级BD在线| 国产农村妇女精品一| 久久色激情一区二区三区| 大香蕉综合在线| 丁香六月婷婷综合| 后X久久| 91久精品| 欧美亚州综合图片| 97天天在线| 少妇高潮喷水无套久久久久久| 国产av色网| 欧美色九九| 婷婷五月天激情四射| 国产无码久久高清| 日韩性爱1级片视频| 国产精品不卡av免费在线观看| 97欧美超碰| 国产女同在线观看视频| 日韩人妻播放| wwwss在线观看| 麻豆人妻精品一区二区| 婷婷色香| 亚州欧美综合| 国产一区在线播放| 26uuu偷拍亚洲欧洲综合| 日韩A优精品在线观看| 日本在线不卡一二区| 67914亚洲精品| 北京美女一区二区| 国产精品国产| 欧美v日韩v亚洲v最新在线| 欧美亚洲自拍另类人妻| 人人人人插| 午夜天堂精品久久久久91| 久久人妻四季| 国产欧美日韩臀| 国产91专区| 精品九区| 老司机射| 欧美天天谢综合网| 日本三级精品| 草草影院日本第一页| 五月综合激情| 97亚洲欧美日韩| 欧美宗合网| 国岛片视频| 老色69| 蜜桃丰满熟妇av无码区不卡| 黄页| 操婷婷逼| 久草男人天堂| 97无码视频在线播放| 日韩AC| 综合网久久| 亚洲中文字幕av| 日韩一级久久毛片| 亚洲人成网www| 99精品久久久久久| 在线人成亚洲视频免费观看| 亚洲色色色| 国产精品一级二级在线| 精品国产丝袜一区二区三区乱码| 亚洲国产高清福利视频| 97视频7| 久久av成人无码免费| 亚洲、日韩、综合、另类| 91骚熟女| 色欧美天天| 欧美线天码中字| 少妇人妻好深太紧了vr91| 亚洲AV无码天美传媒一区| 久草综合网| 亚洲色图欧美色图日韩色图| 神马午夜久久久| 青青草华人在线欧美在线| 午夜人人操| 偷窥自拍亚洲色图| 熟妇女伦乱视频| 综合色图区| 福利五区| 日本精品网站在线中文| 欧洲亚洲人妻无码中字久久三区四区| 好爽视频在线观看视频| 99热97| 亚洲欧美校园| 99热| 青青草中文字幕| 欧美黑人XXXⅩ高潮交| 亚洲色图第一页| 大香焦A片| 成 人 影视 一区 二区 三区 四区| 九九热精品| 隔壁邻居波多野结衣中文字幕 | 97久久超碰国产网站| 成人五月天丁香激情综合| 伊人影院中文字幕| 视频二区美腿制服人妻欧美| 啊…啊…操我用力操我| 无码不卡亚洲成?人片| www.97在线| 日韩av无码网站| 四虎884a| 免费看欧美美女黄色大片| 天天碰久久入| 国产一级αv免费看片| 久射吧| 大香蕉伊人久久| 久久久偷拍| 99热精品青草在线 | 欧美性色欧美| 超碰亚洲97| 国产精品一区二区手机看片| 日韩大香蕉精品在线视频| 国产精品嫩草影院免费| 亚洲色天堂九9| 日韩人妻一区二区精品| 中文操逼字幕| 黑人干亚洲| 加勒比大香蕉视频在线| 青青操网| 精品无码产区一区二| JIZZJIZZ国产精品喷水| 一级性爱视频免费在线| 中国熟女网站| 啊啊啊不要好疼视频| 国产一区二区三区高清视频| 男人的亚洲天堂| 99这里只有精品| 色操逼网| 日本一区二区中文字幕久久| 欧亚成人在线视频| 激情五月婷婷| 日韩性爱网址| 国内偷自视频区视频综合 | 无码视频一区二区| 色玖玖| 日韩无码操逼片| 东京太热男人的天堂久久久| 欧美一区二区传媒| 偷拍 精品另类 凸凹了四区| 亚卅熟女乱色| 伊人久久综合精品欧美| 日韩精品-原创伙伴| 天天摸夜夜操视频| 麻豆 欧美 日韩| 人看人人摸人人操| 啊啊啊免费视频| 中出后入| 欧美在线啊啊啊| 九九热免费视频| 欧美日韩激情无码专区| 国产 亚洲 一二三四| 蜜臀Av一区二区三区| 欧美日韩国产电影| 91 丝袜在线| 日本有码久久| 日日操丁香五月天| 国产啊v在线免费播放| 国产精品第一页国产大屁股视频免费区 | 亚洲另类春色| 老鸭窝在线视频播放| WWW.加勒比人妻一区不卡.com| 五月丁香亭亭| 亚洲第一在线视频| 九九色影院| 影音先锋乱| 熟女五十路一区二区三| 国内毛片无遮挡国产| 久久春色| 亚洲久久久久| 中文字幕三四区| 亚洲精品久久久久毛片A片拉屎| 暴力av在线| 人妻大香蕉| 免费亚洲国产精品久久一区| 天天激色| 一区二区三区美女超清| 中国一级αV| 色色色日本| 91久久九九精品国产综合| 亚州综合色| 白嫩少妇| a亚洲欧美色欲| 黄色成人网久久久久久| 9国产超碰| 亚洲无码一区成人免费午夜| 起碰97| 天美精品原创av片国产| 日韩性爱一级片| 大香蕉乱级| 色哟哟AⅤ| 中文精品一区二去| 亚洲AV无码AV吞精久久久久 | 色欧洲| 久久久久97| 99久久国产精品免费高潮| 黑人免费福利视频| 少妇一级婬片免费放一级a性色.| 狠狠中文字幕| 色青青久久影视| 大香网伊人久久综合| 国产成人亚洲精品自产在线| 超碰97起碰| 大香蕉99热| 97se综合| 欧美成人精品一区| 日韩av性爱在线播放| 加勒比在线观看一区二区| 精品性爱一二三区| 志村玲子视频一区二区| 国产天天骚| 国产成人主播| 72av视频| 国产精品久久久久无码Av网曝门| 国产亚洲精品农村妇女| 中文字幕精品一区二区精品| 人妻在线臀日韩| 日日骚精品视频| 婷婷精品久久av影视| 免费国产视频| 视频在线观看免费一区二区三区| AV九九| 蜜桃视频一区二区三区在线观看| 91新在线欧美| 麻豆精品.欧美精品.日韩精品.| 亚洲av噜噜噜噜噜噜| 搡老女人老妇女AAA一VU麻豆| 免费啪啪啪网站18岁| 97蜜桃综合| 亚欧洲一区二区视频| 黄骗免费网站| 亚洲第一成人影院色播| 欧美综合自拍成人自拍第二十页| 97精品97久久| 18禁看网站一区| 国产视频一区二区免费| 日产中文字幕2020| 特污精品女优骚货黄色视频在线免费观看| 久久精品午夜国产亚洲AV无码| 一区二区娱乐网站| 黄色不卡视频| 99少妇| 熟女人妇一区二区三区| 97这里都是精品| 九九热精品| 日本色色色色色视频| 久久一区无码| 超碰吊日色| 日韩亚洲中文字幕在线| 欧美日韩222| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 泰国AV在线观看| 九九九不卡| 亚洲 自拍偷拍 欧美| 天天综合~91入口| 亚洲风情综合网| 亚洲97久久精品亚洲| 婷婷香网站| 精品无码久久久久久久杏吧| 五月天综合网| 亚洲人精品久久久| 亚洲色 国产 欧美 日韩| 国内黄色精品| 97亚洲综合影院| 婷婷五月天成人| 亚洲伊人青青草| 欧美人妻精品一区二区| 久久久久亚洲一区女同性恋中文字幕| 色吧 综合| 日韩美女久久一区二区三区| 啊啊啊想要| 在线 制服丝袜中出 人妻| 国产一区二区精品久久久不卡蜜臀| 人人插人人摸人人| 偷拍片久久| 久久九九视频九九视频| 中出后入| 另类小色呦| 欧美激情黑人| 色情五月综合婷婷| 91性网| 色欧美天天| 久久久久99999| 啊啊啊不要好疼视频| 破苞ⅩXXX性无码动漫无码| 国产精彩女在线观看视频| 一类无码操逼视频| 欧美情色贴图| 91人妻Pr| 日本道不卡| 后入人妻一区| 欧美成人AⅤ大片在线观看| jiujiujiujingpin| av天堂5| 中文字幕AV中出| 欧美十八禁在线看| 精品91日日夜夜超清资源| 亚洲国产一区二区三区在线| 日韩免费福利在线观看| 亚洲十八禁止| 丁香六月婷| TS人妖另类精品视频系列| 久久久久密臀一区二区| 91成人久久| 国产AV中文| 夜夜狼人妻| 国产一区二区a毛片| 欧美亚洲韩国视频十五区| 婷婷综合五月| 岛国黄片网站| wuyechaopeng| 欧美性天天影视| 免费国产电影一区二区| 91欧美长吊| 浓厚中出中文字幕在线| 国产热av| 精品熟女一区=区三区| 九月丁香婷婷色| 无套后入双马尾| 超碰在线974| 九九黄色视频在线观看| 男人午夜天堂| 欧洲性人爱视频| 黄页大片在线观看| 久草网站免费在线观看| 国产精品扒开腿做爽爽爽视频| 日本蜜桃| 激情五月激情综合网| 激情 欧美 亚洲 小说| 国产三级中文字幕粉嫩 | 日韩一级免费性爱| 亚洲 欧美 日韩 国产一区二区| 狠狠干妹子| 亚洲码和欧洲精品激情系列| 日本性爰一道本| 综合第一页| 中文字幕伊人| 国产美女91视频| 亚洲一本大道中文字幕无码在线| 天天射天天| 91美| 偷拍片久久| 精产国品一区二三产品| a久久| 久久‘黄片视频| 狠狠色噜噜狠狠狠狠2018| 人妻精品一区二区三区| 日韩欧美中文字| 91电影色诱| 日本久久久久久久久| 麻豆啪啪啪视频| 超碰在线观看av不卡| 超碰97综合在线| 97超碰巨乳| 人妻熟女午夜精品在线| 蜜乳av首页| 日本Xx性爱| 国产亚洲精品无码三区| 国产综合日韩伦理| 视频不卡中文字幕| 亚洲欧洲综合| 综合五月天| www.acm成人黄色毛片| 嗯嗯啊啊好疼| 无码99| 日本 欧美 国产一区| 一区二区三区 日韩欧美| A 天堂| 精品人妻一二三| 超碰2017| 人人模人人看| 一级片视频啪啪| 很很操在线| 国产精品成人AV片免费看网站| 日韩啪啪视频| 大色综合| 偷拍精品一区二区三区| 精品九九| 成人午夜高潮av猛片| 久久97视频| 老熟女天天操| 久久久精品一区二区| 1024午夜激情男人的天堂| 日日噜噜夜夜久久亚洲一区二区| 99热 按摩 日韩| 欧美韩日精品资源| 日韩高清一二三| 在线五区| 青青久久艹| 亚洲一区二区在线观看91| 亚洲欧美电影| 91视频综合网| 久久中文字幕不卡人妻| 亚洲欧美在线观看无码| 欧美一区二区三区互相| 亚洲熟伦熟妇AV无码春色| 午夜传煤十二区精品| 精品九九九九九九九九九| 热热色色综合| 国产精品丝袜在线| 国产在线播放成人免费| 啪啪啪精品| 户外裸露刺激视频第一区| 大香蕉一区二区在线观看.| www.99中文字幕| www网站黄| 激情综合五月| 日本九九久久99播| 曰韩香蕉97| 啊灬啊灬啊灬啊灬高潮奶出了免费视| 亚洲日韩资源| 天堂无码| 天天做日日做| 五月天婷婷色| 动漫区日韩区欧美区| 91在线国产后入风骚翘臀美女素人| 欲香欲色综合天天伊人| 亚洲国产另类在线中文| 国产精品日韩在线一区| 国产女人与拘做受视频免费| 色婷亚洲五月在线观看| 中文字幕精品人妻丝袜| 密臀在线免费观看| 欧美小说区视频区| 精品欧美不卡在线播放| aⅴ日韩成人电影av在线免费看av大全| 成人AV在线电影| 伊人成人情色综合| 97超碰伊人| 日韩免费在线视频观看| 中文一区在线视频| 五月天色图| 成片免费播放| 欧美伦乱爱| 精品人妻一区二区三区四区不卡在| 秋霞成人一级在线观看| 玖玖资源综合在线视频| 天天看天天综合成人网| chaopen97久久| 操逼逼一区视频| 五月婷婷色色| 综合97久久| 蜜乳中文字幕a在线| 亚洲成人综合在线| 九一精品牛牛一区二区| 国产白丝av| 婷婷丁香成人| 9长久久精品| 东北少妇高潮zzzz| 长长久久曰曰夜夜成人网| 综合网久久| 激情小说亚洲色图| 精品成人动漫一区二区| 欧美亚洲第1页| 精品少妇高潮久久| 探花在线免费观看视频国产一区| 9999久久久久| 941超碰| 中文字幕在线免费观看2| 丁香九月激情| 曰韩香蕉97| 热久久国产| 精品一区二区三区蜜桃臀赵总 | 国模精品一区二区三区苹果色戒| 中文字幕日韩人妻视频一区二区三区交换夫妻| 亚洲日韩电影| 色99在线| 午夜操一操| 日本三级韩三级99久久| 国产精品操| 黄污污污污| 97精品网| 蜜桃精品一区二区三区ww | 黄色不卡视频| 免费日韩黄片| 嗯嗯嗯啊啊啊干死我吧| 吖在线不卡一区二区国产剧情 | 91老熟女逼| 免费观看网黄| 四虎国产成人精品免费一女五男| 日韩操啪| 青青草五月天| 国产大学生口爆吞精合集| 精品96久久| 亚洲精品蜜桃久久久一区二区三区| 麻豆AV一区二区天美传媒| 婷婷五月天福利| 97久久国产| 精品免费一区二区三区在线亚洲人成| 色淫网站优优视频| 大香樵伊人网| 日韩视频中文字幕| 欧美国产视频| 成人aⅴ一区二区三区| 熟女高潮合集-永久久久-成人AV | 久久久555| 红杏大香蕉| 尤物网站91| 国产女同性恋视频| 日本精品无码三级网站| 91久久18禁| 四虎午夜影院| 国产成人天堂| 亚洲中文一区二区三区视频| 欧美激色| 狠狠干狠狠色| 亚洲精品自拍| 大香蕉92| 吻戏激情性巴克| 精品无码一区二区三区色欲| 国产精品久久久777| 亚洲乱码尤物193YW| 精品人妻一区二区免费看| 极品色社| 岛国激情视频软件| 无码二级三级| 蜜桃在线观看一区二区三区| 亞洲久久直播| 色臀AV| 久久偷拍人| 亚欧高清v| 欧美综合自拍| JULIA人妻风俗店中出电影| 日韩欧美tv一区二区在线观看| 天天天做天天天爱天天天爽| 国语人妻精彩刺激| 久久精品人人做人人看| 热热色国产一二区AV| 一区二区三区四区色图| 十八禁av无码免费网站APP| 96一区二区三区| 欧美18禁91| 999熟女精品| 风骚少妇视频中文字幕| 国产av波波国产精品| 久久9 9 9精品| 欧洲亚洲人妻无码中字久久三区四区 | 色图四区| 亚洲天天精品| 日韩天堂av电影在线观看| 操逼操网| 午夜国产成人福利视频| 啪啪视频免费在线观看| 美女好片色日本| 蜜臀亚洲综合一二三四区| 色好看av| 夜夜福利| 久久久九九| 日韩欧美中文字亚洲慕| 五月天加勒比啪| 少妇丝袜在线观看AV| 黑丝少妇麻豆| 日日干夜夜操视频h| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 嗯嗯啊啊啊啊轻点视频| 9久综合网| 五月天婷婷欧美三区| 麻豆乱码久久精| 97自拍一区| 亚洲综合草草| 精品一级| 74成人在线| 操逼日批| 日本欧美国内在线| 日日骚 av| 亚洲Av诱惑| 探花一区二区三| 中文字幕aⅴ在线视频| 综合色99| 欧亚第一综合网| 人妻无码一区二区三区久久99| 亚洲日韩精品一区二区| 操逼日批| 天天干美少妇一区| 色色青青久久| 51久久夜色精品国产麻豆| 欧美做爰无码A片视频| 亚洲精品国产精品乱码不卡| 欧美激情在线观看视频| 激情抓乳插进去啪啪啪日韩| 任你草| 国产外初女出血视频| 中日韩免费看男女操逼大全| 日韩av在线免费网站| AV色天香在线| 99re视频在线播放青草| 日韩亚洲Av人人夜夜澡人人爽| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 性色高清在线| 风月影院十八禁| 五月天激情小说网| 国产精品农村妇女| 调教熟妇 久久久久久| 97超碰国产亚洲精品| 欧美麻豆成人同性GⅤ在线| 欧美激情片一区二区| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 欧美中文字幕一区| 永久电影三级在线观看| 一区二区三区四区五区高清无码永久视频| 久久国产乱子伦精品免费女,网站| 欧美日综合| 伊人操| 黄色AV影视| 亚洲性爱成人| av久日| 亚洲中文字幕网| 丁香色狠狠色综合久久小说| 欧美色三级片91| 国语少妇精| 老女人爆菊| 亚洲毛片久久| 亚洲视频,小说| 3d成人精品一区二区| 国产天天看| 亚洲乱伦图片视频| 97ai亚洲| 高清不卡一二三区视频......| 夜夜欧美| 无码高清操逼网址| 天天操夜夜操狠很操| 午夜福利免费福利视频| 久久性爱免费送| 国产原创精品| 久久久内射良家| 欧美性夜| 色官网色综合| 久热69九色熟妇97| 欧美亚州色的图| 亚洲色图欧美色图另类图片| 欧美91精品国产自产| 国产美女高潮| 亚洲日韩美女中文字幕乱| 亚洲 欧美 91| 亚洲国产精品久久久久婷婷青年| 9热9热综合网| 狠狠爱夜夜干| 三级日韩一区二区三区| www色色色com| 亚洲综合一| 日韩兔费看黄片| av九九| 久久久久9999精品九九九| 夜夜夜夜久久久久| a天堂视频| 天天天天天天天天综合| 精品视频一二三中文| 日本 欧美 国产一区| 国产白领连续中出在线播放| 欧美91精品国产自产| 另类小说五月天| 欧美九一精品久久久熟妇| 思思视频免费看网站| 日本免费不卡二区| 蜜臀久久99精品久久久久| 亚洲精品一区中文字幕乱码| 看看日B真人视频| 视频黄色国产一级| 日本新免费二区三区| 高清无码一区二区三区| 97超碰久| 日韩欧美午夜视频在线| 长久操视频| 色婷婷五月综合激情中文字幕| 九九亚洲色在线观看| 欧美黄色片AAAAA| 久久精品店| WWW.加勒比人妻一区不卡.com| 日本成人A片免费看| 国产AV人人夜夜澡人人爽麻豆| 26uuu国产免费观看| 日韩有码中文字幕女同性恋 | 欧美91在线+|+欧美| 97精品熟女少妇一区| 亚洲中亚日激情视频| 男人天堂婷婷五月天校园春色| 在线综合网| 人妻少妇久久中文| 日日狠狠久久偷偷色综合免费| 日本不卡二区| 综合伊人网12色| 91国产美女丝袜足交精品视频 | 蜜桃精品一区二区三区ww| 精品人妻中文字幕4399| 国产日韩美女小穴视频网站不卡| 99色综合| 大香蕉专区| 人人操人人干xxx| 国产欧美成人精品| 一区黄二区黄| 99视频内射三四| 人人操人人舒服| 精精品人妻一区二区三区| 久9久精品视频| 久久一二区四| 日韩三级一区| 色色色综合| 亚洲无码久久久久久久| 免费av高清无码| 九九综合九九综合| 人妻精品一区二区| 夜夜高潮夜夜爽夜夜爱爱一区| 天美传媒Av在线| 久久熟妇五十路一区| 麻豆视频test| 欧美视频在线第3页| 久久久成人国产精品无码| 第四色奇米影视777| 91老熟女视频| 免费岛国一级片| 91被操| 日韩av电影成人在线| 亚洲成a人v欧美综合天堂下载| 91精品人妻一区二区三区蜜桃| 天天天干977| 97干在线| 色y情视频免费看| 欧美极品美女aaaaaa级黄片| 欧美在线91| 午夜成人爽爽爽爽A片李冰冰| 人人搞人人插人人操| 涩涩涩综合| 强奸乱伦AV网站| 亚洲综合中文字幕有码| 亚洲日韩成人性爱视频| 亚洲蜜桃V妇女| 五月丁香激情综合| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 韩国一级婬片A片AAAAA| 高树玛利亚无码流出| 九九玖玖精品| 超碰97久久国| 亚洲欧美人妻| 欧美日韩国产中文精品字幕自在自线| 欧美性爱三区二区| 不卡超碰护士AV在线免费播放| 久久精品老司| 一区二区亚州激情久婷婷欧美| 女优大全 - 91n| 先锋色眉乱伦资源| 国产玖玖| 激情四射熟女丝袜| 蜜乳AV免费观看| 美女国产一区二区久久| 亚洲情色五月天 | 啊v在线观看视频| 久操网视频| 亚洲色欲一区二区三区| 97在线日韩中文字幕| 五月天久久综合网| 婷婷色一区| 曰本特级特黄特色黄色A级网站高清在线免费看| 久久国产精品m码| www.色综合| 日韩精品电影| wwwxxx日本爽| 日本精品免费一区二区三区四区| 久久黄人人爽视频| 99操碰| 嗯嗯啊啊啊好爽| 婷婷五月天激情小说| 亚欧操逼片在线观看 | 啊啊啊啊啊啊好湿好爽视频| 清纯唯美亚洲| 日本超碰在线国产一区| 麻豆91熟妇人妻中文字幕茄子| 女人被添高潮免费视频| 亚洲天堂久久| 国产欧美日韩一区二区三区| 中文字幕78| 殴美大黄片| 男人的天堂日韩| 性色av婷婷久久一区二区点复制| 久久久少妇诱惑精品视频| 蜜桃无码AV一区二区| 久久9999| 国内三级自拍小视频在线观看| 国产夫妻性生活视频| 污啪啪啪视频| 久久久久久久强迫| 嗯嗯,好大,好爽,好骚| 户外裸露刺激视频第一区| 久久大香蕉97| 素人美腿视频网站| 午夜超爽| 精品人妻一区二区三区在线视频不卡| 五月丁香在线| gogogo免费高清看中国国语| 久欲AV| 第45页一区二区| 久草视频分类在线| 亚洲无码电影久久久| 青青青草原| 精品久久久九九九孕妇| 用力操死我| 探花在线免费观看视频国产一区| 91黑丝在线| 综合网97| 中文字幕片| 天天添天天干电影| 亚洲乱码国产乱码精网站| 中文字幕欧美丝袜07资源| 久久久久久人| 亚洲高清男人天堂| 欧美精品丝袜久久久中文字幕| 中文字幕在线观看视频www| 国产性久久久| 无码外流操逼视频| 欧美极品美女aaaaaa级黄片| 日韩成人小视频| A一级色女| 久久精品人妻一区二区| 91天天综合网,天天综合网| 蜜臀久久久久久999| 亚洲色五月| 粉嫩绯色AV一区二区在线| 日本免费人成视频播放120秒| 日韩有码 一区二区三区| 亚洲97| 欧美色涩| 亚洲情色综合| 成人免费性爱视视| 在线观看无码三级少妇| 美女啊啊啊啊啊| 超碰综合97在线| 日韩特一级久久| 自拍亚洲综合| 久久国语| 亚洲色欲一区二区三区| 欧美黑人精品一区二区| 高清在线偷拍自拍视频| 天天天操天天天爱| 欧美啪啪啪91| 蜜臀久久99精品久久久久久成人小说 | 97在线免费观看视频| SUV一区二区在线看| 天美精品一区二区三区四区在线观看| 国产suv精品一区二区四| 亚洲中文字幕乱码无码一区二区| 红桃视频高潮| 97热视频在线观看| 久久嫩草|