Blink com MicroPython: Tutorial universal

Crie seu primeiro Blink em MicroPython! Um guia universal prático demonstrado no Raspberry Pi Pico, mas adaptável para outros microcontroladores.

8 de Dezembro de 2025
Blink com MicroPython: Tutorial universal

Introdução: O "Hello World" do Hardware

Para qualquer entusiasta de eletrônica ou sistemas embarcados, fazer um LED piscar é o rito de passagem essencial. É o equivalente ao "Hello World" da programação de software. Este teste simples confirma que sua placa está viva, que o interpretador MicroPython está funcionando corretamente e que você tem controle sobre os pinos de entrada e saída (GPIOs).

Embora utilizemos o Raspberry Pi Pico para a demonstração visual deste tutorial, o código e a lógica apresentados aqui são universais. Com ajustes mínimos, você poderá aplicar este conhecimento em placas baseadas em ESP32, ESP8266, STM32 e muitas outras.

⚠️ Aviso Importante: Este tutorial foi desenhado para placas que possuem um LED simples (monocromático) conectado a um pino digital.

Algumas placas modernas (como a RP2040-Zero ou certas versões do ESP32-S3) possuem um LED RGB endereçável (como WS2812/NeoPixel) como LED onboard. Se a sua placa usa um LED RGB, este código não funcionará, pois esses componentes exigem bibliotecas e protocolos de comunicação específicos.

Hora de Codar: O Tutorial Blink

O que você vai precisar

Para seguir este guia, certifique-se de ter em mãos:

  • Uma placa de desenvolvimento: Qualquer modelo com o firmware MicroPython já instalado (Raspberry Pi Pico, ESP32, STM32 BlackPill, etc.).
  • Thonny IDE: O ambiente de desenvolvimento integrado (IDE) mais recomendado para iniciantes em MicroPython, instalado no seu computador.

O Script Mágico

Abaixo está o código completo. Ele é limpo e direto. Copie-o exatamente como está:

from machine import Pin
from utime import sleep

BUILTIN_LED_PIN = 25

led = Pin(BUILTIN_LED_PIN, Pin.OUT)

while True:
    led.value(0)
    sleep(1)
    led.value(1)
    sleep(1)

Entendendo o código:

  1. Importações: Nas duas primeiras linhas, importamos a classe Pin do módulo machine (para controlar o hardware) e a função sleep do módulo utime (para criar pausas no tempo).
  2. Definição do Pino: Criamos uma variável chamada BUILTIN_LED_PIN para armazenar o endereço do LED. Isso facilita a alteração caso você mude de placa.
  3. Configuração do Objeto: A linha led = Pin(...) cria um objeto que representa o LED físico, configurando-o como uma saída (Pin.OUT), ou seja, o pino enviará tensão para fora.
  4. O Loop Infinito: O bloco while True: cria um ciclo que nunca termina.
  5. A Ação: Dentro do loop, alternamos o estado do LED e pedimos ao processador para "dormir" (esperar) por 1 segundo entre cada alteração.

💡 Obs sobre Lógica High/Low: O comando .value(1) envia sinal alto (3.3V) e .value(0) envia sinal baixo (GND).

  • Na maioria das placas (como o Raspberry Pi Pico), 1 liga o LED e 0 desliga.
  • Porém, em algumas placas (como o WeAct BlackPill ou módulos ESP8266), o LED pode ser ligado em Lógica Inversa (Active Low). Nesses casos, 0 ligará o LED e 1 o desligará. Se o seu piscar parecer invertido, essa é a razão!

Adaptando para Sua Placa

A beleza do MicroPython é a portabilidade, mas o hardware físico muda. Aqui está o que você precisa ajustar se não estiver usando um Raspberry Pi Pico.

A variável BUILTIN_LED_PIN

Esta é a única linha que você provavelmente precisará alterar. Cada fabricante conecta o LED onboard a um pino diferente.

  • Raspberry Pi Pico: O LED está no pino 25.
  • WeAct BlackPill (STM32F411): O LED está no pino C13.
  • ESP32 (DevKit V1): Frequentemente no pino 2.

Por que usar strings ou inteiros?

Você notará que no Raspberry Pi Pico usamos um número inteiro (25), mas em placas STM32 (como a BlackPill) usamos uma string ('C13').

  • Inteiros (ex: 25, 2): Usados em chips onde o MicroPython mapeia os pinos diretamente por um número de índice GPIO (comum em RP2040 e ESP32).
  • Strings (ex: 'C13', 'PA5'): Usadas em chips onde os pinos são organizados por "Portas" e "Números" (Porta C, pino 13). O MicroPython precisa da string para identificar corretamente o registrador do hardware.

Executando e Testando

Agora vamos ver a mágica acontecer. Siga estes passos simples:

  1. Conecte sua placa ao computador via USB.
  2. Abra o Thonny IDE e certifique-se de que sua placa foi detectada no canto inferior direito da janela.
  3. Cole o código que apresentamos acima no editor.
  4. Localize a barra de ferramentas no topo e clique no botão "Run current script" (ícone de Play verde) ou aperte F5.

Não é necessário salvar! Para testes rápidos como este, você não precisa salvar o arquivo main.py dentro da placa. Ao clicar em "Run", o Thonny envia o código diretamente para a memória RAM do microcontrolador e o executa imediatamente.

O Resultado: Se tudo estiver correto, o LED da sua placa começará a piscar em intervalos de 1 segundo.