mirror of
https://github.com/iNavFlight/inav.git
synced 2025-07-26 01:35:35 +03:00
Merge branch 'master' into inav-dev
Conflicts: Makefile src/main/common/filter.c src/main/common/filter.h src/main/config/config.c src/main/config/config_master.h src/main/config/config_profile.h src/main/drivers/sonar_hcsr04.c src/main/flight/altitudehold.c src/main/flight/failsafe.c src/main/flight/failsafe.h src/main/flight/imu.c src/main/flight/imu.h src/main/flight/navigation.c src/main/flight/pid.c src/main/flight/pid.h src/main/io/rc_controls.c src/main/io/serial.c src/main/io/serial.h src/main/io/serial_cli.c src/main/mw.c src/main/sensors/sonar.c src/main/sensors/sonar.h src/main/target/NAZE/target.h src/main/telemetry/ltm.c src/test/Makefile src/test/unit/flight_imu_unittest.cc src/test/unit/navigation_unittest.cc
This commit is contained in:
commit
dc3e84ea5b
84 changed files with 1957 additions and 842 deletions
|
@ -45,6 +45,7 @@
|
|||
#include "drivers/bus_spi.h"
|
||||
#include "drivers/accgyro_spi_mpu6000.h"
|
||||
#include "drivers/accgyro_spi_mpu6500.h"
|
||||
#include "drivers/gyro_sync.h"
|
||||
|
||||
#include "drivers/barometer.h"
|
||||
#include "drivers/barometer_bmp085.h"
|
||||
|
@ -150,6 +151,19 @@ const extiConfig_t *selectMPUIntExtiConfig(void)
|
|||
return &MotolabF3MPUIntExtiConfig;
|
||||
#endif
|
||||
|
||||
#if defined(COLIBRI_RACE)
|
||||
static const extiConfig_t colibriRaceMPUIntExtiConfig = {
|
||||
.gpioAHBPeripherals = RCC_AHBPeriph_GPIOA,
|
||||
.gpioPort = GPIOA,
|
||||
.gpioPin = Pin_5,
|
||||
.exti_port_source = EXTI_PortSourceGPIOA,
|
||||
.exti_pin_source = EXTI_PinSource5,
|
||||
.exti_line = EXTI_Line5,
|
||||
.exti_irqn = EXTI9_5_IRQn
|
||||
};
|
||||
return &colibriRaceMPUIntExtiConfig;
|
||||
#endif
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -701,8 +715,10 @@ void reconfigureAlignment(sensorAlignmentConfig_t *sensorAlignmentConfig)
|
|||
}
|
||||
}
|
||||
|
||||
bool sensorsAutodetect(sensorAlignmentConfig_t *sensorAlignmentConfig, uint16_t gyroLpf, uint8_t accHardwareToUse, uint8_t magHardwareToUse, uint8_t baroHardwareToUse, int16_t magDeclinationFromConfig)
|
||||
{
|
||||
bool sensorsAutodetect(sensorAlignmentConfig_t *sensorAlignmentConfig, uint8_t gyroLpf, uint8_t accHardwareToUse, uint8_t magHardwareToUse, uint8_t baroHardwareToUse,
|
||||
int16_t magDeclinationFromConfig,
|
||||
uint32_t looptime, uint8_t gyroSync, uint8_t gyroSyncDenominator) {
|
||||
|
||||
int16_t deg, min;
|
||||
|
||||
memset(&acc, 0, sizeof(acc));
|
||||
|
@ -727,6 +743,7 @@ bool sensorsAutodetect(sensorAlignmentConfig_t *sensorAlignmentConfig, uint16_t
|
|||
if (sensors(SENSOR_ACC))
|
||||
acc.init();
|
||||
// this is safe because either mpu6050 or mpu3050 or lg3d20 sets it, and in case of fail, we never get here.
|
||||
gyroUpdateSampleRate(looptime, gyroLpf, gyroSync, gyroSyncDenominator); // Set gyro sampling rate divider before initialization
|
||||
gyro.init(gyroLpf);
|
||||
|
||||
detectMag(magHardwareToUse);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue