O que é o formato de ficheiro UF2?
UF2 significa USB Flashing Format, um formato de arquivo que a Microsoft criou em 2017 para sua plataforma MakeCode (PXT). Ele foi desenvolvido para gravar microcontroladores via USB Mass Storage: a placa aparece como uma unidade removível comum e você copia o firmware para ela como qualquer outro arquivo. A especificação é aberta e publicada pela Microsoft sob uma licença MIT.
Um arquivo .uf2 é uma sequência plana de blocos de 512 bytes. Cada bloco é independente - ele carrega um cabeçalho de 32 bytes com números mágicos, o endereço de flash de destino, o comprimento do payload, o índice e a contagem total do bloco e um ID de família que identifica o chip de destino, seguido por até 476 bytes de firmware e um número mágico final. Esse design resolve um problema real: um sistema operacional pode gravar os blocos de um arquivo copiado em qualquer ordem, portanto, tornar cada bloco independente permite que o bootloader da placa grave os dados no momento em que eles chegam, sem nunca ver um arquivo parcial.
A maioria das pessoas encontra o UF2 ao programar uma placa de hobby ou educacional. A Raspberry Pi Pico (RP2040), BBC micro:bit e muitas placas Adafruit, Arduino e Seeed aceitam UF2, e é assim que os projetos CircuitPython e MakeCode são instalados. Geralmente, você obtém um .uf2 exportando-o de um editor como o MakeCode ou baixando um firmware pré-compilado para sua placa exata. Formatos de firmware relacionados que você pode ver incluem imagens brutas .BIN e arquivos Intel .HEX.
Segurança e proteção
RISCO: 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.
Detalhes do formato
em resumoProgramas que abrem arquivos UF2
.uf2 file onto that drive. .uf2. 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. Detalhes técnicos
especificação 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. |
| Lançado | 2017 (Microsoft MakeCode / PXT) |
| Padrão aberto | Sim · livre de royalties |
| Especificação | github.com |
Conversões de UF2
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos UF2.
Perguntas frequentes
Como faço para abrir um arquivo UF2?
.uf2 para essa unidade. A placa o grava e reinicia.Como coloco uma Raspberry Pi Pico no modo bootloader?
.uf2 para ela e a placa reiniciará executando o novo firmware.Posso converter um arquivo UF2 para BIN?
uf2conv.py da Microsoft extrai o binário bruto com uf2conv.py arquivo.uf2 -c -o arquivo.bin. Acompanhe o endereço de flash armazenado no cabeçalho UF2.