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

 
 
> MSP430. Размещение массива в FLASH., ВОпросы по размещению данных в FLASH.
JohnKorsh
сообщение Feb 16 2015, 12:14
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 182
Регистрация: 6-01-05
Из: Россия, Москва
Пользователь №: 1 820



Пишу для MSP430. Мне необходимо разместить во FLASH массив, который будет програмно переписываться.
Как мне объяснить линковщику, что я хочу разместить этот массив в отдельном сегменте, и поместить этот
сегмент после сегментов исполняемого кода? Совпадают ли границы сегментов с аппаратными границами FLASH
сегментов микроконтроллера MSP430, то есть могу я стирать сегмент, пользуясь его адресом,
полученным при компиляции или самому надо озаботиться, чтобы этот адрес совпадал с началом аппаратного
FLASH сегмента?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
JohnKorsh
сообщение Feb 17 2015, 10:18
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 182
Регистрация: 6-01-05
Из: Россия, Москва
Пользователь №: 1 820



Добрый день!
Спасибо за ответ.
Вот мой вариант решения, может кому пригодится.

Посмотрел в MAP файле раскладку, нашёл последний сегмент
во Flash, (0xC200 в банке A), жёстко привязал массив к этому адресу
#pragma location = 0xC200
const unsigned char SX1276_Init_Data [128] =
{...};
Убедился по MAP файлу, что массив лёг куда надо, не "задев" никого,
затем воспользовался модулем
\IAR\430\FET_examples\MSP-EXP430F5529\F5xx_F6xx_Core_Lib\HAL_FLASH.C,
поставляемым с IAR, там всё есть для работы с FLASH.

Думаю, есть более изящный способ.
Чего хочется - получить в IDE конечный адрес кода после линковки (псть будет End_Code).
Размер стираемого сегмента в MSP430F5528 512 байт -
автоматически разместить мой массив в конце кода ((End_Code mod 512) + 1) * 512.
Не знаю, как получить конечный адрес кода.

Может есть лучшие решения?
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 01:46
Рейтинг@Mail.ru


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