Possible Bugfix: Use system clock in Countdown #426

Merged
muellerr merged 3 commits from bugfix_countdown_uses_sysclock into develop 2023-03-03 15:31:29 +01:00
3 changed files with 15 additions and 11 deletions
Showing only changes of commit 53133573e1 - Show all commits

2
fsfw

@ -1 +1 @@
Subproject commit 78cf00315d5bb9a05d47976a564d16c5978f1f41 Subproject commit 64537d442a335500bdc87ff382099de65f0b7aa7

View File

@ -4,6 +4,7 @@
#include <fsfw/globalfunctions/arrayprinter.h> #include <fsfw/globalfunctions/arrayprinter.h>
#include <fsfw/tasks/SemaphoreFactory.h> #include <fsfw/tasks/SemaphoreFactory.h>
#include <fsfw/tasks/TaskFactory.h> #include <fsfw/tasks/TaskFactory.h>
#include <fsfw/timemanager/Stopwatch.h>
#include <fsfw_hal/devicehandlers/devicedefinitions/gyroL3gHelpers.h> #include <fsfw_hal/devicehandlers/devicedefinitions/gyroL3gHelpers.h>
#include <fsfw_hal/devicehandlers/devicedefinitions/mgmLis3Helpers.h> #include <fsfw_hal/devicehandlers/devicedefinitions/mgmLis3Helpers.h>
#include <fsfw_hal/linux/UnixFileGuard.h> #include <fsfw_hal/linux/UnixFileGuard.h>
@ -31,6 +32,9 @@ ReturnValue_t AcsBoardPolling::performOperation(uint8_t operationCode) {
semaphore->acquire(); semaphore->acquire();
// Give all tasks or the PST some time to submit all consecutive requests. // Give all tasks or the PST some time to submit all consecutive requests.
TaskFactory::delayTask(2); TaskFactory::delayTask(2);
{
// Measured to take 0-1 ms in debug build.
// Stopwatch watch;
gyroAdisHandler(gyro0Adis); gyroAdisHandler(gyro0Adis);
gyroAdisHandler(gyro2Adis); gyroAdisHandler(gyro2Adis);
gyroL3gHandler(gyro1L3g); gyroL3gHandler(gyro1L3g);
@ -39,6 +43,7 @@ ReturnValue_t AcsBoardPolling::performOperation(uint8_t operationCode) {
mgmRm3100Handler(mgm3Rm3100); mgmRm3100Handler(mgm3Rm3100);
mgmLis3Handler(mgm0Lis3); mgmLis3Handler(mgm0Lis3);
mgmLis3Handler(mgm2Lis3); mgmLis3Handler(mgm2Lis3);
}
// To prevent task being not reactivated by tardy tasks // To prevent task being not reactivated by tardy tasks
TaskFactory::delayTask(20); TaskFactory::delayTask(20);
} }

View File

@ -19,8 +19,7 @@
GpsHyperionLinuxController::GpsHyperionLinuxController(object_id_t objectId, object_id_t parentId, GpsHyperionLinuxController::GpsHyperionLinuxController(object_id_t objectId, object_id_t parentId,
bool debugHyperionGps) bool debugHyperionGps)
: ExtendedControllerBase(objectId), gpsSet(this), debugHyperionGps(debugHyperionGps) { : ExtendedControllerBase(objectId), gpsSet(this), debugHyperionGps(debugHyperionGps) {}
}
GpsHyperionLinuxController::~GpsHyperionLinuxController() { GpsHyperionLinuxController::~GpsHyperionLinuxController() {
gps_stream(&gps, WATCH_DISABLE, nullptr); gps_stream(&gps, WATCH_DISABLE, nullptr);