-
Data: 2024-06-25 15:31:47
Temat: Generowanie sumy kontrolnej z fragmentu pliku bin
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Mam pewien projekt, do którego firmware jest budowany w wielu krokach (w
Makefile) z wielu różnych plików. Po drodze powstaje plik .bin, który
jednak nie jest produktem końcowym - docelowo binarka trafia na kartę
pamięci, skąd jest ładowana do RAM-u i wykonywana. W sofcie jest
zaimplementowana procedura liczenia sumy kontrolnej (CRC16) z tej części
pamięci, w której jest przechowywany kod wykonywalny. Na chwilę obecną
mogę dzięki temu upewnić się, że kod z każdym razem jest ładowany w
powtarzalny sposób - to jednak nie daje mi pewności, że nie ma błedów,
bo muszę jeszcze porównać sumę z obrazem generowanym na PC.
Potrzebuję więc jakiegoś narzędzia, które pozwoli mi w sposób
automatyczny (pod Linuksem, wewnątrz Makefile) wykonać następujący ciąg
operacji.
- Bierzemy fragment pliku bin - od określonego adresu i o określonej
długości.
- Liczymy z niego sumę kontrolną CRC16.
- Wyświetlamy wynik
- Zapisujemy wynik w tym samym pliku bin, pod określonym adresem (to w
przyszłości pozwoli mi zatrzymać wykonywanie programu, jeśli po jego
załadowaniu okaże się, że suma się nie zgadza).
Projekt jest retro, na antycznym CPU - stąd zastosowanie CRC16.
Konkretnie korzystam z procedury crc16_arc_f opisanej na tej stronie:
http://regregex.bbcmicro.net/crc-code.htm#crc-code.1
6.8080
Następne wpisy z tego wątku
- 25.06.24 17:22 Arnold Ziffel
- 25.06.24 18:24 Jacek Marcin Jaworski
- 25.06.24 18:40 LordBluzg(R)??
- 25.06.24 20:34 Adam
- 25.06.24 22:44 Atlantis
- 26.06.24 06:56 ptoki
- 26.06.24 10:39 Adam
- 26.06.24 12:01 LordBluzg(R)??
- 26.06.24 12:22 Piotr Gałka
- 26.06.24 12:29 Piotr Gałka
- 26.06.24 12:35 Robert Wańkowski
- 26.06.24 12:39 LordBluzg(R)??
- 26.06.24 12:42 J.F
- 26.06.24 12:44 LordBluzg(R)??
- 26.06.24 12:48 Robert Wańkowski
Najnowsze wątki z tej grupy
- Schemat automatyki
- Teoretyczne zagadnienie - ogrzewanie budynku
- Zagadka radiowa
- Prostownik
- Nowy akumulator Donut Lab
- Pilot do zamka/bramy
- Jaka myjka ultradźwiękowa?
- Retro organizer ale współcześnie
- Skąd diody LED 1,5V?
- Apollo Comm
- PICkit3 mnie pokonał
- LEDy na choinkę zdechły
- Wtopa LED
- Miało być zniesienie abonamentu RTV, a jest podwyżka!!!
- Microsoft, C/C++ na Rust - news
Najnowsze wątki
- 2026-01-14 Prezydent Trzaskowski nie będzie mógł ułaskawić Tuska, Sienkiewicza, Bodnara, ... przed prawomocnym wyrokiem?
- 2026-01-14 Do Kongresu SZAP/USONA Złożono Proj. ,,Ustawy o aneksji i statusie stanowym Grenlandii"
- 2026-01-13 STREFA CZYSTEGO TRANSPORTU. O tym nie mówią nam WŁADZE
- 2026-01-13 To nie koniec
- 2026-01-13 Warszawa => Recruiter 360 <=
- 2026-01-13 Katowice => Key Account Manager <=
- 2026-01-13 Warszawa => Senior Backend Java Developer <=
- 2026-01-13 Wrocław => ERP Implementation Consultant <=
- 2026-01-13 Elektryk a otwieranie drzwi :-)
- 2026-01-12 Schemat automatyki
- 2026-01-12 Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- 2026-01-12 Polska Grupa Zbrojeniowa (85% udziałów) Likwiduje Stomil-Poznań - Zakład Działał Od 1928r.
- 2026-01-12 Teoretyczne zagadnienie - ogrzewanie budynku
- 2026-01-12 Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- 2026-01-12 Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]