Я начинаю изучать / программировать Arduino, и я не понимаю, почему у меня возникают синтаксические ошибки при компиляции моей программы в Visual Studio 2017 с Visual Micro или с Arduino IDE.
Ошибка компиляции из Visual Studio 2017:
sketch\SketchIncomeEligible.ino.cpp.o:(.text.setup+0x0): undefined reference to `WiFi_Setup()'
sketch\SketchIncomeEligible.ino.cpp.o: In function `setup':
C:\Users\C113850\source\repos\Income_Eligible_Price_Display\src\SketchIncomeEligible\SketchIncomeEligible/SketchIncomeEligible.ino:6: undefined reference to `WiFi_Setup()'
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board Adafruit Feather HUZZAH ESP8266.
Ошибка компиляции из Arduino IDE:
Arduino: 1.8.9 (Windows 10), Board: "Adafruit Feather HUZZAH ESP8266, 80 MHz, Flash, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
sketch\SketchIncomeEligible.ino.cpp.o:(.text.setup+0x0): undefined reference to `WiFi_Setup()'
sketch\SketchIncomeEligible.ino.cpp.o: In function `setup':
C:\Users\C113850\source\repos\Income_Eligible_Price_Display\src\SketchIncomeEligible\SketchIncomeEligible/SketchIncomeEligible.ino:6: undefined reference to `WiFi_Setup()'
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board Adafruit Feather HUZZAH ESP8266.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
Вот мой код:
Файл SketchWiFi.h:
#ifndef _SKETCHWIFI_h
#define _SKETCHWIFI_h
int WiFi_Setup();
#endif
Файл SketchWiFi.c:
#include "SketchWiFi.h"
int WiFi_Setup()
{
// put your setup code here, to run once:
return 1; // Successful
}
Файл Sketch.ino:
#include "SketchWiFi.h"
void setup() {
Serial.begin(115200);
Serial.println("Begin setup");
WiFi_Setup();
Serial.println("End setup");
}
void loop() {
// put your main code here, to run repeatedly:
}
Структура каталогов:
Структура проекта в Visual Studio 2017
Структура проекта в Arduino IDE