电子指南针罗盘HMC5883L是三轴磁阻传感器,用来测量周围的磁感应强度,测量范围-8g~8g单位是高斯。提到磁感应强度最熟悉的应该是高中时学的B单位T特斯拉,其实高斯也是磁感应强度单位,只不过高斯是很小的单位,10000高斯等于1特斯拉。网上是这么定义的:一段导线,若放在磁感应强度均匀的磁场中,方向与磁感应强度方向垂直的长直导在线通有1电磁系单位(emu)的稳恒电流(等于10安培)时,在每厘米长度的导线受到电磁力为1达因,则该磁感应强度就定义为1高斯。即1T(特斯拉)=10000g(高斯)
开发环境:
系统:XP
单板:Arduino Leonardo
平台:Arduino
目标:读三轴方向的磁感应强度,并通过串口显示
一、硬件介绍
电子指南针罗盘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-windows\arduino-1.5.2\reference下面有详细说明,