Hvad er S19-filformatet?
.s19-filer er tekstbaserede firmware-kodningsfiler, der bruger Motorola S-record (SREC) formatet, skabt af Motorola i 1970'erne til 6800-mikroprocessorserien. De koder binære firmware-data som linjer af ASCII hex-poster, hvilket gør dem læsbare for mennesker, bærbare og redigerbare i enhver teksteditor.
En .s19-fil bruger specifikt 16-bit adressering (S1-dataposter og S9-slutpost), hvilket begrænser det adresserbare område til 64 KB. Til større firmware-billeder bruges de relaterede formater .s28 (24-bit, S2/S8-poster) og .s37 (32-bit, S3/S7-poster) i stedet.
Hver linje følger en fast struktur: en posttype-identifikator (S0 for header, S1 for data, S9 for filafslutning), et antal bytes, en 2-byte adresse i ASCII hex, selve dataene og en 1-byte et-komplement kontrolsum. Dette selv-tjekkende design lader flash-programmører verificere dataintegriteten post for post, før de skriver til enhedens hukommelse.
.s19-filer er vidt brugt i udvikling af indlejrede systemer til programmering af mikrocontrollere i NXP (tidligere Freescale/Motorola) familier som Kinetis, ColdFire, HCS08, HC11 og HC12. Værktøjerne srec_cat og srec_info fra SRecord-værktøjssættet er standardværktøjer til konvertering, sammenfletning og validering af SREC-filer. Intel HEX formatet er det primære alternativ med tilsvarende egenskaber.
Sikkerhed og tryghed
RISIKO: LOWS19-filer er ren ASCII-tekst; de kan ikke eksekveres på en PC. Risikoen er kontekstuel: flashing af en forkert eller korrupt S19 til en mikrocontroller kan ødelægge enheden. Bekræft altid kontrolsummens integritet og målkompatibilitet før programmering.
Formatdetaljer
kort fortaltProgrammer der åbner S19-filer
Tekniske detaljer
dyb specifikation| Kodning | ASCII-tekst (7-bit), linje-opdelte poster; redigerbar i enhver teksteditor |
| Adressebredde | 16-bit (S1/S9-poster); maksimalt 64 KB adresserbart pr. fil |
| Posttyper | S0 (header), S1 (data + 16-bit adresse), S9 (filafslutning) |
| Linjestruktur | Posttype + byte-antal + 2-byte adresse + databytes + 1-byte kontrolsum (alle i ASCII hex-par) |
| Første bytes | ASCII S0 (hex 53 30) - header-posten optræder altid først |
| Kontrolsum | Et-komplement af (byte-antal + adresse + datafelter), mindst betydende byte |
| Byterækkefølge | Big-endian for adresse- og datafelter |
| Typisk størrelse | 1 KB - 2 MB (kodningsoverhead ~40% over rå binær; 64 KB maks firmware-data i S19) |
| Komprimering | Ingen; firmware-data er kodet som ASCII hex-tekst uden yderligere størrelsesreduktion |
| Kryptering | Ingen; formatet er ren ASCII-tekst uden sikkerheds- eller sløringslag |
| Relaterede varianter | .s28 (24-bit adresse, S2/S8-poster), .s37 (32-bit adresse, S3/S7-poster), .srec (generisk SREC) |
| Primære mål | NXP/Freescale MCU-familier: Kinetis, HCS08, HC12, ColdFire, HC11 |
| Udgivet | 1970s (Motorola 6800 era) |
| Seneste version | S19 is the S1/S9 variant (16-bit address, up to 64 KB); S28 (24-bit) and S37 (32-bit) are extensions |
| Åben standard | Ja · royaltyfri |
| Specifikation | en.wikipedia.org |
S19-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om S19-filer.