Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Компилятор С for PIC
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
Страницы: 1, 2
Сергей Борщ
QUOTE (andron86 @ Feb 27 2011, 19:25) *
Как раз эта цель и привела к тому, что компилятор оказался не работоспособен.
Это тараканы препроцессора. Если он не отвечает стандарту - макросы тут не при чем. Полагаю, вы не поняли всех прелестей этих макросов, поэтому они вам и показались слишком сложными.
andron86
Цитата(zltigo @ Feb 27 2011, 18:14) *
интересует обычно более высокие уровни абстракции

Sorry за флуд :-) я это в этом контексте понимаю:
Цитата
С точки зpения банальной эpудиции, каждый индивидуум, кpитически мотивиpующий абстpакцию, не может игноpиpовать кpитеpии утопического субьективизма, концептуально интеpпpетиpуя общепpинятые дефанизиpующие поляpизатоpы. Поэтому консенсус, достигнутый диалектической матеpиальной классификацией всеобщих мотиваций в паpадогматических связях пpедикатов, pешает пpоблему усовеpшенствования фоpмиpующих геотpансплантационных квазипузлистатов всех кинетически коpеллиpующих аспектов. Исходя из этого, мы пpишли к выводу, что каждый пpоизвольно выбpанный пpедикативно абсоpбиpующий обьект pациональной мистической индукции можно дискpетно детеpминиpовать с аппликацией ситуационной паpадигмы коммуникативно-функционального типа пpи наличии детектоpно-аpхаического дистpибутивного обpаза в Гильбеpтовом конвеpгенционном пpостpанстве, однако пpи паpаллельном коллабоpационном анализе спектpогpафичеких множеств, изомоpфно pелятивных к мультиполосным гипеpболическим паpаболоидам, интеpпpетиpующим антpопоцентpический многочлен Hео-Лагpанжа, и возникает позиционный сигнификатизм гентильной теоpии психоанализа, в pезультате чего надо пpинять во внимание следующее: не только эзотеpический, но и экзистенциальный аппеpцепциониpованный энтpополог антецедентно пассивизиpованный высокоматеpиальной субстанцией, обладает пpизматической идиосинхpацией. Но так как валентностный фактоp отpицателен, то и, соответственно, антагонистический дискpедитизм дегpадиpует в эксгибиционном напpавлении, поскольку, находясь в пpепубеpтатном состоянии, пpактически каждый субьект, меланхолически осознавая эмбpиональную клаустоpофобию, может экстpаполиpовать любой пpоцесс интегpации и диффеpенциации в обоих напpавлениях, отсюда следует, что в pезультате синхpонизации, огpаниченной минимально допустимой интеpполяцией обpаза, все методы конвеpгенционной концепции тpебуют пpактически тpадиционных тpансфоpмаций неоколониализма. Hеоколонии, pазмножающиеся почкованием, имеют вегетационный пеpиод от тpех до восьми фенотипических гомозигот, но все они являются лишь фундаментальным базисом социогенетической надстpойки кpиогенно-кpеативного пpоцесса геpонтологизации. Увеличить этот базис можно с помощью гектаплазменного ускоpителя биоинеpтных коллоидных клеток контагиозной конкpетизации, однако введение конкpетизации влечет за собой пpименение методов теоpии множеств и дистpибутивного анализа, что обусловлено тем, что тpансцендентальная поликонденсация неpоноспоpы в пеpплексном хаосе может инбабулиpовать комплексный моpфоз только тогда, когда конституент доминанты квазитенденциально унивеpсален, и пpоисходит довольно внезапно. Очевидно, что все вышесказанное пpоливает свет на теоpию пpедикативных ощущений субъекта, абсолютно нефункциональных в условиях абстpактного хаоса.


Цитата(Сергей Борщ @ Feb 27 2011, 19:19) *
Это тараканы препроцессора. Если он не отвечает стандарту - макросы тут не при чем. Полагаю, вы не поняли всех прелестей этих макросов, поэтому они вам и показались слишком сложными.

Сергей, да не показалось мне это сложным, просто смотри цитату выше, можно многие элементарные выражения так завуалировать, что это не всем понятно будет, особенно компилятору.
Сергей Борщ
QUOTE (andron86 @ Feb 27 2011, 20:29) *
можно многие элементарные выражения так завуалировать, что это не всем понятно будет, особенно компилятору.
Можно. Но нужно это делать только тогда, когда нужно. В данном случае - нужно, этим достигается необходимая функциональность. Конкретный компилятор не отвечает стандарту. Меня не беспокоит каким образом он будет пытаться понимать, как он должен понять - описано в стандарте.
testerplus
Цитата(_Макс @ Feb 26 2011, 19:56) *
Что можно использовать для PIC10? IAR и MPLAB его не поддерживают sad.gif

HT-PICC и CCS
loghir
Подскажите ПЛЗ простейший исходник для тестирования компилятора. (Стыкую MPLAB IDE с HT_PICC, толку мало - не компилится.)
Ruslan1
Цитата(loghir @ Mar 13 2011, 20:46) *
Подскажите ПЛЗ простейший исходник для тестирования компилятора. (Стыкую MPLAB IDE с HT_PICC, толку мало - не компилится.)


