在 Arduino 中初始化 C++ 库

Initialising a C++ library in Arduino

我正在尝试使用 this six axis complementary filter library to interpret data from the LSM6DS3 motion sensor

在我的 Arduino sketch 中调用它,我得到了这个错误。抱歉这个愚蠢的问题,我才刚刚开始学习这个:

#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 的一个实例时 class 它给我这个错误:

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

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

那样使用它
CompSixAxis test;

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

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

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

CompSixAxis test(some_value, some_other_value);