Skip to main content

Cómo Usar el IDE PlatformIO para Programación con Arduino

Como puedes haber experimentado, el IDE de Arduino puede no ser el mejor IDE para Programación con Arduino cuando se trata de productividad, ¡aquí te presentamos una opción más amigable para el desarrollo! Desarrolla Wio Terminal y Seeeduino XIAO en tu entorno de desarrollo favorito usando PlatformIO IDE en Microsoft Visual Studio Code!

Qué es PlatformIO

PlatformIO es una herramienta IDE profesional multiplataforma, multiarquitectura y multi-framework para ingenieros de sistemas embebidos y software que escriben aplicaciones embebidas. Al proporcionar una interfaz IDE universal usando PlatformIO, ¡puedes programar tu hardware de una manera más amigable para el desarrollo!

En esta wiki, podrás configurar PlatformIO para soportar Wio Terminal y Seeeduino XIAO para comenzar tu programación!

Para más información, por favor visita PlatformIO

Comenzando con Platform IO IDE

PlatformIO soporta algunos de los IDEs y editores de texto más populares como plugins. En esta wiki, se usa PlatformIO para VSCode como ejemplo.

Para otros IDEs, por favor revisa los siguientes para referencia:

PlatfromIO para VSCode

  • PASO 1. Descargar VSCode

Descarga e Instala Microsoft Visual Studio Code

  • PASO 2. Descargar los Plugins del IDE PlatformIO para VSCode

Abre el Mercado de Extensiones en VS Code haciendo clic en Extensiones en el panel izquierdo o usa el atajo de teclado:

note

Atajo de Teclado: Shift+CTRL+X en Windows o Shift+CMD+X en macOS.

Busca PlatfromIO en el Mercado de Extensiones y haz clic en Instalar:

  • PASO 3. Abrir la Página de Inicio de PlatformIO

Haz clic en el botón "PlatformIO Home" en la barra de herramientas inferior de PlatformIO

¡Ahora, PlatformIO está instalado en tu PC!

Configuraciones para Wio Terminal y Seeeduino XIAO

Wio Terminal y Seeeduino XIAO ahora son oficialmente compatibles con PlatformIO:

  1. Navega a la ubicación raíz de PlatformIO:

    • Para Unix: ~/.platformio

    • Para Windows: C:\Users\{username}\.platformio donde {username} es tu nombre de usuario.

  2. Navega a la carpeta platforms.

  3. Descarga el platform-atmelsam configurado en la carpeta platforms.

Placas Compatibles

El platform-atmelsam configurado es compatible con las siguientes placas:

attention icon

Consejo

Ya fusionado, pronto ya no será necesario hacer esto manualmente.

Inicio Rápido

Este tutorial te introduce los conceptos básicos del flujo de trabajo del IDE de PlatformIO y demuestra un ejemplo simple de "Blink" en Wio Terminal.

  • Haz clic en el botón PlatformIO Home.

  • Haz clic en New Project y selecciona Seeed Wio Terminal como placa.

  • Abre main.cpp bajo la carpeta src y copia lo siguiente:
#include <Arduino.h>

void setup() {
// initialize digital pin LED_BUILTIN as an output.
Serial.begin(9600);
pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
  • Open the platformio.ini configuration file and check it's correct:
[env:seeed_wio_terminal]
platform = atmelsam
board = seeed_wio_terminal
framework = arduino
  • Construye el proyecto con el botón Build en la barra de herramientas de PlatformIO o con atajos de teclado.
note

Construir Proyectos: ctrl+alt+b en Windows o cmd+shift+b en macOS.

  • Sube el proyecto a Wio Terminal haciendo clic en el botón Upload en la barra de herramientas de PlatformIO.
  • ¡Ahora deberías ver el LED de Wio Terminal parpadeando!

Para más información sobre Primeros Pasos con PlatformIO para VSCode, consulta también aquí .

Añadiendo Bibliotecas a PlatformIO

Importando Bibliotecas Directamente

Para importar bibliotecas directamente a PlatformIO desde Github, puedes configurar el platformio.ini y añadir las lib_deps con la URL de la biblioteca dependiente como se muestra a continuación:

lib_deps = https://github.com/Seeed-Studio/Seeed_Arduino_LIS3DHTR

- Ejemplo de Uso:

#include <Arduino.h>
#include<LIS3DHTR.h>

LIS3DHTR<TwoWire> lis;

void setup() {
Serial.begin(115200);
lis.begin(Wire1);

if (!lis) {
Serial.println("ERROR");
while(1);
}
lis.setOutputDataRate(LIS3DHTR_DATARATE_25HZ); //Data output rate
lis.setFullScaleRange(LIS3DHTR_RANGE_2G); //Scale range set to 2g
}

void loop() {
float x_values, y_values, z_values;
x_values = lis.getAccelerationX();
y_values = lis.getAccelerationY();
z_values = lis.getAccelerationZ();

Serial.print("X: "); Serial.print(x_values);
Serial.print(" Y: "); Serial.print(y_values);
Serial.print(" Z: "); Serial.print(z_values);
Serial.println();
delay(50);
}

Importando desde Arduino

Otra forma de importar bibliotecas es apuntar a la ruta de la biblioteca de Arduino en el archivo de configuración platformio.ini, por ejemplo:

lib_extra_dirs = /Users/{username}/Documents/Arduino/libraries
caution

Esta no es una ruta directa a una biblioteca con código fuente. Debe ser una ruta a un almacenamiento que contenga bibliotecas agrupadas por carpetas. Por ejemplo, D:\PlatformIO\extra\libraries pero no D:\PlatformIO\extra\libraries\FooLibrary.

Para más opciones de bibliotecas, consulte PlatformIO Library docs.

Usando la Biblioteca ArduinoCore Más Reciente para Seeed

El ArduinoCore en PlatformIO es mantenido por PlatformIO mismo y a veces, no está actualizado con la última versión lanzada por Seeed. En este caso, puede usar el siguiente platformio.ini, por ejemplo:

; PlatformIO Project Configuration File
;
; Build options: build flags, source filter
; Upload options: custom upload port, speed and extra flags
; Library options: dependencies, extra library storages
; Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html

[env:seeed_wio_terminal]
platform = atmelsam
board = seeed_wio_terminal
framework = arduino
platform_packages = framework-arduino-samd-seeed@https://github.com/Seeed-Studio/ArduinoCore-samd.git

Otras Características Útiles de PlatformIO

Loading Comments...