Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2019-июл-17 21:19

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2 Все  След.
Автор Сообщение
 Заголовок сообщения: ошибка при компиляции
СообщениеДобавлено: 2012-фев-01 08:56 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
Здравствуйте, при написании кода возникла ошибка компиляции "too much code, page 0 limit exceeded". насколько понял я что-то превысил, проверял .occ файл в озу место есть., при том что удаляя немного кода из программы компиляция проходит нормально. Во флеш памяти тоже навалом. Код программы получился у меня большой, флеш не заполняется даже наполовину, в чём может быть проблема ??


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-фев-01 09:17 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
qwe522y писал(а):
Здравствуйте, при написании кода возникла ошибка компиляции "too much code, page 0 limit exceeded". насколько понял я что-то превысил, проверял .occ файл в озу место есть., при том что удаляя немного кода из программы компиляция проходит нормально. Во флеш памяти тоже навалом. Код программы получился у меня большой, флеш не заполняется даже наполовину, в чём может быть проблема ??
Вы не указали ни тип контроллера, ни версию компилятора. Возможно, в файле 1886VE?.h в строке
Код:
#pragma chip VE?, core 16 b, code 16384, ram 26 : 0x3FF
неправильно указан размер кода.
Если проблема не решилась, приведите здесь .occ файл.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-фев-01 09:33 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
в хеадере вот что
/*
* Header file for
* 1886BE2 chip
*/

#pragma chip PIC, core 16 b, code 16384, ram 26 : 0x3FF
...
как прикрепить файл .occ?

в .occ файле заметил

Error E:\1886\Project\KontrPMU_CC7A\KPMU_new\main.c 362: Too much code, page 0 limit exceeded
(If the device contains more than one code page, then functions must
be moved to other codepages by #pragma codepage or #pragma location.
Finding an optimal solution is up to the application designer)
Codepage 0 has 8187 word(s) : 99 %
Codepage 1 has 892 word(s) : 10 %
Codepage 2 has 0 word(s) : 0 %
Codepage 3 has 0 word(s) : 0 %
Total of 9079 code words (27 %)
*** error(s), no hex file produced.

как распределить равномерно ?


