Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[Rozwiązano] Harman Kardon 255 - Zagwozdka nad plikami HEX w celu uratowania sprzętu

samuray76 29 Sty 2016 21:57 882 6
  • #1 29 Sty 2016 21:57
    samuray76
    Poziom 3  

    Witam,
    w innym wątku poruszyłem już ten temat, ale tutaj chciałbym skoncentrować się na jednej sprawie. Krótki opis, amplituner 5.1 nie chce zrobić update'u na urządzeniu.
    Wynik jest taki, że trzeba pamięć zaprogramować samemu.

    Mam oryginalne pliki producenta z jego programu flashującego, z katalogu /tmp, ale w formacie Intel HEX i tak się zastanawiam, jak je wgrać. Mam też odczytany niepoprawny flash z oryginalnej pamięci urządzenia i zastanawiam się jak można porównać te pliki żeby tak zmienić orginalny HEX żeby nim zaprogramować FLASH.
    Ten oryginalnie odczytany plik niestety nie jest w takim samym formacie jak ten nowy i jakbyście mogli coś podpowiedzieć...

    0 6
  • #2 30 Sty 2016 08:28
    tantalos1
    Poziom 15  

    Najprociej zmienić oba pliki na format binarny i porównać. Można użyć programów takich jak hex2bin, bin2hex. Albo przy pomocy narzędzi gcc:

    objcopy --input-target=ihex --output-target=binary plik_hex plik_bin

    0
  • #4 30 Sty 2016 09:59
    samuray76
    Poziom 3  

    Pamięć oryginalna: F25L004A, czyli 4Mbity. Wg schematu powinna być: SST25VF080B, czyli 8Mbitów. Z tym, że temat jest sprawdzony już u innych urządzeń i tak chyba fabryka wypuściła z innym chipem niż w dokumentacji.
    Więcej o powodzie pytania tutaj: Link

    Dlaczego chcę porównać te pliki ?
    Mam zrzucony błędnie działający BIN (i HEX), który chcę zastąpić nowym, wygenerowanym z HEXa z programu flashującego, ale nie wiem, jak go przerobić.
    W zrzucie niesprawnego HEXa otrzymałem dane 32 bitowe, natomiast w HEXie nowym są dane w kluczach 64 bitowych. Rozumiem, że muszę przerobić ten poprawny HEX na 32 bitowy format, później na BIN i dopiero wgrać do FLASHa ? Po prostu robię to po raz pierwszy i nie ogarniam tego...
    Chodzi też o adresy, w programie flashującym są dwa pliki HEX, które są ładowane do tej pamięci, ale mają te same adresy, wiec też nie wiem jak je połączyć, poza tym, że drugi jest na pewno za tym pierwszym (kolejność w programu flashującego)

    0
  • #5 30 Sty 2016 10:42
    tantalos1
    Poziom 15  

    samuray76 napisał:

    Dlaczego chcę porównać te pliki ?
    Mam zrzucony błędnie działający BIN (i HEX), który chcę zastąpić nowym, wygenerowanym z HEXa z programu flashującego, ale nie wiem, jak go przerobić.
    W zrzucie niesprawnego HEXa otrzymałem dane 32 bitowe, natomiast w HEXie nowym są dane w kluczach 64 bitowych. Rozumiem, że muszę przerobić ten poprawny HEX na 32 bitowy format, później na BIN i dopiero wgrać do FLASHa ? Po prostu robię to po raz pierwszy i nie ogarniam tego...
    Chodzi też o adresy, w programie flashującym są dwa pliki HEX, które są ładowane do tej pamięci, ale mają te same adresy, wiec też nie wiem jak je połączyć, poza tym, że drugi jest na pewno za tym pierwszym (kolejność w programu flashującego)


    W pliku ihex dane są 8-bitowe. Tobie chyba chodzi o długość jednej linii w pliku ihex. Typowo jedna linia zawiera 16 bajtów ale może zawierać więcej. Dla programatora nie powinno to mieć znaczenia, to są te same dane tylko inaczej zapisane. Można je też przerobić z hexa na bin i odwrotnie tak jak opisałem powyżej. Programy, które opisałem generują typowo 16 bajt w jednej linii. A porównać najłatwiej można pliki *.bin np. w Total Commanderze.

    0
  • #6 30 Sty 2016 10:48
    samuray76
    Poziom 3  

    Tak mi chodzi o to co jest w jednej linii, bo musiałem sprawdzić sumy kontrolne, czy w ogóle dobrze zczytałem dane z FLASHa. Faktycznie dane są 8 bitowe, tylko zapisane raz w słowach 32 bajtowych i później 64 bajtowych.

    Z tym porównaniem to nie wiem czy coś zdziałam, bo patrzyłem na sam początek tych plików i nie widzę żadnych wspólnych danych, a boot loader chyba się nie powinien zmienić. Chyba, że nie jest dogrywany w update'cie ...

    0
  • #7 27 Lut 2018 17:52
    samuray76
    Poziom 3  

    Sprzedałem sprzęt bez działających analogów.
    Ktoś kupił pod konsolę, więc mu to nie przeszkadzało.

    0