查看: 793|回复: 1
打印 上一主题 下一主题

电子指南针罗盘HMC5883L

[复制链接] qrcode

28

主题

33

帖子

98

积分

注册会员

Rank: 2

积分
98
楼主
跳转到指定楼层
发表于 2014-8-26 09:45 AM | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

电子指南针罗盘HMC5883L是三轴磁阻传感器,用来测量周围的磁感应强度,测量范围-8g~8g单位是高斯。提到磁感应强度最熟悉的应该是高中时学的B单位T特斯拉,其实高斯也是磁感应强度单位,只不过高斯是很小的单位,10000高斯等于1特斯拉。网上是这么定义的:一段导线,若放在磁感应强度均匀的磁场中,方向与磁感应强度方向垂直的长直导在线通有1电磁系单位(emu)的稳恒电流(等于10安培)时,在每厘米长度的导线受到电磁力为1达因,则该磁感应强度就定义为1高斯。即1T(特斯拉)=10000g(高斯)


目标:读三轴方向的磁感应强度,并通过串口显示

一、硬件介绍

电子指南针罗盘HMC5883L内嵌12-Bit ADC,测量磁感应强度范围-8g~8g单位高斯。HMC5883L模块原理图如下:



这里只用到SCL、SDA、VCC_3.3V、GND分别连接到Arduino的对应接口上。Arduino Leonardo上直接标有SDA、SCL连上即可,其它Arduino根据自己的板子连接。

二、编写测试代码

在Arduino上写代码非常简单,很多库都帮你做好了,直接调用即可,十分方便。但Arduino的版本很多,特别是Arduino-1.0以后,有些库有所改变,需要看对应版本的参考手册arduino-1.5.2-windowsarduino-1.5.2reference下面有详细说明,我也是结合网上找的程序参考这些修改。代码如下:
文件HMC5883.ino



代码下载:






这个不懂只能对着手册看了。

三、编译、测试

Arduino还是很方便操作的,选择好单板、参考,直接点上面的“对勾”就开始编译,编译没问题,点“->”箭头状的,开始上传程序,直至上传进度条完成。
接着打开Tools/Serial Monitor 显示如下:


本帖子中包含更多资源

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

x
回复

使用道具 举报

0

主题

91

帖子

6

积分

新手上路

Rank: 1

积分
6
沙发
发表于 2015-9-15 08:47 AM | 只看该作者
好详细,学习~~~
回复 支持 反对

使用道具 举报

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

本版积分规则

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