Skip to content
SPONSORS
Picture of Corsi
Corsi
Picture of Marco Mello
Marco Mello

A PicoDock é uma placa de expansão desenvolvida para ser utilizada com a Raspberry Pi Pico, oferecendo acesso simplificado a diversos componentes eletrônicos já integrados.
Seu objetivo é facilitar o desenvolvimento de projetos de prototipagem, ensino e experimentação em sistemas embarcados.

Recursos

A Raspberry Pi Pico pode ser encaixada diretamente no soquete da PicoDock, onde todos os componentes ficam disponíveis sem a necessidade de conexão adicional, são os principais recursos:

  • 3x Botões;
  • 1x LED RGB;
  • 1x Buzzer sem oscilador interno;
  • 1x OLED 128x32;
  • 1x Multiplexador ADC 8x1;
  • 1x Barramento para conexão com a placa TFT LCD - Dock;
  • 1x Borne KRE para alimentação externa até 12V;

Abaixo estão detalhados os GPIOs de cada recurso da placa:

ComponenteGPIODescrição
OLED - SDA2I2C0 - Dados
OLED - SCK (SCL)3I2C0 - Clock
Botão B14Entrada digital
Botão B25Entrada digital
Botão B36Entrada digital
LED RGB - Vermelho7Saída PWM / Digital
LED RGB - Verde8Saída PWM / Digital
LED RGB - Azul9Saída PWM / Digital
Buzzer10Saída Digital
Sel_A_4051 (MUX)11Seleção A do multiplexador
Sel_B_4051 (MUX)12Seleção B do multiplexador
Sel_C_4051 (MUX)13Seleção C do multiplexador
ADC_IN_4051 (MUX)28Entrada ADC (leitura do MUX)
LCD_TOUCH_X+ (Resistivo)14Eixo X+
LCD_TOUCH_X- (Resistivo)26Eixo X-
LCD_TOUCK_Y+ (Resistivo)27Eixo Y+
LCD_TOUCH_Y-/SDA (Resistivo / Capacitivo)20Y- ou I2C SDA (touch capacitivo)
LCD_TOUCH_SCL (Capacitivo)21I2C SCL (touch capacitivo)
LCD_RESET16Reset do display
LCD_SPI_0_CS17Chip Select (SPI0)
LCD_SPI_0_SCK18Clock SPI0
LCD_SPI_0_TX19MOSI SPI0
LCD_DATA_CMD_SEL22Seleção Data/Command
LCD_LITE15Controle de backlight

⚠️ O que são pinos conflitantes?

⚠️ Pinos conflitantes são GPIOs que exercem mais de uma função de hardware ou que são compartilhados entre diferentes periféricos da placa.

Isso significa que:

  • Um mesmo GPIO pode estar fisicamente conectado a dois recursos.
  • Ativar uma função pode impedir o uso de outra.
  • Dois periféricos podem disputar o mesmo barramento (ex: I2C ou SPI).

🔎 Exemplos nesta placa:

⚠️ GPIO 20

  • Pode funcionar como LCD_TOUCH_Y- (modo resistivo)
  • Ou como SDA do touch capacitivo (I2C)
    Não é possível usar as duas funções simultaneamente.

⚠️ GPIO 21

  • Utilizado como SCL do touch capacitivo (I2C)
    Caso outro periférico utilize o mesmo barramento, é necessário verificar compatibilidade de endereços.

⚠️ Barramentos compartilhados (I2C / SPI)

  • I2C: GPIO 2–3 e 20–21
  • SPI0: GPIO 17–19

Esses barramentos permitem múltiplos dispositivos, mas exigem configuração adequada:

  • Endereços distintos no I2C
  • Controle correto do Chip Select (CS) no SPI

🚨 Por que isso é importante?

Configuração incorreta de pinos conflitantes pode causar:

  • Falha na comunicação com periféricos
  • Leituras incorretas
  • Travamentos no firmware
  • Conflitos elétricos (dois dispositivos dirigindo o mesmo pino)

