Saltar al contenido principal

Primeros pasos con Seeed Studio XIAO RP2040

pir

Descripción general

La serie Seeed Studio XIAO RP2040 incluye la XIAO RP2040 y la XIAO RP2040 Plus. Ambas placas están impulsadas por el mismo microcontrolador Raspberry Pi RP2040, que incorpora un procesador Arm Cortex-M0+ de doble núcleo funcionando hasta 133 MHz y 264 KB de SRAM. Cada placa también incluye 2 MB de memoria Flash integrada. Como resultado, ofrecen el mismo rendimiento de procesamiento básico y comparten el mismo ecosistema de software RP2040.

Las principales diferencias entre las dos placas son el número de GPIO expuestos, las conexiones periféricas disponibles y las funciones de gestión de energía integradas.

La XIAO RP2040 estándar utiliza la huella XIAO común de 14 pines, que consta de 11 pines GPIO y tres pines de alimentación. Sus 11 pines de E/S digitales son compatibles con PWM, y cuatro de ellos también admiten entrada analógica. La placa proporciona interfaces I2C, UART, SPI y SWD en un factor de forma compacto de 21 × 17,8 mm.

La XIAO RP2040 Plus mantiene el mismo diseño XIAO común de 14 pines y añade 15 pads GPIO soldados en la parte posterior y los laterales de la placa. Esto aumenta el número total de pines de E/S digitales expuestos de 11 a 26. También añade una segunda interfaz I2C, pads dedicados para USB D+/D− y conexiones relacionadas con la batería, incluidas BAT+, BAT− y BAT_EN.

Para aplicaciones alimentadas por batería, la XIAO RP2040 Plus integra un PMIC a bordo, un indicador de carga de batería y protección contra retroceso de BAT a 3V3. Estas funciones adicionales hacen que la versión Plus sea más adecuada para placas portadoras personalizadas, montaje SMD, dispositivos alimentados por batería y proyectos que requieren más recursos de E/S.

Seeed Studio XIAO RP2040 es compatible con la placa de expansión Seeed Studio XIAO.

Características

  • Potente MCU RP2040: Procesador Arm Cortex-M0+ de doble núcleo funcionando hasta 133 MHz
  • Amplios recursos de memoria: 264 KB de SRAM y 2 MB de memoria Flash integrada
  • Amplia compatibilidad de software: Compatible con Arduino, PlatformIO, MicroPython, CircuitPython, TinyGo, Rust, Zephyr y más
  • Huella XIAO común: Ambas versiones mantienen el diseño estándar XIAO de 14 pines, incluidos 11 pines GPIO y tres pines de alimentación
  • Factor de forma compacto: Diseño del tamaño de un pulgar de 21 × 17,8 mm para dispositivos vestibles y aplicaciones con espacio limitado
  • Interfaces estándar de XIAO RP2040: 11 pines de E/S digitales, cuatro pines de entrada analógica, 11 pines compatibles con PWM, I2C, UART, SPI y SWD
  • E/S ampliada en XIAO RP2040 Plus: Añade 15 pads GPIO para un total de 26 pines de E/S digitales, junto con una segunda interfaz I2C y pads dedicados para USB D+/D−
  • Gestión de batería integrada: La XIAO RP2040 Plus incluye un PMIC integrado, indicación de carga de batería, conexiones dedicadas para batería y protección contra retroceso de BAT a 3V3
  • Opciones de montaje flexibles: Pines comunes compatibles con protoboard combinados con bordes metalizados y pads compatibles con SMD para placas portadoras personalizadas

Especificaciones

Nombre del productoSeeed Studio XIAO RP2040Seeed Studio XIAO RP2040 Plus
Chipset

Raspberry Pi RP2040

ProcesadorDual Cortex-M0+ hasta 133 MHz
RAM264 KB SRAM
Flash2 MB Flash integrada
Interfaz

Pin GPIO x14
Pin digital × 11
Pin analógico × 4
Pin PWM × 11
I2C × 1
UART × 1
SPI × 1

Pin GPIO x29
Pad GPIO adicional × 15
Pin digital x26
Pin analógico × 4
PWM × 26
I2C × 2
UART × 1
SPI × 1

Integrado en placa

LED de usuario × 1
LED de encendido × 1
LED verde × 1
LED azul × 1
LED rojo × 1
LED RGB × 1
Botón de reinicio × 1
Botón de arranque × 1

LED de usuario × 1
LED de encendido × 1
LED de carga (indicador de carga de batería) × 1
LED RGB × 1
Botón de reinicio × 1
Botón de arranque × 1

Gestión de batería (PMIC)NingunoPMIC integrado
Alimentación

Tensión de entrada (Type-C): 5V
Tensión de entrada (BAT): 5V

Protección contra retroceso de BAT a 3V3No
Compatibilidad de software

Arduino, PlatformIO, MicroPython, CircuitPython, TinyGo, Rust, Zephyr y más próximamente

Temperatura de trabajo-40°C a 85°C
Dimensiones21 x 17,8 mm
Variantes

Pack de 3 unidades Seeed Studio XIAO RP2040

