2012-07-24 57 views
2

我正在尝试使用CapSense library for Arduino。但是,我无法运行包中包含的示例,名为“CapSenseSketch”。当我尝试只是打开该文件并运行它(我都试过Arduino的1.0和1.0.1),我得到那个说“的CapSense没有指定类型”编译错误,也无法编译Arduino CapSense示例

CapSenseSketch.cpp:1:22: error: CapSense.h: No such file or directory 
CapSenseSketch:11: error: 'CapSense' does not name a type 
CapSenseSketch:12: error: 'CapSense' does not name a type 
CapSenseSketch:13: error: 'CapSense' does not name a type 
CapSenseSketch.cpp: In function 'void setup()': 
CapSenseSketch:17: error: 'cs_4_2' was not declared in this scope 
CapSenseSketch.cpp: In function 'void loop()': 
CapSenseSketch:24: error: 'cs_4_2' was not declared in this scope 
CapSenseSketch:25: error: 'cs_4_6' was not declared in this scope 
CapSenseSketch:26: error: 'cs_4_8' was not declared in this scope 

有是一种包括代码的顶部声明,

#include <CapSense.h> 

,我认为这将是一个问题,所以我改变了括号报价,仍然收到错误消息“错误汇编”和:

CapSenseSketch.cpp.o: In function `__static_initialization_and_destruction_0': 
CapSenseSketch.cpp:15: undefined reference to `CapSense::CapSense(unsigned char, unsigned char)' 
CapSenseSketch.cpp:16: undefined reference to `CapSense::CapSense(unsigned char, unsigned char)' 
CapSenseSketch.cpp:17: undefined reference to `CapSense::CapSense(unsigned char, unsigned char)' 
CapSenseSketch.cpp.o: In function `loop': 
CapSenseSketch.cpp:28: undefined reference to `CapSense::capSense(unsigned char)' 
CapSenseSketch.cpp:29: undefined reference to `CapSense::capSense(unsigned char)' 
CapSenseSketch.cpp:30: undefined reference to `CapSense::capSense(unsigned char)' 
CapSenseSketch.cpp.o: In function `setup': 
CapSenseSketch.cpp:21: undefined reference to `CapSense::set_CS_AutocaL_Millis(unsigned long)' 

任何想法?我曾在另一台电脑上使用过CapSense,并将括号改为正确的引号,但现在似乎并没有太多的工作。

+0

当您检查语法或尝试编译和上传时,是否收到错误? – 2012-07-25 03:55:09

+0

就在我按'验证'时。不过,我昨天解决了这个问题。在arduino IDE中,要使用外部脚本,必须为要使用的每个文件选择“sketch> add file”。在我的情况下,我使用.h文件和.h文件使用的.cpp文件。我只以这种方式添加了.h文件,因此arduino在.cpp文件中没有看到必要的代码,尽管它包含在.h文件中。 – user1549824 2012-07-26 13:54:36

+0

此外,对于使用CapSense004的任何人,该类型已从CapSense重命名为CapacitiveSensor。 – 2013-03-12 02:03:22

回答

3

显然,包含外部文件在arduino IDE中有点不同。仅仅在代码的顶部有一个include声明是不够的,您必须手动转到sketch>为每个要使用的外部文件添加文件。在我的情况下,我只是为了试图使用的两个文件中的一个而做到这一点。