-
Notifications
You must be signed in to change notification settings - Fork 25
/
faults.c
54 lines (43 loc) · 768 Bytes
/
faults.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include "faults.h"
static uint8_t faults = FAULT_NONE;
static uint8_t warnings = WARNING_NONE;
void faults_set_fault(Fault fault)
{
faults |= fault;
}
uint8_t faults_get_faults(void)
{
return faults;
}
void faults_clear_fault(Fault fault)
{
faults &= ~fault;
}
void faults_clear_all_faults(void)
{
faults = FAULT_NONE;
}
bool faults_check_fault(Fault fault)
{
return faults & fault;
}
void faults_set_warning(Warning warning)
{
warnings |= warning;
}
uint8_t faults_get_warnings(void)
{
return warnings;
}
void faults_clear_warnings(Warning warning)
{
warnings &= ~warning;
}
void faults_clear_all_warnings(void)
{
warnings = WARNING_NONE;
}
bool faults_check_warning(Warning warning)
{
return warnings & warning;
}