gpt4 book ai didi

c++ - Arduino:显示的自定义类不起作用;没有编译器错误

转载 作者:太空宇宙 更新时间:2023-11-04 03:14:10 24 4
gpt4 key购买 nike

我尝试制作一个类,以便更方便地使用 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);
}

编辑:

Testprogramm:Arduino IDE 的串行监视器不显示文本“Test”,所以我猜程序卡在了构造器的某个地方。

#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");
}

最佳答案

问题是类的构造函数中的delay(1000);。该变量在 setup() 之前定义,并且 delay 不能在那里执行。草图的执行在那里崩溃。

Display 类的构造函数中删除 delay

关于c++ - Arduino:显示的自定义类不起作用;没有编译器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53543999/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com