Я попытался создать класс, чтобы сделать использование дисплеев с библиотекой ucg более удобным.Я думаю, что основная проблема заключается в том, что я использую экземпляр класса ucg в качестве члена моего собственного класса.Но код кажется правильным, и я не получаю никаких ошибок компилятора.Тем не менее мой дисплей ничего не делает.
Примечание: контакты правильные
Заголовочный файл:
#ifndef Display_h
#define Display_h
#include "Arduino.h"
#include <SPI.h>
#include "Ucglib.h"
class Display
{
public:
Display(int sck, int mosi, int ds_rs, int cs, int reset);
private:
Ucglib_ILI9341_18x240x320_SWSPI _display;
};
#endif
Файл Cpp:
#include "Display.h"
Display::Display(int sck, int mosi, int ds_rs, int cs, int reset) : _display (sck, mosi, ds_rs, cs, reset)
// Constructor for the display class
{
delay(1000);
}
Редактировать:
Тестовая программа. На мониторе Seriell в Arduino IDE не отображается текст «Тест», поэтому я предполагаю, что программа застревает где-то в конструкторе.
#include "Display.h"
const int sck = 7;
const int mosi = 6;
const int ds_rs = 5;
const int cs = 3;
const int reset = 4;
Display lcd = Display(sck, mosi, ds_rs, cs, reset);
void setup()
{
Serial.begin(115200);
Serial.println("Test");
}