Seeed Studio XIAO RP2040 pre-soldado

Seeed Studio XIAO RP2040 Plus

Descripción del hardware

Parte frontal de XIAO RP2040

Parte trasera de XIAO RP2040

precaución

Para los pines de E/S generales: La tensión de trabajo del MCU es de 3,3 V. Una tensión de entrada conectada a los pines de E/S generales puede causar daños al chip si es superior a 3,3 V.

Para los pines de alimentación: El circuito convertidor DC-DC integrado capaz de convertir 5 V en 3,3 V permite alimentar el dispositivo con una fuente de 5 V a través de VIN-PIN y 5V-PIN.

XIAO RP2040 actualmente solo admite alimentación por batería y no puede conectarse a Type-C mientras hay una batería conectada, ya que puede suponer un riesgo de seguridad.

Por favor, presta atención al usarlo, no levantes la cubierta de blindaje.

Mapa de pines

Pin XIAOFunciónXIAO RP2040XIAO RP2040 PlusDescripción
5VVBUSVBUSVBUSEntrada/salida de alimentación USB de 5 V
GNDGNDGNDGNDTierra
3V33V3_OUT3V3_OUT3V3_OUTSalida de alimentación de 3,3 V
D0A0GPIO26GPIO26GPIO, ADC0
D1A1GPIO27GPIO27GPIO, ADC1
D2A2GPIO28GPIO28GPIO, ADC2
D3A3GPIO29GPIO29GPIO, ADC3
D4SDA0GPIO6GPIO6GPIO, datos I2C0
D5SCL0GPIO7GPIO7GPIO, reloj I2C0
D6TXGPIO0GPIO0GPIO, transmisión UART
D7RXGPIO1GPIO1GPIO, recepción UART
D8SCKGPIO2GPIO2GPIO, reloj SPI
D9MISOGPIO4GPIO4GPIO, entrada de datos SPI
D10MOSIGPIO3GPIO3GPIO, salida de datos SPI
D11No disponible como pin externo
D12GPIOGPIO18GPIO de expansión solo en Plus
D13SCL1GPIO21Reloj I2C1 solo en Plus
D14SDA1GPIO20Datos I2C1 solo en Plus
D15GPIOGPIO19GPIO de expansión solo en Plus
D16GPIOGPIO22GPIO de expansión solo en Plus
D17GPIOGPIO23GPIO de expansión solo en Plus
D18No disponible como pin externo
D19GPIOGPIO5GPIO de expansión solo en Plus
D20GPIOGPIO13GPIO de expansión solo en Plus
D21GPIOGPIO14GPIO de expansión solo en Plus
D22GPIOGPIO15GPIO de expansión solo en Plus
D23GPIOGPIO16GPIO de expansión solo en Plus
D24GPIOGPIO17GPIO de expansión solo en Plus
D25GPIOGPIO10GPIO de expansión solo en Plus
D26GPIOGPIO9GPIO de expansión solo en Plus
D27GPIOGPIO8GPIO de expansión solo en Plus
ResetRUNRUNRUNEntrada de reinicio
BootRP2040_BOOTRP2040_BOOTRP2040_BOOTEntrar en modo bootloader
USER_LED_RCanal rojoGPIO17Control directo del canal rojo del LED RGB en XIAO RP2040
USER_LED_GCanal verdeGPIO16Control directo del canal verde del LED RGB en XIAO RP2040
USER_LED_GCanal azulGPIO25Control directo del canal azul del LED RGB en XIAO RP2040
RGB_LEDDatos WS2812BGPIO12/NEOPIXControl de datos de color WS2812B de un solo hilo
RGB_ENHabilitación WS2812BGPIO11Habilita la alimentación del WS2812B; no es un pin de datos de color
User LEDLED controlado por el usuarioGPIO25LED de usuario independiente en XIAO RP2040 Plus
BAT_ENHabilitación de bateríaGPIO24Control de alimentación de batería en Plus
CHARGE_LEDIndicador de cargaLED de estado de carga controlado por hardware; no es un GPIO de usuario
SWDIODepuración SWDSWDIORP2040_SWDIODatos de Serial Wire Debug
SWCLKDepuración SWDSWCLKRP2040_SWCLKReloj de Serial Wire Debug
USB_D+USB-USB_DPDatos positivos USB 1.1 Full-Speed
USB_D-USB-USB_DMDatos negativos USB 1.1 Full-Speed

Entrar en modo Bootloader

A veces el puerto de Seeed Studio XIAO RP2040 puede desaparecer cuando falla el proceso de programación del usuario. Podemos resolver este problema mediante la siguiente operación:

  • Mantén pulsado el botón B.
  • Conecta el Seeed Studio XIAO PR2040 a tu ordenador.
  • En el ordenador aparecerá una unidad de disco.

En este punto, el chip entra en modo Bootloader y el puerto de grabación vuelve a aparecer. Debido a que el chip RP2040 tiene dos particiones, una es el Bootloader y la otra es el programa de usuario. El producto graba un código de bootloader en la memoria del sistema cuando sale de fábrica. Podemos cambiar de modo realizando los pasos anteriores.

