AlexMad 0 7 декабря, 2009 Опубликовано 7 декабря, 2009 · Жалоба Проскакивала тема, в которой про это писалось (правда там только упоминалось, что человек сумму прописывает, а как - не описывалось). Поиском тоже что-то не нашел, может, не то искал. Суть вопроса: до недавнего времени отлаживал LPC2388 через segger-овский gdb-server на виртуальной машине. Решил разобраться с openOCD и заставить работать MT-link напрямую (в линуксе). Так вот, если открыть hex-файл в SEGGER J-Flash, то он ругается, что нужно добавить контрольную сумму. Если отказаться и не добавлять, то прошивка не стартует. Попробовал сохранить измененный файл (с внесенной контрольной суммой). Если использовать его, то он нормально запускается и через openOCD. То есть, надо как-то на стадии сборки проекта внести эту контрольную сумму. Вот и вопрос: как и где. З.Ы. Использую makefile, который шел в проекте FreeRTOS. компилятор gcc version 3.4.3. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 1 7 декабря, 2009 Опубликовано 7 декабря, 2009 · Жалоба Согласно User Manual на чип. Можно руками в startup Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexMad 0 7 декабря, 2009 Опубликовано 7 декабря, 2009 · Жалоба Согласно User Manual на чип. Можно руками в startup Спасибо за подсказку. До этого думал, что это где-то в скрипте линкера надо указывать, потому и искал в совершенно другом направлении. Правда остается открытым вопрос: можно ли как-то автоматизировать подсчет этой суммы. Ведь, как я понимаю, при изменении векторов в стартапе ее придется заново пересчитывать. Или автоматизм только в средах с галочками (IAR, Keil)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 7 декабря, 2009 Опубликовано 7 декабря, 2009 · Жалоба Правда остается открытым вопрос: можно ли как-то автоматизировать подсчет этой суммы. Ведь, как я понимаю, при изменении векторов в стартапе ее придется заново пересчитывать. Или автоматизм только в средах с галочками (IAR, Keil)? Проще сами вектора зафиксировать - заменить бренчи на LDR PC, [PC, #<offset>], тогда меняться ничего и не будет. Или автоматизировать самостоятельно, окучивая бинарник маленькой консольной программкой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
esaulenka 7 10 декабря, 2009 Опубликовано 10 декабря, 2009 (изменено) · Жалоба дошли руки до экспериментов srec_cat ^ input.bin -binary -crop 0x00 0x14 0x18 0x20 -LECN 0x14 4 4 ^ input.bin -binary -crop 0x20 -max input.bin -binary ^ -o out.bin -binary вторая строка - отрезаем от файла всё, кроме 7 векторов, считаем по ней контрольную сумму третья строка - приклеиваем остаток файла синтаксис виндового cmd.exe утилиту брать тут: http://srecord.sourceforge.net/, мануал к ней - в гугле материалы по теме ;) google: srec_cat site:electronix.ru aaarrr, идея вписать контрольную сумму в стартап замечательна, спасибо. PS а кейл контрольную сумму в hex не вписывает, несмотря на то, что он - с галочками :) Изменено 10 декабря, 2009 пользователем esaulenka Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться