1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-23 08:15:30 +03:00

CJMCU - Allow various features to be compiled out to support.

This commit is contained in:
Dominic Clifton 2014-08-01 00:18:37 +01:00
parent fc93be394f
commit 125f6d1450
16 changed files with 84 additions and 9 deletions

View file

@ -146,9 +146,11 @@ COMMON_SRC = build_config.c \
io/statusindicator.c \ io/statusindicator.c \
rx/rx.c \ rx/rx.c \
rx/pwm.c \ rx/pwm.c \
rx/msp.c \
sensors/acceleration.c \
sensors/battery.c \ sensors/battery.c \
sensors/boardalignment.c \ sensors/boardalignment.c \
sensors/acceleration.c \ sensors/compass.c \
sensors/gyro.c \ sensors/gyro.c \
sensors/initialisation.c \ sensors/initialisation.c \
$(CMSIS_SRC) \ $(CMSIS_SRC) \
@ -157,7 +159,6 @@ COMMON_SRC = build_config.c \
HIGHEND_SRC = io/gps.c \ HIGHEND_SRC = io/gps.c \
io/gps_conversion.c \ io/gps_conversion.c \
io/ledstrip.c \ io/ledstrip.c \
rx/msp.c \
rx/sbus.c \ rx/sbus.c \
rx/sumd.c \ rx/sumd.c \
rx/spektrum.c \ rx/spektrum.c \
@ -166,8 +167,7 @@ HIGHEND_SRC = io/gps.c \
telemetry/hott.c \ telemetry/hott.c \
telemetry/msp.c \ telemetry/msp.c \
sensors/sonar.c \ sensors/sonar.c \
sensors/barometer.c \ sensors/barometer.c
sensors/compass.c
NAZE_SRC = startup_stm32f10x_md_gcc.S \ NAZE_SRC = startup_stm32f10x_md_gcc.S \
drivers/accgyro_adxl345.c \ drivers/accgyro_adxl345.c \
@ -228,9 +228,11 @@ OLIMEXINO_SRC = startup_stm32f10x_md_gcc.S \
CJMCU_SRC = startup_stm32f10x_md_gcc.S \ CJMCU_SRC = startup_stm32f10x_md_gcc.S \
drivers/adc.c \ drivers/adc.c \
drivers/adc_stm32f10x.c \ drivers/adc_stm32f10x.c \
drivers/accgyro_mpu6050.c \
drivers/bus_i2c_stm32f10x.c \ drivers/bus_i2c_stm32f10x.c \
drivers/bus_spi.c \ drivers/bus_spi.c \
drivers/gpio_stm32f10x.c \ drivers/gpio_stm32f10x.c \
drivers/light_led_stm32f10x.c \
drivers/pwm_mapping.c \ drivers/pwm_mapping.c \
drivers/pwm_output.c \ drivers/pwm_output.c \
drivers/pwm_rssi.c \ drivers/pwm_rssi.c \

View file

@ -383,7 +383,9 @@ void activateConfig(void)
generateThrottleCurve(&currentProfile.controlRateConfig, &masterConfig.escAndServoConfig); generateThrottleCurve(&currentProfile.controlRateConfig, &masterConfig.escAndServoConfig);
useGyroConfig(&masterConfig.gyroConfig); useGyroConfig(&masterConfig.gyroConfig);
#ifdef TELEMETRY
useTelemetryConfig(&masterConfig.telemetryConfig); useTelemetryConfig(&masterConfig.telemetryConfig);
#endif
setPIDController(currentProfile.pidController); setPIDController(currentProfile.pidController);
#ifdef GPS #ifdef GPS
gpsUseProfile(&currentProfile.gpsProfile); gpsUseProfile(&currentProfile.gpsProfile);

View file

