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

 
 
> Данные в FLASH, Вопрос по Keil
IEC
сообщение Dec 28 2006, 13:03
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 263
Регистрация: 22-03-05
Из: г. Харьков, Украина
Пользователь №: 3 598



Люди! Хелп!
Раскажите, как выделить кусок памяти в FLASH в С среды Keil под переменные?
В IARе для AVR это выглядело так
int __flash m[200];

А как это делается в арме? cranky.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
OlegHmt
сообщение Jan 15 2007, 14:29
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 70
Регистрация: 5-12-06
Пользователь №: 23 146



На выходных я более-менее разобрался и запустил код. Не знаю полностью ли коректно, но заработало. Вот описаное того, что я сделал (процесор AT91SAM7X256):
1. Упомянутой приблудой добавил секцию на заданую страницу после других секций, по аналогии с существующими секциями;
2. Объявил нужные мне переменные записав атрибутом имя добавленой секции и задав им начальные значения;
Не знаю поможет ли атрибут nocommon но тогда переменные нормально читались, но записать в них ничего я не смог. Поэтому:
3. Добавил код записи страницы памяти согласно даташиту на процесор. То-есть по имени первой объявленной переменной я получил адрес страницы памяти, записал туда последовательность 32-битных данных и дал команду на запись этой страницы.

Небольшая особенность - код записи страницы в память я запихивал в SRAM (остальной код записан на Flash), потому что если код находился на флеше, то система подвисала после добирания до этого места, но вот не помню производилась ли при этом запись или нет.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- IEC   Данные в FLASH   Dec 28 2006, 13:03
- - aaarrr   По-идее, должно хватить const int m[200]; - линкер...   Dec 28 2006, 13:28
- - jorikdima   Цитата(aaarrr @ Dec 28 2006, 13:28) По-ид...   Dec 28 2006, 13:45
|- - aaarrr   Цитата(jorikdima @ Dec 28 2006, 13:45) А ...   Dec 28 2006, 13:49
- - jorikdima   А вопрос был ЦитатаРаскажите, как выделить кусок п...   Dec 28 2006, 13:52
|- - aaarrr   Цитата(jorikdima @ Dec 28 2006, 13:52) А ...   Dec 28 2006, 13:58
- - IEC   Просто хотелось бы выделить несколько страниц памя...   Dec 28 2006, 15:05
|- - aaarrr   Цитата(IEC @ Dec 28 2006, 15:05) Просто х...   Dec 28 2006, 15:10
- - IEC   Менять! Обязательно менять! Изменение буде...   Dec 28 2006, 15:28
|- - aaarrr   Цитата(IEC @ Dec 28 2006, 15:28) Но пробл...   Dec 28 2006, 15:36
|- - IEC   Цитата(aaarrr @ Dec 28 2006, 15:36) Цитат...   Jan 2 2007, 12:15
|- - aaarrr   Цитата(IEC @ Jan 2 2007, 12:15) Спасибо...   Jan 2 2007, 12:46
- - IEC   Большое спасибо! Попробую реализовать!   Jan 5 2007, 14:21
- - OlegHmt   Если можно, подскажите, пожалуйста, как такая же з...   Jan 13 2007, 18:06
- - boez   В кроссворксе гнутый компилятор. У него размещение...   Jan 15 2007, 11:36
- - boez   Да, а добавить секцию в кроссворксе оказывается со...   Jan 15 2007, 12:56


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 16:42
Рейтинг@Mail.ru


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