在Arduino中初始化C ++库

时间:2016-04-12 17:04:44

标签: c++ constructor arduino sensor motion

我正在尝试使用this六轴互补过滤器库来解释来自LSM6DS3 motion sensor的数据。

在我的Arduino草图中调用它,我收到此错误。抱歉这个愚蠢的问题,我刚刚开始学习这个:

#include "SparkFunLSM6DS3.h" 
#include "Wire.h"
#include "SPI.h"
#include "six_axis_comp_filter.h"


LSM6DS3 myIMU; // Constructor for the motion sensor (this works)
CompSixAxis test; // this breaks

当我尝试初始化CompSixAxis类的一个实例时,它给了我这个错误:

没有匹配函数来调用'CompSixAxis :: CompSixAxis()'

1 个答案:

答案 0 :(得分:2)

CompSixAxis没有默认构造函数。这意味着你不能像

那样使用它
CompSixAxis test;

因为这需要默认构造函数。为了构造对象,您需要使用带有

形式的构造函数
CompSixAxis(float deltaTime, float tau);

所以你的更新代码看起来像

CompSixAxis test(some_value, some_other_value);