20.10.2016, 15:59
|
|
Частый гость
Регистрация: 24.02.2016
Сообщений: 15
Сказал спасибо: 2
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Сообщение от nml
|
1) редактировать файл ни к чему, проще...
|
Прочитайте статью более внимательно. Способ предназначен именно для обхода аппаратного вмешательства в ПП.
Создаётся маленький бин под файлом линкера предназначенным для работы с флеш - он просто занимается перебросом управления.
Всё остальное собирается под файлом линкера для работы под рам.
Ни каких рукописных скриптов и тому подобного.
Компиляция и загрузка в рам автоматически, по нажатию одной кнопки. Точно так-же как в случае загрузки в флеш, но в 10 раз быстрее.
Когда программа отлажена - просто переключается файл линкера и один раз пишется во флеш. Что может быть проще?
|
|
|
|
20.10.2016, 16:06
|
|
Временная регистрация
Регистрация: 06.05.2007
Сообщений: 75
Сказал спасибо: 18
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Что-то не получается запустить прогу в ОЗУ, вообще до main не доходт и точек останова не видит!?
В каком положении BOOT0 и BOOT1 должны быть?
|
|
|
|
20.10.2016, 17:00
|
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,956
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Сообщение от AVI-crak
|
Прочитайте статью более внимательно. Способ предназначен именно для обхода аппаратного вмешательства в ПП.
|
Не понял - какого аппаратного вмешательства? ПП - это "печатная плата"? Я никуда не вмешивался, честно слово.
Цитата:
|
Создаётся маленький бин под файлом линкера предназначенным для работы с флеш - он просто занимается перебросом управления.
|
А вот это переведите, пожалуйста. Не въехал я.
__________________
[ жизнь приятна и красива, если выпить литр пива ]
|
|
|
|
20.10.2016, 17:03
|
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,956
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Сообщение от MikhailSh
|
Что-то не получается запустить прогу в ОЗУ, вообще до main не доходт и точек останова не видит!?
В каком положении BOOT0 и BOOT1 должны быть?
|
Если загрузка производится программатором-отладчиком, то неважно.
Опишите подробнее, как вы загружали. У меня не было точек останова, когда я грузил HEX файл вместо AXF, что и понятно - нету в нем отладочной информации.
__________________
[ жизнь приятна и красива, если выпить литр пива ]
|
|
|
|
20.10.2016, 18:21
|
|
Частый гость
Регистрация: 24.02.2016
Сообщений: 15
Сказал спасибо: 2
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Сообщение от nml
|
А вот это переведите, пожалуйста. Не въехал я.
|
Как и чем описано в статье STM32 загрузка и выполнение программ из оперативной памяти.
Перепечатывать текст не вижу смысла.
|
|
|
|
20.10.2016, 18:57
|
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,956
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Сообщение от AVI-crak
|
Перепечатывать текст не вижу смысла.
|
В той статье вообще много странностей.
Сперва говорится - что BOOT1,2 при работе с отладчиком не важны, что отладчик сам все сделает, а потом зачем-то в флеш пишется программа JMPа в область ОЗУ. И в ОЗУ при хитрым образом грузится .HEX файл.
И странная рекомендация лезть редактировать system_stm32xxxx.c
Не надо править этот и другие файлы! Не нашего это ума дело. Тот же дефайн можно прописать в свойствах проекта, что гарантирует, что тут он и останется, не переползет в другой проект - где не нужен.
Для загрузки в ОЗУ есть .ini файл из десятка строчек. Он и старт процессора в ОЗУ осуществит, и загрузит не голый HEX, а файл с отладочной информацией. Ведь мы же говорим именно про отладку?
И писать его не надо, готовый он. Просто указать его во вкладке debug
PS Не надо слепо принимать на веру все, что есть в инете.
__________________
[ жизнь приятна и красива, если выпить литр пива ]
|
|
|
|
20.10.2016, 21:09
|
|
Заблокирован
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Вообще-то, редактировать system_stm32fxxx.c - как раз вот "нашего ума дело". Только редактировать надо не бездумно, а с умом.
Ну а как иначе то настроить предделители системных шин и шин периферии, установить коэфф.умножения PLL, настроить конвейер предзагрузки инструкций, выполнить еще какие-либо стартовые операции.
Не, ну конечно можно перенастроить в main.c, но тогда одни и те же действия будут выполняться дважды. Некошерно это както...
А касательно запуска из RAM... Нуууу если использовать расово-верное ПО разработки и кошерные отладчики-программаторы, то всё будет работать из без танцев.
Некоторые продвинутые МК имеют довольно сложное управление областями памяти и загрузчиками, в том числе и выбор банков флеш-памяти.
|
|
|
|
21.10.2016, 09:43
|
|
Временная регистрация
Регистрация: 06.05.2007
Сообщений: 75
Сказал спасибо: 18
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Настройка проекта на картинках. Dbg_RAM.ini файл из папки D:\KEIL\ARM\Boards\ST\STM32F4-Discovery\Blinky.
В MAP файле адрес флеша указан!
Какая пошаговая последовательность для загрузки кода в ОЗУ?
|
|
|
|
21.10.2016, 10:14
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
MikhailSh, Вы сперва определитесь что вам нужно, отладка в RAМ или автономная работа в RAM.
В *.ini файлах команды Link'а ...
__________________
Осторожно , злой кот
|
|
|
|
21.10.2016, 10:46
|
|
Временная регистрация
Регистрация: 06.05.2007
Сообщений: 75
Сказал спасибо: 18
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
|
Re: Хочу пошаговую отладку в ОЗУ
Нужна отладка в RAM. Программу нужно загрузить в RAM, посмотреть регистры и результат работы, а затем загрузить во FLASH для дальнейшей проверки и работы.
Жалко FLASH по несколько десятков раз в день перезаливаю прогу - учусь
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:23.
|
|