Tudo sobre o Raspberry Pi Pico

tutorial de framboesa pi pico

Se você está procurando comprar seu primeiro Raspberry Pi, o Pico pode ser uma opção muito atraente.

Mas a verdadeira questão aqui é se o Raspberry Pi Pico é o mais indicado para si.

Há muitos prós e contras na compra do Raspberry Pi Pico e é importante entender o adágio "cavalos para os percursos".

Conteúdo esconder

Vamos rever o Raspberry Pi Pico

O Raspberry Pi Pi Pico inova na linha Raspberry Pi porque é uma placa de desenvolvimento de microcontroladores. Isto representa uma saída do resto dos Raspberry Pis que são microcomputadores.

Possui o chip RP2040 que foi projetado internamente pela Raspberry Pi e tem as seguintes especificações:

  • Núcleos de CPU dual-core ARM Cortex M0+ (até 133 MHz)
  • 264K SRAM
  • 2MB de memória flash

O Raspberry Pi Pico se destaca por ser um microcontrolador de alto desempenho e tem muitos usos interessantes.

Pro: Barato e óptimo para os primeiros tempos

Nós vendemos o Raspberry Pi Pico por 4,10 euros que é o Raspberry Pi mais barato que se pode comprar. Na verdade, se você é novo a mexer com o Raspberry Pi Pico, você pode conseguir um kit completo por 24,95 euros que inclui tudo o que você precisa para construir projetos fáceis.

Pro: Óptimo para aplicações em tempo real

O Raspberry Pi Pico é perfeito para projetos onde você precisa cronometrar eventos com precisão. Por exemplo, leitura de sensores, operação de motores e tarefas de monitoramento.

Pro: entradas analógicas

O Raspberry Pi Pico é o primeiro Raspberry Pi que tem entradas analógicas da fábrica.

Vem com um total de 5 entradas ADC (Conversor Digital Analógico). Duas das quais são utilizadas pelo Pico para o seu sensor de temperatura interno e para a monitorização da tensão.

Então, como é que ter uma entrada analógica o pode beneficiar? Bem, por exemplo, um dos meus projetos utilizou um potenciômetro para regular a freqüência de comutação de um relé. Então, o Raspberry Pi Pico seria capaz de ler um valor do potenciômetro e usar seus valores no programa que eu carreguei nele.

O Raspberry Pi Pico resolve sinais ADC a 12-bits, o que é melhor que o ADC de 10 bits no Arduino Uno. Outras características incluem:

  • SAR ADC (aproximação sucessiva ADC)
  • 500 kS/s (com relógio externo de 48MHz)
  • Interface DMA em entradas ADC que podem aceder à memória sem utilizar a CPU

Pro: IO programável (PIO)

Esta é uma das características mais fixes do Raspberry Pi Pico e é também o que dá ao Pico o dinamismo que alguns outros microcontroladores não têm.

PIO é uma interface de hardware que pode ser programada independentemente dos processadores principais. Pode, portanto, emular muitas interfaces diferentes:

  • 8080 e 6800 porta paralela
  • I2C
  • I2S de 3 pinos
  • SDIO (interface do cartão SD)
  • SPI, DSPI, QSPI
  • UART
  • DPI ou VGA (via rede de resistência / DAC)

As máquinas PIO State Machines são totalmente programáveis e exclusivamente dedicadas à E/S. É dada especial atenção ao tempo preciso. 

Por exemplo, a interface PIO pode ser usada para configurar aplicações críticas de tempo (sensíveis ao tempo), tais como o controle de tiras de LED, de uma maneira estável e confiável. 

Pro: poderia produzir vídeo com modificações

Você viu "DPI ou VGA" na seção anterior? Você sabe o que isto significa...

Sim, o Raspberry Pi pode emitir vídeo que é algo com que você nem sonharia na maioria dos microcontroladores.

Nós temos um tutorial mostrando-lhe como se faz se estiver interessado.

Pro: cabe em uma tábua de cortar pão

pi pico de framboesa sobre pão de forma

No Raspberry Pi Pico, os alfinetes estão em dois lados opostos do Pi Pico, portanto você pode colocar o Pi Pico diretamente sobre a tábua de pão com cada lado sobre a calha divisória.

Isto torna a prototipagem mais fácil porque não será necessário obter fios macho-fêmea (ou macho-a-macho, no caso do Arduino Uno) para ligar o Pico a uma tábua de cortar pão.

Você não pode fazer isso com outros Raspberry Pis porque seus pinos estão todos agrupados.

Pro: Pequeno Raspberry Pi

comparação pi pico framboesa
A partir da esquerda, no sentido horário: Raspberry Pi Pico, Raspberry Pi Zero 2, Raspberry Pi 4

Ter uma prancha pequena é bom porque é mais fácil de caber dentro de espaços apertados e mais fácil de montar. Por exemplo, digamos que você queira montar o Raspberry Pi Pico na parede, ou dentro de um ambiente fechado: robôs, dispositivos portáteis, relógios, etc.

O Raspberry Pi Pico mede 51mm x 21mm /Source: Raspberry Pi

Vantagens: baixo consumo de energia

Eu mencionei que o Raspberry Pi Pico é pequeno e que pode caber em espaços pequenos.

O óptimo é que, porque o Pico bebe energia, não vai precisar de uma grande bateria para o fazer funcionar.

Eu também mencionei que é preciso uma grande variedade de tensões? Pode funcionar com 1.8 - 5.5 V, o que é óptimo porque pode funcionar com uma única bateria de lítio (3.7V) ou baterias baseadas em nickle ligado em série (1.2V cada).

Uma análise de Joey Castillo mostrou que a eficiência do conversor do Pico atinge picos de 2,54V a 3,2V (equivalente a 2 pilhas AA recarregáveis/alcalinas totalmente carregadas) se estiver a desenhar <=10mA de corrente.

Em correntes mais altas, porém, é melhor fornecer 3 pilhas AA ou uma pilha de lítio de voltagem.

Estas estatísticas podem não ser verdadeiras para o Pico W, uma vez que o Pico W usa um conversor de dólar diferente. O Pico W usa o RT6154 enquanto o Pico utiliza o RT6150. Clique nas ligações para ver as suas respectivas fichas técnicas.

Aqui está o gráfico para o conversor de dólar do Pico:

Neutro: Sem suporte a Linux no Raspberry Pi Pico

Se este é um pro ou con do Raspberry Pi Pico depende do seu projecto. Não ter Linux significa que seus projetos carregam mais rápido, mas, em geral, você pode fazer mais se você tiver um sistema operacional.

O que quero dizer com carga mais rápida? Bem, como não há sistema operacional para inicializar, seu código será carregado praticamente no mesmo momento em que você conectar a energia ao Pi Pico.

Em qualquer outro Raspberry Pi, demorará muito mais tempo até que você veja uma resposta.

Mas infelizmente, sem um SO, você está limitado a programar com MicroPython ou C, enquanto que com um SO, você pode codificar em muitas, muitas mais linguagens. Além disso, você pode jogar jogos, navegar na internet e desfrutar de outras aplicações multimídia.

Neutro: Sem WiFi

Se isto é ou não uma desvantagem depende do seu projeto, mas digamos que você está desenvolvendo um projeto que requer que você verifique o tempo ou carregue dados no Google Sheets, você não poderá fazer isso no Raspberry Pi Pico.

