示例#1
0
void ads1246_write1byte(uint8_t addr, uint8_t data){

	SPI_xfer(ADS1246_MPX6115A_SPI,0x40|addr);
	SPI_xfer(ADS1246_MPX6115A_SPI,0x00);
	SPI_xfer(ADS1246_MPX6115A_SPI,data);

}
示例#2
0
uint8_t ads1246_read1byte(uint8_t addr){

	uint8_t output=0;

	SPI_xfer(ADS1246_MPX6115A_SPI,0x20|addr);
	SPI_xfer(ADS1246_MPX6115A_SPI,0x00);
	output = SPI_xfer(ADS1246_MPX6115A_SPI,0xFF);
	return output;

}
示例#3
0
void mpu9250_write_byte(uint8_t addr, uint8_t data)
{

	MPU9250_SELECT();

	SPI_xfer(MPU9250_SPI, addr);
	SPI_xfer(MPU9250_SPI, data);
	MPU9250_DESELECT();

}
示例#4
0
int32_t ads1246_readADCconversion(void){

	uint8_t rxdat1=0,rxdat2=0,rxdat3=0;


	rxdat1 = SPI_xfer(ADS1246_MPX6115A_SPI,0xFF);
	rxdat2 = SPI_xfer(ADS1246_MPX6115A_SPI,0xFF);
	rxdat3 = SPI_xfer(ADS1246_MPX6115A_SPI,0xFF);

	return  (uint32_t)rxdat1<<16 | (uint32_t)rxdat2<<8 |  (uint32_t)rxdat3;
}
示例#5
0
uint8_t mpu9250_read_byte(uint8_t addr)
{
	uint8_t rxData;

	MPU9250_SELECT();

	SPI_xfer(MPU9250_SPI, addr | 0x80);
	rxData = SPI_xfer(MPU9250_SPI, 0xff);
	MPU9250_DESELECT();

	return rxData;
}
示例#6
0
unsigned int Spi::xfer(unsigned int data)
{
		if (m_hwspi_port>=0)
		{
			return SPI_xfer(m_hwspi_port,data);
		}		
		
		return 0xfffff;
}
示例#7
0
void mpu9250_read_accel_temp_gyro(imu_unscaled_data_t *imu_unscaledData)
{

	uint8_t buffer[14];

	MPU9250_SELECT();

	SPI_xfer(MPU9250_SPI, MPU9250_ACCEL_XOUT_H | 0x80);
	buffer[0] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[1] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[2] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[3] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[4] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[5] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[6] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[7] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[8] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[9] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[10] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[11] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[12] =  SPI_xfer(MPU9250_SPI, 0xff);
	buffer[13] =  SPI_xfer(MPU9250_SPI, 0xff);

	imu_unscaledData->acc[0] = ((uint16_t)buffer[0] << 8) | (uint16_t)buffer[1];
	imu_unscaledData->acc[1] = ((uint16_t)buffer[2] << 8) | (uint16_t)buffer[3];
	imu_unscaledData->acc[2] = ((uint16_t)buffer[4] << 8) | (uint16_t)buffer[5];

	imu_unscaledData->temp = ((uint16_t)buffer[6] << 8) | (uint16_t)buffer[7];

	imu_unscaledData->gyro[0] = ((uint16_t)buffer[8] << 8) | (uint16_t)buffer[9];
	imu_unscaledData->gyro[1] = ((uint16_t)buffer[10] << 8) | (uint16_t)buffer[11];
	imu_unscaledData->gyro[2] = ((uint16_t)buffer[12] << 8) | (uint16_t)buffer[13];


	MPU9250_DESELECT();


}