Вложения:
main.rar [1.19 КБ]
Скачиваний: 242
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-фев-01 11:50 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
Здесь у Вас превышение размера кода на одной странице (8К слов). При размещении функций в другой странице памяти программ необходимо использовать комманды:
Код:
#pragma codepage 1 // или
#pragma origin 0x6123 // или
page3 void ..
Также необходимо изменить в хедере строку:
Код:
#pragma chip VE2, core 16 b, code 32751, ram 26 : 0x3FF
Однако это будет работать только в обновленной версии компилятора, CC7A Ver 1.0E. Её вы можете получить в нашем отделе маркетинга.
Еще несколько слов. Файл *.occ содержит информацию о процессе компиляции. Оттуда мне видно, что код содержит некоторое количество мусора, с которым компилятор иногда успешно боролся. Сохранять PRODL и PRODH бессмысленно, так как они только для чтения, и в прерываниях их использовать можно только если они не используются в основной программе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-фев-01 12:43 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
А если не изменять в хеадере строку(т.е. добавить только #pragma codepage...) будут какие-нибудь проблемы ? У меня стоит компилятор 1.0D и чтобы обновить его придётся опять(или снова) посылать вам письмо с почтового ящика указанного в договре и т.д. через канцелярию, это долго.. Ещё хотел уточнить в .pdfке на комилятор есть такая строка "Например, все функции расположенные за #pragma codepage будут расположены в указанную страницу. Страница 0 выбрана по умолчанию. ". "расположенные за #pragma" это после этой строки? И что даёт эта строка в хеадере(#pragma chip VE2, core 16 b, code 32751, ram 26 : 0x3FF)? Спасибо за скорый ответ.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-фев-01 14:08 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
qwe522y писал(а):
А если не изменять в хеадере строку(т.е. добавить только #pragma codepage...) будут какие-нибудь проблемы ? У меня стоит компилятор 1.0D и чтобы обновить его придётся опять(или снова) посылать вам письмо с почтового ящика указанного в договре и т.д. через канцелярию, это долго.. Ещё хотел уточнить в .pdfке на комилятор есть такая строка "Например, все функции расположенные за #pragma codepage будут расположены в указанную страницу. Страница 0 выбрана по умолчанию. ". "расположенные за #pragma" это после этой строки? И что даёт эта строка в хеадере()? Спасибо за скорый ответ.
Как я сейчас выяснил, можно обойтись без кацелярии. Просто пришлите письмо с любого адреса. Про проблемы компилятора подробнее можно посмотреть тут: viewtopic.php?f=4&t=403
Код:
#pragma chip VE2, core 16 b, code 32751, ram 26 : 0x3FF
Это указывает компилятору, что у контроллера четыре кодовых страницы по 8К слов. Если Вам достаточно двух, можно ничего не менять. Все функции расположенные за #pragma codepage или #pragma origin будут на этой странице, пока не встретится следующая #pragma или не будет явного указания расположения функции типа page3 void func();


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-фев-01 14:37 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
Всё, отправил письмо с данными. Ещё просьба, как бы мне восстановить свой ник insert103 ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-фев-02 09:17 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
Lew, поторопите ваших колег с компилятором 1.0E ...всё отправил по почте...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-апр-18 07:10 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
как отключить глобально оптимизацию? работаю на С(CC7A) в IDE. В документации написано "В командной строке опция –u выключает глобальную оптимизацию, при этом установки в исходном коде игнорируются.". Как передать в IDE опцию -u для компилятора?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-апр-18 09:59 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
qwe522y писал(а):
как отключить глобально оптимизацию? работаю на С(CC7A) в IDE. В документации написано "В командной строке опция –u выключает глобальную оптимизацию, при этом установки в исходном коде игнорируются.". Как передать в IDE опцию -u для компилятора?
Для этого надо изменить строку с требуемыми настройками в файле Makefile.bat и в дальнейшем запускать компиляцию только через него. Компиляция через IDE будет восстанавливать Makefile.bat. Затем можно загрузить полученный hex или bin файл в IDE или Prog2010.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-апр-18 10:09 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
Ещё вопрос, возник только что. Создал новый проект, использовав свои хеадеры из старого проекта(добавил их к проекту), при компиляции выводится ошибка "Программа защищена. По вопросам приобретения обратитесь в компанию Миландр."? Среда IDE 8.5, ключ тот же, компилятор тот же "E"-версия... Старый проект компилится без проблем. Что не так сделал?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-апр-18 10:33 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
qwe522y писал(а):
Ещё вопрос, возник только что. Создал новый проект, использовав свои хеадеры из старого проекта(добавил их к проекту), при компиляции выводится ошибка "Программа защищена. По вопросам приобретения обратитесь в компанию Миландр."? Среда IDE 8.5, ключ тот же, компилятор тот же "E"-версия... Старый проект компилится без проблем. Что не так сделал?
Это сообщение означает, что у в этом проекте при компиляции не создается файл *.err, т. е. или неправильно настроены пути к компилятору или произошла другая фатальная ошибка. Проверьте параметры проекта; Попробуйте удалить директорию C:\Documents and Settings\%USERNAME%\Application Data\Dev-Cpp\ и затем заново настроить путь к компилятору. Хедеры не следует подключать к проекту. Они подключаются директивой #include.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-апр-18 13:03 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
Lew писал(а):
qwe522y писал(а):
Ещё вопрос, возник только что. Создал новый проект, использовав свои хеадеры из старого проекта(добавил их к проекту), при компиляции выводится ошибка "Программа защищена. По вопросам приобретения обратитесь в компанию Миландр."? Среда IDE 8.5, ключ тот же, компилятор тот же "E"-версия... Старый проект компилится без проблем. Что не так сделал?
Это сообщение означает, что у в этом проекте при компиляции не создается файл *.err, т. е. или неправильно настроены пути к компилятору или произошла другая фатальная ошибка. Проверьте параметры проекта; Попробуйте удалить директорию C:\Documents and Settings\%USERNAME%\Application Data\Dev-Cpp\ и затем заново настроить путь к компилятору. Хедеры не следует подключать к проекту. Они подключаются директивой #include.

Да я их подключил на всякий случай, без подключения тоже самое. Удаление директории ни к чему не привело. Параметры проекта те же самые, что и раньше. Путь к компиляторам верен. Что такое "другая фатальная ошибка"? Попробывал подключить D-версию компилятора, так же.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-апр-18 13:40 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
qwe522y писал(а):
Да я их подключил на всякий случай, без подключения тоже самое. Удаление директории ни к чему не привело. Параметры проекта те же самые, что и раньше. Путь к компиляторам верен. Что такое "другая фатальная ошибка"? Попробывал подключить D-версию компилятора, так же.
Есть такая вкладка: "Журнал компиляции". Вы туда заглядывали хоть? Что там написано?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ошибка при компиляции
СообщениеДобавлено: 2012-апр-18 13:54 
Не в сети

Зарегистрирован: 2012-фев-01 08:43
Сообщения: 15
Спасибо за помощь. Всё нормально работает.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2 Все  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB