极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 38096|回复: 25

关于mup模块实验问题!

[复制链接]
发表于 2014-11-7 14:40:31 | 显示全部楼层 |阅读模式
最近实验mpu模块时遇到问题,使用mpu的范例代码,查看监视器,居然是一连串的乱码!!
不知道是什么问题?
因照片不知怎么上传,也没有上传!
希望前辈们知道知道!
回复

使用道具 举报

 楼主| 发表于 2014-11-7 14:42:08 | 显示全部楼层
试试能不能上传照片!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2014-11-7 15:21:44 | 显示全部楼层
代码呢? 看一下波特率
这样看不粗问题的!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-8 08:42:43 | 显示全部楼层
天下无双 发表于 2014-11-7 15:21
代码呢? 看一下波特率
这样看不粗问题的!

// I2C device class (I2Cdev) demonstration Arduino sketch for MPU6050 class
// 10/7/2011 by Jeff Rowberg <[email protected]>
// Updates should (hopefully) always be available at https://github.com/jrowberg/i2cdevlib
//
// Changelog:
//     2011-10-07 - initial release

/* ============================================
I2Cdev device library code is placed under the MIT license
Copyright (c) 2011 Jeff Rowberg

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
===============================================
*/

// Arduino Wire library is required if I2Cdev I2CDEV_ARDUINO_WIRE implementation
// is used in I2Cdev.h
#include "Wire.h"

// I2Cdev and MPU6050 must be installed as libraries, or else the .cpp/.h files
// for both classes must be in the include path of your project
#include "I2Cdev.h"
#include "MPU6050.h"

// class default I2C address is 0x68
// specific I2C addresses may be passed as a parameter here
// AD0 low = 0x68 (default for InvenSense evaluation board)
// AD0 high = 0x69
MPU6050 accelgyro;

int16_t ax, ay, az;
int16_t gx, gy, gz;

#define LED_PIN 13
bool blinkState = false;

void setup() {
    // join I2C bus (I2Cdev library doesn't do this automatically)
    Wire.begin();

    // initialize serial communication
    // (38400 chosen because it works as well at 8MHz as it does at 16MHz, but
    // it's really up to you depending on your project)
    Serial.begin(38400);

    // initialize device
    Serial.println("Initializing I2C devices...");
    accelgyro.initialize();

    // verify connection
    Serial.println("Testing device connections...");
    Serial.println(accelgyro.testConnection() ? "MPU6050 connection successful" : "MPU6050 connection failed");

    // configure Arduino LED for
    pinMode(LED_PIN, OUTPUT);
}

void loop() {
    // read raw accel/gyro measurements from device
    accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);

    // these methods (and a few others) are also available
    //accelgyro.getAcceleration(&ax, &ay, &az);
    //accelgyro.getRotation(&gx, &gy, &gz);

    // display tab-separated accel/gyro x/y/z values
    Serial.print("a/g:\t");
    Serial.print(ax); Serial.print("\t");
    Serial.print(ay); Serial.print("\t");
    Serial.print(az); Serial.print("\t");
    Serial.print(gx); Serial.print("\t");
    Serial.print(gy); Serial.print("\t");
    Serial.println(gz);

    // blink LED to indicate activity
    blinkState = !blinkState;
    digitalWrite(LED_PIN, blinkState);
}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-8 08:44:09 | 显示全部楼层
是库里边的一个范例!
只是比较多,请耐心看看!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-8 09:33:17 | 显示全部楼层
天下无双 发表于 2014-11-7 15:21
代码呢? 看一下波特率
这样看不粗问题的!

好像就是波特率的问题!!
我又分别试了4800,9600,19200,
只有9600正常出现数字,其他都乱码,且乱的不一样!!!
疑惑中!!!
回复 支持 反对

使用道具 举报

发表于 2014-11-8 10:17:37 | 显示全部楼层
Serial.begin(38400);  这句话就是把波特率设置成了38400 你在串口接收 那里也要给成38400
回复 支持 反对

使用道具 举报

发表于 2014-11-8 18:20:40 | 显示全部楼层
无名小子 发表于 2014-11-8 09:33
好像就是波特率的问题!!
我又分别试了4800,9600,19200,
只有9600正常出现数字,其他都乱码,且乱的 ...

。。。程序中的波特率要与串口监视器中的波特率一致

回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-8 18:47:50 | 显示全部楼层
天下无双 发表于 2014-11-8 10:17
Serial.begin(38400);  这句话就是把波特率设置成了38400 你在串口接收 那里也要给成38400

对对对!!我以前没注意过,一直用的是9600!谢谢!
顺便问问:比特率越高,传输频率是不是也越高?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-8 18:48:12 | 显示全部楼层
Albert,_Einste 发表于 2014-11-8 18:20
。。。程序中的波特率要与串口监视器中的波特率一致

对对对!!我以前没注意过,一直用的是9600!谢谢!
顺便问问:比特率越高,传输频率是不是也越高?
回复 支持 反对

使用道具 举报

发表于 2014-11-8 18:51:04 | 显示全部楼层
无名小子 发表于 2014-11-8 18:48
对对对!!我以前没注意过,一直用的是9600!谢谢!
顺便问问:比特率越高,传输频率是不是也越高?

应该是,我也就是会用
回复 支持 反对

使用道具 举报

发表于 2014-11-8 18:52:03 | 显示全部楼层
无名小子 发表于 2014-11-8 18:48
对对对!!我以前没注意过,一直用的是9600!谢谢!
顺便问问:比特率越高,传输频率是不是也越高?

应该是,我也就是会用
回复 支持 反对

使用道具 举报

发表于 2014-11-8 18:52:20 | 显示全部楼层
无名小子 发表于 2014-11-8 18:48
对对对!!我以前没注意过,一直用的是9600!谢谢!
顺便问问:比特率越高,传输频率是不是也越高?

应该是,我也就是会用
回复 支持 反对

使用道具 举报

发表于 2014-11-8 18:52:36 | 显示全部楼层
无名小子 发表于 2014-11-8 18:48
对对对!!我以前没注意过,一直用的是9600!谢谢!
顺便问问:比特率越高,传输频率是不是也越高?

应该是,我也就是会用
回复 支持 反对

使用道具 举报

发表于 2014-11-8 18:52:52 | 显示全部楼层
无名小子 发表于 2014-11-8 18:48
对对对!!我以前没注意过,一直用的是9600!谢谢!
顺便问问:比特率越高,传输频率是不是也越高?

应该是,我也就是会用
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-8 14:31 , Processed in 0.110086 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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