Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить

Не возможно скомпилировать код на c++ в MPLAB X

Вт дек 12, 2017 17:04:30

Всем привет!!! Пытаюсь освоить pic, но проект не компилируется. Вот код: https://hastebin.com/heqavekuwu.cpp
А вот ошибки:
make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory 'C:/Users/Timoha/MPLABXProjects/test.X'
make -f nbproject/Makefile-default.mk dist/default/production/test.X.production.hex
make[2]: Entering directory 'C:/Users/Timoha/MPLABXProjects/test.X'
make[2]: Leaving directory 'C:/Users/Timoha/MPLABXProjects/test.X'
nbproject/Makefile-default.mk:90: recipe for target '.build-conf' failed
make[1]: Leaving directory 'C:/Users/Timoha/MPLABXProjects/test.X'
nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
make[2]: *** No rule to make target 'build/default/production/main.o', needed by 'dist/default/production/test.X.production.hex'. Stop.
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2

BUILD FAILED (exit value 2, total time: 211ms)


Что делать?

Re: Не возможно скомпилировать код на c++ в MPLAB X

Ср дек 13, 2017 14:41:14

.cpp
Нет С++ компиляторов для PIC12. Просто не существует в природе.

Добавлено after 57 seconds:
Lublu_megy писал(а):Что делать?
Учиться, учиться и ещё раз - учиться !

Re: Не возможно скомпилировать код на c++ в MPLAB X

Ср дек 13, 2017 16:42:56

.cpp
Нет С++ компиляторов для PIC12. Просто не существует в природе.
Как?! На ассемблере мучиться? Уххх... Уже боюсь :shock:

Добавлено after 57 seconds:
Lublu_megy писал(а):Что делать?
Учиться, учиться и ещё раз - учиться !

Само собой.

Re: Не возможно скомпилировать код на c++ в MPLAB X

Ср дек 13, 2017 17:48:39

Вы бы сказали, что хотите получить.
Проект создали или посто файл втюхнули и захотели чтобы вам вс сделали?

Дык, как сделать? у pic12f629 нету ни порта А, ни порта Б? Там есть один порт, но он зовётся иначе.

У меня всё получилось:
Спойлер
Код:
make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory 'C:/Users/MPLABXProjects/test629.X'
make  -f nbproject/Makefile-default.mk dist/default/production/test629.X.production.hex
make[2]: Entering directory 'C:/Users/MPLABXProjects/test629.X'
"C:\Program Files (x86)\Microchip\xc8\v1.44\bin\xc8.exe" --pass1  --chip=12F629 -Q -G  --double=24 --float=24 --opt=+asm,+asmfile,-speed,+space,-debug,-local --addrqual=ignore --mode=free -P -N255 --warn=-3 --asmlist -DXPRJ_default=default  --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-osccal,-resetbits,-download,-stackcall,+clib   --output=-mcof,+elf:multilocs --stack=compiled:auto:auto "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -obuild/default/production/main1.p1  main1.c
"C:\Program Files (x86)\Microchip\xc8\v1.44\bin\xc8.exe"  --chip=12F629 -G -mdist/default/production/test629.X.production.map  --double=24 --float=24 --opt=+asm,+asmfile,-speed,+space,-debug,-local --addrqual=ignore --mode=free -P -N255 --warn=-3 --asmlist -DXPRJ_default=default  --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-osccal,-resetbits,-download,-stackcall,+clib --output=-mcof,+elf:multilocs --stack=compiled:auto:auto "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"      --memorysummary dist/default/production/memoryfile.xml -odist/default/production/test629.X.production.elf  build/default/production/main1.p1     
Microchip MPLAB XC8 C Compiler (Free Mode) V1.44
Build date: Sep 13 2017
Part Support Version: 1.44
Copyright (C) 2017 Microchip Technology Inc.
License type: Node Configuration

:: warning: (1273) Omniscient Code Generation not available in Free mode

