|
Добавление процедуры обработки... |
|
|
|
Jun 2 2011, 18:09
|
Местный
  
Группа: Участник
Сообщений: 442
Регистрация: 26-11-10
Пользователь №: 61 199

|
Привет всем! Имеется микроконтроллер MSP430F149 с зашитой программой и с установленным битом защиты. Требуется "дописать" в проц процедуру, обрабатывающую команды, посланные микроконтроллеру через UART. При этом нельзя затереть основную программу. Адреса памяти, занятые основной программой, не известны, однако точно известно, что в микроконтроллере есть свободная память. Подскажите, уважаемые, такое вообще возможно сделать?
P.S. В микроконтроллере уже имеется процедура обработки команд с UARTa, необходимо добавить свою...
Сообщение отредактировал d7d1cd - Jun 2 2011, 18:13
|
|
|
|
|
Jun 3 2011, 04:20
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(d7d1cd @ Jun 2 2011, 22:09)  Подскажите, уважаемые, такое вообще возможно сделать? Возможно, если у вас есть прошивка, зашитая в контроллер. Из неё нужна область векторов прерываний (FFE0-FFFF). Данная последовательность представляет собой ключ доступа к защищенным командам BSL (чтение, стирание/запись отдельного сегмента и т.д.) Если прошивки нет, то единственный путь - подбор 128-битного ключа
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
Jun 3 2011, 05:43
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
QUOTE (d7d1cd @ Jun 3 2011, 08:20)  Но я слышал, что проц с установленным битом защиты не позволяет читать записанную в него программу. Записать же программу в него можно без проблем... Надо не слухами питаться, а документацию читать. Записать можно лишь стерев старую программу. QUOTE (d7d1cd @ Jun 3 2011, 08:20)  Вопрос в этом и заключается: можно ли дописать обработчик команды с UARTa? Фактически вам надо вмешаться в работу существующей программы. Для этого, естественно, нужен либо ее исходник, либо (что усложняет и удорожает процесс) ее прошивка, чтобы из нее дизассемблированием получить тот же исходник. Если доступа ни к исходнику, ни к прошивке у вас нет - вы можете только написать всю программу заново.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Jun 3 2011, 05:45
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(d7d1cd @ Jun 3 2011, 09:20)  Но я слышал, что проц с установленным битом защиты не позволяет читать записанную в него программу. Записать же программу в него можно без проблем... Вопрос в этом и заключается: можно ли дописать обработчик команды с UARTa? Надо читать документацию, а не слушать что-то где-то. Без пароля доступна только одна команда работы с памятью - mass erase. Никаких проблем- трёте всю флешь и пишете заново всё что угодно. Если это имеется в виду. Сергей опередил
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
Jun 3 2011, 09:27
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(d7d1cd @ Jun 3 2011, 13:18)  MrYuran, а подбор пароля осуществим для типа микроконтроллера, описанного мной? Если да, то его надо осуществлять через JTAG или BSL интерфейс? Посчитайте количество комбинаций, умножьте на среднее время попытки в несколько секунд... Возможно, жизни не хватит. JTAG после пережигания сукьюрити фьюза отключается навсегда. Остается только BSL У вас какое-то чужое устройство? Может, проще с разработчиками договориться?
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|