Para ser justo, você pode instalar WiFi ou ethernet usando peças do mercado de reposição como o item abaixo:

Neutro: Saídas GPIO 3.3V

Se este é ou não um pro ou con depende dos componentes a que vai emparelhar o Raspberry Pi Pico.

Um cenário em que descobri que 3.3V era um obstáculo foi quando tentei usá-lo com relés de 5V. Oops! Eu não consegui passar tensão suficiente para fazer o relé mudar.

Então, mudei-me para o meu Arduino Uno, cujos pinos da GPIO apagaram 5V.

A alternativa seria adicionar componentes ao protótipo para que o 3.3V pudesse ser intensificado, mas, porquê complicar as coisas quando posso fazê-lo apenas com um Arduino Uno?

Claro, este é apenas um cenário. A sua quilometragem pode variar de acordo com o que está a fazer.

Usos do Raspberry Pi Pico

A gama de usos para o Raspberry Pi Pico é infinita. Você pode fazer algo que melhore a sua vida ou fazer algo só por diversão.

Microcontrolador que lê MicroPython (em vez de apenas C)

Se você tiver usado um Arduino, você saberia que teria que programá-lo em C.

No entanto, você pode não gostar de programar em C. Você pode ter um background mais forte em Python.

E assim, se você lutou para escrever código em C no Arduino, a boa notícia é que tudo o que o Arduino pode fazer, o Raspberry Pi Pico provavelmente será capaz de se encaixar no seu caso de uso.

Então jogue fora esses aparelhos e comece a indentar seu código!

Construções alimentadas por bateria para longo tempo de funcionamento

Se você precisa de algo que use o mínimo de energia possível, então você está definitivamente melhor com o Raspberry Pi Pico sobre algo mais poderoso como o Raspberry Pi Zero.

Eis porque: você pode usar uma gama muito maior de entradas de energia (1.8V a 5.5V) e porque o Raspberry Pi Pico é tão eficiente, você será capaz de obter tempos de execução muito mais longos do que se você usasse um microcomputador como o Raspberry Pi Zero.

Oh, mencionei que o Raspberry Pi Zero é muito exigente quanto à voltagem que lhe fornece? Só demora 4,75 - 5,25V.*

* De acordo com Arya, que deixou um comentário abaixo, o Raspberry Pi Zero pode funcionar com uma única bateria de lítio desde que não tenha periféricos USB. Obrigado, Arya.

Macro teclados, alternadores giratórios e outros HIDs

Don Hui com seu teclado de macro Discord que lhe permite alternar facilmente os controles de volume / Source: YouTube.

O Raspberry Pi Pico pode ser usado como Dispositivo de Interação Humana (HID).

Mas ao contrário de um rato ou teclado velho e aborrecido, o Raspberry Pi Pico permite-lhe criar um dispositivo que faz algo de nicho e específico para o seu caso de utilização.

Assim, você pode criar macro teclados que digitam uma seqüência longa com o apertar de um botão. Ou você pode usá-lo para silenciar a Discord. Ou usá-lo para pressionar CTRL + ALT + DEL. As possibilidades são infinitas.

Magi's Multifunctional Knob que atua como um controle de volume rotativo ou Premiere Pro limpeza da linha do tempo. Fonte: YouTube

sArCaSm kEyBoArD

O que é melhor para expressar o sarcasmo: mostrar um /s tag no final do seu texto ou tYpInG lIkE tHiS?

Eu prefiro a segunda porque ela transmite imediatamente o sArCaSm.

O criador deste projecto, Ben S, partilhou que usa dois Raspberry Pi Picos para pôr isto a funcionar. Um Pico funciona como um dispositivo de teclado USB HID para o computador e outro funciona como o host USB para ler as entradas do teclado. O anfitrião então comunica com o dispositivo via UART qual foi o toque do teclado.

O teclado sarcasmo Pico liga e desliga as tampas após cada toque de tecla, dando assim ao sArCaStIc TeXt.

O que é que o Raspberry Pi Pico não pode fazer?

Vamos falar de uma configuração mais típica de "straight-out-of-box".

Reconheço que há muitas maneiras de aumentar as capacidades do Raspberry Pi Pico. Você pode emitir vídeo, configurar a ethernet, emitir áudio...

Com modificações suficientes, o Raspberry Pi Pico vai se aproximar da capacidade de um microcomputador.

Dito isto, ninguém racional vai tão longe. Para além de um certo nível de modificação, torna-se impraticável.

Porque se torna impraticável?

Porque mais vale comprares algo em que tires todas estas características directamente da caixa!

Um concorrente próximo que você deve estar de olho é o Raspberry Pi Zero 2. Nós temos um mega-artigo que vai responder a todas as suas perguntas aqui.

A um nível fundamental, o Raspberry Pi Pico tem menos poder computacional. Em comparação com o microcomputador mais barato, o Raspberry Pi Zero, o Pi Pico tem um relógio padrão de 133MHz e pode fazer 361,76 Dhrystone Million instruções por segundo (DMIPS), enquanto o Raspberry Pi Zero pode fazer 1250 DMIPS.

O Raspberry Pi Zero também tem 512MB de RAM, um sistema operacional, WiFi e um slot de cartão SD. Para uma pessoa mais proficiente em JavaScript como eu, ser capaz de escrever código de nó para conectá-lo ao Google Cloud é uma razão pela qual eu gosto de usar os microcomputadores Pi.

Microcomputador vs microcontrolador

Para ilustrar o cenário anterior, usei os termos microcomputador e microcontrolador. Vou resumir alguns usos em que um é melhor do que o outro.

Um microcontrolador é muito mais simples do que um microcomputador e, portanto, é muito mais fácil conseguir um microcontrolador para realizar tarefas simples. Se você só precisa piscar um LED, girar um servo, medir dados de temperatura, um microcontrolador pode fazer isso de forma muito fácil e capaz.

Na verdade, você tem algumas vantagens, como um reinício rápido e maior duração da bateria.

Com simplicidade vêm as limitações. Por exemplo, é muito mais fácil ligar o seu protótipo à Internet com um microcomputador. Por exemplo, você pode querer conectar o seu protótipo a um serviço de e-mail para fazer ping quando certos limites forem atingidos. Eu faria esses projetos em um Raspberry Pi Zero em vez de tentar fazê-lo funcionar com o Raspberry Pi Pico.

CenárioMicrocontrolador (por exemplo, Raspberry Pi Pico)Microcomputador (por exemplo, Raspberry Pi Zero)
Executar um servidorNãoSim
Pestanejar um LEDMuito mais rápido do início ao fim.Muito mais lento; muitos mais processos para passar
Programa de reinício automático em caso de falha de energia?SimNão por omissão
Jogar videojogosNãoSim
Funciona com bateria?Sim, muito provavelmente vai durar mais tempo em médiaSim, não dura tanto tempo, em média.
Gestão de calor?Não é necessário normalmenteDissipadores de calor, ventiladores, caixas condutoras de calor
Custos?BaixarSuperior

Alfinetes Raspberry Pi

O Raspberry Pi Pico tem 30 pinos GPIO, dos quais 26 estão disponíveis para uso.

  • 2x SPI
  • 2 x UART
  • 2 x I2C
  • 8 x PWM de dois canais

