关于10DOF传感板的数据读取问题
本帖最后由 seuabb 于 2012-12-20 16:05 编辑小弟买了一个模块上面有MPU6050 HMC5883L和BPM180,但是没有Arduino测试代码,这三种类型的传感器全是I2C通讯的,它们的地址需要单独设定吗?还是全用默认值,希望达人指教,让小弟少走一点弯路。
IIC地址不是设定的。IIC地址一般 这些10DOF传感器都是可选的。就是2选1,主要是根据某管脚的状态(高低)来确定地址。 也就是说数据手册上的2个地址肯定一个是可用的。
还有就是坛子里有IIC地址扫描的代码,自己搜索下,就能知道了。
这几个传感器使用都需要初始化等工作,最后才是读数据
我的10轴模块不是6050的,其他2个和你一样, 我是单独的 三轴加速度 三轴磁定向
还有,就是初始化什么的比较麻烦,建议参考精华区的帖子,希望有用
另外,纯粹测试模块可以尝试用MWC来搞,具体自己谷歌 MWC飞控 开源的。 http://www.geek-workshop.com/thread-287-1-1.html
这个是IIC扫描的代码 。 使用就是把那个10轴板子连接到IIC总线,然后把代码刷进ARDUINO 之后就会自动进行扫描 并且输出到COM口 然后其实就很好判断了 因为你这几个器件地址只能选择而不能随便定义(一般都只能是手册上2个地址的一个, 取决于某管脚的物理连接 是高还是低电平) darkorigin 发表于 2012-12-20 01:18 static/image/common/back.gif
http://www.geek-workshop.com/thread-287-1-1.html
这个是IIC扫描的代码 。 使用就是把那个10轴板子连接 ...
谢谢你的回复!我利用的是MIT的人写的那个库,很好用,在多个I2C传感器时需要设置MPU6050的主从模式和Bypass模式。我在读取时加了两句话就好了,
MPU6050 accelgyro;
accelgyro.setI2CMasterModeEnabled(0);
accelgyro.setI2CBypassEnabled(1); seuabb 发表于 2012-12-20 16:04 static/image/common/back.gif
谢谢你的回复!我利用的是MIT的人写的那个库,很好用,在多个I2C传感器时需要设置MPU6050的主从模式和Byp ...
MIT的库?发出来学习下?
页:
[1]