Split power work into own thread

Completely forseeable issue.
Now that we have _more_ ram available, this is a good option to split power related items out into their own thread.
This commit is contained in:
Ben V. Brown
2021-01-16 09:20:23 +11:00
parent 75a2d70080
commit 25e4abee7d
5 changed files with 44 additions and 13 deletions

View File

@@ -107,7 +107,6 @@ inline void readAccelerometer(int16_t &tx, int16_t &ty, int16_t &tz, Orientation
}
}
void startMOVTask(void const *argument __unused) {
postRToSInit();
detectAccelerometerVersion();
osDelay(TICKS_100MS / 2); // wait ~50ms for setup of accel to finalise
lastMovementTime = 0;
@@ -168,6 +167,5 @@ void startMOVTask(void const *argument __unused) {
}
osDelay(TICKS_100MS); // Slow down update rate
power_check();
}
}

View File

@@ -0,0 +1,27 @@
/*
* POWThread.cpp
*
* Created on: 16 Jan 2021
* Author: Ralim
*/
#include "BSP.h"
#include "FreeRTOS.h"
#include "QC3.h"
#include "Settings.h"
#include "cmsis_os.h"
#include "main.hpp"
#include "stdlib.h"
#include "task.h"
// Small worker thread to handle power (mostly QC) related steps
void startPOWTask(void const *argument __unused) {
postRToSInit();
for (;;) {
osDelay(TICKS_100MS); // Slow down update rate
power_check();
}
}