há também:

  • 4 x saída de relógio de uso geral
  • 4 x entrada ADC
  • PIO em todos os pinos

Aqui está a imagem do pinout do Raspberry Pi Pico:

Pinos de framboesa Pi Pico / Fonte: Raspberry Pi

Na verdade, um Redditor chamado C_King_Justice também fez uma ferramenta que pode ajudá-lo a encontrar os seus pinos Raspberry Pi Pico GPIO. Você pode faça o download do documento aqui.

Pinout de papel por C_King_Justice / Source: Reddit

Especificações do Raspberry Pi Pico

Framboesa Pi Pico
Preço€4.10 (quadro) €24.95 (kit Raspberry Pi Pico para iniciantes)
CPURP2040 com Cortex M0+ dual-core a até 133MHz
capacidades da CPUO PLL no chip permite uma frequência central variável
frequência da CPUaté 133MHz, com sobre/sub-relógio
GPUSem GPU
RAM264 kB de SRAM embutida em 6 bancos
RedeNão incluído, mas você pode adicioná-lo em
BluetoothNão incluído
porta HDMINão incluído, mas você pode adicioná-lo em
porta USBMicroUSB para energia e dados
Vídeo CompostoNão incluído, mas você pode adicioná-lo em
Pino de reinicializaçãoNão incluído, mas você pode solda-lo em
Porta da câmeraNenhum
Consumo de energia~1,3mA em modo SLEEP a 93mA no teste "Pipocas
Fonte de alimentação5V via microUSB ou 1.8 - 5.5V via VSYS
fator de forma51 x 21 mm

O Raspberry Pi Pico tem HDMI?

Raspberry-Pi-Pico-Video-Output-DVI-Sock

Não, não é por omissão. Mas você mesmo pode adicionar um vídeo. Veja o nosso guia aqui.

Note que, embora a interface de vídeo seja um conector HDMI, este emite realmente um sinal DVI. O HDMI é um sucessor do DVI, por isso os sinais DVI podem ser transmitidos via HDMI.

Na mesma linha, você pode comprar um adaptador HDMI para DVI para converter o conector HDMI para DVI.

Dito isto, note que esta configuração não emite áudio.

O Raspberry Pi Pico tem ethernet?

Não, não é por omissão. Mas você mesmo pode adicionar a ethernet.

Raspberry Pi lançou oficialmente um guia que você pode seguir para instalar a ethernet no seu Raspberry Pi Pico.

Em essência, você precisa de um PHY Ethernet RMII, como um LAN8720, uma tábua de cortar pão e fios de jumper. O seu Raspberry Pi Pico também deve ter os cabeçalhos soldados.

O Raspberry Pi Pico tem WiFi?

Não, mas você pode instalá-lo usando peças para o mercado de reposição. Um chip compatível que o ajudará a obter capacidades WiFi é o Adafruit Airlift WiFi Featherwing Co-Processor.

O Raspberry Pi Pico tem USB?

Sim, o Raspberry Pi Pico tem um porto microUSB. Ele pode ser usado para alimentar o Raspberry Pi.

Além disso, você também pode usar o Raspberry Pi Pico como um dispositivo de interação humana. Ligá-lo ao seu computador com os componentes e código adequados pode permitir que ele se torne um joystick, um teclado macro, um toggle, etc.

O Raspberry Pi Pico tem Bluetooth?

Não, mas você pode instalá-lo usando peças para o mercado de reposição.

Normalmente, a integração de Bluetooth no Raspberry Pi Pico requer que você compre um módulo Bluetooth, como o módulo HC-06 Bluetooth.

Existe uma câmara Raspberry Pi Pico?

O protótipo de Ralph Yamamoto usando o módulo de câmera HM01B0. Fonte: Ralph Yamamoto/Elemento14

Sim, você pode integrar o Raspberry Pi Pico com um módulo de câmera.

Uma câmera que você pode usar é a câmera HM01B0 da Himax Imaging. O benefício de usar isto é que ela tem uma potência extremamente baixa, usando 1-2 milliwatts de acordo com Ralph Yamamoto que escreveu sobre a sua experiência em conseguir uma câmera para trabalhar com o Raspberry Pi Pico.

Pré-visualização da câmara a 96×96 pixels. Fonte: Ralph Yamamoto/Elemento14

Sua conclusão foi que "tenho certeza de que isso exigirá muitos ajustes", e disse ainda que se sentia limitado por sua capacidade de processamento, e que faltava a documentação da câmera.

Sistema operativo Raspberry Pi Pico

Geralmente, você não estará rodando um sistema operacional no Raspberry Pi Pico.

Na maioria dos projetos, é provável que você só precise carregar o código e depois executar esse programa apenas um. Nesse caso, não há necessidade de um sistema operacional.

Mas você é do tipo que tem múltiplas abas no cromado? Agora, imagine se você só pudesse usar uma aba Chrome.

Embora a forma "clássica" de programar o Raspberry Pi Pico seja a mais eficiente em termos de recursos, ela também impede a sua capacidade de executar múltiplas tarefas.

Por sorte, existem sistemas operacionais que funcionariam no Raspberry Pi Pico.

RTOS (Sistema Operacional em Tempo Real) Oficial

Não há nenhuma, mas Raspberry Pi disse em seu FAQ (a partir de fevereiro de 2022) que "estarão trabalhando na portabilidade de uma RTOS em breve".

FreeRTOS

O Raspberry Pi Pico pode executar o FreeRTOS. Aqui está um pequeno vídeo que o guiará desde a programação de metais nus (a forma "típica" de piscar um LED) até à programação baseada em SO.

Esta série de cinco partes entra em detalhes profundos sobre o FreeRTOS, como ele funciona e como você pode configurá-lo e usá-lo.

Fuzix

Você não pode obter o Raspberry Pi Pico para executar o Linux com uma interface gráfica de usuário, mas você pode executar um clone Unix no Raspberry Pi Pico com o Fuzix.

Raspberry Pi tem publicado um guia que você pode seguir e o que você precisa é:

  • Não-Pico Raspberry Pi para ligação em série
  • Framboesa Pi Pico
  • Leitor MicroSD para o Raspberry Pi Pico.

PyDOS

O usuário Github RetiredWizard acabou de criar uma shell semelhante ao DOS para as placas RP2040/ESP32.

Como você pode ver no vídeo acima, isso realmente leva mais de 30 anos de volta.

Verifica aqui o Github repo.

Começando com o Raspberry Pi Pico

Concebemos vários kits baseados no que acreditamos que o irá ajudar mais a longo prazo a desfrutar da sua viagem com o Raspberry Pi Pico.

No mais fundamental, aqui estão alguns acessórios Raspberry Pi Pico recomendados.

O Diodo Schottky é necessário se se pretende levar uma segunda fonte de energia até ao Pico. Esta é a forma mais simples de fazer funcionar uma fonte de alimentação que está dentro da gama de voltagem de 2,3V a 5,5V, que pode ser uma pilha de lítio ou três pilhas AA.

A adição deste diodo permitirá "OU" as duas tensões do VBUS e a tensão externa para alimentar o VSYS com os diodos, impedindo que um deles alimente o outro.

No entanto, embora isto seja o mais simples, há perdas de eficiência. Ficha técnica do Raspberry Pi explica isto em detalhe e também explica como mitigá-lo no capítulo 4.5.

