Qu'est-ce que le format de fichier UF2 ?
UF2 signifie USB Flashing Format, un format de fichier créé par Microsoft en 2017 pour sa plateforme MakeCode (PXT). Il est conçu pour flasher des microcontrôleurs via le stockage de masse USB : la carte apparaît comme un lecteur amovible ordinaire, et vous y copiez le micrologiciel comme n'importe quel autre fichier. La spécification est ouverte et publiée par Microsoft sous licence MIT.
Un fichier .uf2 est une séquence plate de blocs de 512 octets. Chaque bloc est autonome - il contient un en-tête de 32 octets avec des nombres magiques, l'adresse flash cible, la longueur de la charge utile, l'index et le nombre total de blocs, ainsi qu'un identifiant de famille (family ID) qui identifie la puce cible, suivi de jusqu'à 476 octets de micrologiciel et d'un nombre magique final. Cette conception résout un problème réel : un système d'exploitation peut écrire les blocs d'un fichier copié dans n'importe quel ordre, donc rendre chaque bloc indépendant permet au chargeur de démarrage (bootloader) de la carte de flasher les données dès qu'elles arrivent, sans jamais voir de fichier partiel.
La plupart des gens rencontrent le format UF2 lors de la programmation d'une carte de loisir ou éducative. Le Raspberry Pi Pico (RP2040), le BBC micro:bit et de nombreuses cartes Adafruit, Arduino et Seeed acceptent l'UF2, et c'est ainsi que les projets CircuitPython et MakeCode sont installés. Vous obtenez généralement un .uf2 en l'exportant depuis un éditeur tel que MakeCode ou en téléchargeant un micrologiciel pré-construit pour votre carte exacte. Les formats de micrologiciels associés que vous pourriez voir incluent les images brutes .BIN et les fichiers Intel .HEX.
Sécurité et sûreté
RISQUE : 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.
Détails du format
en brefProgrammes qui ouvrent les fichiers 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. Détails techniques
spécifications approfondies| 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. |
| Publié | 2017 (Microsoft MakeCode / PXT) |
| Standard ouvert | Oui · libre de droits |
| Spécification | github.com |
Conversions UF2
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers UF2.
Foire aux questions
Comment ouvrir un fichier UF2 ?
.uf2 sur ce lecteur. La carte le flashe et redémarre.Comment mettre un Raspberry Pi Pico en mode bootloader ?
.uf2 dessus et la carte redémarre en exécutant le nouveau micrologiciel.Puis-je convertir un fichier UF2 en BIN ?
uf2conv.py de Microsoft extrait le binaire brut avec uf2conv.py file.uf2 -c -o file.bin. Gardez trace de l'adresse flash stockée dans l'en-tête UF2.