STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
flight_state.c
Go to the documentation of this file.
1
#include "
flight_state.h
"
2
3
flight_state_t
flight_state_next
(
flight_state_t
state
,
flight_event_t
event) {
4
switch
(
state
) {
5
case
FLIGHT_SELF_TEST
:
6
return
event
==
FLIGHT_EV_SELF_TEST_DONE
?
FLIGHT_IDLE
:
state
;
7
case
FLIGHT_IDLE
:
8
return
event
==
FLIGHT_EV_ARM
?
FLIGHT_ARMED
:
state
;
9
case
FLIGHT_ARMED
:
10
if
(event ==
FLIGHT_EV_UNARM
) {
11
return
FLIGHT_IDLE
;
12
}
13
return
event
==
FLIGHT_EV_LAUNCH_DETECTED
?
FLIGHT_LAUNCHED
:
state
;
14
case
FLIGHT_LAUNCHED
:
15
return
event
==
FLIGHT_EV_APOGEE_DETECTED
?
FLIGHT_RECOVERY
:
state
;
16
case
FLIGHT_RECOVERY
:
17
default
:
18
return
state
;
19
}
20
}
21
22
bool
flight_state_logs_to_emmc
(
flight_state_t
state
) {
23
return
state
==
FLIGHT_ARMED
||
state
==
FLIGHT_LAUNCHED
||
24
state
==
FLIGHT_RECOVERY
;
25
}
26
27
const
char
*
flight_state_name
(
flight_state_t
state
) {
28
switch
(
state
) {
29
case
FLIGHT_SELF_TEST
:
30
return
"SELF_TEST"
;
31
case
FLIGHT_IDLE
:
32
return
"IDLE"
;
33
case
FLIGHT_ARMED
:
34
return
"ARMED"
;
35
case
FLIGHT_LAUNCHED
:
36
return
"LAUNCHED"
;
37
case
FLIGHT_RECOVERY
:
38
return
"RECOVERY"
;
39
default
:
40
return
"?"
;
41
}
42
}
flight_state.h
flight_state_t
flight_state_t
Definition
flight_state.h:25
FLIGHT_RECOVERY
@ FLIGHT_RECOVERY
Definition
flight_state.h:30
FLIGHT_SELF_TEST
@ FLIGHT_SELF_TEST
Definition
flight_state.h:26
FLIGHT_ARMED
@ FLIGHT_ARMED
Definition
flight_state.h:28
FLIGHT_IDLE
@ FLIGHT_IDLE
Definition
flight_state.h:27
FLIGHT_LAUNCHED
@ FLIGHT_LAUNCHED
Definition
flight_state.h:29
flight_event_t
flight_event_t
Definition
flight_state.h:34
FLIGHT_EV_LAUNCH_DETECTED
@ FLIGHT_EV_LAUNCH_DETECTED
Definition
flight_state.h:38
FLIGHT_EV_ARM
@ FLIGHT_EV_ARM
Definition
flight_state.h:36
FLIGHT_EV_UNARM
@ FLIGHT_EV_UNARM
Definition
flight_state.h:37
FLIGHT_EV_APOGEE_DETECTED
@ FLIGHT_EV_APOGEE_DETECTED
Definition
flight_state.h:39
FLIGHT_EV_SELF_TEST_DONE
@ FLIGHT_EV_SELF_TEST_DONE
Definition
flight_state.h:35
state
static ActuatorControllerState state
Definition
main.cpp:57
flight_state_next
flight_state_t flight_state_next(flight_state_t state, flight_event_t event)
Definition
flight_state.c:3
flight_state_name
const char * flight_state_name(flight_state_t state)
Definition
flight_state.c:27
flight_state_logs_to_emmc
bool flight_state_logs_to_emmc(flight_state_t state)
Definition
flight_state.c:22
firmware
Flight_Computer
src
app
flight_state.c
Generated by
1.15.0