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

 
 
> STM32F103VE отладка в RAM, Не могу запустить. Помогите
pvo125
сообщение Apr 23 2016, 14:56
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 9-04-14
Из: Черногорск Хакасия
Пользователь №: 81 299



Здравствуйте Все!
Пытаюсь отладить проект во внутренней RAM (0x20000000 адрес). Проц stm32f103VE (64k памяти). Среда Кейл.
Ставлю на вкладке Target
IROM1 0x20000000 size 0x8000
IRAM1 0x20008000 size 0x2000
Далее компилируется и собирается проект все без ошибок.
В файле system_stm32f10x.c раскоментирую строку #define VECT_TAB_SRAM
На выводы Boot0 Boot1 по 3 вольта.


Далее компилируется и собирается проект все без ошибок. Нажимаю кнопку Debug начинается загрузка проекта. Дальше должно остановиться на main (если установил галочку Run to main()) или на векторе сброса адрес 0x20000004. (если не путаю). такое делал на stm32f429 ).
Но у меня получается след. PC=0x200001e0 SP=0x20005000. В регистрах значения похожие на мусор. Скрин шот приложил.
Если нажимаю Reset в отладке то счетчик сбрасывается на PC=0x200001e0. Далее если шагать по шагам в окне дизассемблера то след. идет BX LR при этом в LR 0xFFFFFFFF. После этого PC перескакивает на 0xFFFFFFFF затем видимо сброс и PC=0x20000004 далее отладчик вылетает с ошибкой и окно закрывается.Заранее извиняюсь если сумбурно любые вопросы и подробности уточню. Вроде не должно быть так геморно. Тем более сам отлаживал таким способом stm32f429. А здесь не идет. Вообще может такое быть что пины Boot0 Boot1 не корректно срабатывают а точнее Boot1 так как при отладке через flash все нормально.(там как раз Boot0=0 а Boot1 не важно)
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
pvo125
сообщение Apr 24 2016, 13:13
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 9-04-14
Из: Черногорск Хакасия
Пользователь №: 81 299



Спасибо за наводку про Init file Dbg_RAM.ini У меня этот файл был я с ним пробовал но главный косяк был в том что у меня было написано
LOAD RAM\ myfile.axf incremental
пробовал так как писал Viko
LOAD Objects\ myfile.axf incremental
Тем не менее как часто бывает эмпирическим путем выяснил что строчка должна быть такой
LOAD RAM\myfile.axf incremental без пробелов кстати такая строчка тоже работает
LOAD myfile.axf incremental
После этого стало все запускаться или в стартап или до функции main.

Цитата
BOOT трогать вовсе не обязательно. Отладчик подцепится в любом случае.

Верно подметили перемычки можно ставить как на флэш так и на RAM если файл ini верно написан то отладчик подцепится как описано в файле.

Одно не пойму как быть когда в отладке я нажимаю ресет и отладчик снова ставит счетчик команд на адрес 0x200001e0 как и было. Получается что нужно каждый раз загружать отладку debug session. И тогда контроллер нормально отрабатывает сброс.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 07:55
Рейтинг@Mail.ru


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