¿Qué es el formato de archivo UF2?
UF2 significa USB Flashing Format, un formato de archivo creado por Microsoft en 2017 para su plataforma MakeCode (PXT). Está diseñado para grabar microcontroladores a través de almacenamiento masivo USB: la placa aparece como una unidad extraíble ordinaria y se copia el firmware en ella como cualquier otro archivo. La especificación es abierta y publicada por Microsoft bajo una licencia MIT.
Un archivo .uf2 es una secuencia plana de bloques de 512 bytes. Cada bloque es autónomo: lleva un encabezado de 32 bytes con números mágicos, la dirección de destino en la memoria flash, la longitud de la carga útil, el índice y el recuento total del bloque, y un ID de familia que identifica el chip de destino, seguido de hasta 476 bytes de firmware y un número mágico final. Este diseño resuelve un problema real: un sistema operativo puede escribir los bloques de un archivo copiado en cualquier orden, por lo que hacer que cada bloque sea independiente permite que el cargador de arranque de la placa grabe los datos en el momento en que llegan, sin necesidad de ver nunca un archivo parcial.
La mayoría de las personas conocen el UF2 al programar una placa educativa o para aficionados. La Raspberry Pi Pico (RP2040), BBC micro:bit y muchas placas de Adafruit, Arduino y Seeed aceptan UF2, y es así como se instalan los proyectos de CircuitPython y MakeCode. Normalmente se obtiene un .uf2 exportándolo desde un editor como MakeCode o descargando un firmware precompilado para su placa exacta. Otros formatos de firmware relacionados que podría ver incluyen imágenes .BIN sin procesar y archivos Intel .HEX.
Seguridad y protección
RIESGO: MEDIUMA UF2 file is passive data and cannot run on your PC, but flashing firmware rewrites a board's program memory. Only flash a .uf2 that is built for your exact board, and only from a source you trust, since the wrong or malicious firmware can leave a board unusable until you reflash a known-good image.
Detalles del formato
en pocas palabrasProgramas que abren archivos UF2
.uf2 file onto that drive. uf2conv.py firmware.bin -o firmware.uf2, or inspect a UF2 with uf2conv.py -i firmware.uf2. .uf2 file onto the removable drive the board presents in bootloader mode. .uf2 file onto it. python3 uf2conv.py firmware.bin -o firmware.uf2 to build or inspect UF2 files. Detalles técnicos
especificación profunda| Encoding | binary |
| Byte order | little-endian (all 32-bit fields) |
| Container | flat sequence of independent 512-byte blocks |
| Typical size | a few KB to about 1 MB |
| Structure | A series of 512-byte blocks; each has a 32-byte header (magic numbers, target flash address, payload size, block index and count, family ID), up to 476 bytes of firmware payload, and a trailing magic number |
| Versioning | flags and 32-bit family-ID field identify the target chip (for example RP2040) |
| Integrity | three magic numbers per block (0x0A324655, 0x9E5D5157, 0x0AB16F30) validate each block; no CRC |
| Platforms | Windows, macOS, Linux, ChromeOS |
| Initial Release Full | 2017, with Microsoft MakeCode |
| Notes | You do not open a UF2 to view it; you copy it onto the board's USB drive to flash firmware. Because each 512-byte block is self-contained, the operating system can write the blocks in any order and the bootloader still flashes correctly. |
| Lanzado | 2017 (Microsoft MakeCode / PXT) |
| Estándar abierto | Sí · libre de regalías |
| Especificación | github.com |
Conversiones de UF2
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos UF2.
Preguntas frecuentes
¿Cómo abro un archivo UF2?
.uf2 a esa unidad. La placa lo graba y se reinicia.¿Cómo pongo una Raspberry Pi Pico en modo cargador de arranque?
.uf2 en ella y la placa se reiniciará ejecutando el nuevo firmware.¿Puedo convertir un archivo UF2 a BIN?
uf2conv.py de Microsoft extrae el binario sin procesar con uf2conv.py file.uf2 -c -o file.bin. Mantenga un registro de la dirección de la memoria flash almacenada en el encabezado UF2.