Beispiel #1
0
uint8_t SPIreadByte(uint8_t csPin, uint8_t subAddress,char chip)
{
	uint8_t temp;
	// Use the multiple read function to read 1 byte.
	// Value is returned to `temp`.
	SPIreadBytes(csPin, subAddress, &temp, 1,chip);
	return temp;
}
/* ************************************************************************** */
static uint8_t SPIreadByte(stLSM9DS0_t * stThis, uint8_t csPin, uint8_t subAddress)
{
    uint8_t temp;
    // Use the multiple read function to read 1 byte.
    // Value is returned to `temp`.
    SPIreadBytes(stThis, csPin, subAddress, &temp, 1);
    return temp;
}
Beispiel #3
0
void LSM9DS0::xmReadBytes(uint8_t subAddress, uint8_t * dest, uint8_t count)
{
	// Whether we're using I2C or SPI, read multiple bytes using the
	// accelerometer-specific I2C address or SPI CS pin.
	if (interfaceMode == MODE_I2C)
		I2CreadBytes(xmAddress, subAddress, dest, count);
	else if (interfaceMode == MODE_SPI)
		SPIreadBytes(xmAddress, subAddress, dest, count);
}
/* ************************************************************************** */
static void gReadBytes(stLSM9DS0_t * stThis, uint8_t subAddress, uint8_t * dest, uint8_t count)
{
    // Whether we're using I2C or SPI, read multiple bytes using the
    // gyro-specific I2C address or SPI CS pin.
    if (stThis->interfaceMode == MODE_I2C)
        I2CreadBytes(stThis, stThis->gAddress, subAddress, dest, count);
    else if (stThis->interfaceMode == MODE_SPI)
        SPIreadBytes(stThis, stThis->gAddress, subAddress, dest, count);
}
void xgReadBytes(uint8_t subAddress, uint8_t * dest, uint8_t count)
{
	// Whether we're using I2C or SPI, read multiple bytes using the
	// gyro-specific I2C address or SPI CS pin.
	if (settings.device.commInterface == IMU_MODE_I2C)
		I2CreadBytes(_xgAddress, subAddress, dest, count);
		//I2CreadBytes1(_xgAddress, subAddress, dest, count);
	else if (settings.device.commInterface == IMU_MODE_SPI)
		SPIreadBytes(_xgAddress, subAddress, dest, count);
}
Beispiel #6
0
void xmReadBytes(LSM9DS0_t* lsm_t, uint8_t subAddress, uint8_t * dest, uint8_t count)
{
	// Whether we're using I2C or SPI, read multiple bytes using the
	// accelerometer-specific I2C address or SPI CS pin.
	#if(LSM_I2C_SUPPORT==1)
	if (lsm_t->interfaceMode == MODE_I2C)
		I2CreadBytes(lsm_t->xmAddress, subAddress, dest, count);
	else if (lsm_t->interfaceMode == MODE_SPI)
	#endif
		SPIreadBytes(lsm_t->xmAddress, subAddress, dest, count, 'a');
}