Какое семейство и какой компилятор? надеюсь не PRO ?

для PIC18
Код
#include <pic18.h>
void main(void)
{
}


для PIC16:
Код
#include <pic.h>
void main(void)
{
}


ну и конечно в мплабе семейство соответствующее выбрать нужно.
loghir
Ruslan1, спасибо!

МК - PIC16F628

В MPLAB IDE 8.46 компиляция не идет ни с Hi-Tech PIC C-compiler v9.60 std,
ни с Hi Tech PICC v8.05pl2. (Оба активированы).
Еще у меня есть MPLAB IDE v8.30, буду с ним пробовать.
loghir
Поставил MPLAB IDE v8.30. (перезагрузил комп)
В окне создания проекта выбрал как на картинке:
Создал файл, подключил к проекту.
Код
#include <pic.h>
void main(void)
{
}

Пишет ошибку:
Цитата
Build D:\Work\C\test_9_6 for device 16F628A
Using driver C:\Program Files\HI-TECH_9.60\bin\picc.exe

Executing: "C:\Program Files\HI-TECH_9.60\bin\picc.exe" -q -g --asmlist --chip=16F628A "--errformat=Error [%n] %f; %l.%c %s" "--msgformat=Advisory[%n] %s" "--warnformat=Warning [%n] %f; %l.%c %s" -P --char=unsigned -C D:\Work\C\test11.c
Warning [176] D:\Work\C\test11.c; 4.0 missing newline
Warning [337] D:\Work\C\test11.c; 3.1 line does not have a newline on the end

Может, надо было не picc.exe подключать?
xemul
Цитата(loghir @ Mar 14 2011, 14:18) *
Создал файл, подключил к проекту.
Код
#include <pic.h>
void main(void)
{
}

Пишет ошибку:
Цитата
Warning [176] D:\Work\C\test11.c; 4.0 missing newline
Warning [337] D:\Work\C\test11.c; 3.1 line does not have a newline on the end

Warning - предупреждение.
missing newline, line does not have a newline on the end - компилятор предупреждает, что программа не заканчивается символом перевода строки. Эти предупреждения на работе программы точно не скажутся, просто неаккуратненько.
Описания сообщений об ошибках и предупреждениях см. в docs\manual.pdf в каталоге установки компилятора. Не забудьте воспользоваться англо-русским словарём.
Цитата
Может, надо было не picc.exe подключать?

Universal Toolsuite всё делает за Вас, и уже достаточно давно делает это правильно. Если сомневаетесь, ответы в docs\quickstart.pdf и хелпах мплаба.
Ruslan1
Цитата(loghir @ Mar 14 2011, 11:41) *
Ruslan1, спасибо!

МК - PIC16F628

В MPLAB IDE 8.46 компиляция не идет ни с Hi-Tech PIC C-compiler v9.60 std,
ни с Hi Tech PICC v8.05pl2. (Оба активированы).
Еще у меня есть MPLAB IDE v8.30, буду с ним пробовать.


1. как я понял, у вас уже все идет. поздравляю. sm.gif
2. Если глючит на такой программе- то что-то с установкой компилятора не так. Насколько я помню, у Хайтека есть что-то бесплатное, но с ограничениями. на попробовать вполне хватит.
3. Я сам PIC16 давно не пользовал, PIC18 их покрыли как бык овцу, но нареканий не было, и PIC18 с Хайтеком отлично работает (только не PRO!). Но вот если Вы собираетесь на что-то более современное майкрочиповское переходить в перспективе- наверное лучше сразу Майкрочиповские компиляторы брать, Хайтек это тупик. Но вроде бы как раз для PIC16 и выбора нет, только hi-tech.
4. А чего МПЛАБ такой старый, вроде 8.56 уже есть. Если уж переставляете, то наверное новье не хуже старья будет sm.gif
Bronislav
Цитата(Ruslan1 @ Mar 15 2011, 01:19) *
4. А чего МПЛАБ такой старый, вроде 8.56 уже есть. Если уж переставляете, то наверное новье не хуже старья будет sm.gif

Вообще-то 8.63 и нормально работает с НТ 9.81 PRO для PIC16
Ruslan1
Цитата(Bronislav @ Mar 15 2011, 02:46) *
Вообще-то 8.63 и нормально работает с НТ 9.81 PRO для PIC16

А, ну да. 8.63, чего-то глянул на иконку 8.63 на экране, а руки 8.56 отстучали. странно sm.gif
Насчет PRO- я имел неприятности на PIC18 с этими версиями, 9.63 например, они иногда очень революционно оптимизировали, несмотря на volatile, разрушались данные в глобальных переменных (массивы в несколько килобайт). Надеялся что глюк в руках- не нашел. Откатился обратно на STD. Думаю что логика у них одинаково сделана для разных семейств, вот и обхожу PRO стороной, не стоит оно того (ну или может уровень написания моих программ недостаточен для PRO, но в-общем не срослось у нас sm.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.