Ter um suporte de bateria permite-lhe ter energia de reserva (com um diodo Schottky) ou executar a sua configuração completamente fora da rede.

Este aqui é auto-explicativo. Você precisa deste cabo para conectar o seu Raspberry Pi Pico ao seu computador para carregar o código. Também pode funcionar como uma fonte de energia.

Dois cabeçalhos de 20 pinos são essenciais porque você precisará deles para conectar seu Raspberry Pi aos componentes ou a uma tábua de pão.

O cabeçalho de três pinos é necessário para a depuração.

Não compre uma cabeça de 40 pinos como é destinado para os outros Raspberry Pis.

Se você não quiser soldar os cabeçalhos você mesmo, você pode considerar comprar um Pico com cabeçalhos pré-soldados.

Programação no Raspberry Pi Pico

Você pode codificar em MicroPython, C/C++ e CircuitPython no Raspberry Pi Pico. Aqui está uma tabela que mostra o esforço necessário para piscar o LED interno.

IdiomaMicroPythonC/C++CircuitPython
Configuração necessária para a primeira execuçãoMédioMais altoMais baixo
Passos para criar um novo programaMédioMais altoMais baixo
Controle sobre o hardwareMédioMais altoMédio

MicroPython no Raspberry Pi Pico

MicroPython é essencialmente Python lite. Ou Python dieta.

É Python com um pequeno subconjunto da biblioteca padrão Python, otimizado para rodar em microcontroladores como o Raspberry Pi Pico.

Para usar o MicroPython, você precisará baixar Thonny e vá para o canto inferior direito onde diz "Python 3.7.9" e clique sobre ele, selecionando MicroPython (Raspberry Pi Pico).

Você provavelmente será saudado por uma janela pop-up pedindo-lhe para atualizar. Vá em frente com isso.

A atualização correu bem quando eu executei Thonny no meu sistema operacional Raspberry Pi, porém, no Windows, houve um erro dizendo "SSL: CERTIFICATE_VERIFY_FAILED".