✔️ Boas práticas

  • Consultar o esquemático da placa
  • Definir previamente os periféricos que serão utilizados
  • Verificar conflitos antes de inicializar os drivers
  • Documentar o mapeamento de GPIO no firmware

Botões

A placa possui 3 botões para uso geral:

  • Quando pressionado, o estado lógico vai para 0.
  • Quando solto, o estado lógico fica em alta impedância, sendo necessário ativar o pino de leitura com PULL_UP.

Segue abaixo o circuito implementado em cada botão:

Pinos utilizados (Conflitantes)

ComponenteGPIODescrição
Botão B14Entrada digital
Botão B25Entrada digital
Botão B36Entrada digital

LED RGB

Permite o controle de três canais de cor (Vermelho, Verde e Azul) para geração de diferentes combinações de cores.

Pinos utilizados (Conflitantes)

ComponenteGPIODescrição
LED RGB - Vermelho7Saída PWM / Digital
LED RGB - Verde8Saída PWM / Digital
LED RGB - Azul9Saída PWM / Digital

BUZZER

Controlado por saída digital ou PWM, pode ser utilizado para emissão de alertas sonoros ou geração de tons.

Pino utilizado (Conflitante)

ComponenteGPIODescrição
Buzzer10Saída Digital

Display OLED 128x32

Conectado via protocolo I²C, possibilita a exibição de textos, gráficos e dados de sensores.

Pinos utilizados (Conflitantes)

ComponenteGPIODescrição
OLED - SDA2I2C0 - Dados
OLED - SCK (SCL)3I2C0 - Clock

Display MUX_8x1 (ADC)

Conectado ao pino ADC2 da Pico, permite a leitura de até 8 sinais analógicos diferentes através de um único canal.

Pinos utilizados (Conflitantes)

ComponenteGPIODescrição
Sel_A_4051 (MUX)11Seleção A do multiplexador
Sel_B_4051 (MUX)12Seleção B do multiplexador
Sel_C_4051 (MUX)13Seleção C do multiplexador
ADC_IN_4051 (MUX)28Entrada ADC (leitura do MUX)

LCD TFT

Compatível para conexão de displays TFT LCD, expandindo as possibilidades visuais da placa.

Pinos do FLAT

Caso queiram conectar o LCD direito na pico usando um protoboard, utilizem os pinos a seguir do cabo flat:

Notem que os pinos GP14, GP26, GP27, GP20 e GP21 são utilizados para o touch, a conexão só é necessária se forem usar no código.

Pinos utilizados (Conflitantes)

ComponenteGPIODescrição
LCD_TOUCH_X+ (Resistivo)14(Touch) Eixo X+
LCD_TOUCH_X- (Resistivo)26(Touch) Eixo X-
LCD_TOUCK_Y+ (Resistivo)27(Touch) Eixo Y+
LCD_TOUCH_Y-/SDA (Resistivo / Capacitivo)20(Touch) Y- ou I2C SDA (touch capacitivo)
LCD_TOUCH_SCL (Capacitivo)21(Touch) I2C SCL (touch capacitivo)
LCD_RESET16Reset do display
LCD_SPI_0_CS17Chip Select (SPI0)
LCD_SPI_0_SCK18Clock SPI0
LCD_SPI_0_TX19MOSI SPI0
LCD_DATA_CMD_SEL22Seleção Data/Command
LCD_LITE15Controle de backlight

Alimentação Externa

Conector para alimentação externa, garantindo maior flexibilidade no fornecimento de energia.

Aplicações

  • Prototipagem rápida de projetos com Raspberry Pi Pico 2
  • Ensino de eletrônica digital e programação embarcada
  • Projetos com múltiplas entradas analógicas
  • Testes com diferentes tipos de displays (OLED e TFT)
  • Desenvolvimento de sistemas interativos (botões, LEDs, buzzer)