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

Aberta Para iniciantes
#111 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
84/100
Tipo de issue
Funcionalidade
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
cmake, python, raspberry-pi, yaml

Direção de pesquisa

Comece por boards/rpi/pico2_w/board.yaml e depois leia as seções “A second board on the same SoC” e “A numbered GPIO bank: the RP2350” em docs/engineering/hwgen.md; use boards/pico2.h do pico-sdk e a folha de dados do Pico 2 para obter os dados da placa. Adicione boards/rpi/pico2/board.yaml e gere os arquivos com python3 -I hw/gen/emb-hwgen.py generate --board boards/rpi/pico2. Execute a verificação do gerador e o build CMake indicado; o trabalho estará concluído quando a verificação passar e a placa compilar.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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.
Linguagem predominante
C
Estrelas
1
Forks
1
Merge médio
14h 21min
PRs com merge (30d)
125

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de EmbLinkOs/EmbLinkRTOS

Todas as issues de EmbLinkOs/EmbLinkRTOS

Issues semelhantes

Mais issues de C

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.