MicroPython é uma versão leve da linguagem de programação Python desenvolvida para programar microcontroladores, SOCs e outros dispositivos de sistema embarcado. Ele foi criado para permitir que os desenvolvedores aproveitem o " fácil de aprender e usar" natureza do python para desenvolvimento de sistemas embarcados. Com Python agora a principal linguagem introdutória na maioria das escolas e sendo uma das linguagens de programação mais populares e amplamente utilizadas em todo o mundo, por meio de micro-python, muitos usuários de Python são capazes de contornar a estressante curva de aprendizagem íngreme associada ao uso de C e C ++ para programar microcontroladores. Eles podem começar imediatamente a usar o conhecimento que adquiriram ao longo dos anos para acessar o hardware de baixo nível, assim como com as outras linguagens. Micro-python é especificamente uma implementação enxuta de Python 3 e, como tal, é compatível com a sintaxe de python 3.
Enquanto MicroPython ainda não está no mesmo nível de popularidade que C e C ++ para desenvolvimento de sistemas embarcados, sua popularidade tem aumentado com mais e mais microcontroladores, IDEs e placas de desenvolvimento apoiando seu uso. Para o tutorial de hoje, veremos uma dessas placas para a qual o firmware pode ser desenvolvido usando MicroPython.
Para o tutorial de hoje, veremos como desenvolver o código para o ESP32 usando MicroPython.
Começaremos dando uma olhada em por que o MicroPython é bom para ESP32 e trabalharemos por meio da configuração do ESP32 para MicroPython e do upload do esboço intermitente com MicroPython no ESP32.
Por que MicroPython? (MicroPython vs Arduino C)
Uma das maneiras mais fáceis e comprovadas de programar o ESP32 é usando o IDE do Arduino, que significa o uso da versão do C ou C ++ do Arduino. C e C ++, por décadas, foram as duas linguagens mais populares para desenvolvimento de sistemas embarcados, e a versão Arduino da linguagem a tornou ainda mais simples, o que explica sua popularidade entre fabricantes e amadores devido à facilidade com que os códigos podem ser desenvolvidos. Além disso, o Arduino tem uma das maiores comunidades de tecnologia do mundo, com novas bibliotecas, correções de software, suporte a novas placas, etc., sendo lançadas pela comunidade diariamente. Tudo isso o torna uma ferramenta formidável para a programação de placas de sistema embarcadas. A única limitação real que pode ser atribuída ao Arduino C é o fato de que ele só funciona dentro do IDE do Arduino.Com o IDE sendo limitado e sem alguns recursos que poderiam ser realmente úteis ao desenvolver uma grande base de código, o Arduino C não é o mais eficiente.
MicroPython, por outro lado, é relativamente novo. Enquanto sua comunidade de usuários está crescendo, com suporte para mais plataformas sendo lançadas, sua força não pode ser comparada à do Arduino. No lado positivo, MicroPython é essencialmente uma versão enxuta de python, que é uma das linguagens de programação mais populares do mundo e, como tal, qualquer problema que não possa ser resolvido pela comunidade MicroPython pode obter insights da comunidade python geral.
Além do suporte da comunidade, o MicroPython também possui alguns recursos que o colocam muito acima da classe do Arduino. Um desses recursos é o REPL. REPL significa Ler-Avaliar-Imprimir. Este recurso permite que você se conecte a uma placa e execute o código rapidamente sem a necessidade de compilar ou fazer upload do código inteiro. Como tal, você pode testar cada parte do seu código à medida que os desenvolve.
Independentemente de qual desses dois você escolher para o seu projeto, certifique-se do que melhor atende a você. Com isso resolvido, vamos pular para a construção do exemplo blink usando ESP32 com MicroPython.
Componentes Requeridos
Para construir o exemplo de piscar, precisaremos dos seguintes componentes;
- DOIT ESP32 DevKit v1 (1)
- Um LED (1)
- Resistor de 100 Ohm (1)
- Fios de ligação
- Placa de ensaio (1)
Você pode usar qualquer uma das outras placas baseadas em ESP32 no lugar do DOIT ESP32 DevKit V1 e pode optar por trabalhar com o LED integrado, o que significa que você só precisa da placa ESP32 para este tutorial. Anteriormente, piscávamos o LED ESP32 programando-o usando o IDE do Arduino.
Além dos componentes de hardware, também exigiremos um software como o Thonny IDE