Привет и счастливого Рождества,
Я хочу включить файл заголовка, который я создал в свой основной код Arduino. К сожалению, при компиляции я получаю сообщение об ошибке, что заголовочный файл не найден.
Я использую Arduino IDE 2.0.3 в Windows 10 без особых проблем.
Вот что я сделал до сих пор, насколько мне известно, и различные веб-сайты, которые я использовал в качестве руководства, сделали шаги с 1 по 3, по-видимому, работающими (т. Е. Компиляция | это моя первая попытка использовать мой собственный заголовочный файл между прочим):
#include <file.h>
и #include "file.h"
оба выдают ошибку "файл не найден"Итак, это мой урезанный код, выдающий ошибку и сообщение об ошибке:
настройка файла:
../project1/project/
project.ino classfile.h
проект.ино:
#include <classfile.h>
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println("hello world!");
delay(1000);
}
classfile.h:
#ifndef MY_CLASS_H
#define MY_CLASS_H
#include <Arduino.h>
//usefull class
#endif
Используя Arduino IDE 2.0.3: Ошибка копирования:
Using board 'nano' from platform in folder: C:\Users\x\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6
Using core 'arduino' from platform in folder: C:\Users\x\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6
Detecting libraries used...
"C:\\Users\\x\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\x\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\cores\\arduino" "-IC:\\Users\\x\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\variants\\eightanaloginputs" "C:\\Users\\x\\AppData\\Local\\Temp\\arduino-sketch-24B7CD866BBD71D5C48AF128C6D936B9\\sketch\\project.ino.cpp" -o nul
Alternatives for classfile.h: []
ResolveLibrary(classfile.h)
-> candidates: []
C:\Users\x\Desktop\project\project.ino:1:10: fatal error: classfile.h: No such file or directory
#include <classfile.h>
^~~~~~~~~~~~~
compilation terminated.
exit status 1
Compilation error: classfile.h: No such file or directory
так что, пожалуйста, скажи мне! Что мне нужно сделать, чтобы решить мою проблему? Спасибо за вашу помощь и время!
Эй,
Я обнаружил, что файл должен заканчиваться на .hpp (общий заголовочный файл С++, заканчивающийся тем, что конвекция была реализована довольно сложно в arduino ide), также включение должно использовать «» вместо <>, поэтому:
classfile.hpp можно включить с помощью #include "classfile.hpp" для успешной проверки и компиляции моего кода.
Надеюсь, это поможет и другим. Если случайно вы знаете, можно ли это где-то изменить в ide, пожалуйста, дайте мне знать.