Arquivo mensal: Outubro 2017

PlatformIO 2016/17

Introdução

O PlatformIO é uma plataforma para o desenvolvimento de software destinado a várias arquiteturas e várias placas nomeadamente as ChipKIT UNO32 que usaremos nas aulas.

Uma das vantagens da utilização desta plataforma é a possibilidade de se usar as funções da biblioteca Arduino que começam a ser um autêntico standard no desenvolvimento de sistema baseados em microcontroladores.

Nesta página iremos descrever o processo de instalação e criação dum primeiro projeto para o caso particular do sistema operativo Windows embora esta plataforma possa ser usada noutros sistemas operativos como o OS X e Linux.

Instalação

Previamente à instalação do PlatformIO, e porque ele foi escrito em linguagem Python, será necessário ter previamente instalada uma versão 2.7 do Python (não a versão 3). Caso se pretenda usufruir da funcionalidade “code completion” no PlatformIO será também preciso instalar o pacote CLang.

O processo de instalação começa pela descarga do ficheiros de instalação do editor Atom disponível para o sistema operativo pretendido (platformio-atom-windows.exe no caso do Windows). Uma vez executado, é iniciada a etapa de instalação do IDE (ambiente integrado de desenvolvimento) PlatformIO:

atom

Terminada esta etapa é apresentada a seguinte janela, onde deveremos escolher a opção de “Reload now”:

installed

Surgindo então a seguinte janela inicial:

platformio

Criação dum projeto

Carregando no botão “New Project” da janela inicial, faz surgir um “wizard” para criação dum novo projeto:

new

Antes de concluir o processo (carregando no botão “Initialize“, é preciso escolher:

  • a placa a usar (Selected board): no nosso caso a Digilent chipKIT UNO32
  • a pasta que albergará o projeto (Choose the directory)

Neste último caso dever-se-á situar a pasta do projeto (neste exemplo chamada blink) dentro duma das 3 pastas que foram criadas para o efeito C:\usr\Alunos\COMP\3MIEEC_Tx (dependendo da turma em causa). É importante pois evitar o uso do “Ambiente de trabalho” sob pena destas serem periodicamente apagadas!

Caso a criação dum projeto para uma determinada arquitetura de placas ocorra pela primeira vez, são instaladas todas as ferramentas necessárias (a chamada toolchain) sendo durante o processo apresentada uma mensagem, neste caso: Installing platform: microchippic32. Em futuros projetos para uma mesma placa, tal já não irá repetir-se.

Criado o projeto, a sua estrutura será apresentada no lado esquerdo da janela do PlatformIO:

project

É preciso agora criar na pasta src um novo ficheiro (blink.cpp) com o código fonte do projeto:

newfile

O código fonte a introduzir neste exemplo, destina-se a fazer piscar um LED da placa, e é o seguinte:

#include "Arduino.h"

#define LED 13

void setup() {
  pinMode(LED, OUTPUT);
}

void loop() {
  digitalWrite(LED, HIGH);
  delay(1000);
  digitalWrite(LED, LOW);
  delay(1000);
}

Segue-se a fase de compilação (Build) do código, que é iniciada carregando no primeiro icon do lado esquerdo do PlatformIO:

build

Por fim, o ficheiro contendo o binário do programa é descarregado (Upload) para a memória Flash do PIC32 da placa através do segundo ícone do lado esquerdo do PlatformIO:

upload

De notar que após carregar no botão de Upload, poderá ser necessário fazer Reset à placa. Desta forma o processo de descarga decorrerá sem percalços desde que o porto de ligação à placa esteja liberto. No final do processo, e face ao programa utilizado, o LED da placa ChipKIT irá piscar!