Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Keil C51 v9 Не получается правильно разместить секцию во Flash
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > MCS51
O.L.
Доброго времени суток.

Кристалл С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-овских доках пока ни чего толкового не нашел.
O.L.
Переставил XP, Keil и дрова от SiLads-а, за компанию - теперь все работает...
Так и не понял, где и что сдохло.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.