Reinicio

Si quieres reiniciar el Seeed Studio XIAO RP2040, realiza los siguientes pasos:

  • Conecta el Seeed Studio XIAO RP2040 a tu ordenador.
  • Pulsa los pines R una vez.

Ten en cuenta: El comportamiento de los LED monocromos programables integrados (son rojo, azul y verde) es el inverso al de un Arduino. En el Seeed Studio XIAO RP2040, el pin debe ponerse en nivel bajo para habilitarlos.

pir

Uso de la batería

nota

Solo el XIAO RP2040 Plus incorpora un conector de batería BAT en su parte posterior, por favor tenlo en cuenta.

El XIAO RP2040 Plus es capaz de utilizar una batería de litio de 3,7 V como entrada de alimentación. Puedes consultar el siguiente diagrama para el método de cableado.


precaución

Ten cuidado de no cortocircuitar los terminales positivo y negativo y quemar la batería y el equipo al soldar. Si la batería tiene carga, nunca la sueldes a la placa, ya que esto puede quemar la placa de circuito. Un cortocircuito mientras el circuito está alimentado supone un riesgo significativo; se recomienda utilizar un adaptador.

Ejemplo de lectura del voltaje de la batería

Según el esquema, el XIAO RP2040 Plus utiliza el circuito integrado cargador de baterías de iones de litio SGM40567-4.2XG/TR para proporcionar carga de corriente constante y voltaje constante para una batería de iones de litio de una sola celda. El estado de carga se indica mediante el parpadeo de Charge_LED.

El circuito de medición del voltaje de la batería utiliza un interruptor de carga TPS22916CNYFPR para habilitar o deshabilitar la ruta de medición. Cuando es necesario medir el voltaje de la batería, el MCU habilita la ruta de medición a través de BAT_EN (GPIO24), reduciendo así el consumo de la batería mientras el dispositivo está en modo de espera.

Además, se utiliza un interruptor analógico SGM4875XXDM6G/TR para cambiar el canal de entrada del ADC. Controlado por GPIO24/BAT_EN, selecciona si la señal de medición de la batería u otra señal de entrada analógica se conecta al pin A3 (GPIO29) ADC, lo que permite multiplexar el pin del ADC.

tip

Cuando el pin A3 se utiliza como entrada ADC para medir el voltaje de la batería, no puede utilizarse al mismo tiempo como pin de E/S de propósito general. Asegúrate de tener esto en cuenta al asignar los pines.


El voltaje de la batería se mide utilizando un circuito divisor de resistencias. El voltaje leído por el ADC es la mitad del voltaje real de la batería, por lo que el software debe multiplicar la medición del ADC por 2 para obtener el voltaje real de la batería.

Ejemplo de lectura de la batería
constexpr float ADC_VREF = 3.3f;
constexpr float ADC_MAX = 4095.0f;
constexpr float DIVIDER_RATIO = 2.0f; // 10k / 10k voltage divider

float readBatteryVoltage() {
// Enable voltage divider circuit and analog switch simultaneously
digitalWrite(BAT_EN, HIGH);

// Wait for U2 output, RC filter and ADC input to stabilize
delay(10);

// Discard one possibly stale ADC reading
analogRead(A3);

// Multiple sampling and averaging to reduce noise
uint32_t sum = 0;
constexpr int samples = 16;

for (int i = 0; i < samples; i++) {
sum += analogRead(A3);
delay(2);
}

// Turn off immediately after measurement to avoid continuous power consumption by divider resistors
digitalWrite(BAT_EN, LOW);

float adcRaw = sum / (float)samples;
float a3Voltage = adcRaw * ADC_VREF / ADC_MAX;

return a3Voltage * DIVIDER_RATIO;
}

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

pinMode(BAT_EN, OUTPUT);
digitalWrite(BAT_EN, LOW); // Disable detection circuit by default

analogReadResolution(12); // RP2040 Plus ADC: 0~4095
}

void loop() {
float batteryVoltage = readBatteryVoltage();

Serial.print("Battery: ");
Serial.print(batteryVoltage, 3);
Serial.println(" V");

delay(1000);
}

nota

Para aplicaciones de bajo consumo, desactiva BAT_EN después de que se complete la medición del voltaje de la batería para reducir el consumo de energía en reposo causado por las resistencias del divisor de voltaje.

  • Charge_LED parpadea mientras la batería se está cargando.

  • Resultado de la medición del voltaje de la batería: El voltaje medido de una batería de iones de litio puede diferir del valor nominal impreso en la batería. Consulta siempre el valor medido real.

Visor de esquemáticos en línea

Recursos

XIAO RP2040

Diseño de hardware

Diseño mecánico

XIAO RP2040 Plus

Diseño de hardware

Recursos del curso

Soporte técnico y debate sobre el producto

Gracias por elegir nuestros productos. Estamos aquí para ofrecerte diferentes tipos de soporte y garantizar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para adaptarnos a diferentes preferencias y necesidades.

Loading Comments...