Manual
do
Maker
.
com
Em outra oportunidade, já há algum tempo, escrevi sobre debug da RPi Pico no VS Code usando o JLINK. O JLINK é um JTAG que foi artigo no Laboratório Maker.
Antes de continuar, vale lembrar que o processo de debug da RPI Pico no VS Code se dará através da conexão SWD entre A Raspberry Pi 400 e a Raspberry Pi Pico, como mostrado nesse vídeo.
Através do PlatformIO você terá suporte à API do Arduino no VS Code. Instalar é muito fácio, basta ir ao menu de plugins (na lateral esquerda da IDE do VS Code) e procurar por PlatformIO. Após instalar, será necessário reiniciar o VS Code, então aparecerá um alienígena no menu esquerdo.
O primeiro projeto criado para Raspberry Pi Pico consumirá algum tempo para iniciar porque ele instalará todas as dependências. Se quiser apreciar o uso do PlatformIO, veja esse vídeo para ter uma noção, é bem curto. No vídeo mostro como habilitar o JLINK para depurar, mas passo por alguns erros e mostro como solucioná-los. Isso você não vê em vídeo nenhum, só mostram o processo rodando liso!
Não tem segredo, mas logo eu faço o vídeo do processo. É clicar no alien do menu vertical -> home -> Novo projeto. Escolha a placa Raspberry, aí vai aparecer a Pico entre elas. Selecione a Pico e então crie o projeto.
Abra o arquivo de projeto platformio.ini e adicione:
debug_tool = raspberrypi-swd
E o mesmo para upload_protocol. No final, o arquivo deve ficar assim:
; PlatformIO Project Configuration File
;
; Build options: build flags, source filter
; Upload options: custom upload port, speed and extra flags
; Library options: dependencies, extra library storages
; Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html
[env:pico]
platform = raspberrypi
board = pico
framework = arduino
debug_tool = raspberrypi-swd
upload_protocol = raspberrypi-swd
O LED está no pino 25, mas temos a macro LED_BUILTIN que aponta para o LED onboard. Nesse caso não precisamos decorar o pino. O blink pode ser idêntico ao do Arduino, já que agora podemos programar a RPi Pico no VS Code com a mesma API. Mas pra ficar mais legal:
#include <Arduino.h>
struct biting {
int state :1;
} one_bit;
void setup() {
pinMode(LED_BUILTIN,OUTPUT); //pin 25
one_bit.state = 0;
}
void loop() {
sleep_ms(400);
one_bit.state += 1;
digitalWrite(LED_BUILTIN, one_bit.state);
}
Esse é um código de blink que funciona em qualquer placa. Quer saber porque acontece o blink se só há incremento? Isso eu vou mostrar no vídeo, durante o debug.
"Caramba, mas o artigo foi só isso?" - você pode estar se perguntando. Dessa vez, sim, é só isso, porque chegou a hora de por a mão na massa e preciso deixar uma referência para vocês reproduzirem. Só que todas as explicações dos artigos anteriores sobre debug e algumas coisas mais você só verá no vídeo, então vá para o canal Dobitaobytebrasil no Youtube, inscreva-se e assista o vídeo!
Como é um vídeo de hands-on, não vai ter edição detalhada como os vídeos mais recentes, vai ser coisa bruta; quase uma live. Para referência, o título do vídeo será Debug com RPi Pico.
Agora vou editá-lo de forma básica e publico em seguida!
Inscreva-se no nosso canal Manual do Maker no YouTube.
Também estamos no Instagram.
Autor do blog "Do bit Ao Byte / Manual do Maker".
Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.