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

 
 
 
Reply to this topicStart new topic
> ATmega128 и tiny memory
Nikola Kirov
сообщение Feb 1 2006, 18:37
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 256
Регистрация: 4-11-04
Из: Болгария
Пользователь №: 1 050



На етот момент работал толко с ATmega16 и АТмега32 в IAR.
Решил сделат проект на ATmega128 a оказалос что tiny memory не могу конфигурироват.
вот ето въидает если захочу сделат memory model tyny.

Error[e16]: Segment CSTACK (size: 0x20 align: 0) is too long for segment definition. At least 0x20 more bytes needed. The problem occurred while
processing the segment placement command "-Z(DATA)CSTACK+_..X_CSTACK_SIZE=_..X_SRAM_TBASE:+_..X_SRAM_TSIZE", where at the moment
of placement the available memory ranges were "DATA:0--1"

Смотрел на пдф мега128 но так и не понял почему не могу имет tiny menory

Кто то сможет меня обяснит в чем дела?
Go to the top of the page
 
+Quote Post
m16
сообщение Feb 1 2006, 18:55
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 242
Регистрация: 27-01-05
Пользователь №: 2 225



--------------------------data---------programm
-v0 Tiny __nearfunc ≤ 256 bytes ≤ 8 Kbytes
-v1 Tiny, Small __nearfunc ≤ 64 Kbytes ≤ 8 Kbytes
-v2 Tiny __nearfunc ≤ 256 bytes ≤ 128 Kbytes
-v3 Tiny, Small __nearfunc ≤ 64 Kbytes ≤ 128 Kbytes
-v4 Small, Large __nearfunc ≤ 16 Mbytes ≤ 128 Kbytes
-v5 Tiny, Small __farfunc* ≤ 64 Kbytes ≤ 8 Mbytes
-v6 Small, Large __farfunc* ≤ 16 Mbytes ≤ 8 Mbytes
Go to the top of the page
 
+Quote Post
Nikola Kirov
сообщение Feb 1 2006, 21:52
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 256
Регистрация: 4-11-04
Из: Болгария
Пользователь №: 1 050



Не заметил что ATmega128 не имеет никакои Ram в области 0-FF
Go to the top of the page
 
+Quote Post
GxOST
сообщение Feb 2 2006, 07:18
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 58
Регистрация: 6-12-05
Из: Санкт-Петербург
Пользователь №: 11 878



Небось какой-нибудь апнот атмеловский? В опциях Linker\#define надо поправить константы. Они там в атмеле всю память под ноль рассчитывают...


--------------------
cul8r!
* #ru_embedded - эмбеддерский чат
Go to the top of the page
 
+Quote Post
KRS
сообщение Feb 2 2006, 09:59
Сообщение #5


Профессионал
*****

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



Цитата(Nikola Kirov @ Feb 1 2006, 21:37) *
На етот момент работал толко с ATmega16 и АТмега32 в IAR.
Решил сделат проект на ATmega128 a оказалос что tiny memory не могу конфигурироват.
вот ето въидает если захочу сделат memory model tyny.

Error[e16]: Segment CSTACK (size: 0x20 align: 0) is too long for segment definition. At least 0x20 more bytes needed. The problem occurred while
processing the segment placement command "-Z(DATA)CSTACK+_..X_CSTACK_SIZE=_..X_SRAM_TBASE:+_..X_SRAM_TSIZE", where at the moment
of placement the available memory ranges were "DATA:0--1"

Смотрел на пдф мега128 но так и не понял почему не могу имет tiny menory

Кто то сможет меня обяснит в чем дела?


tiny это всего лишь модель, дело в том что у АВР если в контроллер памяти (+ регистры и порты) меньше 256 ( 32 регистры 64 порта на память остается 160 байт всего это девайсы у кторых 128 или меньше байт памяти например ATTINY2313) не использует в указателях старший байт, и регистры XH YH ZH могут использоваться как обычный регистр. А в остальных контроллерах для доступа к памяти все равно необходимо использовать все 16 бит адреса.
Поэтому использовать модель tiny нельзя.
Кстати для ATmega16 и АТмега32 тоже tiny будет глючит там адресное пространство выходит за 256 байт.
У Атмеги 128 вообще RAM начинается с адреса 0x100. потому что обычных 64 пора не хватило и до 0ч100 еще расширенные порты
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 14th July 2025 - 18:21
Рейтинг@Mail.ru


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