Easyelectronics.ru

Электроника для всех
Текущее время: 23 янв 2018, 14:49

Часовой пояс: UTC + 5 часов



    • JLCPCB - Платы прототипов всего за 2$ c бесплатной доставкой (при первом заказе)
    • 10 PCBs за $2 для 2 слоев, $15 для 4 слойной, $74 для 6 слойной платы.
    • Крупнейший китайский производитель прототипных плат. 290000+ клиентов & 8000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин радиодеталей.

Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 04:31 
Заглядывает иногда

Зарегистрирован: 22 авг 2014, 12:29
Сообщения: 63
Мне надо одну из функций поместить в sram2 . Я не понимаю, как это должно работать. Если можно объясните поподробней для кейла. Я выделил функцию в отдельный файл . Задаю в скрет фале регион для записи функции . Указываю при компиляции, что функция должна быть в SRAM2. А вот дальше непонимание кто при старте программы поместит эту функцию в SRAM2. И будет ли основная программа знать о этих функции и константах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 05:23 
Старожил

Зарегистрирован: 23 янв 2016, 15:37
Сообщения: 406
Не знаю как там в кейл, но в gcc я просто соответствующий атрибут указываю, стартап правил только когда нужно было объекты в CCM разместить:
Код:
void __attribute__((section(".data"))) TIM3_IRQHandler()
{
}

Хотя если нужно именно SRAM2, а стартап при копировании данных рассматривает ОЗУ как одно целое, то править все-таки придется...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 11:47 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 01 авг 2016, 10:47
Сообщения: 195
Откуда: Таганрог
достаточно в настройках для файла указать куда размещать, при этом не забыв разрешить эту область памяти в меню настроек проекта.


Вложения:
2.png
2.png [ 20.37 Кб | Просмотров: 861 ]
1.png
1.png [ 25.2 Кб | Просмотров: 861 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 13:48 
Заглядывает иногда

Зарегистрирован: 22 авг 2014, 12:29
Сообщения: 63
Эти два действия я делаю и третье в линкере указываю область ,вопрос в том кто будет помещать мою функцию туда ? в SRAM2 она же при выключении питания пропадает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 13:53 
Заглядывает иногда

Зарегистрирован: 22 авг 2014, 12:29
Сообщения: 63
Reflector писал(а):
Не знаю как там в кейл, но в gcc я просто соответствующий атрибут указываю, стартап правил только когда нужно было объекты в CCM разместить:
Код:
void __attribute__((section(".data"))) TIM3_IRQHandler()
{
}

Хотя если нужно именно SRAM2, а стартап при копировании данных рассматривает ОЗУ как одно целое, то править все-таки придется...


Странно ССМ в F4 не позволяет выполнять код. А что вы указывали в линковочном файле потому как .data по умолчанию во FLASH. Для переменных в ССМ именно так и поступал .


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 14:04 
Старожил

Зарегистрирован: 23 янв 2016, 15:37
Сообщения: 406
EugenPKH писал(а):
Странно ССМ в F4 не позволяет выполнять код. А что вы указывали в линковочном файле потому как .data по умолчанию во FLASH. Для переменных в ССМ именно так и поступал .

Я и не говорил, что выполнял код из CCM на F4, это было на F3. Для SRAM я ничего нигде не менял, .data по умолчанию - это SRAM, а флеш - это .text, по крайней мере у меня.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 14:40 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 01 авг 2016, 10:47
Сообщения: 195
Откуда: Таганрог
EugenPKH писал(а):
Эти два действия я делаю и третье в линкере указываю область ,вопрос в том кто будет помещать мою функцию туда ? в SRAM2 она же при выключении питания пропадает.


тот же, кто и выгружает весь код в RAM память из встроенной флеши. Предполагается, что компилятор сам сделает все необходимое. По крайней мере настройки я дал из реального проекта, и там все лежит правильно по старту.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 19:35 
Старожил
Аватара пользователя

Зарегистрирован: 22 июл 2017, 11:48
Сообщения: 981
Зачем вам исполняемый код в RAM????


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 29 дек 2017, 22:50 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 01 авг 2016, 10:47
Сообщения: 195
Откуда: Таганрог
BusMaster писал(а):
Зачем вам исполняемый код в RAM????


если вопрос мне, то там функции по записи во встроенную флешку. согласно RM должен быть в ОЗУ, вот и пихаем две функции тудава


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Keil STM32L4 SRAM2
СообщениеДобавлено: 30 дек 2017, 00:26 
Старожил
Аватара пользователя

Зарегистрирован: 04 окт 2011, 10:19
Сообщения: 1190
Для этого впиха есть пример готовый.
Под все известные компиляторы.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: CheMax


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB