Firmware
Classes | Macros | Typedefs | Enumerations | Functions
rm3100.h File Reference

Shared defines for the RM3100 driver. More...

#include <float.h>
#include <drivers/device/i2c.h>
#include <drivers/device/ringbuffer.h>
#include <drivers/drv_hrt.h>
#include <drivers/drv_mag.h>
#include <lib/conversion/rotation.h>
#include <perf/perf_counter.h>
#include <px4_defines.h>
#include <systemlib/err.h>

Go to the source code of this file.

Classes

class  RM3100
 

Macros

#define RM3100_CONVERSION_INTERVAL   10000
 RM3100 internal constants and data structures.
 
#define UTESLA_TO_GAUSS   100.0f
 
#define RM3100_SENSITIVITY   75.0f
 
#define ADDR_POLL   0x00
 
#define ADDR_CMM   0x01
 
#define ADDR_CCX   0x04
 
#define ADDR_CCY   0x06
 
#define ADDR_CCZ   0x08
 
#define ADDR_TMRC   0x0B
 
#define ADDR_MX   0x24
 
#define ADDR_MY   0x27
 
#define ADDR_MZ   0x2A
 
#define ADDR_BIST   0x33
 
#define ADDR_STATUS   0x34
 
#define ADDR_HSHAKE   0x35
 
#define ADDR_REVID   0x36
 
#define CCX_DEFAULT_MSB   0x00
 
#define CCX_DEFAULT_LSB   0xC8
 
#define CCY_DEFAULT_MSB   CCX_DEFAULT_MSB
 
#define CCY_DEFAULT_LSB   CCX_DEFAULT_LSB
 
#define CCZ_DEFAULT_MSB   CCX_DEFAULT_MSB
 
#define CCZ_DEFAULT_LSB   CCX_DEFAULT_LSB
 
#define CMM_DEFAULT   0x70
 
#define CONTINUOUS_MODE   (1 << 0)
 
#define POLLING_MODE   (0 << 0)
 
#define TMRC_DEFAULT   0x94
 
#define BIST_SELFTEST   0x8F
 
#define BIST_DEFAULT   0x00
 
#define BIST_XYZ_OK   ((1 << 4) | (1 << 5) | (1 << 6))
 
#define STATUS_DRDY   (1 << 7)
 
#define POLL_XYZ   0x70
 
#define RM3100_REVID   0x22
 
#define NUM_BUS_OPTIONS   (sizeof(bus_options)/sizeof(bus_options[0]))
 

Typedefs

typedef device::Device *(* RM3100_constructor) (int)
 

Enumerations

enum  RM3100_BUS {
  RM3100_BUS_ALL = 0, RM3100_BUS_I2C_INTERNAL, RM3100_BUS_I2C_EXTERNAL, RM3100_BUS_SPI_INTERNAL,
  RM3100_BUS_SPI_EXTERNAL
}
 
enum  OPERATING_MODE { CONTINUOUS = 0, SINGLE, CONTINUOUS = 0, SINGLE }
 

Functions

device::DeviceRM3100_SPI_interface (int bus)
 
device::DeviceRM3100_I2C_interface (int bus)
 

Detailed Description

Shared defines for the RM3100 driver.