STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
mode.c File Reference
#include "mode.h"
#include "cmsis_os2.h"
#include "emmc_stm32.h"
#include "gnss_task.h"
#include "idle_task.h"
#include "main.h"
#include "radio_task.h"
#include "sensors_task.h"
Include dependency graph for mode.c:

Go to the source code of this file.

Functions

static void take (void)
void app_set_state (flight_state_t to)
flight_state_t app_state (void)
void app_command (mode_command_t command)

Variables

static osMutexId_t lock
static volatile flight_state_t state = FLIGHT_SELF_TEST

Function Documentation

◆ app_command()

void app_command ( mode_command_t command)

◆ app_set_state()

◆ app_state()

flight_state_t app_state ( void )

Definition at line 48 of file mode.c.

References state.

Referenced by bringup_task(), and CDC_Receive_HS().

◆ take()

void take ( void )
static

Definition at line 14 of file mode.c.

References lock, NULL, osMutexAcquire(), osMutexNew(), osMutexPrioInherit, and osWaitForever.

Referenced by app_set_state().

Variable Documentation

◆ lock

osMutexId_t lock
static

Definition at line 11 of file mode.c.

Referenced by fsw::config::BoardDiscovery::add_or_update_board(), fsw::calibration::CubicCalibrationStore::add_point(), fsw::calibration::IMUCalibration::addCalibrationPoint(), app_set_state(), sequencer::ActuatorCommander::applyForState(), board_spi_lock(), fsw::calibration::IMUCalibration::calibrate(), fsw::calibration::IMUCalibration::calibrateReading(), fsw::calibration::CubicCalibrationStore::channel(), fsw::control::PressureStateMachine::checkTransitions(), fsw::calibration::LcTareStore::clear(), fsw::calibration::LcTareStore::clear_all(), fsw::calibration::CubicCalibrationStore::clear_channel(), sequencer::ActuatorCommander::clearAllManualOverrides(), fsw::elodin::ElodinClient::connect(), fsw::control::ControllerService::controllerLoop(), fsw::calibration::LcTareStore::curves_trusted(), fsw::elodin::ElodinClient::disconnect(), emmc_log_append(), emmc_log_flush(), emmc_log_on_state(), emmc_log_service(), fsw::calibration::CubicCalibrationStore::fit_for(), daq_comms::transport::TCPClient::flush(), fsw::elodin::ElodinClient::flush_batch(), fsw::config::BoardDiscovery::generate_config(), fsw::config::BoardDiscovery::get_board_by_ip(), fsw::config::BoardDiscovery::get_discovered_boards(), fsw::calibration::IMUCalibration::getCalibrationParams(), fsw::control::ControllerService::getLastActuation(), fsw::control::ControllerService::getLastDiagnostics(), fsw::control::PressureStateMachine::getLatestPressures(), fsw::control::RobustDDPController::getState(), fsw::calibration::IMUCalibration::getStatus(), fsw::calibration::RobustCalibrationManager::has_sensor(), fsw::calibration::IMUCalibration::initialize(), fsw::control::ControllerService::initialize(), fsw::calibration::RobustCalibrationManager::initialize_sensor(), fsw::calibration::CubicCalibrationStore::load(), fsw::calibration::LcTareStore::load(), fsw::calibration::RobustCalibrationManager::load_adjustments(), fsw::calibration::CubicCalibrationStore::load_failed(), fsw::calibration::LcTareStore::load_failed(), mount(), fsw::calibration::CubicCalibrationStore::note_capture(), osKernelLock(), osKernelRestoreLock(), osKernelUnlock(), fsw::calibration::RobustCalibrationManager::predict_pressure_psi(), fsw::elodin::ElodinClient::publish(), fsw::elodin::ElodinClient::read_bytes_exact(), fsw::elodin::ElodinClient::read_data(), fsw::elodin::ElodinClient::read_packet(), fsw::elodin::ElodinClient::read_packet_header(), fsw::control::PressureStateMachine::readPressureData(), fsw::calibration::LcTareStore::recompute(), fsw::calibration::LcTareStore::recompute_all(), fsw::calibration::LcTareStore::recompute_stale(), fsw::elodin::ElodinClient::reconnect(), fsw::calibration::CubicCalibrationStore::register_channel(), release_write_chunk(), fsw::control::PressureStateMachine::requestAbort(), fsw::control::PressureStateMachine::requestTransition(), fsw::calibration::RobustCalibrationManager::reseed_sensor(), fsw::calibration::IMUCalibration::reset(), fsw::control::RobustDDPController::reset(), fsw::calibration::RobustCalibrationManager::reset_adjustment(), fsw::calibration::CubicCalibrationStore::save(), fsw::calibration::LcTareStore::save(), fsw::calibration::RobustCalibrationManager::save_adjustments(), fsw::elodin::ElodinClient::send_msg(), fsw::calibration::LcTareStore::set(), fsw::calibration::LcTareStore::set_curves_trusted(), fsw::calibration::CubicCalibrationStore::set_fit_curve(), fsw::control::ControllerService::setCommand(), fsw::control::ControllerService::setFireActive(), sequencer::ActuatorCommander::setManualOverride(), fsw::control::ControllerService::setMeasurement(), fsw::control::ControllerService::setNavState(), fsw::calibration::LcTareStore::size(), fsw::control::RobustDDPController::step(), stop(), fsw::control::ControllerService::subscriberReadLoop(), take(), fsw::calibration::LcTareStore::tare_for(), fsw::calibration::CubicCalibrationStore::uids(), fsw::calibration::LcTareStore::uids(), fsw::calibration::RobustCalibrationManager::update_calibration(), daq_comms::transport::TCPClient::write_all(), daq_comms::transport::TCPClient::write_buffered(), fsw::calibration::RobustCalibrationManager::zero_sensor(), and anonymous_namespace{t7_bridge_main.cpp}::Line::~Line().

◆ state

volatile flight_state_t state = FLIGHT_SELF_TEST
static

Definition at line 12 of file mode.c.