Memory Summary:
    Program space        used     9h (     9) of   3FFh words   (  0.9%)
    Data space           used     2h (     2) of    3Eh bytes   (  3.2%)
    EEPROM space         used     0h (     0) of    80h bytes   (  0.0%)
    Data stack space     used     0h (     0) of    3Eh bytes   (  0.0%)
    Configuration bits   used     1h (     1) of     1h word    (100.0%)
    ID Location space    used     0h (     0) of     4h bytes   (  0.0%)


You have compiled in FREE mode.
Using Omniscient Code Generation that is available in PRO mode,
you could have produced up to 60% smaller and 400% faster code.
See http://www.microchip.com/MPLABXCcompilers for more information.

make[2]: Leaving directory 'C:/Users/MPLABXProjects/test629.X'
make[1]: Leaving directory 'C:/Users/MPLABXProjects/test629.X'

BUILD SUCCESSFUL (total time: 8s)
Loading code from C:/Users/MPLABXProjects/test629.X/dist/default/production/test629.X.production.hex...
Loading completed

Re: Не возможно скомпилировать код на c++ в MPLAB X

Ср дек 13, 2017 20:00:32

Вы бы сказали, что хотите получить.
Проект создали или посто файл втюхнули и захотели чтобы вам вс сделали?

Дык, как сделать? у pic12f629 нету ни порта А, ни порта Б? Там есть один порт, но он зовётся иначе.

У меня всё получилось:
Спойлер
Код:
make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory 'C:/Users/MPLABXProjects/test629.X'
make  -f nbproject/Makefile-default.mk dist/default/production/test629.X.production.hex
make[2]: Entering directory 'C:/Users/MPLABXProjects/test629.X'
"C:\Program Files (x86)\Microchip\xc8\v1.44\bin\xc8.exe" --pass1  --chip=12F629 -Q -G  --double=24 --float=24 --opt=+asm,+asmfile,-speed,+space,-debug,-local --addrqual=ignore --mode=free -P -N255 --warn=-3 --asmlist -DXPRJ_default=default  --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-osccal,-resetbits,-download,-stackcall,+clib   --output=-mcof,+elf:multilocs --stack=compiled:auto:auto "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -obuild/default/production/main1.p1  main1.c
"C:\Program Files (x86)\Microchip\xc8\v1.44\bin\xc8.exe"  --chip=12F629 -G -mdist/default/production/test629.X.production.map  --double=24 --float=24 --opt=+asm,+asmfile,-speed,+space,-debug,-local --addrqual=ignore --mode=free -P -N255 --warn=-3 --asmlist -DXPRJ_default=default  --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-osccal,-resetbits,-download,-stackcall,+clib --output=-mcof,+elf:multilocs --stack=compiled:auto:auto "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"      --memorysummary dist/default/production/memoryfile.xml -odist/default/production/test629.X.production.elf  build/default/production/main1.p1     
Microchip MPLAB XC8 C Compiler (Free Mode) V1.44
Build date: Sep 13 2017
Part Support Version: 1.44
Copyright (C) 2017 Microchip Technology Inc.
License type: Node Configuration

:: warning: (1273) Omniscient Code Generation not available in Free mode

Memory Summary:
    Program space        used     9h (     9) of   3FFh words   (  0.9%)
    Data space           used     2h (     2) of    3Eh bytes   (  3.2%)
    EEPROM space         used     0h (     0) of    80h bytes   (  0.0%)
    Data stack space     used     0h (     0) of    3Eh bytes   (  0.0%)
    Configuration bits   used     1h (     1) of     1h word    (100.0%)
    ID Location space    used     0h (     0) of     4h bytes   (  0.0%)


You have compiled in FREE mode.
Using Omniscient Code Generation that is available in PRO mode,
you could have produced up to 60% smaller and 400% faster code.
See http://www.microchip.com/MPLABXCcompilers for more information.

