Ugrás a tartalomhoz
100% helyi

Intel HEX elemző

Érvényesítse az Intel HEX rekordokat, és hex dumpként bontsa ki adataikat.

Bemenet
Kimenet

Intel HEX elemző

Illesszen be egy Intel HEX fájlt – a ":10010000214601360121470136007EFE09D2190140" stílusú rekordokat, amelyeket a fordítók és a programozók állítanak elő mikrokontrollerekhez, EEPROM-okhoz és más beágyazott célokhoz, és ez az eszköz ellenőriz minden rekordot, majd kivonatként ellenőrzi a rekordokat. hex szemétlerakás. Firmware-munkához készült: a gyártótól származó .hex fájl ellenőrzése a flashelés előtt, a build ellenőrzése, hogy nincs-e sérült rekord egy rossz egyesítés után, vagy nyers bájtok beolvasása hex szerkesztő megnyitása nélkül.

Minden sor egy rekordként kerül elemzésre: egy bájtszám, egy 16 bites cím, egy rekordtípus (adat, fájl vége vagy egy szegmens/lineáris cím és egy kezdő rekord), az adatbájtok és egy ellenőrző összeg. A rekord akkor érvényes, ha a bájtszáma megegyezik a jelenlévő adatokkal, a rekordtípust a rendszer a fajtájának megfelelő hosszúsággal ismeri fel, és a rekord minden bájtjának összege nulla modulo 256-ra jön ki – ez a szabvány Intel HEX szabály. Minden érvényes adatrekord adatbájtjai fájlsorrendben vannak összefűzve, és klasszikus hex kiíratásként jelenítik meg: egy eltolási oszlop, tizenhat bájt soronként, és egy nyomtatható ASCII-csatorna a jobb oldalon.

A kiíratás alatt egy érvényesítési jelentés sorszám szerint felsorol minden sikertelen rekordot, hibás szerkezetként (egy olyan sor, amely nem jól formázott hex, amelynek bájtszáma nem egyezik a hosszával, vagy egy fel nem ismert rekordtípus) vagy rossz ellenőrzőösszegként címkézve. Egy szaggatott vonal nem állítja meg a fájl többi részét: minden más rekord továbbra is ellenőrzött, és ahol érvényes, továbbra is hozzáadja a bájtjait. Kapcsolja be a „nagybetűs hex” értéket, hogy a kiíratást A–F karakterekkel jelenítse meg a–f helyett, ami megfelel a programozó vagy a szétszerelő elvárásainak.

Minden a böngészőjében fut. A firmware-képek és az EEPROM-tartalom gyakran saját tulajdonú, így az ide beillesztett semmi sem kerül feltöltésre – a fájl soha nem hagyja el az eszközt.

Gyakori kérdések

Mi számít rossz ellenőrzőösszegnek a rosszul formázott rekordhoz képest?
Rosszul formázott rekord az, amelynek szerkezete hibás: nem ":"-vel kezdődik, nem érvényes hex, bájtszáma nem egyezik a tényleges hosszával, vagy a rekordtípust nem ismeri fel a rendszer. Az érvényes szerkezetű rekordot, de az ellenőrző összeget nem nullázó mod 256, külön jelentjük rossz ellenőrző összegként – az adatait továbbra is kivonjuk, mivel maguk a bájtok jól formáltak.
Mely rekordtípusokat érti?
Adatok (00) és fájlvége (01), valamint a kiterjesztett szegmenscím, a kezdőszegmens címe, a kiterjesztett lineáris cím és a kezdő lineáris címrekord (02–05). Csak az adatrekordok járulnak hozzá bájtokkal a kimenethez; a többi struktúrára érvényes, de nem hordoznak kimeneti adatokat.
Hogyan vannak elhelyezve az adatbájtok a kimenetben?
Abban a sorrendben vannak összefűzve, ahogy rekordjaik megjelennek a fájlban, nem pedig a rekordcímeiken – a kimenet a nyers adatfolyam, nem pedig egy memóriakép.
Egy szaggatott vonal megakadályozza az egész fájl elemzését?
Nem. Minden rekordot külön ellenőrzünk, így egyetlen hibás vagy rossz ellenőrzőösszegű sor szerepel az érvényesítési jelentésben, míg minden más érvényes rekord továbbra is elemzi és hozzáadja a bájtjait.
Fel van töltve valahova a HEX fájlom?
Nem. Az elemzés teljes egészében a böngészőben történik – az ide beillesztett firmware- és EEPROM-tartalom soha nem kerül elküldésre a szerverre.