亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

您現在的位置是:蟲蟲下載站 > 資源下載 > 開發工具 > Arduino學習筆記3_連接HMC5883L三軸電子羅盤傳感器

Arduino學習筆記3_連接HMC5883L三軸電子羅盤傳感器

  • 資源大小:6 K
  • 上傳時間: 2013-12-16
  • 上傳用戶:laosoler
  • 資源積分:2 下載積分
  • 標      簽: Arduino 5883L 5883 HMC

資 源 簡 介

用途:測量地磁方向,測量物體靜止時候的方向,測量傳感器周圍磁力線的方向。注意,測量地磁時候容易受到周圍磁場影響,主芯片HMC5883 三軸磁阻傳感器特點(抄自網上):
1,數字量輸出:I2C 數字量輸出接口,設計使用非常方便。
2,尺寸小: 3x3x0.9mm LCC 封裝,適合大規模量產使用。
3,精度高:1-2 度,內置12 位A/D,OFFSET, SET/RESET 電路,不會出現磁飽和現象,不會有累加誤差。
4,支持自動校準程序,簡化使用步驟,終端產品使用非常方便。
5,內置自測試電路,方便量產測試,無需增加額外昂貴的測試設備。
6,功耗低:供電電壓1.8V, 功耗睡眠模式-2.5uA 測量模式-0.6mA


 

連接方法:
只要連接VCC,GND,SDA,SDL 四條線。

Arduino GND -> HMC5883L GND
Arduino 3.3V -> HMC5883L VCC
Arduino A4 (SDA) -> HMC5883L SDA
Arduino A5 (SCL) -> HMC5883L SCL

(注意,接線是A4,A5,不是D4,D5)


源程序:

#include <Wire.h>
#include <HMC5883L.h>
HMC5883Lcompass;
voidsetup()
{
Serial.begin(9600);
Wire.begin();
compass = HMC5883L();
compass.SetScale(1.3);
compass.SetMeasurementMode(Measurement_Continuous);
}
voidloop()
{
MagnetometerRaw raw = compass.ReadRawAxis();
MagnetometerScaled scaled = compass.ReadScaledAxis();
float xHeading = atan2(scaled.YAxis, scaled.XAxis);
float yHeading = atan2(scaled.ZAxis, scaled.XAxis);
float zHeading = atan2(scaled.ZAxis, scaled.YAxis);
if(xHeading < 0) xHeading += 2*PI;
if(xHeading > 2*PI) xHeading -= 2*PI;
if(yHeading < 0) yHeading += 2*PI;
if(yHeading > 2*PI) yHeading -= 2*PI;
if(zHeading < 0) zHeading += 2*PI;
if(zHeading > 2*PI) zHeading -= 2*PI;
float xDegrees = xHeading * 180/M_PI;
float yDegrees = yHeading * 180/M_PI;
float zDegrees = zHeading * 180/M_PI;
Serial.print(xDegrees);
Serial.print(",");
Serial.print(yDegrees);
Serial.print(",");
Serial.print(zDegrees);
Serial.println(";");
delay(100);
}

相 關 資 源

主站蜘蛛池模板: 建水县| 青铜峡市| 桂东县| 抚宁县| 阳信县| 南阳市| 林口县| 沧州市| 淮南市| 台北县| 威信县| 沂水县| 贵南县| 卢湾区| 贡觉县| 巍山| 安岳县| 成都市| 卓尼县| 灌云县| 盘山县| 洛浦县| 彭泽县| 东安县| 凤冈县| 阳山县| 黄大仙区| 平定县| 建瓯市| 工布江达县| 汾西县| 正镶白旗| 长阳| 巴塘县| 正阳县| 弥渡县| 沈阳市| 百色市| 承德市| 汝南县| 黎城县|