@ -350,13 +350,17 @@ functionConstraint_t *getConfiguredFunctionConstraint(serialPortFunction_e funct
configuredFunctionConstraint.maxBaudRate = configuredFunctionConstraint.minBaudRate; configuredFunctionConstraint.maxBaudRate = configuredFunctionConstraint.minBaudRate;
break; break;
#ifdef TELEMETRY
case FUNCTION_TELEMETRY: case FUNCTION_TELEMETRY:
configuredFunctionConstraint.minBaudRate = getTelemetryProviderBaudRate(); configuredFunctionConstraint.minBaudRate = getTelemetryProviderBaudRate();
configuredFunctionConstraint.maxBaudRate = configuredFunctionConstraint.minBaudRate; configuredFunctionConstraint.maxBaudRate = configuredFunctionConstraint.minBaudRate;
break; break;
#endif
#ifdef SERIAL_RX
case FUNCTION_SERIAL_RX: case FUNCTION_SERIAL_RX:
updateSerialRxFunctionConstraint(&configuredFunctionConstraint); updateSerialRxFunctionConstraint(&configuredFunctionConstraint);
break; break;
#endif
case FUNCTION_GPS: case FUNCTION_GPS:
configuredFunctionConstraint.maxBaudRate = serialConfig->gps_baudrate; configuredFunctionConstraint.maxBaudRate = serialConfig->gps_baudrate;
break; break;
@ -501,6 +505,7 @@ serialPort_t *openSerialPort(serialPortFunction_e function, serialReceiveCallbac
case SERIAL_PORT_USART2: case SERIAL_PORT_USART2:
serialPort = uartOpen(USART2, callback, baudRate, mode, inversion); serialPort = uartOpen(USART2, callback, baudRate, mode, inversion);
break; break;
#ifdef SOFT_SERIAL
case SERIAL_PORT_SOFTSERIAL1: case SERIAL_PORT_SOFTSERIAL1:
serialPort = openSoftSerial(SOFTSERIAL1, callback, baudRate, inversion); serialPort = openSoftSerial(SOFTSERIAL1, callback, baudRate, inversion);
serialSetMode(serialPort, mode); serialSetMode(serialPort, mode);
@ -509,6 +514,9 @@ serialPort_t *openSerialPort(serialPortFunction_e function, serialReceiveCallbac
serialPort = openSoftSerial(SOFTSERIAL2, callback, baudRate, inversion); serialPort = openSoftSerial(SOFTSERIAL2, callback, baudRate, inversion);
serialSetMode(serialPort, mode); serialSetMode(serialPort, mode);
break; break;
#endif
default:
break;
} }
if (!serialPort) { if (!serialPort) {

View file

@ -232,13 +232,17 @@ void init(void)
} }
#endif #endif
#ifdef LED_STRIP
if (feature(FEATURE_LED_STRIP)) { if (feature(FEATURE_LED_STRIP)) {
ws2811LedStripInit(); ws2811LedStripInit();
ledStripInit(); ledStripInit();
} }
#endif
#ifdef TELEMETRY
if (feature(FEATURE_TELEMETRY)) if (feature(FEATURE_TELEMETRY))
initTelemetry(); initTelemetry();
#endif
previousTime = micros(); previousTime = micros();

View file

@ -263,7 +263,9 @@ void annexCode(void)
updateWarningLed(currentTime); updateWarningLed(currentTime);
} }
#ifdef TELEMETRY
checkTelemetryState(); checkTelemetryState();
#endif
#ifdef LEDRING #ifdef LEDRING
if (feature(FEATURE_LED_RING)) { if (feature(FEATURE_LED_RING)) {
@ -642,11 +644,15 @@ void loop(void)
writeMotors(); writeMotors();
} }
#ifdef TELEMETRY
if (!cliMode && feature(FEATURE_TELEMETRY)) { if (!cliMode && feature(FEATURE_TELEMETRY)) {
handleTelemetry(); handleTelemetry();
} }
#endif
#ifdef LED_STRIP
if (feature(FEATURE_LED_STRIP)) { if (feature(FEATURE_LED_STRIP)) {
updateLedStrip(); updateLedStrip();
} }
#endif
} }

View file

