|
Резервирование области памяти праграмм |
|
|
|
Apr 24 2009, 19:56
|
Группа: Новичок
Сообщений: 12
Регистрация: 24-04-09
Из: UA,Харьков
Пользователь №: 48 229

|
Каким образом можно зарезервировать участок памяти в области памяти программ, это нужно не для хранения констант, а область к которой будет производится как чтение так и зпись. Хочу организовать большой массив изменяемых данных для ATTiny2313. Поиск решения проблеммы ведет к секциям WinAVR, но что то не совсем понятно каким образом организовать и каким образом, производить доступ
|
|
|
|
|
 |
Ответов
|
Apr 24 2009, 22:05
|
Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 5-08-06
Из: Владивосток
Пользователь №: 19 343

|
Для этого нужно переписать скрипт линкера. О том, как это делается, рассказано здесь. Если, конечно, используемый Вами пакет соответствует ветке  . Если лень читать первоисточник, то можно пройтись поиском по веткам, посвященным авр и гну утилам - тема весьма старая, поднималась не раз. Успехов.
|
|
|
|
|
Apr 25 2009, 20:03
|
Группа: Новичок
Сообщений: 12
Регистрация: 24-04-09
Из: UA,Харьков
Пользователь №: 48 229

|
Цитата(Leen @ Apr 25 2009, 01:05)  Для этого нужно переписать скрипт линкера. О том, как это делается, рассказано здесь. Если, конечно, используемый Вами пакет соответствует ветке  . Если лень читать первоисточник, то можно пройтись поиском по веткам, посвященным авр и гну утилам - тема весьма старая, поднималась не раз. Успехов. И все таки, как я понял в скрипте нужно создать собственную секцию, или ограничить область используемой памяти (MEMORY), если не трудно разъясните пожалуйста
|
|
|
|
|
Apr 25 2009, 21:20
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555

|
Цитата(Airy @ Apr 26 2009, 00:03)  И все таки, как я понял в скрипте нужно создать собственную секцию, или ограничить область используемой памяти (MEMORY), если не трудно разъясните пожалуйста Можно и то и то, зависит от того как вы хотите ( как удобнее) использовать эту область! Если там буду хранится например, структуры с параметрами - лучше вынести в секцию. Если просто массив данных и нужен только адрес - то можно и ограничить линкеру эту область. А где вы хотите орагнизовать БОЛЬШОЙ массив данных? в 2313 же 2 кб флеша всего.
|
|
|
|
|
Apr 26 2009, 14:29
|
Группа: Новичок
Сообщений: 12
Регистрация: 24-04-09
Из: UA,Харьков
Пользователь №: 48 229

|
Цитата(KRS @ Apr 26 2009, 00:20)  Можно и то и то, зависит от того как вы хотите ( как удобнее) использовать эту область! Если там буду хранится например, структуры с параметрами - лучше вынести в секцию. Если просто массив данных и нужен только адрес - то можно и ограничить линкеру эту область. А где вы хотите орагнизовать БОЛЬШОЙ массив данных? в 2313 же 2 кб флеша всего. C ограничением области ясно, а вот с секцией не совсем, какое удобство мне принесет секция? В принципе мне то достаточно хранить массив (большой в смысле большой для 2312), в этот массив программа из UART будет записывать данные, а потом при необходимости считывать, это все городится что бы не использовать внешнюю ЕПРОМ, массив будет где то 256 - 512 байт. Подскажите какое удобство даст описание своей секции во флеше? Цитата(_Pasha @ Apr 26 2009, 08:34)  Опишите структуру Код typedef struct { *** Здесь все содержимое блока *** } reserved_block_t; extern PROGMEM reserved_block_t reserved_block; После чего Вам не надо ни секций ни каких-либо усложнений по адресной математике. А каким же образом в эту структуру запись производить???
|
|
|
|
Сообщений в этой теме
Airy Резервирование области памяти праграмм Apr 24 2009, 19:56 _Pasha Цитата(Airy @ Apr 24 2009, 22:56) что то ... Apr 26 2009, 05:34 Deka Почитайте про самопрограммирование или бутлоадеры.... Apr 26 2009, 15:14 Airy Цитата(Deka @ Apr 26 2009, 18:14) Почитай... Apr 26 2009, 17:47  amw Цитата(Airy @ Apr 26 2009, 20:47) Нужен к... Apr 27 2009, 06:42   _Pasha Цитата(amw @ Apr 27 2009, 09:42) Конкретн... Apr 27 2009, 07:13 Airy Спасибо за ответы , по немногу все проясняется, бу... Apr 27 2009, 08:47 Сергей Борщ Цитата(Airy @ Apr 27 2009, 11:47) Попутны... Apr 27 2009, 10:05  Airy Цитата(Сергей Борщ @ Apr 27 2009, 13:05) ... Apr 27 2009, 11:21   Сергей Борщ Цитата(Airy @ Apr 27 2009, 14:21) WinAvr... Apr 27 2009, 11:37    Airy Цитата(Сергей Борщ @ Apr 27 2009, 14:37) ... Apr 27 2009, 11:58 Airy Блин!!! Удаляю папку, переименовываю, ... Apr 27 2009, 14:14 mdmitry Попробуйте собрать не из студии, а с помощью make ... Apr 27 2009, 14:31 Airy Цитата(mdmitry @ Apr 27 2009, 17:31) Попр... Apr 27 2009, 15:42  alx2 Цитата(Airy @ Apr 27 2009, 20:42) ...пере... Apr 28 2009, 11:40   Airy Цитата(alx2 @ Apr 28 2009, 14:40) Позволь... Apr 28 2009, 16:55    alx2 Цитата(Airy @ Apr 28 2009, 21:55) По моем... Apr 29 2009, 09:32     SysRq Цитата(alx2 @ Apr 29 2009, 13:32) А зачем... Apr 29 2009, 09:55      amw Цитата(SysRq @ Apr 29 2009, 12:55) Чтобы ... Apr 29 2009, 14:31      alx2 Цитата(SysRq @ Apr 29 2009, 14:55) Чтобы ... Apr 30 2009, 10:44
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|