Пример #1
0
device::Device *
MPU9250_SPI_interface(int bus, bool external_bus)
{
	uint32_t cs = SPIDEV_NONE(0);
	device::Device *interface = nullptr;

	if (external_bus) {
#if defined(PX4_SPI_BUS_EXT) && defined(PX4_SPIDEV_EXT_MPU)
		cs =  PX4_SPIDEV_EXT_MPU;
#else
		errx(0, "External SPI not available");
#endif

	} else {
		cs =  PX4_SPIDEV_MPU;
	}

	if (cs != SPIDEV_NONE(0)) {

		interface = new MPU9250_SPI(bus, cs);
	}

	return interface;
}
Пример #2
0
device::Device *
MPU9250_SPI_interface(int bus, int device_type, uint32_t cs, bool external_bus)
{
	device::Device *interface = nullptr;

	if (external_bus) {
#if !(defined(PX4_SPI_BUS_EXT) && defined(PX4_SPIDEV_EXT_MPU))
		errx(0, "External SPI not available");
#endif
	}

	if (cs != SPIDEV_NONE(0)) {
		interface = new MPU9250_SPI(bus, cs);
	}

	return interface;
}