modm API documentation
modm::Bmi270SpiTransport< SpiMaster, Cs > Class Template Reference

#include <modm/driver/inertial/bmi270_transport.hpp>

Inheritance diagram for modm::Bmi270SpiTransport< SpiMaster, Cs >:
modm::Bmi270TransportBase modm::SpiDevice< SpiMaster >

Public Types

enum  I2cAddress : uint8_t { SdoLow = 0x68, SdoHigh = 0x69 }
 
enum  Register : uint8_t {
  ChipId = 0x00, Error = 0x02, Status = 0x03, AccDataXLow = 0x0C,
  GyroDataXLow = 0x12, SensorTime0 = 0x18, InterruptStatus0 = 0x1C, InterruptStatus1 = 0x1D,
  InternalStatus = 0x21, Temperature0 = 0x22, FifoLength0 = 0x24, FifoData = 0x26,
  FeatPage = 0x2F, Features = 0x30, AccConf = 0x40, AccRange = 0x41,
  GyroConf = 0x42, GyroRange = 0x43, FifoDowns = 0x45, FifoWtm0 = 0x46,
  FifoConfig0 = 0x48, ErrRegMask = 0x52, Int1IoCtrl = 0x53, Int2IoCtrl = 0x54,
  IntLatch = 0x55, IntMapData = 0x58, InitControl = 0x59, InitAddress0 = 0x5B,
  InitAddress1 = 0x5C, InitData = 0x5E, InternalError = 0x5F, AuxIfTrim = 0x68,
  GyroCrtConf = 0x69, NvmConf = 0x6A, IfConf = 0x6B, Drv = 0x6C,
  NvConf = 0x70, Offset0 = 0x71, Offset3 = 0x74, Offset6 = 0x77,
  GyroUserGain0 = 0x78, PowerConf = 0x7C, PowerCtrl = 0x7D, Command = 0x7E
}
 

Public Member Functions

 Bmi270SpiTransport (const Bmi270SpiTransport &) = delete
 
Bmi270SpiTransport & operator= (const Bmi270SpiTransport &) = delete
 
void initialize ()
 
std::span< uint8_t > readRegisters (Register startReg, uint8_t count)
 
bool writeRegister (Register reg, uint8_t data)
 
bool writeRegisters (Register startReg, std::span< const uint8_t > data)
 
bool readFifoData (std::span< uint8_t > data)
 
void attachConfigurationHandler (Spi::ConfigurationHandler handler)
 

Static Public Attributes

static constexpr uint8_t MaxRegisterSequence {32}
 

Protected Member Functions

bool acquireMaster ()
 
bool releaseMaster ()
 

Detailed Description

template<typename SpiMaster, typename Cs>
class modm::Bmi270SpiTransport< SpiMaster, Cs >

BMI270 SPI transport. Pass as template parameter to Bmi270 driver class.

Template Parameters
SpiMasterSPI master the device is connected to
Cschip-select GPIO

The documentation for this class was generated from the following file: