Hummingbird Flight Software
Flight software for the Hummingbird FCU quadcopter flight controller. Designed to run on the Teensy 4.1. Developed with VSCode+PlatformIO.
Classes | Macros | Enumerations
lis3mdl_magnetometer.h File Reference
#include <Arduino.h>
#include <Wire.h>
#include "debugging.h"
#include "hummingbird_config.h"

Go to the source code of this file.

Classes

class  LIS3MDL_Mag
 STMicroelectronics LIS3MDL magnetometer sensor class. More...
 

Macros

#define LIS3MDL_ADDR   0x1E
 
#define LIS3MDL_WHOAMI   0x0F
 
#define LIS3MDL_CTRL_REG1   0x20
 
#define LIS3MDL_CTRL_REG2   0x21
 
#define LIS3MDL_CTRL_REG3   0x22
 
#define LIS3MDL_CTRL_REG4   0x23
 
#define LIS3MDL_CTRL_REG5   0x24
 

Enumerations

enum  LIS3MDL_DataReg_t {
  LIS3MDL_OUT_X_L = 0x28 , LIS3MDL_OUT_X_H = 0x29 , LIS3MDL_OUT_Y_L = 0x2A , LIS3MDL_OUT_Y_H = 0X2B ,
  LIS3MDL_OUT_Z_L = 0x2C , LIS3MDL_OUT_Z_H = 0x2D , LIS3MDL_OUT_TEMP_L = 0x2E , LIS3MDL_OUT_TEMP_H = 0x2F
}
 LIS3MDL data registers. More...
 
enum  LIS3MDL_MeasRange_t { LIS3MDL_RANGE_4G = 4 , LIS3MDL_RANGE_8G = 8 , LIS3MDL_RANGE_12G = 12 , LIS3MDL_RANGE_16G = 16 }
 LIS3MDL measurement ranges (gauss) More...
 

Macro Definition Documentation

◆ LIS3MDL_ADDR

#define LIS3MDL_ADDR   0x1E

◆ LIS3MDL_CTRL_REG1

#define LIS3MDL_CTRL_REG1   0x20

◆ LIS3MDL_CTRL_REG2

#define LIS3MDL_CTRL_REG2   0x21

◆ LIS3MDL_CTRL_REG3

#define LIS3MDL_CTRL_REG3   0x22

◆ LIS3MDL_CTRL_REG4

#define LIS3MDL_CTRL_REG4   0x23

◆ LIS3MDL_CTRL_REG5

#define LIS3MDL_CTRL_REG5   0x24

◆ LIS3MDL_WHOAMI

#define LIS3MDL_WHOAMI   0x0F

Enumeration Type Documentation

◆ LIS3MDL_DataReg_t

LIS3MDL data registers.

Enumerator
LIS3MDL_OUT_X_L 
LIS3MDL_OUT_X_H 
LIS3MDL_OUT_Y_L 
LIS3MDL_OUT_Y_H 
LIS3MDL_OUT_Z_L 
LIS3MDL_OUT_Z_H 
LIS3MDL_OUT_TEMP_L 
LIS3MDL_OUT_TEMP_H 

◆ LIS3MDL_MeasRange_t

LIS3MDL measurement ranges (gauss)

Enumerator
LIS3MDL_RANGE_4G 
LIS3MDL_RANGE_8G 
LIS3MDL_RANGE_12G 
LIS3MDL_RANGE_16G