Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Один общий файл для всех проектов одного WorkSpace
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > IAR
Д_М
Здравствуйте!
У меня задача реализуется при помощи трёх микроконтроллеров. Соответственно, три проекта, объединённые в одно рабочее пространство. Я давно настроечные параметры проекта, например, скорость передатчика, выношу в отдельный файл. Пока приходится изменения делать сразу в трёх файлах. Есть риск, что в одном файле изменения внёс, в другом забыл. Вот и получается, что один прибор работает на одной скорости, а второй на другой. Как в проект вложить файл, директивой #include, указав, что он находится в папке на уровень выше, чем папка проекта?
Спасибо!
Kabdim
А #include "../file.h" не работает?
Д_М
Цитата(Kabdim @ Oct 13 2015, 18:30) *
А #include "../file.h" не работает?


Если буквально, то не работает. Конечно же, можно прописать весь путь, но тогда возникают проблемы с переносом программы. На другом компьютере рабочее пространство может располагаться совсем в другом месте.
megajohn
Цитата(Д_М @ Oct 13 2015, 18:42) *
Если буквально, то не работает.


работает-работает

Цитата(Д_М @ Oct 13 2015, 18:42) *
Конечно же, можно прописать весь путь, но тогда возникают проблемы с переносом программы. На другом компьютере рабочее пространство может располагаться совсем в другом месте.


если писать как выше, плюс в свойствах поекта применять только относительный путь от рабочей директории
$PROJ_DIR$\..\..\_lib\
то проблем никогда не возникнет
Д_М
Относительный путь проекта может быть только глубже, относительно папки проекта. А мне надо на уровень выше, чем папка проекта.

Цитата(megajohn @ Oct 13 2015, 19:15) *
работает-работает



если писать как выше, плюс в свойствах поекта применять только относительный путь от рабочей директории
$PROJ_DIR$\..\..\_lib\
то проблем никогда не возникнет

megajohn
Цитата(Д_М @ Oct 13 2015, 20:02) *
Относительный путь проекта может быть только глубже, относительно папки проекта. А мне надо на уровень выше, чем папка проекта.


епрст
.. это и есть подняться на уровень выше
Д_М
Цитата(megajohn @ Oct 13 2015, 20:05) *
епрст
.. это и есть подняться на уровень выше



Вот такое не принимает:
#include "$PROJ_DIR$\CraneDuo.def"

Файл CraneDuo.def находится папкой выше, чем папка с проектом.
digital
Цитата(Д_М @ Oct 13 2015, 20:38) *
Вот такое не принимает:
#include "$PROJ_DIR$\CraneDuo.def"

Файл CraneDuo.def находится папкой выше, чем папка с проектом.



#include "$PROJ_DIR$\..\CraneDuo.def"




только пути лучше не в Include прописывать в настройках компилятора project-options-c/c++ compiler/Preprocessor

типичные настройки в примерах для ST, библиотеки одни для сотни примеров

$PROJ_DIR$\
$PROJ_DIR$\..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Include
$PROJ_DIR$\..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\inc
$PROJ_DIR$\..\..\..\..\Utilities\STM32_EVAL
$PROJ_DIR$\..\..\..\..\Utilities\STM32_EVAL\Common
$PROJ_DIR$\..\..\..\..\Utilities\STM32_EVAL\STM32L152_EVAL
drozel
А есть вообще такая фича у препроцессоров- искать в всех вложенных папках, или это бредовая идея?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.