1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-19 22:35:23 +03:00

CF/BF - First cut of allow building of the OSD SLAVE board without all

the flight controller code.

Likely the dependencies can be further improved.  This is a
minimal-impact solution while there are a lot of other Betaflight PR's
still pending.
This commit is contained in:
Hydra 2017-04-09 18:16:10 +01:00 committed by Dominic Clifton
parent 2ec39de031
commit 2b1dac4c6d
38 changed files with 923 additions and 409 deletions

View file

@ -29,7 +29,6 @@
#include "common/filter.h"
#include "config/feature.h"
#include "config/config_profile.h"
#include "config/parameter_group.h"
#include "config/parameter_group_ids.h"
@ -49,10 +48,12 @@
#include "fc/cli.h"
#include "fc/fc_dispatch.h"
#ifdef USE_FC
#include "flight/altitude.h"
#include "flight/imu.h"
#include "flight/mixer.h"
#include "flight/pid.h"
#endif
#include "io/beeper.h"
#include "io/dashboard.h"
@ -130,6 +131,7 @@ void taskBatteryAlerts(timeUs_t currentTimeUs)
batteryUpdateAlarms();
}
#ifdef USE_FC
static void taskUpdateRxMain(timeUs_t currentTimeUs)
{
processRx(currentTimeUs);
@ -153,6 +155,7 @@ static void taskUpdateRxMain(timeUs_t currentTimeUs)
}
#endif
}
#endif
#ifdef MAG
static void taskUpdateCompass(timeUs_t currentTimeUs)
@ -242,6 +245,7 @@ void osdSlaveTasksInit(void)
}
#endif
#ifdef USE_FC
void fcTasksInit(void)
{
schedulerInit();
@ -343,6 +347,7 @@ void fcTasksInit(void)
setTaskEnabled(TASK_GYRO_DATA_ANALYSE, true);
#endif
}
#endif
cfTask_t cfTasks[TASK_COUNT] = {
[TASK_SYSTEM] = {
@ -352,6 +357,7 @@ cfTask_t cfTasks[TASK_COUNT] = {
.staticPriority = TASK_PRIORITY_MEDIUM_HIGH,
},
#ifdef USE_FC
[TASK_GYROPID] = {
.taskName = "PID",
.subTaskName = "GYRO",
@ -381,6 +387,7 @@ cfTask_t cfTasks[TASK_COUNT] = {
.desiredPeriod = TASK_PERIOD_HZ(50), // If event-based scheduling doesn't work, fallback to periodic scheduling
.staticPriority = TASK_PRIORITY_HIGH,
},
#endif
[TASK_SERIAL] = {
.taskName = "SERIAL",
@ -395,12 +402,14 @@ cfTask_t cfTasks[TASK_COUNT] = {
#endif
},
#ifdef USE_FC
[TASK_DISPATCH] = {
.taskName = "DISPATCH",
.taskFunc = dispatchProcess,
.desiredPeriod = TASK_PERIOD_HZ(1000),
.staticPriority = TASK_PRIORITY_HIGH,
},
#endif
[TASK_BATTERY_ALERTS] = {
.taskName = "BATTERY_ALERTS",
@ -421,6 +430,8 @@ cfTask_t cfTasks[TASK_COUNT] = {
.desiredPeriod = TASK_PERIOD_HZ(50),
.staticPriority = TASK_PRIORITY_MEDIUM,
},
#ifdef USE_FC
#ifdef BEEPER
[TASK_BEEPER] = {
.taskName = "BEEPER",
@ -474,6 +485,7 @@ cfTask_t cfTasks[TASK_COUNT] = {
.staticPriority = TASK_PRIORITY_LOW,
},
#endif
#endif
#ifdef TRANSPONDER
[TASK_TRANSPONDER] = {
@ -484,6 +496,7 @@ cfTask_t cfTasks[TASK_COUNT] = {
},
#endif
#ifdef USE_FC
#ifdef USE_DASHBOARD
[TASK_DASHBOARD] = {
.taskName = "DASHBOARD",
@ -500,6 +513,8 @@ cfTask_t cfTasks[TASK_COUNT] = {
.staticPriority = TASK_PRIORITY_LOW,
},
#endif
#endif
#ifdef USE_OSD_SLAVE
[TASK_OSD_SLAVE] = {
.taskName = "OSD_SLAVE",
@ -509,6 +524,8 @@ cfTask_t cfTasks[TASK_COUNT] = {
.staticPriority = TASK_PRIORITY_HIGH,
},
#endif
#ifdef USE_FC
#ifdef TELEMETRY
[TASK_TELEMETRY] = {
.taskName = "TELEMETRY",
@ -580,4 +597,5 @@ cfTask_t cfTasks[TASK_COUNT] = {
.staticPriority = TASK_PRIORITY_MEDIUM,
},
#endif
#endif
};