将Radiohead库添加到Arduino草图中



我正在研究一个项目,以无线使用Arduino心率脉冲。我的问题是,当我将Radiohead库添加到现有的通用心脏脉冲代码中时;这是矛盾的。

确切地说,它仅与中断部分相抵触。我在互联网上阅读了一些,我想我有图书馆冲突...但是没有其他图书馆。

当我仅在添加Radiohead之后尝试上传草图时:

#include <RH_ASK.h>

我收到以下消息:

C:UsersnameeAppDataLocalTempcc9lzNai.ltrans2.ltrans.o: In function `main':
C:Program Files (x86)Arduinohardwarearduinoavrcoresarduino/main.cpp:43: undefined reference to `setup'
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board Arduino Leonardo.

错误的原因,正如您在此问题的交叉帖子中向您解释的那样,

您根本没有在草图中编写setup()函数;与图书馆冲突无关。

Arduino的约定是每个草图都应具有setup()loop()功能,即使它们是空的。在Arduino Core库中,有一个main()定义称为这些功能,因此当您在草图中未定义setup()时遇到的错误。我发现这是使编程尽可能友好的合理方法,对于我完成的每个项目都很有用。如果由于某种原因您错过了C 的标准main(),则可以在草图中定义自己的main(),它将在Main.cpp中覆盖定义。但是,除非您有充分的理由,否则我建议不要这样做。

相关内容

  • 没有找到相关文章

最新更新