Platform IO com Seeed Studio XIAO ESP32-C5

Introdução ao PlatformIO
PlatformIO é um poderoso e altamente extensível ecossistema de desenvolvimento projetado para sistemas embarcados. Ele integra de forma transparente o suporte a uma ampla variedade de placas de desenvolvimento e microcontroladores, oferecendo flexibilidade incomparável. O que diferencia o PlatformIO é sua notável escalabilidade: mesmo que sua placa específica não seja suportada nativamente, sua arquitetura permite definições de placa personalizadas de forma simples.
De forma crucial, o PlatformIO faz a ponte para desenvolvedores familiarizados com Arduino, permitindo a compilação e o envio de código no estilo Arduino simplesmente incluindo as bibliotecas relevantes.
Usar PlatformIO para XIAO ESP32-C5
Em seguida, faremos o desenvolvimento para o XIAO ESP32-C5 com base no PlatformIO, ajudando você a explorar o fluxo de trabalho de desenvolvimento do PlatformIO.
Preparação de Hardware
Você precisa preparar um XIAO ESP32-C5 com antecedência.
| Seeed Studio XIAO ESP32-C5 |
|---|
![]() |
Baixar o VS Code
Baixe de acordo com o sistema que você está usando o VS Code

Instalar o PlatformIO
Abra o VSCode, clique em Extensions, depois procure por PlatformIO e selecione para instalar. Após a conclusão da instalação, reinicie o VSCode.

Novo Projeto
- Abra a interface PIO Home e selecione
New Project

- Name: Dê um nome ao seu projeto
- Board: Selecione Seeed Studio XIAO ESP32-C5
- Framework: Selecione Ardunio
- Location: O caminho dos arquivos do projeto pode ser definido como um caminho personalizado ou você pode selecionar o caminho padrão.
- Clique em Finish e aguarde até que a criação seja concluída. Em seguida, abra o arquivo do projeto no workspace.

Se você quiser modificá-lo com base em outro projeto PlatformIO, também pode consultar diretamente a configuração abaixo.
- platfromio.ini
[env:seeed-xiao-esp32-c5]
platform = Seeed Studio
board = seeed-xiao-esp32-c5
framework = arduino
monitor_speed = 115200
Exemplo de Piscar LED
Neste exemplo de Piscar LED, vamos guiá-lo na compilação e envio de arquivos usando o PlatformIO.
Etapa 1. Copie o código de exemplo
#include <Arduino.h>
void setup()
{
// put your setup code here, to run once:
pinMode(LED_BUILTIN, OUTPUT);
Serial.begin(115200);
}
void loop()
{
// put your main code here, to run repeatedly:
digitalWrite(LED_BUILTIN, LOW);
Serial.print("LED ON \n");
delay(1000);
digitalWrite(LED_BUILTIN, HIGH);
Serial.print("LED OFF \n");
delay(1000);
}
Etapa 2. Compile o projeto
Clique no ícone √ na barra de status na parte inferior do VS Code para compilar.

Se a compilação for bem-sucedida, será exibido conforme mostrado na figura.

Etapa 3. Upload
Clique no ícone → na barra de status na parte inferior do VS Code para fazer o upload.

Etapa 4. Verifique o Efeito do Programa
Abra o Serial Monitor como mostrado na figura abaixo. Ele imprimirá o status ligado/desligado do LED em intervalos de 1 segundo.

O LED piscará no mesmo intervalo de 1 segundo.

Exemplo de Conexão Wi-Fi de 5 GHz
XIAO ESP-C5 suporta Wi-Fi 6 de banda dupla 2,4 GHz e 5 GHz. Este exemplo demonstrará o efeito de se conectar a uma rede Wi-Fi de 5 GHz.
Copie o código a seguir para o seu projeto PlatformIO.
Código de Referência para Conexão WiFi
#include <Arduino.h>
#include <WiFi.h>
// ----------------------------------------------------------------
// Modify your WiFi SSID and Password here
// ----------------------------------------------------------------
const char* ssid = "YOUR_WIFI_SSID"; // e.g., "MyHomeWiFi"
const char* password = "YOUR_WIFI_PASSWORD"; // e.g., "12345678"
void setup() {
// Initialize serial communication at 115200 baud
Serial.begin(115200);
delay(5000); // Wait for serial to stabilize
Serial.println("\nStarting ESP32 WiFi Connection Demo...");
// 1. Set WiFi mode to Station (connect to a router as a client)
WiFi.mode(WIFI_STA);
// 2. Start connection
Serial.printf("Connecting to SSID: %s ", ssid);
WiFi.begin(ssid, password);
// 3. Wait for connection to be established
// This loop waits until the status becomes WL_CONNECTED
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
// ----------------------------------------------------------------
// Connection successful, print detailed information
// ----------------------------------------------------------------
Serial.println("\n\n---------------------------------------");
Serial.println("WiFi Connected Successfully!");
Serial.println("---------------------------------------");
// Print IP Address
Serial.print("IPv4 Address: ");
Serial.println(WiFi.localIP());
// Print Signal Strength (RSSI)
// Unit is dBm, usually between -30 (Excellent) and -90 (Unusable)
long rssi = WiFi.RSSI();
Serial.print("Signal (RSSI): ");
Serial.print(rssi);
Serial.println(" dBm");
// Simple signal quality check based on RSSI value
Serial.print("Signal Quality: ");
if(rssi > -50) Serial.println("Excellent");
else if(rssi > -60) Serial.println("Good");
else if(rssi > -70) Serial.println("Fair");
else if(rssi > -80) Serial.println("Weak");
else Serial.println("Unstable/Very Poor");
// Print MAC Address (Hardware ID)
Serial.print("MAC Address: ");
Serial.println(WiFi.macAddress());
// Print Gateway IP
Serial.print("Gateway IP: ");
Serial.println(WiFi.gatewayIP());
Serial.println("---------------------------------------");
}
void loop() {
// In the main loop, we can periodically check the connection status
// If the connection is lost, attempt to reconnect
if (WiFi.status() != WL_CONNECTED) {
Serial.println("WiFi Connection Lost! Reconnecting...");
WiFi.disconnect();
WiFi.reconnect();
delay(5000); // Wait a bit before checking again to avoid spamming
}
// Your other application logic goes here
// ...
delay(10000); // Loop every 10 seconds
}
Compile e envie o código
Quando o XIAO ESP32-C5 estiver conectado ao WiFi, o Serial Monitor imprimirá informações como a intensidade do sinal da rede WiFi conectada.
Também é possível ver claramente que o XIAO ESP32-C5 tem uma forte capacidade de conexão a redes Wi-Fi de 5 GHz.


Seguindo os dois exemplos acima, você já deve ter dominado as operações básicas de desenvolvimento com o PlatformIO. Estamos ansiosos para ver você criar projetos ainda mais interessantes com o XIAO ESP32-C5!
Suporte Técnico e Discussão de Produtos
Obrigado por escolher nossos produtos! Estamos aqui para oferecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja o mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.
