Add the Raspberry Pi Pico 2 board (RP2350A, LED on GPIO25)

未關閉 適合新手
#111 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 1 天內回覆

還沒有人認領這個 Issue。

評估

難度
2/5
預估耗時
1-3 小時
新手友好度
84/100
Issue 類型
功能
描述清晰度
描述清楚
活躍度
活躍
技術堆疊
cmake, python, raspberry-pi, yaml

研究方向

從 boards/rpi/pico2_w/board.yaml 開始,接著閱讀 docs/engineering/hwgen.md 中的「A second board on the same SoC」和「A numbered GPIO bank: the RP2350」章節;使用 pico-sdk 的 boards/pico2.h 和 Pico 2 資料表取得板子的資訊。新增 boards/rpi/pico2/board.yaml,並使用 python3 -I hw/gen/emb-hwgen.py generate --board boards/rpi/pico2 產生檔案。執行產生器檢查和指定的 CMake 建置;檢查通過且板子建置成功即完成。

由索引模型根據 Issue 內容生成。

描述

enhancement good first issue help wanted

Goal

Support the Raspberry Pi Pico 2 (the one without wireless). The Pico 2 W is supported and tested on hardware. The Pico 2 is the same RP2350A, but its user LED is on GPIO25, driven directly by the chip (the W's LED sits behind the wireless chip, so the W has none).

A board here is a description, not code: this should need one YAML file and no C.

What exists

  • boards/rpi/pico2_w/board.yaml: start from it.
  • docs/engineering/hwgen.md, "A second board on the same SoC", shows how the NUCLEO-F446ZE was added this way. "A numbered GPIO bank: the RP2350" shows how its pins are named.
  • Boards with an LED declare it as leds: [ { name: user, gpio: ..., active: high, doc: ... } ] (see the NUCLEO-F446RE's).

Steps

  1. Create boards/rpi/pico2/board.yaml from the Pico 2 W's: name pico2, the LED on GPIO25, and the text in doc: updated. Take facts from pico-sdk's boards/pico2.h and the Pico 2 datasheet, and say so in the header comment.
  2. python3 -I hw/gen/emb-hwgen.py generate --board boards/rpi/pico2, then python3 -I hw/gen/emb-hwgen.py check.
  3. Build it: cmake --preset cm33-pico2w -B build/pico2 -DEMB_BOARD=pico2 && cmake --build build/pico2.
  4. If the generator or board support refuses the LED, describe what it said in the issue. That is a useful finding in itself.
  5. If you have a Pico 2: copy a test image's UF2 to it and tell us what the console printed (UART0 on GPIO0/GPIO1, 115200 baud).

Done when

  • boards/rpi/pico2/ holds board.yaml and the generated/ the tool wrote, and nothing else.
  • emb-hwgen.py check passes, and the board builds.
主要語言
C
星號
1
分支
1
平均合併
14 小時 21 分鐘
30 天內合併 PR
125

環境準備

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

EmbLinkOs/EmbLinkRTOS 的其他 Issue

查看 EmbLinkOs/EmbLinkRTOS 的全部 Issue

相似的 Issue

更多 C Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。