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

 
 
> Массив по заданному адресу MDK-ARM (Keil)
quandr
сообщение Jul 7 2018, 12:09
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 4-09-10
Пользователь №: 59 282



Добрый день.
В документации MDK-ARM описана возможность размещения переменной по заданному адресу.
Например
int x2 __attribute__((at(0x12000))) = 10;

А как массив разместить в определенном адресном пространстве (может как-то через первый элемент)?

Спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
__inline__
сообщение Jul 8 2018, 12:50
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 257
Регистрация: 5-09-17
Пользователь №: 99 126



Объявил переменную в секции SRAM3:
Код
u8 AudioBuffer[1024] __attribute__((section("SRAM3")));


Скаттер-файл:
Код
LR_IROM1 0x08000000 0x00200000  {   ; load region size_region

  ER_IROM1 0x08000000 0x00200000  { ; load address = execution address
   *.o (RESET, +First)
   *(InRoot$$Sections)
   .ANY (+RO)
  }

  DTCM 0x20000000 0x00020000  { ; RW data
  }

  AXI 0x24000000 0x00080000  { ; RW data
   .ANY (+RW +ZI)
  }

  SRAM12 0x30000000 0x00040000  { ; RW data
   .ANY (+RW +ZI)
  }

  SRAM3 0x30040000 0x00000008  { ; RW data
   .ANY (+RW +ZI)
  }

  SRAM4 0x38000000 0x00010000  { ; RW data
  }

}


Из скаттера видно, что секция SRAM3 всего 8 байт, а надо 1024.

Тем не менее, линковка успешна!

Вопрос - почему? Какого чёрта линковщик засунул переменную AudioBuffer в другую область памяти?

Что я сделал не так?

выдержка из МАР-файла. точно, вообще в другую секцию засунул!

как победить урода? (Keil)

или только через :
1) u8 *AudioBuffer=(u8*)0x30040000;
2) u8 AudioBuffer[1024] __attribute__((at(0x30040000)));

?
Прикрепленное изображение
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- quandr   Массив по заданному адресу MDK-ARM (Keil)   Jul 7 2018, 12:09
- - __inline__   Три способа: 1) Сделать в линкере секцию и через ...   Jul 7 2018, 13:46
|- - Arlleex   Цитата(__inline__ @ Jul 7 2018, 16:46) 3)...   Jul 7 2018, 15:45
||- - aaarrr   Цитата(Arlleex @ Jul 7 2018, 18:45) Ником...   Jul 7 2018, 16:01
||- - Arlleex   Цитата(aaarrr @ Jul 7 2018, 19:01) Ну, вс...   Jul 7 2018, 16:41
||- - KRS   Цитата(aaarrr @ Jul 7 2018, 19:01) Ну, вс...   Jul 8 2018, 08:39
||- - quandr   Цитата(aaarrr @ Jul 7 2018, 19:01) Ну, вс...   Jul 8 2018, 13:04
||- - Forger   Цитата(quandr @ Jul 8 2018, 16:04) Так ка...   Jul 8 2018, 14:08
||- - quandr   Цитата(Forger @ Jul 8 2018, 17:08) Ведь в...   Jul 8 2018, 15:42
||- - Forger   Цитата(quandr @ Jul 8 2018, 18:42) Там то...   Jul 8 2018, 16:08
||- - quandr   Цитата(Forger @ Jul 8 2018, 19:08) Эх, со...   Jul 8 2018, 16:40
|||- - Forger   Цитата(quandr @ Jul 8 2018, 19:40) Если б...   Jul 8 2018, 16:45
||- - __inline__   Цитата(Forger @ Jul 8 2018, 17:08) Эх, со...   Jul 9 2018, 03:26
||- - Forger   Цитата(__inline__ @ Jul 9 2018, 06:26) Вы...   Jul 9 2018, 06:20
||- - HardEgor   Цитата(__inline__ @ Jul 9 2018, 10:26) Вы...   Jul 9 2018, 06:31
||- - Forger   Цитата(HardEgor @ Jul 9 2018, 09:31) Прим...   Jul 9 2018, 06:34
||- - __inline__   Цитата(Forger @ Jul 9 2018, 07:34) Не зас...   Jul 9 2018, 13:22
||- - Forger   Цитата(__inline__ @ Jul 9 2018, 16:22) Ра...   Jul 9 2018, 13:26
||- - __inline__   Цитата(Forger @ Jul 9 2018, 14:26) Дык, э...   Jul 9 2018, 13:28
||- - Forger   Цитата(__inline__ @ Jul 9 2018, 16:28) Ва...   Jul 9 2018, 13:38
|- - quandr   Цитата(__inline__ @ Jul 7 2018, 16:46) Тр...   Jul 8 2018, 02:22
- - k155la3   В файле линкера организовать сегмент и при деклара...   Jul 7 2018, 15:41
|- - haker_fox   QUOTE (k155la3 @ Jul 7 2018, 23:41) В фай...   Jul 8 2018, 00:35
- - pnp_mechanic   Можно так. const uint16_t NAME [] __attribute__(...   Jul 7 2018, 20:05
|- - aaarrr   Цитата(__inline__ @ Jul 8 2018, 15:50) Чт...   Jul 9 2018, 06:21
- - __inline__   ок, попробую разобраться   Jul 9 2018, 09:36
- - __inline__   Продолжая о скаттерах... Понадобилось мне сделать...   Jul 16 2018, 05:26
- - Forger   Цитата(__inline__ @ Jul 16 2018, 08:26) П...   Jul 16 2018, 07:57


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

 


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


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