Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Добавление контрольной суммы в hex-файл
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
yagorik
Добавление контрольной суммы CRC16 ANSI в hex-файл.
Нашёл такую утилиту Srecord, она вроде бы может, но моё знание английского оставляет желать лучшего.
Может кто-нибудь ей уже пользовался и подскажет как это лучше сделать.
Мне нужно подсчитать СRC16 hex-файла к примеру от нуля до адреса DDFD(включительно) и записать контрольную сумму по адресу DDFE.
Мой нынешний вариант запроса выглядит так:
Код
srec_cat.exe flash.hex --Intel -crop 0 0xDDFD --l-e-crc16 0xDDFE --output flash(crc16).hex --Intel

но скорее всего он не верный, т.к. меняется размер файла
Палыч
Цитата(yagorik @ Dec 27 2011, 14:20) *
меняется размер файла

Ничего не могу сказать про правильность вызова утилиты, но, почему Вас пугает изменение размера файла? Вы ведь дописываете контрольную сумму в файл.
yagorik
Цитата(Палыч @ Dec 27 2011, 14:31) *
Ничего не могу сказать про правильность вызова утилиты, но, почему Вас пугает изменение размера файла? Вы ведь дописываете контрольную сумму в файл.

по поводу размера, он почему уменьшается, я понимаю так если я дописываю то хотя бы размер должен увеличится, или в крайнем случае не изменится
Палыч
Цитата(yagorik @ Dec 27 2011, 15:31) *
...уменьшается, я понимаю так если я дописываю то хотя бы размер должен увеличится...

Hex-файл - это не "снимок" памяти "один-в один". Каждая строка этого файла может быть разного размера и имеет определенную структуру. При добавлении в него информации - может и уменьшиться в размере...
toweroff
конвертните оба хекса в бинарники да сравните...
Палыч
Попробовал я эту утилитку: Ваша строка её вызова - в принципе верная. Единственно (но, это не мешает правильной работе), излишние знаки "-" (минус) в параметрах вызова: достаточно по одному "-", а не два "--" как это у Вас.
Длина, скорее всего действительно, уменьшится, т.к. линковщики, обычно, выдают по 16 байтов в каждом блоке/строке hex-файла, эта утилита - 32 байта. За счет такого увиличения количества байт в строке/блоке "экономится" по, примерно, 13 байт на каждые 16 байтов памяти программы...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.