我目前正在使用 Arduino IDE 为我的 Teensy 编写一个库应用程序,到目前为止,它已经足够直截了当。然而,我遇到了一些奇怪的编译错误,我似乎无法理解。我的库包括众所周知的 IRRemote 库,以便我创建几乎是一个包装库的内容,以便更具体地了解我需要与 IR Remote 库交互的方式。我遇到的问题是 IR Remote 库函数之一:
void sendRaw(const unsigned int buf[],unsigned int len, unsigned int);
尽管这看起来像是一个直接使用的函数,但我遇到的问题是函数的第一个参数。我已经尝试了各种方法来将一些东西传递给这个函数参数,但无论我做什么,它都不会编译。目前我已经设置了一个变量
unsigned int bufferToSend[5] = {1,2,3,4,5}; // data is just for example purposes
当我尝试打电话时
sendRaw(bufferToSend, 5, 38); // Values are just for example purposes
我得到一个编译器错误
undefined reference to `IRsend::sendRaw(unsigned int const*, unsigned int, unsigned int)'
有趣的是,如果我直接从 Arduino .ino 文件中调用相同的函数,而不是通过我的库调用,代码编译并运行得非常好。我错过了一些明显的东西吗?