找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3618|回复: 1
打印 上一主题 下一主题
收起左侧

MPU6050姿态解锁程序及其库函数I^2Cdev库函数,免费分享

[复制链接]
跳转到指定楼层
楼主
以下为MPU6050姿态解锁程序
为arduino板子的,运行的前提是需要将I^2Cdev库函数MPU6050库函数放置于arduino的libraries中,有些电脑在你放置于libraries后会自动被复制于我的文档中,这会在检测程序时自动告诉你某个库函数有两个地址,其中一个未运行。此时删除刚才放置于arduino的libraries的那几个库函数即可,软件会自动运行我的文档中的程序。但未报错请勿删除!!!
  1. #include "Wire.h"
  2. #include "I2Cdev.h"
  3. #include "MPU6050.h"
  4. MPU6050 accelgyro;
  5. int16_t ax, ay, az;
  6. int16_t gx, gy, gz;
  7. bool blinkState = false;
  8. void setup() {
  9.     Wire.begin();
  10.     Serial.begin(38400);
  11.     accelgyro.initialize();
  12. }

  13. void loop() {
  14.   //加速度G量程范围对应的最低有效位灵敏度,+、-2G 16384lsb;+、-4G 8192LSB;+、-8G 4096lsb;+、-16G 2048LSB.
  15.   //角速度A量程范围对应的最低有效位灵敏度,205度/S 131LSB;500度/S  65.5LSB;1000度/S 32.8LSB;2000度/S 16.4LSB.
  16.   int g=2048;
  17.   int a=131;
  18.    accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);
  19.     Serial.print("a/g:\t");
  20.     Serial.print(ax/a); Serial.print("\t");
  21.     Serial.print(ay/a); Serial.print("\t");
  22.     Serial.print(az/a); Serial.print("\t");
  23.     Serial.print(gx/g); Serial.print("\t");
  24.     Serial.print(gy/g); Serial.print("\t");
  25.     Serial.println(gz/g);
  26.     blinkState = !blinkState;
  27. }
复制代码

同时需要注意的是,每个库函数有两个文件但后缀不同,所以一共四个全部需要复制进入arduino的libraries中。

完整代码下载地址:
函数库.rar (39.41 KB, 下载次数: 9)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:243240 发表于 2017-10-26 20:26 | 只看该作者
以上举例中,使用的加速度是正负16G,测量角度250度。程序中的205是错误的抱歉
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表