Placa Micro Bit - Placa BBC Micro Bit V2 - Ferramenta Educacional de Programação e Eletrônica
Placa BBC Micro Bit V2 - Ferramenta Educacional de Programação e Eletrônica

O que é e como funciona a placa micro bit na prática

A placa micro bit é uma pequena placa de desenvolvimento baseada no nRF51822, um microcontrolador ARM Cortex-M0 de 32 bits rodando a 16 MHz. Ela tem LED matrix 5x5, botões A e B, sensor de temperatura, acelerômetro, compasso e comunicação Bluetooth/USB. Foi criada originalmente pela BBC pra ensino de programação no Reino Unido, e hoje virou referência em muitas salas de aula técnicas e feiras de robótica por aqui. O que a maioria não te conta é que a placa foi desenhada pra rodar projetos simples. Quando você começa a empurrar o hardware pro limite — PWM simultâneo, DMA, múltiplos periféricos ativos ao mesmo tempo — as limitações aparecem rápido. A memória SRAM de 16 KB fica apertada em projetos maiores, e a flash de 256 KB também dá trabalho se você depender de bibliotecas pesadas.

Como configurar a placa micro bit para programar

O caminho mais direto é usar o MakeCode ou o micro:bit Python Editor. Ambos funcionam no navegador e geram firmware automaticamente. Se preferir C++ ou Rust, o Mbed OS e o Zephyr RTOS dão suporte nativo. Eu já perdi tarde demais descobrindo que o firmware padrão do MakeCode sobe pelo USB como um drive Mass Storage. Você simplesmente arrasta o arquivo .hex pra lá e pronto. Mas se você usar o Python Editor e precisar de bibliotecas adicionais, o processo muda: o arquivo gerado precisa ser carregado via nRF utilitário ou via CLI do MicroPython. O erro comum é tentar arrastar pra mesma pasta e a placa não reconhecer.

Outro detalhe que ninguém menciona: a versão 1 da placa e a versão 2 usam pinos de E/S diferentes na borda. Os conectores são os mesmos, mas o mapeamento dos GPIOs não é idêntico. Se você montar um shield que funciona na v1 e migrar pro v2 sem verificar o datasheet, algo vai queimar. Eu já vi isso acontecer com um sensor de corrente que eu conectei diretamente no pino P0 sem resistor de pull-up adequado. O pino entrou em mode open-drain e queimou o regulador interno.

Pitfalls técnicos que você vai enfrentar

O primeiro problema que aparece é a tensão. A placa opera em 3.3V nos pinos de E/S. Se você conectar um sensor de 5V diretamente nos pinos de leitura analógica, o regulador não aguenta. Use divisor de tensão ou um buffer N-ch MOSFET pra nivelar sinal. O segundo é o consumo de energia. O Bluetooth LE na v2 gasta entre 5 e 15 mA quando ativo, e o processador inteiro chega a cerca de 30 mA em uso normal. Se você alimentar com pilha AA (1.5V cada, duas em série), a bateria dura horas, não dias. Eu testei isso com um projeto de monitor de temperatura rodandoBLE periodicamente e consegui cerca de 4 horas com duas pilhas alcalinas AA. Com LiPo de 3.7V e 1000mAh, o número sobe pra algo em torno de 18 horas com o mesmo load.

👉 Clique no botão abaixo para saber mais sobre o assunto!

O terceiro é a falta de conversor ADC dedicado. O nRF51 tem ADC de 10 bits interno, mas ele compartilha clock com o sistema e a conversão mais rápida que você consegue com precisão razoável gira em torno de 100 ksps. Se você precisa de mais velocidade, tem que recorrer a um ADC externo por I2C ou SPI, ou aceitar os limites do hardware.

Workarounds práticos que eu aprendi no caminho

Quando precisei de mais pinos de E/S do que a placa oferece, a solução foi usar um shift register 74HC595 pra expandir saídas e um multiplexer CD4051 pros entradas analógicas. Não é bonito, mas funciona sem precisar comprar uma placa diferente. Se o seu projeto exige muito processamento, considere usar a v2 com o chip nRF52832. A diferença de performance é brutal: o Cortex-M4 com FPU e 512 KB de flash versus o M0 sem FPU e 256 KB. Custa cerca de 40% a mais, mas o ganho justifica em projetos que rodam algoritmos complexos.

Para depuração, o JTAG integrado no nRF51822/nRF52832 permite attach direto via pino de teste. Eu uso um segger jlink economy pra gravar e debugar em tempo real. O software nRF Connect ou o Nordic nrfjprog fazem o trabalho. Só lembre que o pinout do debugger é diferente do conector de expansão padrão — consulte o diagrama oficial da BBC antes de montar qualquer coisa.

Placa micro bit: quandoo projeto realmente vira dor de cabeça

Quando você tenta usar Bluetooth LE com múltiplos dispositivos conectados simultaneamente, o nRF51822 da v1 simplesmente não aguenta. O stack BLE dele é limitado a um central e um peripheral por vez. A v2 com nRF52832 melhora isso, mas ainda assim não é uma solução para multi-device real. Se o seu projeto precisa de conexão com mais de dois dispositivos ao mesmo tempo, olhe pro ESP32 ou pro Raspberry Pi Pico W. O GPS externo por UART também é problemático. O nRF51 tem apenas uma UART completa. Se você usar ela pro GPS, perde o console serial de depuração. A solução prática é usar o SoftwareSerial via GPIO, mas a taxa de baud máxima cai pra metade do que o hardware nativo suporta, e a precisão do timing depende do scheduler do sistema.

Eu recomendo fortemente testar qualquer projeto em simulação antes de soldar componentes. O TinkerCAD tem suporte básico pra micro:bit, e o Proteus também, embora com limitações. Pelo menos você descobre erros de ligação antes de fritar hardware.