реклама на сайте
подробности

 
 
8 страниц V  « < 6 7 8  
Reply to this topicStart new topic
> STM32 bootloader, написание собственного бута
SSerge
сообщение Apr 7 2015, 14:43
Сообщение #106


Профессионал
*****

Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



Впрочем есть ещё одно особо тонкое извращение - пропустить этот файл через препроцессор С, а результат уже скармливать ассемблеру.
Кейловский с-компилер должен уметь выдавать результат работы препроцессора в файл.


--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post
x893
сообщение Apr 7 2015, 15:31
Сообщение #107


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



Цитата(AHTOXA @ Apr 7 2015, 18:32) *
Почему "только"? sm.gif GCC тоже понимает!
(gcc -x assembler-with-cpp file.S).

Да и в Keil почти всё можно сделать. По крайне мере, что здесь обсуждается - давно уже описано. И вычисление CRC подстановкой в нужное место, и размеры секций сразу можно в нужные места подставить. Лучше всего Help посмотреть - там есть всё и даже больше.

А можно вместо armcc просто использовать в Keil gcc, если сильно хочется.

Сообщение отредактировал x893 - Apr 7 2015, 15:32
Go to the top of the page
 
+Quote Post
toweroff
сообщение Apr 8 2015, 04:47
Сообщение #108


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата
Теперь задача - зашифровать-расшифровать прошивку.
Попробовал XTEA. Пока только закодировал. Не знаю, сколько времени будет декодироваться в микроконтроллере.


У меня на CM3 (LPC175x) влезло в 4КБ - CRC32 (программное, аппаратного нет), USART, протокол обменя, AES-128 (CBC mode), XTEA (тоже CBC)
Время на 1КБ на 16МГц (PLL не запущена)
- CRC32 - менее 1мс
- XTEA - 2мс
- AES-128 - 32мс
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 8 2015, 09:31
Сообщение #109


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Поэкспериментировав с размещением в стартапе дополнительных констант, решил-таки залезать в дыру в векторах, в адрес 0x0020. Там (в секторе 1) внешней программой - шифровальшиком сохраняю размер файла. Туда же (но в загрузчике, в секторе 0) ST-Link Утилитой записываю серийный номер. И никаких изменений в startup.s не требуется.
А строковые константы - производитель, модель, версия программы - куда компилятор положит, оттуда программа и возьмет.
У меня тоже дешифруется быстро. Время засечь не могу (та же беда с точками останова, что описывал в другой теме; проще новый проект создать, чем в этом копаться).
Go to the top of the page
 
+Quote Post
toweroff
сообщение Apr 8 2015, 10:06
Сообщение #110


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(ViKo @ Apr 8 2015, 12:31) *
У меня тоже дешифруется быстро. Время засечь не могу (та же беда с точками останова, что описывал в другой теме; проще новый проект создать, чем в этом копаться).

я запускал таймер на секунд 10 и поднимал флаг. В цикле расшифровывал, увеличивал счетчик, выходил по флагу, считал время
Go to the top of the page
 
+Quote Post

8 страниц V  « < 6 7 8
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 1st August 2025 - 18:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.01392 секунд с 7
ELECTRONIX ©2004-2016