JeVois  1.22
JeVois Smart Embedded Machine Vision Toolkit
Share this page:
Loading...
Searching...
No Matches
ICM_20948_SPI Class Reference

#include </lab/itti/jevois/software/jevois/SparkFun_9DoF_IMU_Breakout___ICM_20948___Arduino_Library-1.2.13/src/ICM_20948.h>

Definition at line 272 of file ICM_20948.h.

Inheritance diagram for ICM_20948_SPI:
Collaboration diagram for ICM_20948_SPI:

Public Member Functions

 ICM_20948_SPI ()
 
ICM_20948_Status_e begin (uint8_t csPin, SPIClass &spiPort=SPI, uint32_t SPIFreq=ICM_20948_SPI_DEFAULT_FREQ)
 
- Public Member Functions inherited from ICM_20948
 ICM_20948 ()
 
void enableDebugging (Stream &debugPort=Serial)
 
void disableDebugging (void)
 
void debugPrintStatus (ICM_20948_Status_e stat)
 
void debugPrint (const char *)
 
void debugPrint (const __FlashStringHelper *)
 
void debugPrintln (const char *)
 
void debugPrintln (const __FlashStringHelper *)
 
void doDebugPrint (char(*)(const char *), const char *, bool newLine=false)
 
void debugPrintf (int i)
 
void debugPrintf (float f)
 
ICM_20948_AGMT_t getAGMT (void)
 
float magX (void)
 
float magY (void)
 
float magZ (void)
 
float accX (void)
 
float accY (void)
 
float accZ (void)
 
float gyrX (void)
 
float gyrY (void)
 
float gyrZ (void)
 
float temp (void)
 
const char * statusString (ICM_20948_Status_e stat=ICM_20948_Stat_NUM)
 
ICM_20948_Status_e setBank (uint8_t bank)
 
ICM_20948_Status_e swReset (void)
 
ICM_20948_Status_e sleep (bool on=false)
 
ICM_20948_Status_e lowPower (bool on=true)
 
ICM_20948_Status_e setClockSource (ICM_20948_PWR_MGMT_1_CLKSEL_e source)
 
ICM_20948_Status_e checkID (void)
 
bool dataReady (void)
 
uint8_t getWhoAmI (void)
 
bool isConnected (void)
 
ICM_20948_Status_e setSampleMode (uint8_t sensor_id_bm, uint8_t lp_config_cycle_mode)
 
ICM_20948_Status_e setFullScale (uint8_t sensor_id_bm, ICM_20948_fss_t fss)
 
ICM_20948_Status_e setDLPFcfg (uint8_t sensor_id_bm, ICM_20948_dlpcfg_t cfg)
 
ICM_20948_Status_e enableDLPF (uint8_t sensor_id_bm, bool enable)
 
ICM_20948_Status_e setSampleRate (uint8_t sensor_id_bm, ICM_20948_smplrt_t smplrt)
 
ICM_20948_Status_e clearInterrupts (void)
 
ICM_20948_Status_e cfgIntActiveLow (bool active_low)
 
ICM_20948_Status_e cfgIntOpenDrain (bool open_drain)
 
ICM_20948_Status_e cfgIntLatch (bool latching)
 
ICM_20948_Status_e cfgIntAnyReadToClear (bool enabled)
 
ICM_20948_Status_e cfgFsyncActiveLow (bool active_low)
 
ICM_20948_Status_e cfgFsyncIntMode (bool interrupt_mode)
 
ICM_20948_Status_e intEnableI2C (bool enable)
 
ICM_20948_Status_e intEnableDMP (bool enable)
 
ICM_20948_Status_e intEnablePLL (bool enable)
 
ICM_20948_Status_e intEnableWOM (bool enable)
 
ICM_20948_Status_e intEnableWOF (bool enable)
 
ICM_20948_Status_e intEnableRawDataReady (bool enable)
 
ICM_20948_Status_e intEnableOverflowFIFO (uint8_t bm_enable)
 
ICM_20948_Status_e intEnableWatermarkFIFO (uint8_t bm_enable)
 
ICM_20948_Status_e WOMLogic (uint8_t enable, uint8_t mode)
 
ICM_20948_Status_e WOMThreshold (uint8_t threshold)
 
ICM_20948_Status_e i2cMasterPassthrough (bool passthrough=true)
 
ICM_20948_Status_e i2cMasterEnable (bool enable=true)
 
ICM_20948_Status_e i2cMasterReset ()
 
ICM_20948_Status_e i2cControllerConfigurePeripheral (uint8_t peripheral, uint8_t addr, uint8_t reg, uint8_t len, bool Rw=true, bool enable=true, bool data_only=false, bool grp=false, bool swap=false, uint8_t dataOut=0)
 
ICM_20948_Status_e i2cControllerPeriph4Transaction (uint8_t addr, uint8_t reg, uint8_t *data, uint8_t len, bool Rw, bool send_reg_addr=true)
 
ICM_20948_Status_e i2cMasterConfigureSlave (uint8_t peripheral, uint8_t addr, uint8_t reg, uint8_t len, bool Rw=true, bool enable=true, bool data_only=false, bool grp=false, bool swap=false)
 
ICM_20948_Status_e i2cMasterSLV4Transaction (uint8_t addr, uint8_t reg, uint8_t *data, uint8_t len, bool Rw, bool send_reg_addr=true)
 
