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

 
 
> Keil C51 v9 Не получается правильно разместить секцию во Flash, похоже методика определения userclass изменилась ...
O.L.
сообщение Jan 9 2010, 08:09
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 96
Регистрация: 10-06-05
Из: Новосибирск
Пользователь №: 5 890



Доброго времени суток.

Кристалл С8051f360.

При переносе проекта на новую версию компайлера не удается правильно разместить область для процедур самопрограммирования.
Описанные в .... .bialix.com/tools/keil/faq/ метод для LX51 не понимает определения CODE_SELFUPDATE (C:0x7000-С:0x77ff). Проглатывает только CODE_SELFUPDATE (C:0x7000) но при этом все функции линкер начинает размещать с адреса 0х7000. Область Flash памяти программ, начиная с адреса С:0 занята только вызовами процедур прерывания (которые о же "улетают" на адрес 0x7000 и выше) и STARTUP.

"Шаманство" типа
#pragma class (code = CODE) // generates CODE_SELFUPDATE class
... все процедуры кроме перепрошивальщика

#pragma userclass (code = SELFUPDATE) // generates CODE_SELFUPDATE class

void MY_Upgrade_Code (void)
....

Не помогает.

Может быть кто то ту уже разобрался с этим в этой версии? В Keil-овских доках пока ни чего толкового не нашел.
Go to the top of the page
 
+Quote Post



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

 


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


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