From 55cac2bdeb5a80676b06054aa72250b9d42b6099 Mon Sep 17 00:00:00 2001 From: Dominic Clifton Date: Sun, 1 Feb 2015 00:39:38 +0100 Subject: [PATCH] Finally rename flight.c/.h to pid.c/.h. Cleanup some dependencies. Relocate more code. --- Makefile | 2 +- src/main/config/config.c | 5 +++-- src/main/flight/altitudehold.c | 9 ++++---- src/main/flight/altitudehold.h | 3 +-- src/main/flight/autotune.c | 2 +- src/main/flight/imu.c | 2 +- src/main/flight/mixer.c | 2 +- src/main/flight/navigation.c | 28 +++++++++++------------- src/main/flight/navigation.h | 2 -- src/main/flight/{flight.c => pid.c} | 2 +- src/main/flight/{flight.h => pid.h} | 0 src/main/io/display.c | 2 +- src/main/io/gps.c | 20 +++++++---------- src/main/io/ledstrip.c | 14 +++++++----- src/main/io/rc_controls.c | 7 +++--- src/main/io/serial_cli.c | 2 +- src/main/io/serial_msp.c | 6 +++-- src/main/main.c | 2 +- src/main/mw.c | 6 +++-- src/main/mw.h | 2 ++ src/main/sensors/compass.c | 1 - src/main/sensors/gyro.c | 1 - src/main/sensors/initialisation.c | 1 - src/main/sensors/sonar.c | 2 -- src/main/telemetry/frsky.c | 2 +- src/main/telemetry/hott.c | 2 +- src/main/telemetry/smartport.c | 2 +- src/test/unit/altitude_hold_unittest.cc | 20 +++++++++-------- src/test/unit/flight_imu_unittest.cc | 17 ++++++++------ src/test/unit/ledstrip_unittest.cc | 1 - src/test/unit/rc_controls_unittest.cc | 14 ++++++++++-- src/test/unit/telemetry_hott_unittest.cc | 13 +++++------ 32 files changed, 101 insertions(+), 93 deletions(-) rename src/main/flight/{flight.c => pid.c} (99%) rename src/main/flight/{flight.h => pid.h} (100%) diff --git a/Makefile b/Makefile index aadb9ab50c..fa84772d67 100644 --- a/Makefile +++ b/Makefile @@ -203,7 +203,7 @@ COMMON_SRC = build_config.c \ mw.c \ flight/altitudehold.c \ flight/failsafe.c \ - flight/flight.c \ + flight/pid.c \ flight/imu.c \ flight/mixer.c \ drivers/bus_i2c_soft.c \ diff --git a/src/main/config/config.c b/src/main/config/config.c index 45d8a7ab62..7250c45a24 100644 --- a/src/main/config/config.c +++ b/src/main/config/config.c @@ -58,14 +58,15 @@ #include "telemetry/telemetry.h" #include "flight/mixer.h" -#include "flight/flight.h" +#include "flight/pid.h" +#include "flight/imu.h" #include "flight/failsafe.h" #include "flight/altitudehold.h" -#include "flight/imu.h" #include "flight/navigation.h" #include "config/runtime_config.h" #include "config/config.h" + #include "config/config_profile.h" #include "config/config_master.h" diff --git a/src/main/flight/altitudehold.c b/src/main/flight/altitudehold.c index 1950a6688f..3670b7965e 100644 --- a/src/main/flight/altitudehold.c +++ b/src/main/flight/altitudehold.c @@ -35,14 +35,15 @@ #include "sensors/barometer.h" #include "sensors/sonar.h" -#include "flight/mixer.h" -#include "flight/flight.h" -#include "flight/imu.h" - #include "rx/rx.h" + #include "io/rc_controls.h" #include "io/escservo.h" +#include "flight/mixer.h" +#include "flight/pid.h" +#include "flight/imu.h" + #include "config/runtime_config.h" extern int16_t debug[4]; diff --git a/src/main/flight/altitudehold.h b/src/main/flight/altitudehold.h index 8f45ce3c70..e8ccfec926 100644 --- a/src/main/flight/altitudehold.h +++ b/src/main/flight/altitudehold.h @@ -15,10 +15,9 @@ * along with Cleanflight. If not, see . */ -#include "flight/flight.h" - #include "io/escservo.h" #include "io/rc_controls.h" +#include "flight/pid.h" #include "sensors/barometer.h" diff --git a/src/main/flight/autotune.c b/src/main/flight/autotune.c index 91bef60c3f..bfc0f53b22 100644 --- a/src/main/flight/autotune.c +++ b/src/main/flight/autotune.c @@ -34,7 +34,7 @@ #include "sensors/sensors.h" #include "sensors/acceleration.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "config/config.h" diff --git a/src/main/flight/imu.c b/src/main/flight/imu.c index faf92d600e..23a3805ea8 100644 --- a/src/main/flight/imu.c +++ b/src/main/flight/imu.c @@ -40,7 +40,7 @@ #include "sensors/sonar.h" #include "flight/mixer.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "config/runtime_config.h" diff --git a/src/main/flight/mixer.c b/src/main/flight/mixer.c index cfe9cac0d0..9a66157d97 100644 --- a/src/main/flight/mixer.c +++ b/src/main/flight/mixer.c @@ -43,7 +43,7 @@ #include "sensors/acceleration.h" #include "flight/mixer.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "config/runtime_config.h" diff --git a/src/main/flight/navigation.c b/src/main/flight/navigation.c index 224aa6ed3a..6153f121db 100644 --- a/src/main/flight/navigation.c +++ b/src/main/flight/navigation.c @@ -25,31 +25,31 @@ #include "platform.h" #include "common/maths.h" +#include "common/axis.h" #include "drivers/system.h" - #include "drivers/serial.h" #include "drivers/serial_uart.h" -#include "io/serial.h" - #include "drivers/gpio.h" #include "drivers/light_led.h" -#include "common/axis.h" -#include "flight/flight.h" - #include "sensors/sensors.h" +#include "io/serial.h" +#include "io/gps.h" +#include "io/rc_controls.h" + +#include "flight/pid.h" +#include "flight/navigation.h" +#include "flight/gps_conversion.h" + +#include "rx/rx.h" + + #include "config/config.h" #include "config/runtime_config.h" -#include "flight/gps_conversion.h" -#include "io/gps.h" - -#include "rx/rx.h" -#include "io/rc_controls.h" - -#include "flight/navigation.h" +extern int16_t magHold; #ifdef GPS @@ -57,8 +57,6 @@ extern int16_t debug[4]; bool areSticksInApModePosition(uint16_t ap_mode); -int16_t magHold; - // ********************** // GPS // ********************** diff --git a/src/main/flight/navigation.h b/src/main/flight/navigation.h index ed9165faaa..673cf5cfbf 100644 --- a/src/main/flight/navigation.h +++ b/src/main/flight/navigation.h @@ -17,8 +17,6 @@ #pragma once -extern int16_t magHold; - // navigation mode typedef enum { NAV_MODE_NONE = 0, diff --git a/src/main/flight/flight.c b/src/main/flight/pid.c similarity index 99% rename from src/main/flight/flight.c rename to src/main/flight/pid.c index 252fb15433..fccab9ab56 100644 --- a/src/main/flight/flight.c +++ b/src/main/flight/pid.c @@ -38,7 +38,7 @@ #include "io/rc_controls.h" #include "io/gps.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "flight/navigation.h" #include "flight/autotune.h" diff --git a/src/main/flight/flight.h b/src/main/flight/pid.h similarity index 100% rename from src/main/flight/flight.h rename to src/main/flight/pid.h diff --git a/src/main/io/display.c b/src/main/io/display.c index 045afd406d..3da8750050 100644 --- a/src/main/io/display.c +++ b/src/main/io/display.c @@ -48,7 +48,7 @@ #include "io/rc_controls.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #ifdef GPS diff --git a/src/main/io/gps.c b/src/main/io/gps.c index db0f726d3d..fd923b2e9d 100644 --- a/src/main/io/gps.c +++ b/src/main/io/gps.c @@ -27,30 +27,26 @@ #include "build_config.h" #include "common/maths.h" +#include "common/axis.h" #include "drivers/system.h" - #include "drivers/serial.h" #include "drivers/serial_uart.h" -#include "io/serial.h" - #include "drivers/gpio.h" #include "drivers/light_led.h" -#include "common/axis.h" -#include "flight/flight.h" - #include "sensors/sensors.h" -#include "config/config.h" -#include "config/runtime_config.h" - -#include "flight/gps_conversion.h" -#include "flight/navigation.h" - +#include "io/serial.h" #include "io/display.h" #include "io/gps.h" +#include "flight/gps_conversion.h" +#include "flight/pid.h" +#include "flight/navigation.h" + +#include "config/config.h" +#include "config/runtime_config.h" #ifdef GPS diff --git a/src/main/io/ledstrip.c b/src/main/io/ledstrip.c index 34adfbf50d..1de4ff7b87 100644 --- a/src/main/io/ledstrip.c +++ b/src/main/io/ledstrip.c @@ -28,24 +28,26 @@ #ifdef LED_STRIP #include +#include +#include #include "drivers/light_ws2811strip.h" #include "drivers/system.h" #include "drivers/serial.h" -#include #include -#include #include "sensors/battery.h" -#include "config/runtime_config.h" -#include "config/config.h" -#include "rx/rx.h" #include "io/rc_controls.h" +#include "io/ledstrip.h" + +#include "rx/rx.h" + #include "flight/failsafe.h" -#include "io/ledstrip.h" +#include "config/runtime_config.h" +#include "config/config.h" static bool ledStripInitialised = false; static bool ledStripEnabled = true; diff --git a/src/main/io/rc_controls.c b/src/main/io/rc_controls.c index 6b74c323ef..54ecb963ba 100644 --- a/src/main/io/rc_controls.c +++ b/src/main/io/rc_controls.c @@ -30,7 +30,6 @@ #include "config/runtime_config.h" #include "drivers/system.h" - #include "drivers/sensor.h" #include "drivers/accgyro.h" @@ -40,15 +39,15 @@ #include "sensors/gyro.h" #include "sensors/acceleration.h" +#include "rx/rx.h" + #include "io/gps.h" #include "io/beeper.h" - -#include "rx/rx.h" #include "io/escservo.h" #include "io/rc_controls.h" #include "io/rc_curves.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/navigation.h" #include "mw.h" diff --git a/src/main/io/serial_cli.c b/src/main/io/serial_cli.c index bb950a69b0..8fa43b5c5a 100644 --- a/src/main/io/serial_cli.c +++ b/src/main/io/serial_cli.c @@ -64,7 +64,7 @@ #include "sensors/compass.h" #include "sensors/barometer.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "flight/mixer.h" #include "flight/navigation.h" diff --git a/src/main/io/serial_msp.c b/src/main/io/serial_msp.c index 0494b99e61..929acf9537 100644 --- a/src/main/io/serial_msp.c +++ b/src/main/io/serial_msp.c @@ -62,13 +62,15 @@ #include "sensors/compass.h" #include "sensors/gyro.h" -#include "flight/flight.h" -#include "flight/imu.h" #include "flight/mixer.h" +#include "flight/pid.h" +#include "flight/imu.h" #include "flight/failsafe.h" #include "flight/navigation.h" #include "flight/altitudehold.h" +#include "mw.h" + #include "config/runtime_config.h" #include "config/config.h" #include "config/config_profile.h" diff --git a/src/main/main.c b/src/main/main.c index 27093e9e50..ba7453265e 100644 --- a/src/main/main.c +++ b/src/main/main.c @@ -69,7 +69,7 @@ #include "telemetry/telemetry.h" #include "blackbox/blackbox.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "flight/mixer.h" #include "flight/failsafe.h" diff --git a/src/main/mw.c b/src/main/mw.c index 34c9a6e399..4291bd4a43 100644 --- a/src/main/mw.c +++ b/src/main/mw.c @@ -66,10 +66,10 @@ #include "blackbox/blackbox.h" #include "flight/mixer.h" -#include "flight/flight.h" +#include "flight/pid.h" +#include "flight/imu.h" #include "flight/altitudehold.h" #include "flight/failsafe.h" -#include "flight/imu.h" #include "flight/autotune.h" #include "flight/navigation.h" @@ -94,6 +94,8 @@ int16_t debug[4]; uint32_t currentTime = 0; uint32_t previousTime = 0; uint16_t cycleTime = 0; // this is the number in micro second to achieve a full loop, it can differ a little and is taken into account in the PID loop + +int16_t magHold; int16_t headFreeModeHold; int16_t telemTemperature1; // gyro sensor temperature diff --git a/src/main/mw.h b/src/main/mw.h index aebee40bee..d1d49bdf72 100644 --- a/src/main/mw.h +++ b/src/main/mw.h @@ -17,6 +17,8 @@ #pragma once +extern int16_t magHold; + void applyAndSaveAccelerometerTrimsDelta(rollAndPitchTrims_t *rollAndPitchTrimsDelta); void handleInflightCalibrationStickPosition(); diff --git a/src/main/sensors/compass.c b/src/main/sensors/compass.c index 343c9d535f..e3c18036ad 100644 --- a/src/main/sensors/compass.c +++ b/src/main/sensors/compass.c @@ -28,7 +28,6 @@ #include "drivers/gpio.h" #include "drivers/light_led.h" -#include "flight/flight.h" #include "sensors/boardalignment.h" #include "config/runtime_config.h" #include "config/config.h" diff --git a/src/main/sensors/gyro.c b/src/main/sensors/gyro.c index cd5c15d86b..71ac374bbd 100644 --- a/src/main/sensors/gyro.c +++ b/src/main/sensors/gyro.c @@ -25,7 +25,6 @@ #include "drivers/sensor.h" #include "drivers/accgyro.h" -#include "flight/flight.h" #include "sensors/sensors.h" #include "io/statusindicator.h" #include "sensors/boardalignment.h" diff --git a/src/main/sensors/initialisation.c b/src/main/sensors/initialisation.c index 099e6fe000..f278893e7b 100644 --- a/src/main/sensors/initialisation.c +++ b/src/main/sensors/initialisation.c @@ -52,7 +52,6 @@ #include "drivers/gpio.h" #include "drivers/system.h" -#include "flight/flight.h" #include "config/runtime_config.h" #include "sensors/sensors.h" diff --git a/src/main/sensors/sonar.c b/src/main/sensors/sonar.c index 842df64045..b3a5438b99 100644 --- a/src/main/sensors/sonar.c +++ b/src/main/sensors/sonar.c @@ -28,8 +28,6 @@ #include "config/runtime_config.h" #include "config/config.h" -#include "flight/flight.h" - #include "sensors/sensors.h" #include "sensors/sonar.h" diff --git a/src/main/telemetry/frsky.c b/src/main/telemetry/frsky.c index f4f2e2b074..25691fb47d 100644 --- a/src/main/telemetry/frsky.c +++ b/src/main/telemetry/frsky.c @@ -51,7 +51,7 @@ #include "rx/rx.h" #include "flight/mixer.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "flight/altitudehold.h" diff --git a/src/main/telemetry/hott.c b/src/main/telemetry/hott.c index 356c1f2b6b..d0bfd56bfd 100644 --- a/src/main/telemetry/hott.c +++ b/src/main/telemetry/hott.c @@ -74,7 +74,7 @@ #include "sensors/sensors.h" #include "sensors/battery.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/navigation.h" #include "io/gps.h" diff --git a/src/main/telemetry/smartport.c b/src/main/telemetry/smartport.c index 1f9dc1a861..01c8d74a6f 100644 --- a/src/main/telemetry/smartport.c +++ b/src/main/telemetry/smartport.c @@ -45,7 +45,7 @@ #include "sensors/compass.h" #include "sensors/gyro.h" -#include "flight/flight.h" +#include "flight/pid.h" #include "flight/imu.h" #include "flight/mixer.h" #include "flight/failsafe.h" diff --git a/src/test/unit/altitude_hold_unittest.cc b/src/test/unit/altitude_hold_unittest.cc index bc2b7e4677..b895a1b1bd 100644 --- a/src/test/unit/altitude_hold_unittest.cc +++ b/src/test/unit/altitude_hold_unittest.cc @@ -24,25 +24,27 @@ extern "C" { #include "common/axis.h" - #include "flight/flight.h" + #include "common/maths.h" - #include "sensors/sensors.h" #include "drivers/sensor.h" #include "drivers/accgyro.h" + + #include "sensors/sensors.h" #include "sensors/acceleration.h" #include "sensors/barometer.h" - #include "flight/mixer.h" - #include "flight/mixer.h" - #include "io/escservo.h" - #include "rx/rx.h" #include "io/rc_controls.h" - #include "config/runtime_config.h" + #include "rx/rx.h" + #include "flight/mixer.h" + #include "flight/pid.h" + #include "flight/imu.h" #include "flight/altitudehold.h" + #include "config/runtime_config.h" + } #include "unittest_macros.h" @@ -148,7 +150,7 @@ uint8_t armingFlags; int32_t sonarAlt; -void gyroGetADC(void) {}; +void gyroUpdate(void) {}; bool sensors(uint32_t mask) { UNUSED(mask); @@ -159,7 +161,7 @@ void updateAccelerationReadings(rollAndPitchTrims_t *rollAndPitchTrims) UNUSED(rollAndPitchTrims); } -void accSum_reset(void) {}; +void imuResetAccelerationSum(void) {}; int32_t applyDeadband(int32_t, int32_t) { return 0; } uint32_t micros(void) { return 0; } diff --git a/src/test/unit/flight_imu_unittest.cc b/src/test/unit/flight_imu_unittest.cc index d82d12fb1d..379b2cfaf6 100644 --- a/src/test/unit/flight_imu_unittest.cc +++ b/src/test/unit/flight_imu_unittest.cc @@ -25,7 +25,6 @@ extern "C" { #include "common/axis.h" #include "common/maths.h" - #include "flight/flight.h" #include "sensors/sensors.h" #include "drivers/sensor.h" @@ -39,6 +38,7 @@ extern "C" { #include "config/runtime_config.h" #include "flight/mixer.h" + #include "flight/pid.h" #include "flight/imu.h" } @@ -53,19 +53,19 @@ TEST(FlightImuTest, TestCalculateHeading) { //TODO: Add test cases using the Z dimension. t_fp_vector north = {.A={1.0f, 0.0f, 0.0f}}; - EXPECT_EQ(calculateHeading(&north), 0); + EXPECT_EQ(imuCalculateHeading(&north), 0); t_fp_vector east = {.A={0.0f, 1.0f, 0.0f}}; - EXPECT_EQ(calculateHeading(&east), 90); + EXPECT_EQ(imuCalculateHeading(&east), 90); t_fp_vector south = {.A={-1.0f, 0.0f, 0.0f}}; - EXPECT_EQ(calculateHeading(&south), 180); + EXPECT_EQ(imuCalculateHeading(&south), 180); t_fp_vector west = {.A={0.0f, -1.0f, 0.0f}}; - EXPECT_EQ(calculateHeading(&west), 270); + EXPECT_EQ(imuCalculateHeading(&west), 270); t_fp_vector north_east = {.A={1.0f, 1.0f, 0.0f}}; - EXPECT_EQ(calculateHeading(&north_east), 45); + EXPECT_EQ(imuCalculateHeading(&north_east), 45); } // STUBS @@ -86,9 +86,12 @@ uint16_t flightModeFlags; uint8_t armingFlags; int32_t sonarAlt; +int16_t accADC[XYZ_AXIS_COUNT]; +int16_t gyroADC[XYZ_AXIS_COUNT]; -void gyroGetADC(void) {}; + +void gyroUpdate(void) {}; bool sensors(uint32_t mask) { UNUSED(mask); diff --git a/src/test/unit/ledstrip_unittest.cc b/src/test/unit/ledstrip_unittest.cc index 8ad6e31442..6cd1bf9dcf 100644 --- a/src/test/unit/ledstrip_unittest.cc +++ b/src/test/unit/ledstrip_unittest.cc @@ -24,7 +24,6 @@ extern "C" { #include "common/color.h" #include "common/axis.h" - #include "flight/flight.h" #include "sensors/battery.h" #include "config/runtime_config.h" diff --git a/src/test/unit/rc_controls_unittest.cc b/src/test/unit/rc_controls_unittest.cc index c97348bffe..0c3580f06e 100644 --- a/src/test/unit/rc_controls_unittest.cc +++ b/src/test/unit/rc_controls_unittest.cc @@ -20,14 +20,24 @@ extern "C" { #include "platform.h" + #include "common/maths.h" #include "common/axis.h" - #include "flight/flight.h" - #include "rx/rx.h" + #include "drivers/sensor.h" + #include "drivers/accgyro.h" + + #include "sensors/sensors.h" + #include "sensors/acceleration.h" + #include "io/escservo.h" #include "io/rc_controls.h" + + #include "rx/rx.h" + + #include "flight/pid.h" } + #include "unittest_macros.h" #include "gtest/gtest.h" diff --git a/src/test/unit/telemetry_hott_unittest.cc b/src/test/unit/telemetry_hott_unittest.cc index ad277ba007..51fca8d5a8 100644 --- a/src/test/unit/telemetry_hott_unittest.cc +++ b/src/test/unit/telemetry_hott_unittest.cc @@ -27,22 +27,21 @@ extern "C" { #include "common/axis.h" #include "drivers/system.h" - #include "drivers/serial.h" - #include "io/serial.h" - - #include "config/runtime_config.h" #include "sensors/sensors.h" - - #include "flight/flight.h" - #include "io/gps.h" #include "sensors/battery.h" + #include "io/serial.h" + #include "io/gps.h" + #include "telemetry/telemetry.h" #include "telemetry/hott.h" + #include "flight/pid.h" #include "flight/gps_conversion.h" + + #include "config/runtime_config.h" } #include "unittest_macros.h"