make[2]: Leaving directory 'C:/Users/MPLABXProjects/test629.X'
make[1]: Leaving directory 'C:/Users/MPLABXProjects/test629.X'

BUILD SUCCESSFUL (total time: 8s)
Loading code from C:/Users/MPLABXProjects/test629.X/dist/default/production/test629.X.production.hex...
Loading completed

Хочу просто попробовать освоить pic. Я ардуину излабызал, с стм у меня пока не очень, но буду ещё пробовать. Осталось попробовать самых нежных и маленьких - pic.
Скиньте пожалуйста код блинка для pic12f629 вот cюда. :) :wink:

Re: Не возможно скомпилировать код на c++ в MPLAB X

Ср дек 13, 2017 20:22:55

Расслабтесь. Он работать всё равно не будет. конфигурации TRIS еще недостаточно, чтобы вывод работал как цифровой. Там есть еще один регистр, который зовётся CMCON - его тоже следует проинициализировать. Поэтому, лучше скачайте даташит на кристалл и почитайте для начала про микроконтроллер, который вы собираетесь программировать. Ну я обычно так делаю...

https://hastebin.com/isadeditoh.cpp
Последний раз редактировалось uldemir Ср дек 13, 2017 22:12:16, всего редактировалось 1 раз.

Re: Не возможно скомпилировать код на c++ в MPLAB X

Ср дек 13, 2017 21:22:39

Мега-фил, а разве уроков с оф.сайта и тех же уроков с мануала на мЫпЫлаб и XC8 недостаточно?
Да и были ли читаны сии мануалы?

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 01:06:45

Пытался, но пишут всё на ассемблере. Прошу написать моргалку светодиодом для pic12f629 на c++.
Оплата: признательное МЯУ! :)

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 14:07:48

для pic12f629 на c++.

А у Вас есть компилятор на "плюсах" для младших ПИКов? :))) :))) :)))

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 15:23:51

А у Вас есть компилятор на "плюсах" для младших ПИКов?

КРАМ, ну я не знаю для младших он или нет. Вот название: XC8.

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 15:48:17

ХС8 - это Си, а не Си++.

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 16:46:00

КРАМ, поменять cpp на c не составит проблемы.
И правда. Скомпилировался пустой код)))0 :))

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 17:25:43

Пытался, но пишут всё на ассемблере. Прошу написать моргалку светодиодом для pic12f629 на c++.
Оплата: признательное МЯУ! :)


Завтра скину то что есть , но на английском.
Изучайте . Денег не надо , у вас и так тупиковый путь в никуда.
Бесполезная трата времени,сил, средств...

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 19:36:59

... у вас и так тупиковый путь в никуда.
Бесполезная трата времени,сил, средств...

Почему?? :cry: Что плохого в пробовании программирования PIC?

Re: Не возможно скомпилировать код на c++ в MPLAB X

Вс дек 17, 2017 21:00:01

Старые base_line и mid_range нужны только в качестве экспонатов музея.Квик старт весьма дорог , периферия недоделанный высер. На их фоне даже китайский новодел на 51ых выглядит намного вкуснее.
Хотя в впрочем как и весь пЫк'вский набор , исключая новые камни с арм ядром.

Re: Не возможно скомпилировать код на c++ в MPLAB X

Пн дек 18, 2017 11:31:19

Старые base_line и mid_range нужны только в качестве экспонатов музея.

Парадокс состоит в том, что свободное владение АРМами обнаруживают лишь те, кто прошел школу примитивных архитектур. Те же, кто последовал советам сразу работать с АРМами, в подавляющем своем большинстве стали "ардуинщиками". Патамушта невозможно прыгнуть в матанализ, минуя арифметику начальных классов.
:tea:

Re: Не возможно скомпилировать код на c++ в MPLAB X

Пн дек 25, 2017 07:16:11

Завтра скину то что есть , но на английском.


Извиняюсь, задержка не по моей вине...

Здесь уроки - http://rgho.st/7bzwnnHWF
Ответить