Я делаю собственную библиотеку arduino для моей "игровой консоли". В любом случае, когда я использую библиотеку в своем основном файле, она выдает мне эту ошибку:
Недопустимая библиотека, найденная в / Users / nikos / Documents / Arduino / library / LEDConsole: файлы заголовков (.h) не найдены в/ Users / nikos / Documents / Arduino / library / LEDConsole
Чтобы создать эту библиотеку, я следовал официальному руководству по созданию библиотеки (https://www.arduino.cc/en/Hacking/libraryTutorial),, но оно не говорит мне ничего, что могло бы мне помочь. Iискал, но я не смог найти ничего, что помогло бы.
Вот код:
Основной файл:
#include <LEDConsole.h>
LEDConsole console();
void setup() {
}
void loop() {
console.display();
}
Заголовок (LEDConsole.h):
#ifndef KEYPAD_H
#define KEYPAD_H
class LEDConsole
{
public:
LEDConsole();
void setPixel(byte x, byte y, byte v);
void display();
private:
byte img[];
};
#endif
LEDConsole.cpp:
#include "Arduino.h"
#include "LEDConsole.h"
LEDConsole::LEDConsole() {
for(int i = 39; i < 54; i += 2) {
pinMode(i, OUTPUT);
}
for(int i = 2; i < 10; i ++) {
pinMode(i, OUTPUT);
}
img[8] = {0, 0, 0, 0, 0, 0, 0, 0};
}
void LEDConsole::setPixel(byte x, byte y, byte v) {
bitWrite(img[y], 7 - x, v);
}
void LEDConsole::display() {
for(int y = 0; y < 8; y ++) {
int yPin = 53 - y * 2;
digitalWrite(yPin, HIGH);
for(int x = 0; x < 8; x ++) {
int xPin = 2 + x;
bool show = bitRead(img[y], 7 -x);
if(show) digitalWrite(xPin, 128);
else digitalWrite(xPin, 0);
}
for(int i = 2; i < 10; i ++) {
digitalWrite(i, 0);
}
digitalWrite(yPin, LOW);
}
}