I2C driver for HMC5583L digital compass sensor
Diff: hmc5583l.cpp
- Revision:
- 1:097089f0feb1
- Parent:
- 0:91f08ac76444
--- a/hmc5583l.cpp Thu Dec 03 07:52:58 2015 +0000 +++ b/hmc5583l.cpp Sat Dec 19 10:40:55 2015 +0000 @@ -1,13 +1,23 @@ #include "hmc5583l.h" #include "stdint.h" +HMC5583L::HMC5583L(I2C &_i2c, int _address): i2c(_i2c), address(_address) +{ + initialize(); +} + HMC5583L::HMC5583L(PinName sda, PinName scl, int _address): i2c(sda, scl), address(_address) { + initialize(); +} + +void HMC5583L::initialize() +{ char data[2]; data[0] = 0x02; // select mode register data[1] = 0x00; // continous measurement mode - i2c.write(address, data, 2); + i2c.write(address, data, 2); } coord HMC5583L::getCompass()