91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 5KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-08
  • 語言: 其他
  • 標簽: HMC5883L??Arduino??

資源簡介

HMC5883L三軸電子羅盤的Arduino庫

資源截圖

代碼片段和文件信息

/*
HMC5883L.cpp?-?Class?file?for?the?HMC5883L?Triple?Axis?Magnetometer?Arduino?Library.
Copyright?(C)?2011?Love?Electronics?(loveelectronics.co.uk)

This?program?is?free?software:?you?can?redistribute?it?and/or?modify
it?under?the?terms?of?the?version?3?GNU?General?Public?License?as
published?by?the?Free?Software?Foundation.

This?program?is?distributed?in?the?hope?that?it?will?be?useful
but?WITHOUT?ANY?WARRANTY;?without?even?the?implied?warranty?of
MERCHANTABILITY?or?FITNESS?FOR?A?PARTICULAR?PURPOSE.??See?the
GNU?General?Public?License?for?more?details.

You?should?have?received?a?copy?of?the?GNU?General?Public?License
along?with?this?program.??If?not?see?.

?WARNING:?THE?HMC5883L?IS?NOT?IDENTICAL?TO?THE?HMC5883!
?Datasheet?for?HMC5883L:
?http://www51.honeywell.com/aero/common/documents/myaerospacecatalog-documents/Defense_Brochures-documents/HMC5883L_3-Axis_Digital_Compass_IC.pdf

*/

#include??
#include?“HMC5883L.h“

HMC5883L::HMC5883L()
{
??m_Scale?=?1;
}

MagnetometerRaw?HMC5883L::ReadRawAxis()
{
??uint8_t*?buffer?=?Read(DataRegisterBegin?6);
??MagnetometerRaw?raw?=?MagnetometerRaw();
??raw.XAxis?=?(buffer[0]?<??raw.ZAxis?=?(buffer[2]?<??raw.YAxis?=?(buffer[4]?<??return?raw;
}

MagnetometerScaled?HMC5883L::ReadScaledAxis()
{
??MagnetometerRaw?raw?=?ReadRawAxis();
??MagnetometerScaled?scaled?=?MagnetometerScaled();
??scaled.XAxis?=?raw.XAxis?*?m_Scale;
??scaled.ZAxis?=?raw.ZAxis?*?m_Scale;
??scaled.YAxis?=?raw.YAxis?*?m_Scale;
??return?scaled;
}

int?HMC5883L::SetScale(float?gauss)
{
uint8_t?regValue?=?0x00;
if(gauss?==?0.88)
{
regValue?=?0x00;
m_Scale?=?0.73;
}
else?if(gauss?==?1.3)
{
regValue?=?0x01;
m_Scale?=?0.92;
}
else?if(gauss?==?1.9)
{
regValue?=?0x02;
m_Scale?=?1.22;
}
else?if(gauss?==?2.5)
{
regValue?=?0x03;
m_Scale?=?1.52;
}
else?if(gauss?==?4.0)
{
regValue?=?0x04;
m_Scale?=?2.27;
}
else?if(gauss?==?4.7)
{
regValue?=?0x05;
m_Scale?=?2.56;
}
else?if(gauss?==?5.6)
{
regValue?=?0x06;
m_Scale?=?3.03;
}
else?if(gauss?==?8.1)
{
regValue?=?0x07;
m_Scale?=?4.35;
}
else
return?ErrorCode_1_Num;

//?Setting?is?in?the?top?3?bits?of?the?register.
regValue?=?regValue?< Write(ConfigurationRegisterB?regValue);
}

int?HMC5883L::SetMeasurementMode(uint8_t?mode)
{
Write(ModeRegister?mode);
}

void?HMC5883L::Write(int?address?int?data)
{
??Wire.beginTransmission(HMC5883L_Address);
??Wire.send(address);
??Wire.send(data);
??Wire.endTransmission();
}

uint8_t*?HMC5883L::Read(int?address?int?length)
{
??Wire.beginTransmission(HMC5883L_Address);
??Wire.send(address);
??Wire.endTransmission();
??
??Wire.beginTransmission(HMC5883L_Address);
??Wire.requestFrom(HMC5883L_Address?length);

??uint8_t?buffer[length];
??if(Wire.available()?==?length)
??{
??for(uint8_t?i

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????1032??2011-09-10?20:46??HMC5883L\HHMC5883L_Example_Ansifa\HHMC5883L_Example_Ansifa.pde

?????文件???????3259??2011-07-12?17:21??HMC5883L\HMC5883L.cpp

?????文件???????1999??2011-07-12?17:21??HMC5883L\HMC5883L.h

?????文件???????4217??2011-07-12?17:55??HMC5883L\HMC5883L_Example\HMC5883L_Example.pde

?????文件????????741??2011-07-12?16:11??HMC5883L\keywords.txt

?????目錄??????????0??2012-01-09?10:31??HMC5883L\HHMC5883L_Example_Ansifa

?????目錄??????????0??2012-01-09?10:31??HMC5883L\HMC5883L_Example

?????目錄??????????0??2012-01-09?10:31??HMC5883L

-----------?---------??----------?-----??----

????????????????11248????????????????????8


評論

共有 條評論