romos_2010
|
|
1 | |
А вот как можно закинуть в прошивку ее собственный CRC11.08.2015, 00:02. Показов 3655. Ответов 1
Метки нет (Все метки)
Тема для тех,кто пользуется keil-ом.Иногда стоит задача следующего типа...При включении питания на моем изделии сначала стартует загрузчик,который по определенному алгоритму считает CRC,сравнивает его с числом,записанным по заранее известному адресу,и если равно,то собственно стартует сама программа,а иначе переходит в режим программирования.Что было "до":
-отдельный проект загрузчика -отдельный проект самой программы на изделие,причем как отладочная,так и релизная версии -после компоновки запускался elf,который делает из hex-файла бинарники загрузчика и самой программы -внешняя самописная программа,которая соединяет эти два бинарника в один ,считает CRC и записывает его по этому самому заранее известному адресу А вот "после" - изучаем хелп keil-a mvision usirs guide-debug functions - объявляем например в файле main.c Код
const int crc __attribute__((at(0x800))); - редактируем файл 1.ini (этот файл вне проекта и к нему никак не относится) Пусть у нас к примеру,адрес конца Ftosh-памяти нашего микроконтроллера 0х1000. также CRC считаем по простенькому алгоритму исключающего или,хотя можно запрограммировать и реальный crc32 Код
map 0x800,0x800 read write FUNC void calc_crc(void) { int i; crc=0; for(i=0x804;i<0x1000;i+=4) crc^=_RDWORD(i); } calc_crc() "project-options fo target....-вкладка debug-поле initiotyzotion file" открываем этот файл ну собственно говоря,компилируем,загружаем,наслаждаемся ну а теперь надо бы еще и загрузчик и программу объединить в один проект |
11.08.2015, 00:02 | |
Ответы с готовыми решениями:
1
Как можно обойти проверку CRC или как можно распаковать поврежденный архив? сделал вот такой вот php css, походу я намудрил тут что голову можно сломать, можно ли это превести в чувство? в Adobe Premiere Pro CS5 кроме формата MPEG - 4,а вот не получается закинуть видео форматов AVI,MKW,MOW,MPEG - 2 Можно ли установить ios 6, как кастомную прошивку на любой другой айфон? |
0 / 0 / 0
Регистрация: 07.02.2015
Сообщений: 186
|
|
11.08.2015, 10:35 | 2 |
Не особо понял зачем заливать прошивку и бутлоадер в 1 фаил. Хотя может и удобнее.
Можно попробовать написать бутлоадер на асме, поместив его в секцию и указать адрес этой секции. Это что первое пришло в голову.
0
|
11.08.2015, 10:35 | |
11.08.2015, 10:35 | |
Помогаю со студенческими работами здесь
2
как можно переписать вот это в с++ Вот сижу и думаю как это можно сделать через функции. Как? Как вот это можно написать через лямбда выражение? Как вот это можно написать через лямбда выражение Как можно сделать вот такой поисковик товара на сайт??? Объясните как можно сделать проще вот этот бред Куда можно закинуть свои проги чтоб их скачивали и пользовались люди? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |