Hur man konverterar UF2 till HEX
- Lägg till din .UF2-fil - dra den till rutan ovan eller klicka för att bläddra.
- Konvertera den till .HEX på några sekunder.
- Ladda ner din nya .HEX-fil.
Vad du kan förvänta dig
- Det finns inget enstaka kommando för UF2-till-HEX; den råa
.bin-filen i mitten tappar adressen, så du måste ange flash-basens offset igen i objcopy/srec-steget. - Om du anger fel offset kommer
.hex-filen att placera koden på fel minnesadress, vilket kan göra enheten obrukbar eller förhindra uppstart. - Vissa versioner av objcopy har haft problem med att konvertera binär till ihex; SRecord är den rekommenderade reservlösningen för exakta offsetvärden.
Vanliga frågor
Varför två steg?
uf2conv.py matar bara ut rå .bin och C-arrayer, inte Intel HEX. Du konverterar UF2 till .bin och använder sedan objcopy eller SRecord för att skapa .hex.Vilken offset ska jag använda?
Använd den flash-basadress som firmwaren är avsedd att köras på (ofta applikationsregionen efter bootloadern). Skicka den via
--change-addresses eller srec -offset.Var får jag tag på objcopy?
Det följer med GNU binutils; för ARM-mikrokontroller använder du
arm-none-eabi-objcopy från GNU Arm Embedded-verktygskedjan.Vad händer om objcopy ger fel adresser?
Använd SRecord:s
srec_cat med en explicit -offset, vilket hanterar adressplacering från binär till Intel HEX på ett tillförlitligt sätt.