yagorik 0 27 декабря, 2011 Опубликовано 27 декабря, 2011 · Жалоба Добавление контрольной суммы 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 но скорее всего он не верный, т.к. меняется размер файла Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Палыч 6 27 декабря, 2011 Опубликовано 27 декабря, 2011 · Жалоба меняется размер файла Ничего не могу сказать про правильность вызова утилиты, но, почему Вас пугает изменение размера файла? Вы ведь дописываете контрольную сумму в файл. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yagorik 0 27 декабря, 2011 Опубликовано 27 декабря, 2011 · Жалоба Ничего не могу сказать про правильность вызова утилиты, но, почему Вас пугает изменение размера файла? Вы ведь дописываете контрольную сумму в файл. по поводу размера, он почему уменьшается, я понимаю так если я дописываю то хотя бы размер должен увеличится, или в крайнем случае не изменится Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Палыч 6 27 декабря, 2011 Опубликовано 27 декабря, 2011 · Жалоба ...уменьшается, я понимаю так если я дописываю то хотя бы размер должен увеличится... Hex-файл - это не "снимок" памяти "один-в один". Каждая строка этого файла может быть разного размера и имеет определенную структуру. При добавлении в него информации - может и уменьшиться в размере... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
toweroff 0 27 декабря, 2011 Опубликовано 27 декабря, 2011 · Жалоба конвертните оба хекса в бинарники да сравните... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Палыч 6 27 декабря, 2011 Опубликовано 27 декабря, 2011 · Жалоба Попробовал я эту утилитку: Ваша строка её вызова - в принципе верная. Единственно (но, это не мешает правильной работе), излишние знаки "-" (минус) в параметрах вызова: достаточно по одному "-", а не два "--" как это у Вас. Длина, скорее всего действительно, уменьшится, т.к. линковщики, обычно, выдают по 16 байтов в каждом блоке/строке hex-файла, эта утилита - 32 байта. За счет такого увиличения количества байт в строке/блоке "экономится" по, примерно, 13 байт на каждые 16 байтов памяти программы... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться