Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Edycja pliku z pamięci EEPROM a suma kontrolna

dami-dk 24 Jun 2020 22:56 1401 4
  • #1
    dami-dk
    Level 10  
    Zgrałem plik z pamięci eeprom AM29F040B z pewnej maszyny i chciałem zmienić tekst który wyświetla się na wyświetlaczu tej maszyny. Znalazłem ten tekst w pliku w HEX EDYTORZE ale przy zmianie chociaż jednej literki maszyna nie odpala. Doczytałem że suma kontrolna się nie zgadza dlatego. Przy zamianie literek miejscami w linii pionowej wszystko chodzi, gdy zamienię miejscami w poziomej linii nie działa.
    Czy są jakieś programy które zweryfikują te sumę kontrolną i nadpiszą właściwą? Czy jak to rozwiązać?
  • #2
    tmf
    Moderator of Microcontroller designs
    Musisz zidentyfikować jak ta suma jest liczona i gdzie w pamięci jest umieszczona. Jeśli urządzenie zmienia zawartość EEPROM to zgraj go przed i po zmianie (np. jakiegoś ustawienia) i porównaj obrazy. Będziesz widział w których miejscach zmieniły się dane, a więc gdzie jest składowana suma. Potem już tylko pozostanie odgadnąć jak jest liczona.
  • #3
    dami-dk
    Level 10  
    Dzięki TMF za odpowiedź.
    Maszyna nie zmienia nic w tej pamięci po zmianie ustawień, ale znalazłem taką samą maszynę z innym językiem i porównałem pliki. Znalazłem różnicę prawie na początku pliku (nie patrząc na tłumaczenia) w języku niemieckim 3A FB 4B a w polskim 51 4B 27. Czy całość to ta suma kontrolna? Nie wiem jak to jest liczone, ale zauważyłem że przy zamianie literek tekstu miejscami w linii pionowej (w HEX EDITOR) wszystko chodzi, gdy zamienię miejscami w poziomej linii nie działa. Czyli tak jakby liczy sumę w liniach pionowych i wtedy suma kontrolna jest taka sama i działa. Czy są jakieś programy które liczą sumę kontrolną? Czy każda maszyna ma swój unikalny algorytm liczenia tej sumy kontrolnej?
  • #4
    JarekC
    Level 32  
    Jaki procesor jest w maszynie?
    Edytujesz plik binarny czy plik w formacie HEX?

    Sumę kontrolną raczej umieszcza się na końcu pamięci.
    Może wrzuć ten plik lub wyślij na PW to spróbuję coś poradzić.
  • #5
    dami-dk
    Level 10  
    Procesor to chyba ten: Philips PXAS37KBA CY8729 Thr9933
    Próbowałem i w formacie BIN i w formacie HEX
    JarekC spróbuję Ci zaraz przesłać te dwa pliki (DE i PL, w formacie BIN i HEX), przy porównaniu różnica jest tylko na samym początku (nie patrząc na tłumaczenie)