- O que é PlatformIO?
- Configurando PlatformIO para Arduino Uno
- Programando Arduino UNO usando o IDE PlatformIO
- Programação da placa STM32 usando o IDE PlatformIO
O desenvolvimento no Arduino e no Arduino IDE sempre foi fácil e divertido com sua interface de usuário simples. O Arduino IDE é open-source e livre para usar o ambiente de desenvolvimento com todos os recursos, como escrever, compilar e fazer upload do código para as placas Arduino. É baseado em Java e roda nos principais sistemas operacionais como Windows, OS X e Linux. Mas com toda a sua simplicidade e grande comunidade, ele não possui alguns recursos que um desenvolvedor experiente exigirá para um desenvolvimento rápido que pode reduzir o período de desenvolvimento. Existem muitos ambientes de desenvolvimento disponíveis para Arduino, mas todos têm algumas vantagens e desvantagens. Hoje, começaremos com o ambiente de desenvolvimento PlatformIO, que é fácil de usar e tem recursos adicionais em comparação com o ambiente Arduino.
O que é PlatformIO?
O PlatformIO é um ecossistema de código aberto baseado em Python para desenvolvimento de IoT e um IDE de plataforma cruzada com um depurador unificado executado em Windows, Mac e Linux. PlatformIO vem com gerenciador de biblioteca para plataformas como Arduino ou suporte MBED junto com testes de unidade e atualizações de firmware. O PlatformIO suporta uma série de plataformas, frameworks, placas como Arduino, ESP32, ESP8266 e vem com vários exemplos e bibliotecas. É independente da plataforma em que está sendo executado e requer apenas Python instalado no computador.
Vantagens do PlatformIO
O PlatformIO apresenta um desenvolvimento rápido com seus recursos como C / C ++ Code Completion e Smart Code Linter para um rápido desenvolvimento profissional que não existe no Arduino IDE. Além disso, o PlatformIO oferece suporte ao tema com cores claras e escuras para desenvolvimento a qualquer momento. Ele também vem com Smart Code Navigations e Code Formatting. Os principais recursos incluem o Multi-Platform Build System, Library Manager, Serial Port Monitor etc.
O Unified Debugger com suporte para múltiplas arquiteturas e plataformas de desenvolvimento permite depurar múltiplas placas embutidas com Zero-Configuration. O PlatformIO Unified Debugger tem recursos como pontos de interrupção condicionais, expressões e pontos de controle, visualizador de memória, reinicialização a quente de uma sessão de depuração ativa. O PlatformIO Core é escrito em Python 2.7 e funciona em Windows, macOS, Linux, FreeBSD e até mesmo computadores do tamanho de cartão de crédito baseados em ARM, como Raspberry Pi, BeagleBone, CubieBoard, Samsung ARTIK, etc. Além disso, o PlatformIO tem File Explorer que ajuda organizar os arquivos quando o projeto atinge um determinado nível e a organização se torna necessária.
Configurando PlatformIO para Arduino Uno
Usar PlatformIO é muito simples e requer algumas etapas para começar. O PlatformIO requer Python instalado no computador, pois conforme explicado acima, o núcleo do PlatformIO foi escrito em Python 2.7. Observe que o PlatformIO não oferece suporte ao Python 3, portanto, é recomendável instalar a versão do Python 2 e, em seguida, prosseguir para configurar o IDE PlatformIO. O PlatformIO é um IDE e ainda fornece pacotes oficiais (plug-ins, extensões) para os IDEs e editores de texto mais populares.
Hoje vamos instalar o PlatformIO em um editor de texto como o Atom e o Visual Studio Code. Na documentação oficial do Platform IDE, ele afirma que o PlatformIO IDE para VS Code (Visual Studio Code) oferece melhor desempenho do sistema e os usuários acharam mais fácil começar. Portanto , vamos configurar PlatformIO no Visual Studio Code. O VS Code é um conhecido editor de texto com várias extensões que nos permite desenvolver em diferentes linguagens de programação.
Vamos começar a configurar o PlatformIO para começar a desenvolver código no Arduino UNO. Existem etapas envolvidas que são explicadas abaixo:
- Em primeiro lugar, instale o Visual Studio Code de seu site oficial. As etapas de instalação do Visual Studio Code não serão explicadas aqui, mas você pode encontrá-lo no site do VS Code. Existem etapas gerais envolvidas, assim como instalar qualquer outro software no sistema operacional Windows.
- O código do Visual Studio terá a seguinte aparência quando for instalado com êxito.
- A próxima etapa inclui a instalação do PlatformIO usando extensões de código VS. Para isso, você precisa ir ao ícone Extensões no canto superior esquerdo do Código VS. Há quadrado Ícone da caixa que é o 5 º ícone no canto superior esquerdo. Basta clicar nele e uma caixa de pesquisa aparecerá ao lado dela, onde você pode encontrar muitas extensões para diferentes linguagens de programação como C / C ++, C #, Python, PHP, Go, JavaScript, TypeScript e Node.js etc.
- Pesquise “PlatformIO” na caixa de pesquisa de extensão e você verá o ícone PlatformIO com nome e descrição. Basta clicar nele e instalá-lo. A instalação de conjuntos de ferramentas e outras dependências pode demorar algum tempo. As dependências incluem ambiente C / C ++, já que o desenvolvimento do Arduino é feito principalmente em C / C ++.
- Quando a instalação for concluída, você verá a seguinte interface. A interface inclui toda a navegação necessária, como criação de novo projeto, importação de projeto do Arduino, projeto aberto, exemplos de projeto etc.
Isso conclui as etapas de instalação do PlatformIO. Agora o PlatformIO está instalado e pronto para uso. Assim como o Arduino IDE, começaremos com o Programa Blink e tentaremos fazer o upload do Programa Blink no Arduino UNO.
Programando Arduino UNO usando o IDE PlatformIO
A interface PlatformIO será explicada simultaneamente durante a programação do Arduino UNO. Aqui estamos programando o Arduino para LED piscando usando o PlatformIO. O mesmo pode ser feito usando o IDE do Arduino. Siga as etapas abaixo para criar um novo projeto para LED piscando.
- Selecione a guia “Novo Projeto” no menu de acesso rápido.
- Nomeie o projeto (aqui é 'Blink'). Procure e selecione a placa que é Arduino UNO. Como estamos trabalhando no framework Arduino, o framework selecionado será o Arduino. Após preencher todos os detalhes basta clicar em Concluir.
- O projeto começará a ser criado coletando recursos e outras dependências.
- Quando o projeto for criado com sucesso, você receberá a mensagem de prompt “O projeto foi inicializado com sucesso” com todos os detalhes preenchidos.
- Para abrir o projeto criado, basta rolar para baixo o Menu Inicial do PlatformIO e você verá toda a lista dos projetos criados desde o início. No canto direito do projeto criado, clique em 'Abrir' para abrir o projeto e iniciar a edição.
- Quando o projeto for aberto, inicialmente parecerá que está oculto, mas não se preocupe, o PlatformIO possui recurso de explorador de arquivos onde todos os arquivos do projeto atual serão encontrados. Basta ir ao canto superior esquerdo e abrir o 'Sem título (local de trabalho)'. Ao clicar nele, todos os arquivos aparecerão como menu suspenso. Para encontrar o editor de texto para editar o 'Código', selecione 'src' e abra 'main.cpp'. O modo de editor de texto aparecerá na tela inicial ao abrir uma nova guia. Aqui você pode escrever todos os códigos do Projeto em andamento.
- Basta escrever o Código Blink para o Arduino UNO. Observe que o PlatformIO não tem o acesso padrão às bibliotecas do Arduino, portanto, toda vez que você escrever o código para o Arduino, sempre inclua a biblioteca do Arduino, ou seja, “#include” no início do programa.
- A próxima etapa seria compilar e enviar o código. Para fazer isso, vamos examinar as funções fornecidas pelo PlatformIO. Além disso, o PlatformIO seleciona a porta COM por padrão. Mas você também pode alterar a porta se não for a porta COM desejada. A mudança da porta COM será explicada posteriormente neste tutorial. PlatformIO tem funções como Build, Upload, Upload to Remote Device, Clean, Test, Run Task, Serial Monitor, New Terminal. Todas as funções podem ser encontradas no canto inferior esquerdo do Editor. Ao passar o mouse sobre os ícones, as funções serão mostradas.
- Para construir o esboço, clique em 'Construir' e para fazer o upload do esboço clique no ícone 'Upload'. Quando o upload estiver concluído, você poderá ver o tempo necessário para fazer o upload com todos os outros detalhes e uma mensagem dizendo “Sucesso”. O código foi carregado com sucesso e você poderá ver o LED piscando na placa Arduino.
Para selecionar ou alterar qualquer porta COM, basta ir até a tela inicial do PlatformIO e depois ir aos dispositivos, aqui você pode ver todos os dispositivos disponíveis conectados. Selecione a porta COM apropriada e siga o mesmo procedimento para carregar o esboço.
Programação da placa STM32 usando o IDE PlatformIO
A programação da placa STM32 terá etapas exatamente semelhantes às da programação do Arduino UNO explicada acima. A diferença será selecionar a Placa para STM32 ao abrir um novo projeto para STM32. O bom do PlatformIO é que ele não precisa de nenhum pacote externo para fazer o download de qualquer placa separadamente, ele baixa automaticamente todos os pacotes e facilita a seleção de uma placa e ir para o editor. Usaremos JLink / JTAG / STLink / Programador Serial externo para fazer upload do esboço para STM32. O STM32 também pode ser programado com Arduino IDE. Prossiga com as etapas a seguir para programá-lo com PlatformIO.
- Basta nomear o projeto (aqui é 'Blink STM32'). Em seguida, selecione a placa para STM32, ou seja, ' BluePill F103C8 (Genérico) '. Em seguida, selecione Framework como Arduino. Clique em Concluir e aguarde um pouco, pois inicialmente demorará algum tempo para baixar os pacotes e dependências para a placa STM32.
- Uma vez configurado, o próximo tempo de criação do projeto será menos comparado ao primeiro. Agora simplesmente vá para Untitled (Workspace) -> src -> main.cpp no explorador de arquivos à esquerda.
- Agora, as próximas etapas serão importantes, pois é necessário decidir qual programador devemos usar para programar a placa STM32. Existem muitos programadores disponíveis, como JTAG, STLink, JLink, Serial etc. Todos funcionarão, mas você precisa configurar a página ou arquivo de configuração 'platformio.ini'.
- Neste projeto, estamos usando o Serial Programmer CP210x USB para UART Bridge. Já fizemos a Programação da Placa STM32F103C8 usando a porta USB, ou a maioria dos passos serão executados a partir daí. Você pode visitar o link e saber mais sobre isso.
- Em primeiro lugar, conecte o programador serial à placa STM32 com o seguinte mapeamento de pinos e conecte-o ao PC.
USB para programador serial |
STM32 Board |
5V |
5V |
Gnd |
Gnd |
Rx |
A9 |
Tx |
A10 |
- Agora vá para o explorador de projetos e abra a página 'platformio.ini' e altere a instrução conforme mostrado na imagem. O upload_protocol dirá qual programador deve usar (STLink, JLink, Serial etc). O upload_port seleciona a porta COM. Você pode encontrar indo para 'Dispositivos' na página inicial. Altere a porta COM de acordo com sua porta COM.
- Vá para 'main.cpp' e mude o programa para o programa Blink . Agora basta fazer o upload do programa e ele mostrará a mensagem de sucesso e o tempo necessário para fazer o upload. Agora o LED começará a piscar conectado no pino PC13 da placa STM32.
Isso conclui o tutorial completo sobre a programação do Arduino UNO e também da placa STM32 usando PlatformIO. Se você tiver alguma dificuldade ao seguir as etapas, escreva para o nosso fórum ou comente abaixo.