@ -79,6 +79,7 @@ void useRxConfig(rxConfig_t *rxConfigToUse)
rxConfig = rxConfigToUse; rxConfig = rxConfigToUse;
} }
#ifdef SERIAL_RX
void updateSerialRxFunctionConstraint(functionConstraint_t *functionConstraintToUpdate) void updateSerialRxFunctionConstraint(functionConstraint_t *functionConstraintToUpdate)
{ {
switch (rxConfig->serialrx_provider) { switch (rxConfig->serialrx_provider) {
@ -94,6 +95,7 @@ void updateSerialRxFunctionConstraint(functionConstraint_t *functionConstraintTo
break; break;
} }
} }
#endif
void rxInit(rxConfig_t *rxConfig, failsafe_t *initialFailsafe) void rxInit(rxConfig_t *rxConfig, failsafe_t *initialFailsafe)
{ {
@ -106,9 +108,11 @@ void rxInit(rxConfig_t *rxConfig, failsafe_t *initialFailsafe)
failsafe = initialFailsafe; failsafe = initialFailsafe;
#ifdef SERIAL_RX
if (feature(FEATURE_RX_SERIAL)) { if (feature(FEATURE_RX_SERIAL)) {
serialRxInit(rxConfig); serialRxInit(rxConfig);
} }
#endif
if (feature(FEATURE_RX_MSP)) { if (feature(FEATURE_RX_MSP)) {
rxMspInit(rxConfig, &rxRuntimeConfig, &rcReadRawFunc); rxMspInit(rxConfig, &rxRuntimeConfig, &rcReadRawFunc);
@ -119,6 +123,7 @@ void rxInit(rxConfig_t *rxConfig, failsafe_t *initialFailsafe)
} }
} }
#ifdef SERIAL_RX
void serialRxInit(rxConfig_t *rxConfig) void serialRxInit(rxConfig_t *rxConfig)
{ {
bool enabled = false; bool enabled = false;
@ -154,6 +159,7 @@ bool isSerialRxFrameComplete(rxConfig_t *rxConfig)
} }
return false; return false;
} }
#endif
uint8_t calculateChannelRemapping(uint8_t *channelMap, uint8_t channelMapEntryCount, uint8_t channelToRemap) uint8_t calculateChannelRemapping(uint8_t *channelMap, uint8_t channelMapEntryCount, uint8_t channelToRemap)
{ {
@ -171,10 +177,12 @@ void updateRx(void)
{ {
rcDataReceived = false; rcDataReceived = false;
#ifdef SERIAL_RX
// calculate rc stuff from serial-based receivers (spek/sbus) // calculate rc stuff from serial-based receivers (spek/sbus)
if (feature(FEATURE_RX_SERIAL)) { if (feature(FEATURE_RX_SERIAL)) {
rcDataReceived = isSerialRxFrameComplete(rxConfig); rcDataReceived = isSerialRxFrameComplete(rxConfig);
} }
#endif
if (feature(FEATURE_RX_MSP)) { if (feature(FEATURE_RX_MSP)) {
rcDataReceived = rxMspFrameComplete(); rcDataReceived = rxMspFrameComplete();

View file

@ -28,3 +28,9 @@
// #define SOFT_I2C_PB67 // #define SOFT_I2C_PB67
#define SENSORS_SET (SENSOR_ACC) #define SENSORS_SET (SENSOR_ACC)
#define GPS
#define LED_STRIP
#define TELEMETRY
#define SOFT_SERIAL
#define SERIAL_RX

View file

@ -39,6 +39,11 @@
#define BEEPER #define BEEPER
#define LED0 #define LED0
#define LED1 #define LED1
#define GPS
#define SENSORS_SET (SENSOR_ACC) #define SENSORS_SET (SENSOR_ACC)
#define GPS
#define LED_STRIP
#define TELEMETRY
#define SOFT_SERIAL
#define SERIAL_RX

View file

@ -40,10 +40,15 @@
#define BEEPER #define BEEPER
#define LED0 #define LED0
#define LED1 #define LED1
#define GPS
// #define SOFT_I2C // enable to test software i2c // #define SOFT_I2C // enable to test software i2c
// #define SOFT_I2C_PB1011 // If SOFT_I2C is enabled above, need to define pinout as well (I2C1 = PB67, I2C2 = PB1011) // #define SOFT_I2C_PB1011 // If SOFT_I2C is enabled above, need to define pinout as well (I2C1 = PB67, I2C2 = PB1011)
// #define SOFT_I2C_PB67 // #define SOFT_I2C_PB67
#define SENSORS_SET (SENSOR_ACC | SENSOR_BARO | SENSOR_MAG) #define SENSORS_SET (SENSOR_ACC | SENSOR_BARO | SENSOR_MAG)
#define GPS
#define LED_STRIP
#define TELEMETRY
#define SOFT_SERIAL
#define SERIAL_RX

View file

@ -29,6 +29,11 @@
#define GYRO #define GYRO
#define ACC #define ACC
#define GPS
#define SENSORS_SET (SENSOR_ACC) #define SENSORS_SET (SENSOR_ACC)
#define GPS
#define LED_STRIP
#define TELEMETRY
#define SOFT_SERIAL
#define SERIAL_RX

View file

@ -39,10 +39,15 @@
#define BARO #define BARO
#define GYRO #define GYRO
#define MAG #define MAG
#define GPS
// #define SOFT_I2C // enable to test software i2c // #define SOFT_I2C // enable to test software i2c
// #define SOFT_I2C_PB1011 // If SOFT_I2C is enabled above, need to define pinout as well (I2C1 = PB67, I2C2 = PB1011) // #define SOFT_I2C_PB1011 // If SOFT_I2C is enabled above, need to define pinout as well (I2C1 = PB67, I2C2 = PB1011)
// #define SOFT_I2C_PB67 // #define SOFT_I2C_PB67
#define SENSORS_SET (SENSOR_ACC | SENSOR_BARO | SENSOR_MAG) #define SENSORS_SET (SENSOR_ACC | SENSOR_BARO | SENSOR_MAG)
#define GPS
#define LED_STRIP
#define TELEMETRY
#define SOFT_SERIAL
#define SERIAL_RX

View file

@ -41,6 +41,11 @@
#define BEEPER #define BEEPER
#define LED0 #define LED0
#define LED1 #define LED1
#define GPS
#define SENSORS_SET (SENSOR_ACC) #define SENSORS_SET (SENSOR_ACC)
#define GPS
#define LED_STRIP
#define TELEMETRY
#define SOFT_SERIAL
#define SERIAL_RX

View file

@ -24,6 +24,8 @@
#include "platform.h" #include "platform.h"
#ifdef TELEMETRY
#include "common/maths.h" #include "common/maths.h"
#include "common/axis.h" #include "common/axis.h"
@ -383,3 +385,4 @@ void handleFrSkyTelemetry(void)
uint32_t getFrSkyTelemetryProviderBaudRate(void) { uint32_t getFrSkyTelemetryProviderBaudRate(void) {
return FRSKY_BAUDRATE; return FRSKY_BAUDRATE;
} }
#endif

View file

@ -58,6 +58,8 @@
#include "platform.h" #include "platform.h"
#ifdef TELEMETRY
#include "common/axis.h" #include "common/axis.h"
#include "drivers/system.h" #include "drivers/system.h"
@ -446,3 +448,4 @@ void handleHoTTTelemetry(void)
uint32_t getHoTTTelemetryProviderBaudRate(void) { uint32_t getHoTTTelemetryProviderBaudRate(void) {
return HOTT_BAUDRATE; return HOTT_BAUDRATE;
} }
#endif

View file

@ -25,6 +25,10 @@
#include <stdint.h> #include <stdint.h>
#include <string.h> #include <string.h>
#include "platform.h"
#ifdef TELEMETRY
#include "drivers/serial.h" #include "drivers/serial.h"
#include "telemetry/telemetry.h" #include "telemetry/telemetry.h"
#include "io/serial_msp.h" #include "io/serial_msp.h"
@ -37,3 +41,4 @@ void handleMSPTelemetry(void)
{ {
sendMspTelemetry(); sendMspTelemetry();
} }
#endif

View file

@ -21,6 +21,8 @@
#include "platform.h" #include "platform.h"
#ifdef TELEMETRY
#include "drivers/gpio.h" #include "drivers/gpio.h"
#include "drivers/timer.h" #include "drivers/timer.h"
#include "drivers/serial.h" #include "drivers/serial.h"
@ -186,3 +188,4 @@ void handleTelemetry(void)
handleMSPTelemetry(); handleMSPTelemetry();
} }
} }
#endif