Qu'est-ce que le format de fichier S19 ?
Les fichiers .s19 sont des fichiers d'encodage de micrologiciel basés sur du texte utilisant le format Motorola S-record (SREC), créé par Motorola dans les années 1970 pour la série de microprocesseurs 6800. Ils encodent les données binaires du micrologiciel sous forme de lignes d'enregistrements hexadécimaux ASCII, ce qui les rend lisibles par l'homme, portables et modifiables dans n'importe quel éditeur de texte.
Un fichier .s19 utilise spécifiquement un adressage 16 bits (enregistrements de données S1 et enregistrement de fin S9), ce qui limite la plage adressable à 64 Ko. Pour les images de micrologiciels plus volumineuses, les formats associés .s28 (24 bits, enregistrements S2/S8) et .s37 (32 bits, enregistrements S3/S7) sont utilisés à la place.
Chaque ligne suit une structure fixe : un identifiant de type d'enregistrement (S0 pour l'en-tête, S1 pour les données, S9 pour la fin de fichier), un compte d'octets, une adresse de 2 octets en hexadécimal ASCII, la charge utile des données et une somme de contrôle (checksum) en complément à un sur 1 octet. Cette conception d'auto-vérification permet aux programmeurs flash de vérifier l'intégrité des données enregistrement par enregistrement avant l'écriture dans la mémoire de l'appareil.
Les fichiers .s19 sont largement utilisés dans le développement de systèmes embarqués pour la programmation de microcontrôleurs des familles NXP (anciennement Freescale/Motorola) telles que Kinetis, ColdFire, HCS08, HC11 et HC12. Les utilitaires srec_cat et srec_info de la suite d'outils SRecord sont les outils standards pour convertir, fusionner et valider les fichiers SREC. Le format Intel HEX est la principale alternative offrant des capacités comparables.
Sécurité et sûreté
RISQUE : LOWLes fichiers S19 sont du texte ASCII brut ; ils ne peuvent pas s'exécuter sur un PC. Le risque est contextuel : flasher un S19 erroné ou corrompu sur un microcontrôleur peut rendre l'appareil inutilisable. Vérifiez toujours l'intégrité de la somme de contrôle et la compatibilité de la cible avant la programmation.
Détails du format
en brefProgrammes qui ouvrent les fichiers S19
Détails techniques
spécifications approfondies| Encodage | Texte ASCII (7 bits), enregistrements délimités par des lignes ; modifiable dans n'importe quel éditeur de texte |
| Largeur d'adresse | 16 bits (enregistrements S1/S9) ; maximum 64 Ko adressables par fichier |
| Types d'enregistrements | S0 (en-tête), S1 (données + adresse 16 bits), S9 (fin de fichier) |
| Structure de ligne | Type d'enregistrement + compte d'octets + adresse de 2 octets + octets de données + somme de contrôle de 1 octet (le tout en paires hexadécimales ASCII) |
| Premiers octets | ASCII S0 (hex 53 30) - l'enregistrement d'en-tête apparaît toujours en premier |
| Somme de contrôle | Complément à un de (compte d'octets + adresse + champs de données), octet le moins significatif |
| Ordre des octets | Grand-boutiste (Big-endian) pour les champs d'adresse et de données |
| Taille typique | 1 Ko - 2 Mo (surcoût d'encodage d'environ 40 % par rapport au binaire brut ; 64 Ko max de données de micrologiciel dans S19) |
| Compression | Aucune ; les données du micrologiciel sont encodées en texte hexadécimal ASCII sans réduction de taille supplémentaire |
| Chiffrement | Aucun ; le format est du texte ASCII brut sans couche de sécurité ou d'obscurcissement |
| Variantes associées | .s28 (adresse 24 bits, enregistrements S2/S8), .s37 (adresse 32 bits, enregistrements S3/S7), .srec (SREC générique) |
| Cibles principales | Familles de MCU NXP/Freescale : Kinetis, HCS08, HC12, ColdFire, HC11 |
| Publié | 1970s (Motorola 6800 era) |
| Dernière version | S19 is the S1/S9 variant (16-bit address, up to 64 KB); S28 (24-bit) and S37 (32-bit) are extensions |
| Standard ouvert | Oui · libre de droits |
| Spécification | en.wikipedia.org |
Conversions S19
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers S19.