0

我正在为一个项目创建一些类,这些类看起来很具体,以至于我不想保留在库文件夹中。它们大部分都在工作,但是,如果我想调用任何 Arduino 函数或 const,它会抛出“未在此范围内声明”的错误。

草图:

#include "MyClass.h"
void setup(){
}
void loop(){
}

我的类.h

class MyClass{
    public:
        MyClass(int inp);
        int myFun();
};

我的类.cpp

#include "MyClass.h"
#include <WProgram.h>

MyClass::MyClass(int inp){
    pinMode(13,HIGH);

}

错误:

MyClass.cpp: 'HIGH','pinMode' 未在此范围内声明。

如果我将库放在库文件夹中,它就不会发生。想知道是否有办法将 arduino 函数包含到草图文件夹库中?

4

2 回答 2

0

实际上我只是通过查看另一个库来让它工作:P 而不是

 #include <WProgram.h>

我们应该使用

#if ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#endif

我认为这对向后兼容性不利......

在草图文件夹中使用库也不是问题。但是,草图文件夹库存在一些潜在问题。

于 2013-01-19T11:26:26.220 回答
0

AFAIK 除了在 Arduino-lib 文件夹中之外,没有办法在任何地方拥有你的库。如果使用 unix,您可以将您的库放在您的草图文件夹中,并在您的 Arduino-lib 文件夹中创建指向这些库的链接 ln。然后你也应该在你的 IDE 中看到它们

于 2013-01-19T11:01:31.630 回答