Você pode corrigir isso baixando este certificado (https://letsencrypt.org/certs/lets-encrypt-r3.der), depois clique com o botão direito do rato no ficheiro descarregado e "Install Certificate" e não encontrará mais este erro.

Com MicroPython instalado, você pode fazer o equivalente ao "Hello World" do Raspberry Pi Pico e piscar seu LED interno usando este código

from machine import Pin, Timer
led = Pin(25, Pin.OUT)
timer = Timer()

def blink(timer):
    led.toggle()

timer.init(freq=2.5, mode=Timer.PERIODIC, callback=blink)

Pressione EXECUTAR, salve-o como pestanejar.py e o LED interno do seu Raspberry Pi deve piscar.

Com isso, vamos ver o processo equivalente em C.

Leitura adicional

PiCockpit também tem algumas dicas para ajudá-lo a começar com o MicroPython no Raspberry Pi Pico.

Raspberry Pi Pico e MicroPython no Windows - vamos mais fundo na configuração do MicroPython no Windows no Raspberry Pi, como instalar o driver certo no Windows 8.1, conectando ao Pico usando o PuTTY e uma explicação detalhada do Thonny.

Extensão C para MicroPython em Raspberry Pi Pico - E se você pudesse executar o MicroPython e o C ao mesmo tempo e obter os benefícios de ambos os idiomas? C funciona melhor que o MicroPython em tarefas computacionalmente pesadas e às vezes você pode querer fazer interface com algum hardware através de uma API C de dentro do MicroPython. Este guia compartilha como você pode fazer isso.

LED a piscar com C/C++

Se você precisa de muito mais controle, você provavelmente vai querer escrever C/C++.

Fazer o seu Raspberry Pi Pico trabalhar com C é muito mais trabalho. Não é tão fácil como escrever MicroPython com Thonny.

A maneira mais simples é usar um microcomputador Raspberry Pi com Raspberry Pi OS.

Se você quiser usar um Mac ou Windows, o guia oficial oferece instruções no capítulo nove.

Execute estes três comandos:

wget https://raw.githubusercontent.com/raspberrypi/pico-setup/master/pico_setup.sh 
$ chmod +x pico_setup.sh
./pico_setup.sh

Você vai precisar de cerca de 2GB de espaço para executar este comando. Uma vez que isso esteja feito, reinicie executando reinicialização do sudo .

Uma vez iniciado, abra o Visual Studio Code (sob a pasta Programação no menu Iniciar) e abra a pasta localizada em /home/pi/pico/pico-exemplos. Você deve carregar esta pasta e não uma subpasta.

Então você precisa configurar o código VS. Referindo-se à imagem acima, faça isto:

  1. Clique na parte que diz "No Kit";
  2. Um popup vai aparecer. Escolha a opção onde diz "arm-none-eabi";
  3. Clique no [todos] e escolha o projeto que deseja compilar. Para que o LED interno pisque, eu escolhi piscar os olhos
  4. Imprensa Construir

Você poderá encontrar o blink.uf2 arquivo no /build/blink pasta.

Copie o arquivo UF2 para o seu Raspberry Pi Pico e você verá o LED interno começar a piscar.

Construir seu próprio projeto é mais complicado em C/C++. O guia oficial tem capítulo oito que lhe diz como criar o seu próprio projecto.

CircuitPython

Um terceiro participante nas linguagens de programação que trabalham com o Raspberry Pi Pico é o CircuitPython.

Para começar, baixe o arquivo .UF2 aqui.

botão BOOTSEL

Prima e mantenha premido o botão BOOTSEL e ligue o seu Pico ao seu computador. Você deve ver um novo drive.

Copie o arquivo .UF2 que você baixou para aquela unidade. O seu Pico irá desligar e voltar a ligar com uma nova unidade chamada CIRCUITPY.

Nessa pasta, há um arquivo chamado code.pyAbra-o com o seu editor de código preferido (até o Notepad funciona).

Ponha este código:

import board
import digitalio
import time

led = digitalio.DigitalInOut(board.LED)
led.direction = digitalio.Direction.OUTPUT

while True:
    led.value = True
    time.sleep(0.5)
    led.value = False
    time.sleep(0.5)

Assim que o guardar, verá o LED interno do seu Pico começar a piscar.

No geral, CircuitPython foi a maneira mais suave e direta de fazer o seu LED interno piscar. As outras duas opções eram mais tediosas, especialmente rodando C no Pico (triplicando assim se você estiver tentando fazer com que ele funcione no Mac/Windows).

Com isso dito, se você está pensando em usar o CircuitPython a longo prazo, há um argumento para usar o Thonny como sua IDE porque ele pode baixar pacotes para você e você também pode executar e parar programas pressionando o botão play/stop na barra de comandos.

Para mais informações sobre o CircuitPython, veja A documentação da Adafruit. Para voltar ao MicroPython, baixe um arquivo .UF2 a partir daqui e carrega-o para a tua drive CIRCUITPY.

Bónus: Montador no Pico Raspberry Pi

Sim, você pode escrever em assembler se você não quiser programar o Raspberry Pi Pico em C ou Python.

A FAQ do Raspberry Pi diz que o Pico SDK tem algumas funções escritas em assembler e isso,

"O processador (dual-core ARM Cortex M0+) implementa o conjunto de instruções do ARMv6-M Thumb, incluindo um número de instruções de 32 bits que utilizam a tecnologia Thumb-2. O conjunto de instruções ARMv6-M compreende todas as instruções Polegar de 16 bits do ARMv7-M, excluindo CBZ, CBNZ e IT e as instruções Polegar de 32 bits BL, DMB, DSB, ISB, MRS e MSR".

Bónus: Linguagem de programação Rust no Raspberry Pi Pico

Se te sentes mal-humorado porque és um Rustaceano que mal pode esperar para escrever na tua língua preferida, então tenho boas notícias para ti.

No centro disto está a Camada de Abstracção de Hardware RP2040 que você pode entrar no GitHub (chamado rp-hal). Funciona para muitas placas que utilizam o microcontrolador RP2040 que não o Raspberry Pi Pico.

Aqui está um vídeo que lhe mostra como configurá-lo.

O que é o UF2 e porque é usado tanto no Raspberry Pi Pico?

É mágico. Arrastas um ficheiro UF2 para o teu Raspberry Pi Pico e de repente ele volta a montar com um novo nome ou de repente pisca um LED.

UF2 (U F ao quadrado) significa USB Flashing Format (Formato intermitente USB). Ao arrastá-lo para o seu Raspberry Pi, você está arrastando seu código além das instruções para o bootloader para que ele saiba o que fazer com o que você carregou.

Conexão do Pico através do terminal serial

Windows

Conectar-se ao Pico usando o terminal serial é fácil e temos aqui um guia.

Ligação a um Raspberry Pi 4 (Linux)

Para conectar o Raspberry Pi Pico a um Raspberry Pi 4, você pode usar pinos USB ou UART, minicom e alguns fios de jumper.

Pi's de framboesa Começando com o Pico tem todas as informações do Capítulo 4, especificamente 4.4 e 4.5.

Depuração do Raspberry Pi Pico

Para que são estes três pinos no fundo?

pinos de depuração de framboesa pi pico
Pinos de depuração Raspberry Pi Pico

Estes pinos dar-lhe-ão a capacidade de reiniciar o Pico, carregar o código em flash, executar o código e o mais importante, capacidades de depuração.

A maior vantagem é a capacidade de depuração avançada que você pode obter destes pinos. Agora você é capaz de fazer uma análise de código muito mais fina porque você pode:

  1. Defina pontos de interrupção no seu código. Os pontos de parada permitem que você pause a execução do código enquanto verifica os valores das suas variáveis, por exemplo.
  2. Passar linha a linha pela execução do código. Quando é que tudo corre mal? Linha por linha torna mais fácil a depuração.

Eles podem ser conectados a um microcomputador Raspberry Pi através de seus pinos GPIO. Se você quiser conectá-lo a outras máquinas, provavelmente via USB, então você vai precisar de uma sonda de depuração.

Um Raspberry Pi Pico também pode funcionar como uma sonda de depuração que liga o seu computador ao Pico em que quer trabalhar. Pense desta forma: o seu computador não tem os pinos GPIO necessários para estabelecer uma conexão UART/SWD, então você vai usar um Pico para fornecer essas conexões junto com o picoprobe firmware que o irá activar.

No entanto, se você pretende usar o SWD para depuração, você deve usar uma conexão serial baseada em UART em vez de uma conexão USB. A depuração pára os núcleos do RP2040, o que fará com que a ligação USB se desligue.

Vamos falar um pouco sobre o que cada alfinete faz:

SWDIOO pino Serial Wire Debug Input/Output leva tráfego de depuração entre o RP2040 e o computador central (um computador de tamanho normal ou um microcomputador Raspberry Pi, por exemplo).

GND: Solo. Necessidade de manter uma boa integridade de sinal entre o hospedeiro e o Pico.

SWCLK: O pino do Relógio de Fio Serial sincroniza a conexão.

A sua melhor aposta é referir-se ao Começando com o Pico folha de dados de Raspberry Pi, com foco específico nos capítulos 5, 6 e Apêndice A: usando Picoprobe.

Projetos Raspberry Pi Pico

Aqui estão alguns bons projetos para iniciantes que você pode começar com o mínimo de peças extras necessárias.

Teclado sArCasM fácil e macro teclado

Este é um projeto divertido que lhe permitirá criar um modificador que transforma a digitação normal em caso de sarcasmo. Em seriedade, saber como usar a biblioteca HID da Adafruit com um interruptor permitirá que você crie chaves macro.

Se você quiser digitar sArCaSm em escala, é bastante cansativo. Há uma maneira muito fácil de o fazer com o Raspberry Pi Pico.

Você não precisa de nada além do seu Raspberry Pi Pico para o design mais básico. No entanto, o seu Raspberry Pi Pico deve ter o CircuitPython com a biblioteca HID da Adafruit.

No modo normal da Thonny, vá para Ferramentas -> Gerir Pacotes e pesquisa por adafruit-circuitpython-hid. Instale-o.

Certifique-se também que está a usar o intérprete CircuitPython, encontrado no canto inferior direito de Thonny.

Ponha este código,

import time
import board
import usb_hid
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keycode import Keycode

keyboard = Keyboard(usb_hid.devices)

while True:

        keyboard.press(Keycode.CAPS_LOCK)
        time.sleep(0.2)
        keyboard.release(Keycode.CAPS_LOCK)

Carregue o código para o seu Pico. Se necessário, pressione o botão de EXECUÇÃO em Thonny.

Agora, cada vez que ligas o teu Raspberry Pi Pico ao computador... Espera pelo MAgIc HapPEn rIGHt iN frONt of youR eyES.

O que este script faz é ativar e desativar o Caps Lock a cada 0,2 segundos, conforme declarado em time.sleep(0.2). Se você alterar o valor dentro dos parênteses, você pode afinar a freqüência de troca de caixa.

Adicionando um interruptor a este projeto

adicionar um interruptor para framboesa pi pico

Este design básico tem o lado negativo de que você deve puxar o USB para parar o sarcasmo.

Vamos adicionar um interruptor que nos permitirá ligar e desligar esta funcionalidade.

Vamos também manter o LED da placa aceso quando o sarcasmo for activado.

Diagrama para ligar um interruptor ao Raspberry Pi Pico usando Wokwi.

Um botão de pressão tem quatro prongs. Ligue o pino de 3,3V e o GPIO 22 (rotulado como GP 22) em lados diagonalmente opostos do botão de pressão.

O que acontece aqui é que ao pressionar o interruptor, você conectará o 3.3V ao pino 22 da GPIO, ativando-o assim, em termos leigos.

Esta é a única modificação física que você precisa fazer. É muito fácil.

Quanto ao código, ele cresceu em algumas linhas, (negrito = relacionado a botão, itálico = relacionado a LED)

import time
import digitalio
import board
import usb_hid
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keycode import Keycode

keyboard = Keyboard(usb_hid.devices)

<strong>btn1_pin = board.GP22
btn1 = digitalio.DigitalInOut(btn1_pin)
btn1.direction = digitalio.Direction.INPUT #GP22 is an input
btn1.pull = digitalio.Pull.DOWN #DOWN means it outputs False

</strong>
<em>led = digitalio.DigitalInOut(board.LED)
led.direction = digitalio.Direction.OUTPUT</em> #powering LED, so give it OUTPUT
 
activated = False #this variable stores if sarcasm is on or off

while True:
    <strong>if btn1.value: #if user presses btn1, start sarcasm
        activated = True</strong>
        
    if activated:
        <em>led.value = True</em> #turn on board LED
        keyboard.press(Keycode.CAPS_LOCK)
        time.sleep(0.2)
        keyboard.release(Keycode.CAPS_LOCK)
        if <strong>btn1.value: #if user presses btn1 while activated, cancels sarcasm
            activated = False
            <em>led.value = False</em> #turn off LED
            time.sleep(0.2)</strong> 
            <strong>#pauses while loop to give user time to remove finger from btn1</strong>

Conversão de teclado sarcasmo em teclado macro

Você pode usar o botão para ativar macros como ALT + TAB, CTRL + ALT + DEL ou qualquer outra coisa, até um máximo de seis teclas regulares.

Você só precisa modificar as teclas dentro deste método keyboard.press e keyboard.release.

import time
import digitalio
import board
import usb_hid
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keycode import Keycode

keyboard = Keyboard(usb_hid.devices)

btn1_pin = board.GP22
btn1 = digitalio.DigitalInOut(btn1_pin)
btn1.direction = digitalio.Direction.INPUT
btn1.pull = digitalio.Pull.DOWN

while True:
    if btn1.value:
        <strong>keyboard.press(Keycode.ALT,Keycode.TAB )</strong>
        time.sleep(0.2)
        <strong>keyboard.release(Keycode.ALT,Keycode.TAB)</strong>

Há muito mais coisas que você pode fazer com este hack de teclado. Por exemplo, você pode usar isso para impedir que o seu protetor de tela apareça, pressionando uma tecla inofensiva como Page Up. Ou você poderia usá-lo especificamente para controlar Zoom, Discord, OBS, Meet, etc.

Dados de temperatura/umidade com DHT22

framboesa pi pico dht22

Se você tem um sensor DHT11, DHT22 ou AM2302, você pode usá-lo com o Raspberry Pi Pico.

Estes sensores seriam provavelmente melhor emparelhados com um LCD ou uma forma de você salvar os dados, mas vamos começar com um projeto de início rápido.

Você precisa de três fios de jumper, cabeçalhos no Raspberry Pi Pico e um resistor de 10K. O pacote seguinte tem tudo o que você precisa, além do Raspberry Pi Pico com cabeçalhos.

É muito fácil com Thonny, CircuitPython e a biblioteca de DHT da Adafruit.

Os passos seguintes utilizam o DHT22.

Conexão do sensor DHT22 ao Raspberry Pi Pico

É muito fácil ligar o DHT22 ao Pico.

framboesa pi pico dht22

Há quatro pinos no DHT22. Da esquerda para a direita, com o lado de malha voltado para você, os pinos são VCC, DADOS, NC e GND. Não vai precisar de ligar o NC.

Ligue VCC para o 3.3V pino no Pi.

Ligue o resistor de 10K do 3.3V a DADOSe, em seguida, conecte DADOS ao GP0. Isto é mais fácil de fazer com uma tábua de pão para que você possa dividir o 3.3V. Como visto na foto acima, uma resistência vai do pino mais à esquerda para o segundo pino, assim como o fio verde é conectado ao GPIO 0.

Ligue GND a qualquer pino de terra o teu Raspberry Pi Pico.

Estás feito. Está na hora do software.

framboesa pi pico dht22
Diagrama feito a partir de Wokwi.

Codificação do DHT22 em Thonny para o Raspberry Pi Pico

Primeiro, abra Thonny e faça você estar no Modo Normal e CircuitPython (em baixo à direita). Um guia mais detalhado para o Thonny e o CircuitPython está disponível acima.

Ir para Ferramentas -> Gerenciar pacotes -> procurar por adafruit-circuitpython-dht.

framboesa pi pico dht22

Depois, introduza este código fornecido pela Adafruit.

import time

import adafruit_dht
import board

dht = adafruit_dht.DHT22(board.GP0)

while True:
    try:
        temperature = dht.temperature
        humidity = dht.humidity
        # Print what we got to the REPL
        print("Temp: {:.1f} *C \t Humidity: {}%".format(temperature, humidity))
    except RuntimeError as e:
        # Reading doesn't always work! Just print error and we'll try again
        print("Reading from DHT failure: ", e.args)

    time.sleep(1)

Imprensa Corre em Thonny e você deve ver uma saída:

pi dht22

Ecrã Raspberry Pi Pico

O Raspberry Pi Pico é muito legal porque pode exibir imagens.

A desvantagem é que requer bastante trabalho, algum conhecimento técnico e você estará obtendo imagens que parecem ser da era do Windows 3.1.

Porquê? Por causa da RAM limitada de 264KB. Isto limita a resolução do seu ecrã e a profundidade de cor.

Dito isto, aqui estão alguns exemplos de como você pode produzir.

Saída de vídeo fácil com DVI sock

A forma mais fácil de produzir vídeo é seguindo o nosso guia e utilizando a meia DVI ou a placa de expansão VGA & Audio. A meia DVI usa um cabo HDMI, que é provavelmente a porta mais compatível com os dispositivos atuais.

Leia aqui o artigo completo sobre como você pode começar

Formas de fazer bricolage para conectar o Pico ao display

Existem outras formas de saída de vídeo sem a compra de periféricos.

Miroslav Nemecek escreveu um artigo sobre como você pode usar oito resistores e uma porta VGA para ligar um monitor para o teu Raspberry Pi Pico.

E aqui está uma forma de poder utilizar um cabo HDMI e resistências para ligar o seu Pico a um monitor HDMI.

Consumo de energia do Raspberry Pi Pico

A ficha técnica do Raspberry Pi's Pico oferece-nos uma boa base para compreender quanta energia se pode esperar do Pico, com base em certos usos típicos.

Estes números não representam o máximo absoluto que se pode tirar do Raspberry Pi Pico, mas são um bom ponto de partida.

O primeiro teste incluiu vídeo, áudio e acesso a cartão SD para exibir uma demonstração do reprodutor de mídia "Pipoca" através do VGA, cartão SD e placa de áudio.

Estado
A jogar Pipoca (vídeo, áudio, cartão SD)93,5mA
Modo BOOTSEL, ativo9.9mA
modo DORMANT0.8mA
modo SLEEP1.3mA

Você pode estar se perguntando: qual é a diferença entre DORMANT e SLEEP?

Dormant requer um gatilho externo que manipula um pino GPIO para acordar o Raspberry Pi Pico enquanto o SLEEP pode correr um relógio interno para acordar o RP2040, como ilustrado no Folha de dados RP2040.

Na FAQ do Raspberry Pi Pico, eles esclarecem ainda mais isso,

"O modo SLEEP é quando os processadores estão em wfi/wfe e o DMA está inactivo, por isso pode desligar a maioria dos relógios do sistema, incluindo coisas como o tecido do autocarro.
O modo DORMANT é quando você desliga todos os osciladores, e assim ainda tem menos energia, mas então você tem menos opções para acordar".

Posso gerir o Raspberry Pi Pico a partir de um banco de electricidade?

bateria de framboesa pi pico power bank

Sim, você pode.

Mas o Raspberry Pi Pico pode não tirar energia suficiente do banco de energia e fazer com que o banco de energia entre em modo de economia de energia.

A solução é, infelizmente, retirar mais poder colocando uma resistência entre o banco de poder e o Raspberry Pi Pico. Aqui está um vídeo para explicar as entradas e saídas.

Alimentar o Pico (voltagens)

O Raspberry Pi Pico pode ser alimentado utilizando a porta microUSB. Isto alimenta o VSYS a partir da tensão de 5V VBUS, via D1.

Se você não estiver usando a porta USB para alimentar o seu Raspberry Pi Pico, então você pode conectar o VSYS à sua fonte de energia no 1.8V a 5.5V.

No entanto, se estiver a ligar ambas, terá de alimentar a segunda fonte de alimentação com VSYS através de um díodo Schottky, o que impede que uma das fontes de alimentação alimente a outra. O díodo Schottky também permitirá que a tensão VBUS mais alta ou a tensão externa flua.

No entanto, há uma queda de tensão sobre o díodo Schottky, pelo que terá de fornecer uma tensão de 2,3V a 5,5V.

Isto significa que você pode alimentar o Raspberry Pi Pico com um mínimo de 2x nickle baterias recarregáveis (2.4V) ou 1x bateria baseada em lítio (3.7V).

Para não perder eficiência usando o diodo Schottky, você pode usar um MOSFET de canal P que é baixo em resistência.

Para mais informações, veja o Ficha técnica do Raspberry Pi Pico.

Posso alimentar o Raspberry Pi Pico através do USB de um televisor?

Sim, você pode. Aqui está uma imagem onde eu pisquei o LED interno.

consumo de energia de framboesa pi pico (2)

Uma porta USB padrão deve ser capaz de fornecer até 500mA, que é muito mais do que o Raspberry Pi Pico precisa. Como você pode ver nos testes de consumo de energia feitos pela Raspberry Pi, o teste mais intenso só desenhou cerca de 90mA.

Você pode ter problemas se a configuração do seu Raspberry Pi Pico estiver desenhando mais de 500mA, por exemplo, se o seu Pico estiver rodando periféricos famintos de energia.

Raspberry Pi Pico vs. outras pranchas

O Raspberry Pi Pico é um participante tardio no mundo dos microcontroladores, tendo sido lançado apenas em 2021. Já há uma grande competição no mundo dos microcontroladores com os ESP32 e Arduinos, que têm muitas variantes que podem ajudá-lo a iniciar o seu projecto com as funcionalidades certas, como o WiFi.

Não existem variantes com o Raspberry Pi Pico, por isso terá de comprar HATs e outros add-ons para atingir o mesmo objectivo.

Além disso, se você vai adicionar muitos componentes... quando é que se torna a hora de comprar um microcomputador?

Vamos responder a isto olhando para o ESP32, Arduino Uno e Raspberry Pi Zero.

Raspberry Pi Pico vs Espressif ESP32

O ESP32 é um grande passo acima do Raspberry Pi Pico em termos de suas capacidades tecnológicas. Para efeitos de comparação, escolhi a variante PICO-KIT porque se parecia mais com o Pico em termos de forma.

Para um, ter WiFi e Bluetooth é uma grande mudança no jogo. Por exemplo, você seria capaz de executar um servidor no Espressif ESP32 que exibe os valores do seu sensor, enquanto você não será capaz de fazer isso no Raspberry Pi Pico.

O ESP32 também tem um processador mais rápido, mais memória RAM e mais memória flash, mas tudo isso tem um custo de maior consumo de energia.

O Raspberry Pi Pico é um pouco mais modesto em suas especificações, mas duas coisas se destacam. O facto de poder aceitar tensões de 1,8 V a 5,5 V permite realmente usar uma bateria de lítio que cria um pacote muito compacto. Isto não seria possível com o ESP32 a menos que você modificasse a voltagem de 3,7V da bateria de lítio simples.

Framboesa Pi PicoEspressif ESP32-PICO-KIT
Frequência da CPU133MHz80/160/240MHz
MicrocontroladorRP2040Xtensa LX6
Núcleos22
Memória flash2MB4MB
RAM256KB520KB
GPIO26 (utilizável pelo utilizador)36
Tem USB?microUSBmicroUSB
WiFi e/ou BT?NãoSim, ambos.
Voltagem1.8 - 5.5V ou 5V USB3.3V (via pinos) ou 5V via USB ou 5V-12V (via regulador de voltagem)
Potência de tracção (com actividade)93mA (Teste das pipocas)100-128mA1
Tamanho51x21mm52x20mm
IdiomasMicroPython / CMicroPython / C

Nota: os valores de consumo de energia no ESP32 está executando um programa com um loop vazio.

Raspberry Pi Pico vs Arduino Uno Rev3

O Arduino cria um monte de pranchas e em termos de fator forma, o Arduino Nano é provavelmente o mais próximo, chegando a 45 x 18mm. O Arduino também produz uma prancha que utiliza o microcontrolador RP2040.

No entanto, a prancha mais comum é a Arduino Uno Rev3, por isso vamos ver como estas duas pranchas se comparam.

Framboesa Pi PicoArduino Uno Rev3
Frequência da CPU133MHz16 MHz
MicrocontroladorRP2040ATmega328P
Memória flash2MB32KB
RAM256KB2KB
GPIO26 (utilizável pelo utilizador)14 digital, 6 analógico
Tem USB?microUSBUSB B
WiFi e/ou BT?NãoVariante WiFi disponível
Voltagem1.8 - 5.5V ou 5V USB6-20V (7-12V recomendado) ou via USB.
Tamanho51x21mm68x53mm
IdiomasMicroPython / CC

Para iniciantes, uma das maiores diferenças a notar é como o Arduino Uno opera na lógica de 5V enquanto o Raspberry Pi Pico opera na lógica de 3.3V.

5V pode potencialmente facilitar as coisas para iniciantes porque alguns componentes requerem uma entrada de 5V, tais como relés. Se você tem um componente de 5V que você deseja executar no Raspberry Pi Pico, você terá que fornecer componentes adicionais para subir de 3.3V para 5V.

A outra diferença é que o Arduino Uno é de código aberto, o que significa que você pode comprar placas mais baratas que têm exatamente a mesma capacidade. Dito isto, o Raspberry Pi Pico já é extremamente barato a $4 ou 4,10 euros.

O Arduino Uno também aceita uma gama muito mais ampla de tensões (7-12V recomendado), o que significa que você pode desligá-lo de muitos tipos de fontes de alimentação.

Em termos de linguagens de programação, o Pico tem a vantagem de permitir que você codifique em MicroPython, enquanto você terá que escrever C para o Arduino. Dito isto, o Arduino tem uma biblioteca maior para facilitar o trabalho com componentes.

Raspberry Pi Pico vs. Raspberry Pi Zero

pi zero pi pico
Foto por Harrison Broadbent.

Em certa medida, o Pico e o Zero têm capacidades sobrepostas. Em circuitos simples, você pode usar o Pico e o Zero para fazer exatamente a mesma coisa.

Mas como se chega ao mesmo ponto vai variar entre o Pico e o Zero.

Aqui está a lógica que eu uso para decidir qual usar:

CenárioO que obter
Sou melhor numa língua que não seja C/PythonZero
Eu tenho energia "ilimitada" (ou seja, caso de uso não solar ou bateria)Zero
Eu preciso de WiFi e/ou BluetoothZero
Preciso de guardar dados (tais como registos de temperatura)Zero
Preciso de usar uma máquina fotográfica.Zero
Eu preciso da configuração mais compactaPico
Preciso de reiniciar rapidamente em caso de falha de energiaPico
Eu não quero montar um sistema operacional.Pico
Eu quero a opção mais barata.Pico

Um esboço mais detalhado do porquê ir para o Pico ou Zero é coberto acima, e este link vai levá-lo a ele.

Raspberry Pi Pico vs Teensy 4.1

A Teensy 4.1 é uma placa extremamente poderosa devido ao seu chip ARM Cortex-M7 que funciona a 600MHz.

Lançado pela PJRC em 2021, o Teensy 4.1 apelaria para pessoas que precisam de algo com muito poder de processamento, RAM, memória flash, ethernet e mais pinos GPIO do que o que você encontraria no Raspberry Pi Pico.

Você recebe 55 pinos de entrada/saída, mas apenas 42 são "breadboardable". Existem 35 pinos PWM, 18 entradas analógicas, 8 serial, 3 SPI e 3 I2C.

Onde o Raspberry Pi Pico brilha se resume à sua simplicidade. Se você está apenas aprendendo e quer a maneira mais fácil de começar em projetos simples, o Raspberry Pi Pico oferece a maneira mais fácil de começar a funcionar.

Por exemplo, a linguagem de programação preferida do Raspberry Pi Pico é MicroPython, enquanto o Teensy 4.1 é programado principalmente em C.

Também é muito fácil usar o CircuitPython no Raspberry Pi Pico, o que facilita a construção de projetos.

O preço do Teensy 4.1, a $26.85, é muito mais que o $4 Raspberry Pi Pico.

Além disso, é muito mais fácil alimentar o Raspberry Pi Pico com uma bateria, devido à grande voltagem que pode suportar.

Framboesa Pi PicoTeensy 4.1
Frequência da CPU133MHz600MHz
Memória flash2MB8MB
RAM256KB1024KB
GPIO26 (utilizável pelo utilizador)55 digital, 18 analógico
Tem USB?microUSBmicroUSB
WiFi e/ou BT?NãoNão, mas tem Ethernet
Voltagem1.8 - 5.5V ou 5V USB5V via USB ou VIN
Tamanho51x21mm61x15mm

Raspberry Pi Pico downloads

Eu compilei uma lista de arquivos que podem ajudá-lo em seus projetos. A maioria deles vive no sub-domínio da ficha técnica do Raspberry Pi e o que está aqui é o que é relevante para o Raspberry Pi Pico.

Referências

Pinout de framboesa Pi Pico

Esquemas do Raspberry Pi Pico

Ficha técnica do Raspberry Pi Pico (sobre o Pico, especificações mecânicas/eléctricas, características, alimentação, depuração, esquema, localização dos componentes)

Resumo do produto Raspberry Pi Pico (marketing deck)

Folha de dados RP2040

Framboesa Pi Pico Fritzing arquivo

Raspberry Pi Pico FAQ

10 curiosos fatos do Raspberry Pi Pico

Programação

Extensão C para MicroPython

Raspberry Pi Pico e MicroPython no Windows

RPico de afrango Pi Pico Começando com o Pico (para desenvolvimento C/C++)

CircuitPython para arquivo Raspberry Pi Pico UF2

Thonny

Comece com MicroPython no Raspberry Pi Pico

Raspberry Pi Pico C SDK (kit de desenvolvimento de software) documentação

Raspberry Pi Pico MicroPython SDK (kit de desenvolvimento de software) documentação

CAD

Raspberry Pi Pico arquivo STEP

RP2040 ficheiro KiCAD mínimo

RP2040 VGA KiCAD ficheiro

14 comentários

  1. Antony em Abril 18, 2022 às 11:54 am

    O consumo de energia não é de 6W, os seus 0.5W (100mA a 5V)

    • Xuyun Zeng em Abril 20, 2022 às 5:02 am

      Hey Antony, corrigi-o. Obrigado pela sua contribuição.

    • Rys em Novembro 13, 2022 às 6:49 am

      chyba na wyjściach pinów. Tak przynajmniej jest w karcie technologicznej PICO

  2. Andres Nuñez em Julho 3, 2022 às 11:54 pm

    Puedo conectar por usb una Raspberry Pi Pico con un Arduino Nano. que la rrasberry envíe por usb datos al arduino?

    Gracias

  3. robert em Setembro 19, 2022 às 8:47 pm

    O pico w tem agora wifi

  4. Arya em Setembro 24, 2022 às 7:17 am

    > Oh, mencionei que o Raspberry Pi Zero é muito exigente quanto à voltagem que lhe fornece? Só demora 4,75 - 5,25V.

    incorrecto, essa é a especificação declarada, mas é preciso menos do que isso e funciona maravilhosamente. ver aqui: https://hackaday.io/project/19035/log/69596

  5. FWBlack em Outubro 4, 2022 às 7:12 pm

    Muito boa escrita! Gostei disto: "Bem, por exemplo, um dos meus projectos utilizou um potenciómetro para regular a frequência de comutação de um relé". - estava a pensar se poderia partilhar detalhes deste projecto como exemplo. Utilizou o PIO / PIO State Machine?

    • Xuyun Zeng em Outubro 5, 2022 às 10:01 am

      Nenhum PIO utilizado!

      Basicamente, quando se liga um potenciómetro a um ADC, obtém-se um valor. Virar o potenciómetro aumentará ou diminuirá o valor.

      Basicamente, usei esses valores para criar um temporizador. Assim, por exemplo, se o valor for 2000, corresponderá a 2 segundos ligado, 2s desligado.

  6. Frabci em Dezembro 7, 2022 às 2:48 am

    Buenas, es posible que la framboesa pi pico se queme al recibir de entrada una correinte de 2A pero voltaje de 5V?

    • Xuyun Zeng em Dezembro 8, 2022 às 7:09 am

      Estas usando um cargador de movil que tiene una corriente de 2A? Aunque siempre haya riesgo, creo que el Pico solo tomaria la corriente que necesita, aunque tu cargador puede ponerle 2A (al maximo).

  7. Nigel A Gunn em Janeiro 20, 2023 às 9:42 pm

    Não está limitado a C ou microPython para programação. Tenho picos com FORTH e intérpretes BASIC instalados e há sempre CircuitPython.

    • raspi berry em Fevereiro 4, 2023 às 11:49 am

      obrigado pelo feedback - interessante saber que também pode gerir línguas como a FORTH no Pico!

  8. Antonio em Abril 28, 2023 às 2:01 pm

    No Raspberry Pi Pico W não é necessário instalar a biblioteca adafruit-circuitpython-hid.
    Iniciar a instalação e, após um curto período de tempo, o erro é de 28 memórias.
    dove sbaglio?
    Grazie 1000

  9. PoyFromFrance em Agosto 28, 2023 às 10:36 am

    Excelente artigo! Usei um Pico para o meu teclado personalizado com firmware kmk (circuito baseado em python) e é ótimo.
    Comprei alguns clones do pico no aliexpress recentemente por apenas 2,7 dólares com tipo C e 16 mb... Ainda não testei.

Deixe um comentário