“SensorMotion.getData()”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
第37行: 第37行:
 
</pre>
 
</pre>
  
 +
*'''例子''':这里以X轴加速度输出为例<br>
 +
<pre style="color:green">
 +
#include <Sensor_Motion.h>
 +
 +
sensorMotion motion(&Serial1);
 +
 +
float accGyro[6];
 +
 +
void setup(){
 +
    Serial.begin(115200);
 +
    motion.begin();
 +
}
 +
 +
void loop(){
 +
    if(motion.get_data(RAW_6, accGyro)){
 +
        Serial.println(accGyro[0]);
 +
        delay(100);
 +
    }
 +
}
 +
 +
 +
</pre>
  
 
[[https://wiki.microduino.cn/index.php/Sensor-Motion/zh 返回Sensor_Motion语法手册]]
 
[[https://wiki.microduino.cn/index.php/Sensor-Motion/zh 返回Sensor_Motion语法手册]]

2017年7月7日 (五) 03:26的版本

sensorMotion.get_data(uint8_t _cmd, float *_array)

  • 作用:

从串口读取Sensor_Motion传感器的值,可以读取三轴姿态角,也可读取六轴原始值(三轴加速度和三轴角速度)。


  • 参数:

_cmd:读取数据的模式,MOTION_3为三轴姿态角模式,RAW_6为六轴原始值模式。
_array:3或6位数组,根据“_cmd”参数的配置,本函数会将计算好的三轴姿态角或六轴原始值存入其中。


  • 例子:这里以俯仰角输出为例
#include <Sensor_Motion.h>

sensorMotion motion(&Serial1);

float ypr[3];

void setup(){
    Serial.begin(115200);
    motion.begin();
}

void loop(){
    if(motion.get_data(MOTION_3, ypr)){
        Serial.println(ypr[1]); 
        delay(100);
    }
}


  • 例子:这里以X轴加速度输出为例
#include <Sensor_Motion.h>

sensorMotion motion(&Serial1);

float accGyro[6];

void setup(){
    Serial.begin(115200);
    motion.begin();
}

void loop(){
    if(motion.get_data(RAW_6, accGyro)){
        Serial.println(accGyro[0]); 
        delay(100);
    }
}


[返回Sensor_Motion语法手册]