Почему один из двух файлов Visual Studio # не найден? - PullRequest
1 голос
/ 11 февраля 2020

Использование Visual Studio 2017 с плагином VMicro для Arduino. Попытка включить постоянный блок данных в скомпилированный код. Включить как Audio.h работает, Audio.csv выдает ошибку:

TestInclude.ino: 9:21: fatal error: Audio.csv: No such file or directory

Оба включаемых файла находятся в папке проекта, добавлены в решение и доступны для чтения редактору Visual Studio. Я хотел бы использовать метод .csv, в моем реальном коде будет несколько и больше аудиоклипов. Что я делаю не так?

Минимальный пример TestInclude.ino

#include "Audio.h"
const float Beep[] =
{
#include "Audio.csv"
};
void setup(){}
void loop(){}

Файл Audio.h

const float aaa[] =
{
0.00000,
0.05012,
0.10004,
0.14957,
0.19851,
0.24667,
0.29386,
0.33990,
0.38460,
0.42779,
0.46930,
0.50897,
0.54663
};

Файл Audio.csv

0.00000,
0.05012,
0.10004,
0.14957,
0.19851,
0.24667,
0.29386,
0.33990,
0.38460,
0.42779,
0.46930,
0.50897,
0.54663

Solution explorer

Ответы [ 3 ]

2 голосов
/ 11 февраля 2020

Файлы INO не компилируются напрямую. Процесс Arduino Build описывает, что файл CPP создается во временном каталоге. Заголовочные файлы копируются в этот каталог. Но CSV не определяется как файл проекта.

Чтобы обойти это, вы можете добавить абсолютный путь к файлу CSV в файле INO.

Нет необходимости иметь список CSV в файл с расширением ".csv". Вы также можете просто добавить «.h» в конце имени файла, чтобы скопировать его во временный каталог.

1 голос
/ 11 февраля 2020

Это скорее обходной путь, если я переименую Audio.csv в Audio.csv.h, включаемый файл будет принят.

Я могу жить с этим решением.

0 голосов
/ 11 февраля 2020

Вы можете установить путь включения, щелкнув правой кнопкой мыши по проекту и go to:

Properties/VC++ Directories/General/Include Directories

Добавить каталог в Audio.csv

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...