ICM_20948_Status_e i2cMasterSingleW (uint8_t addr, uint8_t reg, uint8_t data)
 
uint8_t i2cMasterSingleR (uint8_t addr, uint8_t reg)
 
ICM_20948_Status_e startupDefault (bool minimal=false)
 
ICM_20948_Status_e read (uint8_t reg, uint8_t *pdata, uint32_t len)
 
ICM_20948_Status_e write (uint8_t reg, uint8_t *pdata, uint32_t len)
 
ICM_20948_Status_e startupMagnetometer (bool minimal=false)
 
ICM_20948_Status_e magWhoIAm (void)
 
uint8_t readMag (AK09916_Reg_Addr_e reg)
 
ICM_20948_Status_e writeMag (AK09916_Reg_Addr_e reg, uint8_t *pdata)
 
ICM_20948_Status_e resetMag ()
 
ICM_20948_Status_e enableFIFO (bool enable=true)
 
ICM_20948_Status_e resetFIFO (void)
 
ICM_20948_Status_e setFIFOmode (bool snapshot=false)
 
ICM_20948_Status_e getFIFOcount (uint16_t *count)
 
ICM_20948_Status_e readFIFO (uint8_t *data, uint8_t len=1)
 
ICM_20948_Status_e setBiasGyroX (int32_t newValue)
 
ICM_20948_Status_e setBiasGyroY (int32_t newValue)
 
ICM_20948_Status_e setBiasGyroZ (int32_t newValue)
 
ICM_20948_Status_e getBiasGyroX (int32_t *bias)
 
ICM_20948_Status_e getBiasGyroY (int32_t *bias)
 
ICM_20948_Status_e getBiasGyroZ (int32_t *bias)
 
ICM_20948_Status_e setBiasAccelX (int32_t newValue)
 
ICM_20948_Status_e setBiasAccelY (int32_t newValue)
 
ICM_20948_Status_e setBiasAccelZ (int32_t newValue)
 
ICM_20948_Status_e getBiasAccelX (int32_t *bias)
 
ICM_20948_Status_e getBiasAccelY (int32_t *bias)
 
ICM_20948_Status_e getBiasAccelZ (int32_t *bias)
 
ICM_20948_Status_e setBiasCPassX (int32_t newValue)
 
ICM_20948_Status_e setBiasCPassY (int32_t newValue)
 
ICM_20948_Status_e setBiasCPassZ (int32_t newValue)
 
ICM_20948_Status_e getBiasCPassX (int32_t *bias)
 
ICM_20948_Status_e getBiasCPassY (int32_t *bias)
 
ICM_20948_Status_e getBiasCPassZ (int32_t *bias)
 
ICM_20948_Status_e enableDMP (bool enable=true)
 
ICM_20948_Status_e resetDMP (void)
 
ICM_20948_Status_e loadDMPFirmware (void)
 
ICM_20948_Status_e setDMPstartAddress (unsigned short address=DMP_START_ADDRESS)
 
ICM_20948_Status_e enableDMPSensor (enum inv_icm20948_sensor sensor, bool enable=true)
 
ICM_20948_Status_e enableDMPSensorInt (enum inv_icm20948_sensor sensor, bool enable=true)
 
ICM_20948_Status_e writeDMPmems (unsigned short reg, unsigned int length, const unsigned char *data)
 
ICM_20948_Status_e readDMPmems (unsigned short reg, unsigned int length, unsigned char *data)
 
ICM_20948_Status_e setDMPODRrate (enum DMP_ODR_Registers odr_reg, int interval)
 
ICM_20948_Status_e readDMPdataFromFIFO (icm_20948_DMP_data_t *data)
 
ICM_20948_Status_e setGyroSF (unsigned char div, int gyro_level)
 
ICM_20948_Status_e initializeDMP (void) __attribute__((weak))
 

Public Attributes

SPIClass * _spi
 
SPISettings _spisettings
 
uint8_t _cs
 
ICM_20948_Serif_t _serif
 
- Public Attributes inherited from ICM_20948
ICM_20948_AGMT_t agmt
 
ICM_20948_Status_e status
 

Additional Inherited Members

- Protected Member Functions inherited from ICM_20948
float getTempC (int16_t val)
 
float getGyrDPS (int16_t axis_val)
 
float getAccMG (int16_t axis_val)
 
float getMagUT (int16_t axis_val)
 
- Protected Attributes inherited from ICM_20948
ICM_20948_Device_t _device
 

Constructor & Destructor Documentation

◆ ICM_20948_SPI()

ICM_20948_SPI::ICM_20948_SPI ( )

Member Function Documentation

◆ begin()

ICM_20948_Status_e ICM_20948_SPI::begin ( uint8_t  csPin,
SPIClass &  spiPort = SPI,
uint32_t  SPIFreq = ICM_20948_SPI_DEFAULT_FREQ 
)

Member Data Documentation

◆ _cs

uint8_t ICM_20948_SPI::_cs

Definition at line 279 of file ICM_20948.h.

◆ _serif

ICM_20948_Serif_t ICM_20948_SPI::_serif

Definition at line 280 of file ICM_20948.h.

◆ _spi

SPIClass* ICM_20948_SPI::_spi

Definition at line 277 of file ICM_20948.h.

◆ _spisettings

SPISettings ICM_20948_SPI::_spisettings

Definition at line 278 of file ICM_20948.h.


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