Поклонники продукции Microchip Technology Inc тусуются тут.
Ср мар 07, 2018 14:43:13
Когда-то давно пробовал работать в mikroC. И даже многое получалось.
И вот недавно снова потребовалось сделать несложную прошивку. И тут при попытке прошить контроллер выдается сообщение, что hex файл больше, чем память контроллера. При этом контроллер точно такой же, под который писалась прошивка, и в Proteus всё работает нормально. Сторонние hex файлы зашиваются нормально, проблемы только с файлами, скомпилированными в mikroC. Не могу понять, в чем же дело. Прошивал программатором PICkit (точнее его клоном).
В Протеусе всё работает, но выдает сообщение "Program or eeprom has invalid addres"
Ср мар 07, 2018 22:29:26
Проект выложи.
Чт мар 08, 2018 07:35:54
Когда-то давно пробовал работать в mikroC
Когда-то был довольно большой проект на PIC18F4520 - 32К практически под завязку. Все работало, но потребовалось изменить несколько констант в таблице (ничего не дописывалось, а только циферки менял) - после этого хоть и компилировалось без ошибок, но прошивка стала абсолютно не рабочей!!! Пришлось в срочном порядке переводить проект на хайтек. Больше я с микросями не связываюсь...
Чт мар 08, 2018 11:53:03
Решил для чистоты эксперимента взять один из примеров, идущих вместе с компилятором, и скомпилировать его, вообще ничего не меняя. Собрал схему на том МК, под который пример написан - всё то же самое. Полагаю, дело тут в самом микроС.
Чт мар 08, 2018 17:03:55
Ставьте ХС8
Пт мар 09, 2018 21:45:20
Перебросил проект на XC8, всё заработало, в любом случае спасибо за помощь
Пн сен 16, 2019 11:15:00
Есть такая интересная вещь с МикроСи. Пишу, компилирую для пик18, объем порядка 8 кб. Если оптимизатор включен, то программу глючит и сбоит. Если оптимизатор кода установлен как зеро, проблем нет вовсе. Компилятор настоящий, полноразмерный и приобретенный. Объемов места в принципе хватает, и в оптимизаторе нет жесткой необходимости. Но все же. Хочется знать почему?
Если кто встречался с таким, скажите плиз в чем дело. Очередной глюк Микроси или я в чем-то не прав?
Пн сен 16, 2019 12:43:56
Экстрасенсы в отпуске....
Попробуйте написать в техподдержку продукта.
Пн сен 16, 2019 13:07:50
на счет конкретной реализации microC не скажу, но с подобными проблемами (влияние оптимизатора) не раз сталкивался сам, и не раз помогал другим разобраться: во всех известных мне случаях оптимизатор был не виноват, а виноват был программсит, который не до конца понимал, как работает оптимизатор. то есть программист писал код, который НЕ ДОЛЖЕН БЫЛ работать, а то, что ОН РАБОТАЛ БЕЗ ОПТИМИЗАТОРА, было побочным эффектом.
я не отрицаю возможность наличия багов в компиляторе, но пока что не встречал ни одного случая, когда баг на самом деле был бы обнаружен кем-то из местных форумчан (и не только местных)
Пн сен 16, 2019 13:51:56
не встречал ни одного случая, когда баг на самом деле был бы обнаружен кем-то из местных форумчан
Ну значит уже встретили. И GCC у меня сам себя собирал неправильно при включенной оптимизации для конкретного AMD (уже не помню точно какого). Багрепорт был подтвержден. И в SDCC пару багов точно находил до версии 3.5, после которой заметно лучше код стал.
Пн сен 16, 2019 13:59:40
ПростоНуб писал(а):Ну значит уже встретили
хорошо, отмечу у себя в блокнотике и буду гордиться
Пн сен 16, 2019 21:35:31
Я сижу на микроС и действительно приходиться бодаться с оптимизатором, закоментировал выдачу метки в уарт и он сволоч часть кода выкинул. Я долго понять не мог че за полтергейст.
Пн сен 16, 2019 22:41:41
Ну что ж. Мои подозрения оправдываются. Компиляторы тоже не боги пишут, а вполне обычные люди и им свойственно ошибаться.
Ну а что касается ошибок моих, ну так и это нахожу даже в хорошо и давно работающих проектах. Нахожу, исправляю, снова нахожу. Оптимизатор разумеется самый лучше тот, который в голове у автора проекта. Без помощи оптимизации работает, а все остальное от лукавого. Спасибо откликнувшимся.
Вт сен 17, 2019 08:50:35
самое интересное, что "глючный" код мы так и не увидели, и вынуждены заочно согласиться с автором вопроса, что виноват оптимизатор/компилятор, а не он.
Вт сен 17, 2019 11:16:57
Извините ребята, но программа представляет весьма специфический и глубоко коммерческий продукт и не подлежит оглашению в инете. Да и занимает кроме всего прочего 43 страницы мелким шрифтом на формате А4.
Если нет оптимизатора, то все отлично работает, а если включить любой, даже минимальный уровень оптимизации, то вдруг где-то перестает работать. Есть основания, что все-таки глючит компилятор. Я сам не готов сказать, где именно глючит, поскольку система работает автономно и системы сохранения состояния регистров процессора на момент формирования ошибки не имеет согласно технического задания.
Ср сен 18, 2019 05:48:58
И когда же вы все наиграетесь этим микроси и перейдете на нормальный продукт???
Ср сен 18, 2019 06:27:43
Это типа на МикроСи нельзя сделать нормальный продукт? Да ладно. Пишет не язык а человек. Язык всего лишь инструмент и не более, способ реализации. И меня МикроСи устраивает, и получаемый продукт и его надежность устраивает моих клиентов. И им откровенно наплевать, на чем я пишу.
Ср сен 18, 2019 07:56:33
Ну почему нельзя, я же делаю. По поводу оптимизатора тут двоякое мнение т. е. 50% это косяк того кто пишет код так как в некоторых случаях оптимизатор считает код не идеальным и в некоторых случаях он действительно прав. У меня есть код который без оптимизации вообще не работает. А с другой стороны не зря придумали директиву Volatile
Ср сен 18, 2019 08:46:29
alex_, напомнило баг оптимизатора в SDCC 3.5 (или 3.6).
- Код:
volatile int var;
...
void some_function(void) {
var=0;
...
if (var) {
...
}
}
Оптимизатор радостно удалял if со всем содержимым, искренне считая, что var в этом месте всегда нулевой )))
Ср сен 18, 2019 09:44:33
Да это не баг совсем, если var=0; и до if (var) { оно не меняется, то действительно if (var) { нет смысла обрабатывать. Я так выкидываю участки кода когда они мне на данный момент не нужны.
Добавлено after 13 minutes 36 seconds:И когда же вы все наиграетесь этим микроси и перейдете на нормальный продукт???
А многим этот продукт кажется вполне нормальным. Библиотек куча, в хелпе примеров море, которые просто копируешь и всё сразу работает. Да и при желании можно лицензию купить стоил относительно не дорого, это вам не IAR который хрен купишь
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.