Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: MSP430 и CC24280
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > MSP430
Shmiga
Доброго всем времени суток.
Неадавно купили набор eZ430-RF2480. на котором установлен MSP430F2274 с объемом флеша 32кб, пытаюсь перевести проект на более дешевый процессор с меньшим объемом флеш. Компилятор выдает ошибку:Error[e16]: Segment CSTACK (size: 0x12c align: 0x1) is too long for segment definition. At least 0x66 more bytes needed. Текст ошибки не меняется, несмотря на то, что я удаляю из проекта целые файлы. Как узнать сколько именно памяти мне не хватает(.map файл не генерируется)? И ище, может быть, кто-то работал с CC2480, какой мнимальный размер флеш памяти нужен на MSP, чтоб с ним работать(просто принять сообщение по ZigBee и записать полученный байт в состояние выходных портов)?
Возможно вопрос покажется вам глупым, не судите строго, я только учусь laughing.gif
Заранее, большое спасибо.
HARMHARM
Цитата(Shmiga @ Aug 4 2009, 10:40) *
Как узнать сколько именно памяти мне не хватает(.map файл не генерируется)?

Цитата(Shmiga @ Aug 4 2009, 10:40) *
At least 0x66 more bytes needed.

0х66 - это 102 байта.
GlueBF
Я так думаю вам не хватает не FLASH, а RAM-памяти, т.е. программа в МК у вас может и полезет, а вот выполняться не будет.
А какой у вас компилятор?
Shmiga
Компилятор у меня IAR Embedded Workbench 5.3.
В настройках проекта(Options -> Linker -> Config) поставил галочку "defined by application", после чего программа уместилась в один килобайт, но перестала запускаться(((( В дебаггере видно, что она сразу попадает в самый конец памяти (0x00ffff).
rezident
Цитата(Shmiga @ Aug 6 2009, 11:42) *
Компилятор у меня IAR Embedded Workbench 5.3.
Что за версия такая странная? KickStart что ли? Последняя из доступных full или evaluation 4.20.1.
Цитата(Shmiga @ Aug 6 2009, 11:42) *
В настройках проекта(Options -> Linker -> Config) поставил галочку "defined by application", после чего программа уместилась в один килобайт, но перестала запускаться(((( В дебаггере видно, что она сразу попадает в самый конец памяти (0x00ffff).
Весьма оригинально вы мыслите и поступаете! 07.gif И вас нисколько не удивило столь масштабное урезание размера кода? Вы хотя бы листинг и map-файл удосужились посмотреть после ваших манипуляций? У вас же при этих настройках линкер весь стартап вместе с вектором сброса, инициализацией стека, функцией main и всеми функциями, вызываемыми из main, выбросил! 01.gif
Shmiga
Цитата(rezident @ Aug 7 2009, 11:39) *
Весьма оригинально вы мыслите и поступаете! 07.gif И вас нисколько не удивило столь масштабное урезание размера кода? Вы хотя бы листинг и map-файл удосужились посмотреть после ваших манипуляций? У вас же при этих настройках линкер весь стартап вместе с вектором сброса, инициализацией стека, функцией main и всеми функциями, вызываемыми из main, выбросил! 01.gif

Урезание когда меня конечно удивило, но вот, что я прочитал про эту настройку в хелпе:"The linker will, as always, include all program modules, and enough library modules to satisfy all symbol references, keeping all segment parts that are marked with the root attribute or that are referenced, directly or indirectly, from such a segment part." Я так понял, что все необходимое для работы программы он оставит. laughing.gif А можно как-то в коде указать линкеру, что выкидывать, а что нет? Можно ли еще каким-либо образом уменьшить размер прошивки?
А компилятор у меня таки да 4.20.1 unsure.gif
Большое спасибо за внимание)).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.