arduino链接GY-521(MPU6050)模块

本例使用 `lilypad` 链接MPU6050模块, `arduino uno`作为usb下载器,具体连接方法请移步: http://www.cnblogs.com/hangxin1940/archive/2013/04/06/3002709.html ## lilypad 与 MPU6050的连接方法 ![lilypad](http://images.cnblogs.com/cnblogs_com/hangxin1940/467679/o_700px-6_dof_mpu6050.png "lilypad") lilypad与mpu6050相对应的引脚: *+* -> *VCC* *-* -> *GND* *a4* -> *SDA* *a5* -> *SCL* ## 下载i2cdev库 https://github.com/jrowberg/i2cdevlib/archive/master.zip 解压缩之后,将arduino文件夹下的代码添加至arduino ide的类库路径 以ubuntu为例: cp -rf * /usr/share/arduino/libraries ## 测试程序 #include "Wire.h" #include "I2Cdev.h" #include "MPU6050.h" MPU6050 accelgyro; int16_t ax, ay, az; int16_t gx, gy, gz; //板载led引脚默认为13 int LED_PIN = 13; //led状态信息 bool blinkState = false; void setup() { //接入i2c总线 Wire.begin(); Serial.begin(38400); //初始化设备 Serial.println("Initializing I2C devices..."); accelgyro.initialize(); //链接设备 Serial.println("Testing device connections..."); Serial.println(accelgyro.testConnection() ? "MPU6050 connection successful" : "MPU6050 connection failed"); //配置板载led引脚 pinMode(LED_PIN, OUTPUT); } //将原始值修正 void fix() { ax /= 16384; ay /= 16384; az /= 16384; gx /= 131; gy /= 131; gz /= 131; } //干干其他事 void process() { } void loop() { accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz); //对原始价值做处理 fix(); //干干其他事 process(); Serial.print("a/g:\t"); //x,y,z轴加速度 Serial.print(ax); Serial.print("\t"); Serial.print(ay); Serial.print("\t"); Serial.print(az); Serial.print("\t"); //x,y,z轴角速度 Serial.print(gx); Serial.print("\t"); Serial.print(gy); Serial.print("\t"); Serial.println(gz); //控制板载led状态 blinkState = !blinkState; digitalWrite(LED_PIN, blinkState); } 烧写进lilypad后,可以看到led几乎是长亮 ubuntu下查看串口信息 sudo ttylog -d /dev/ttyACM0 -b 38400 输出: ![mpu6050](http://images.cnblogs.com/cnblogs_com/hangxin1940/467679/o_arduino_mpu6050.png "mpu6050")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值