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

 
 
 
Reply to this topicStart new topic
> stm32f4, выполнение кода из ccm
diwil
сообщение May 21 2012, 16:34
Сообщение #1


Местный
***

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



Здравстуйте.
пытаюсь застввить выполнятся код из верхнй памяти (та что с 0x10000000) .
описываю функцию с атрибутом секции и т.д. В отладчике вижу, что она расположена в интерсующей меня области. Однако, при переходе на нее (адресОх10000001) происходит hard fault.
это меня несолько озадачивает, ибо если я размещаю эту функцию не в CCM RAM, а в другой (0x20000000), xто все работает.

Вопрос -
кто разбирался с подобным?

И еще -мн кажется, что функция из рама выполняется медленнее... (168мгц)...
Что это может быть?

Да. стэк ит.п. в верхкнй рам ведет себя хорошо..,
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение May 21 2012, 16:54
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



CCM не подключена к I-bus, см. RM0090, "Figure 1. System architecture" на стр. 48.

Цитата(diwil @ May 21 2012, 22:34) *
Да. стэк ит.п. в верхкнй рам ведет себя хорошо..,

Я правильно понимаю, что её для этого надо включить битиком CCMDATARAMEN в RCC_AHB1ENR?


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Sagittarius
сообщение May 21 2012, 17:07
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 207
Регистрация: 26-01-06
Из: СПб
Пользователь №: 13 659



Цитата(diwil @ May 21 2012, 19:34) *
Однако, при переходе на нее (адресОх10000001) происходит hard fault.

а в кортексе уже можно ставить команды на нечетный адрес? (0x10000001)
Go to the top of the page
 
+Quote Post
aaarrr
сообщение May 21 2012, 17:18
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Sagittarius @ May 21 2012, 21:07) *
а в кортексе уже можно ставить команды на нечетный адрес? (0x10000001)

Нужно.
Go to the top of the page
 
+Quote Post
SII
сообщение May 21 2012, 18:15
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414



На самом деле адрес всегда остаётся чётным. Просто установленный младший бит при переходах указывает, что целевая система команд -- Thumb/Thumb-2, а не ARM, потому-то он и установлен в любых Cortex-M, где родной АРМовской системы команд нет вообще.
Go to the top of the page
 
+Quote Post
ThunderStorm
сообщение Dec 5 2012, 07:24
Сообщение #6





Группа: Новичок
Сообщений: 1
Регистрация: 5-12-12
Пользователь №: 74 706



Уважаемые!
Подскажите, пожалуйста, как задействовать область CCM? Т.е. в ней переменные разместить.
Компиллятор - IAR 6.3
Go to the top of the page
 
+Quote Post

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

 


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


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