Hvorfor konvertere UF2 til BIN?
UF2 er en USB-drag-and-drop firmware-container, der pakker det rigtige billede ind i 512-byte blokke med flash-adresser og et family ID, mens .bin er det rå byte-for-byte firmware-billede. Udviklere udpakker UF2 til .bin, når de skal flashe via SWD/JTAG, inspicere billedet eller føde det ind i en anden toolchain, der forventer en almindelig binær fil. Microsofts egen uf2conv.py fra microsoft/uf2-repoet gør dette begge veje.
Sådan konverterer du UF2 til BIN
uf2conv.py (Microsoft UF2-værktøjer) OPEN-SOURCE
Fra microsoft/uf2-repoet køres uf2conv.py firmware.uf2 -c -o firmware.bin. Flaget -c/--convert skriver en fil i stedet for at flashe en enhed.
uf2conv Python - standardoutput FREE
Kør uf2conv.py firmware.uf2 -c uden -o, og den vælger som standard flash.bin, når den registrerer binært output. Kræver Python 3.
Om disse formater
En UF2-fil er et firmware-image i Microsofts USB Flashing Format, der bruges til at programmere mikrocontroller-boards via USB. Du åbner den ikke i en app - du sætter boardet i…
Åbn .UF2 detaljer →En BIN-fil er oftest en rå, sektor-for-sektor kopi af en CD eller DVD, der leveres sammen med en tilhørende .cue-tekstfil, som beskriver sporene. Monter den med PowerISO eller DAEMON Tools…
Åbn .BIN detaljer →Kvalitet & hvad man skal være opmærksom på
- Flash-mål/base-adressen i UF2-blokkene bevares ikke i den flade
.bin; du skal selv kende den korrekte offset ved gen-flashing. - Hvis UF2-filen havde huller mellem adresseområderne, kan den resulterende
.binvære udfyldt (padded) eller starte ved den forkerte offset - tjek base-adressen. - En
.binalene bærer intet family ID, så du mister det sikkerhedstjek af enhedsfamilien, som UF2 tilbyder.
Ofte stillede spørgsmål
Hvad er den præcise kommando?
uf2conv.py firmware.uf2 -c -o firmware.bin. Flaget -c betyder kun konvertering, ikke flash.Har jeg brug for Python?
uf2conv.py er et Python 3-script fra microsoft/uf2-repositoryet. Der findes også en Rust-port, uf2conv-rs.Bliver flash-adressen gemt?
.bin er et fladt billede, og du skal angive offset, når du flasher.Kan jeg konvertere tilbage til UF2 senere?
uf2conv.py firmware.bin -c -b <base> -f <family> -o firmware.uf2, hvor du angiver base-adresse og family ID.