что такое контрольная сумма прошивки

Eprom. Подсчёт контрольной суммы

что такое контрольная сумма прошивки. Смотреть фото что такое контрольная сумма прошивки. Смотреть картинку что такое контрольная сумма прошивки. Картинка про что такое контрольная сумма прошивки. Фото что такое контрольная сумма прошивки

что такое контрольная сумма прошивки. Смотреть фото что такое контрольная сумма прошивки. Смотреть картинку что такое контрольная сумма прошивки. Картинка про что такое контрольная сумма прошивки. Фото что такое контрольная сумма прошивки

Наша строка 27 01 d8 7f 12 a1 c9 8f 75 75
Последние два байта это контрольная сумма. И при смене значений её нужно пересчитывать.
В расчет берется всё от 27 … до 8F.
Немного изменим запись чтоб было нагляднее понятно.
27 01 d8 7f 12 a1 89 8f B5 35
B5 — Первая контрольная сумма.
35 — Вторая контрольная сумма.

И так начнём.
Подсчёт первой КС по пунктам
1. Переводим каждое значение из 16-ой системы в 10-ую.
Пример: 27 01 d8 7f 12 a1 89 8f — 39 1 216 127 18 161 137 143

2. Нужно сложить все 8 байт в десятиричной системе.
Пример: 39+1+216+127+18+161+137+143=842

3. Переводим в 16 систему.
Пример: 842-034a

4. От результата нужно оставить только два правых символа
Пример: 034a — 4A

5. Далее переводим в 10-ую систему.
Пример: 4A = 74

6. От 255 нужно отнять результат пункта 5.
Пример: 255-74=181.

7. Переводим обратно в 16-ую систему. Это и будет КС 1
Пример: 181 в шестнадцатиричной системе будет b5

Итог: 1 Контрольная сумма B5.

Подсчёт 2 Контрольной суммы:

1. Берём опять эту строку 27 01 d8 7f 12 a1 89 8f.
2. Переводим каждый байт в двоичную систему.
Пример: 27 01 d8 7f 12 a1 89 8f — 00100111 00000001 11011000 01111111 00010010 10100001 10001001
10001111

3. Будем считать биты с лево на право для упрощения понимания.
Нужно сложить все первые биты каждого байта. Потом все вторые, потом третьи и так все 8.
Пример:0+0+1+0+0+1+1+1=4, вторые биты- 0+0+1+1+0+0+0+0=2 и т.д. с каждым битом.
Получим такое — 4,2,3,3,4,3,4,6.

4. Переписываем эту строчку в таком формате. Если число четное то=0, нечетное=1 и получаем байт в двоичной системе.
Пример:4,2,3,3,4,3,4,6.= 00110100

5. Переводим итог пункта 4 в Десятичную систему.
Пример: 00110100 = 52 (в десятичной).

6. Нужно прибавить единицу к результату пункта 5.
Пример: 52+1=53.
7. Переводим в Шестнадцатиричную систему. И получаем КС 2.
Пример: 53 = 35.

Вот и получилась вторая контрольная сумма. 35.

Делитесь своими наработками и давайте делиться уже со всеми бесплатно.
Спасибо God1983 и его другу за неоценимую помощь. Всем Добра!

Источник

Что такое контрольная сумма (КС) прошивки?

Добро пожаловать на ChipTuner Forum.

Опции темы

Что такое контрольная сумма (КС) прошивки?

Системы управления двигателем осуществляют самодиагностику функционирования датчиков и самого блока управления и его функциональных частей — ОЗУ, ПЗУ, ЕЕPROM. В простейшем случае, для такой проверки целостности «прошивки» внутри ее хранится контрольная сумма, которая получается суммированием байт прошивки. В прошивке контрольная сумма (КС) хранится вместе с собственным «зеркалом», то есть байтами, при сложении с которыми КС равна нулю. Это нужно для того, что бы само значение КС не влияло на результат вычисления КС программой ЭБУ. Программа ЭБУ при включении зажигания рассчитывает значение контрольной суммы и сравнивает это значение со значением, которое хранится в прошивке. Если эти значения не совпадают, то выстаяляется «Ошибка ПЗУ» и зажигается лампа индикации ошибок «Check Engine».

В более современном ПО применен двойной контроль КС ПЗУ, описанный выше и еще один алгоритм, не связанный с маской ошибок (в маске ошибок убрать ее нельзя), работающий параллельно с основным. Теоретически возможно одновременное применение любого количества проверок как всего содержимого ПЗУ, так и его частей.

Совсем недавно, прежде чем производить тюнинг какой-либо «прошивки» необходимо было разобраться с алгоритмом подсчета и расположением контрольной суммы в прошивке. Сейчас, при использовании специализированной программы редактирования калибровочных данных прошивок ChipTuning Pro и программатора Combiloader, все изменения КС, её подсчет и корректировка происходит автоматически и незаметно для пользователя. Мало того, эти программы позволяют установить и фиксировать любое произвольное отображение КС прошивки.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *