##// END OF EJS Templates
fsw-0-18...
paul -
r49:dc52a6b9ab4c default
parent child
Show More
@@ -1,248 +1,248
1 1 #############################################################################
2 2 # Makefile for building: bin/fsw
3 # Generated by qmake (2.01a) (Qt 4.8.5) on: Fri Oct 25 13:24:46 2013
3 # Generated by qmake (2.01a) (Qt 4.8.5) on: Fri Oct 25 15:35:04 2013
4 4 # Project: fsw-qt.pro
5 5 # Template: app
6 6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
7 7 #############################################################################
8 8
9 9 ####### Compiler, tools and options
10 10
11 11 CC = sparc-rtems-gcc
12 12 CXX = sparc-rtems-g++
13 DEFINES = -DSW_VERSION_N1=0 -DSW_VERSION_N2=0 -DSW_VERSION_N3=0 -DSW_VERSION_N4=17 -DPRINT_MESSAGES_ON_CONSOLE
13 DEFINES = -DSW_VERSION_N1=0 -DSW_VERSION_N2=0 -DSW_VERSION_N3=0 -DSW_VERSION_N4=18 -DPRINT_MESSAGES_ON_CONSOLE
14 14 CFLAGS = -pipe -O3 -Wall $(DEFINES)
15 15 CXXFLAGS = -pipe -O3 -Wall $(DEFINES)
16 16 INCPATH = -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I../src -I../header
17 17 LINK = sparc-rtems-g++
18 18 LFLAGS =
19 19 LIBS = $(SUBLIBS)
20 20 AR = sparc-rtems-ar rcs
21 21 RANLIB =
22 22 QMAKE = /usr/bin/qmake-qt4
23 23 TAR = tar -cf
24 24 COMPRESS = gzip -9f
25 25 COPY = cp -f
26 26 SED = sed
27 27 COPY_FILE = $(COPY)
28 28 COPY_DIR = $(COPY) -r
29 29 STRIP = sparc-rtems-strip
30 30 INSTALL_FILE = install -m 644 -p
31 31 INSTALL_DIR = $(COPY_DIR)
32 32 INSTALL_PROGRAM = install -m 755 -p
33 33 DEL_FILE = rm -f
34 34 SYMLINK = ln -f -s
35 35 DEL_DIR = rmdir
36 36 MOVE = mv -f
37 37 CHK_DIR_EXISTS= test -d
38 38 MKDIR = mkdir -p
39 39
40 40 ####### Output directory
41 41
42 42 OBJECTS_DIR = obj/
43 43
44 44 ####### Files
45 45
46 46 SOURCES = ../src/wf_handler.c \
47 47 ../src/tc_handler.c \
48 48 ../src/fsw_processing.c \
49 49 ../src/fsw_misc.c \
50 50 ../src/fsw_init.c \
51 51 ../src/fsw_globals.c \
52 52 ../src/fsw_spacewire.c \
53 53 ../src/tc_load_dump_parameters.c \
54 54 ../src/tm_lfr_tc_exe.c \
55 55 ../src/tc_acceptance.c
56 56 OBJECTS = obj/wf_handler.o \
57 57 obj/tc_handler.o \
58 58 obj/fsw_processing.o \
59 59 obj/fsw_misc.o \
60 60 obj/fsw_init.o \
61 61 obj/fsw_globals.o \
62 62 obj/fsw_spacewire.o \
63 63 obj/tc_load_dump_parameters.o \
64 64 obj/tm_lfr_tc_exe.o \
65 65 obj/tc_acceptance.o
66 66 DIST = /usr/lib64/qt4/mkspecs/common/unix.conf \
67 67 /usr/lib64/qt4/mkspecs/common/linux.conf \
68 68 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
69 69 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
70 70 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
71 71 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
72 72 /usr/lib64/qt4/mkspecs/qconfig.pri \
73 73 /usr/lib64/qt4/mkspecs/modules/qt_webkit.pri \
74 74 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
75 75 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
76 76 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
77 77 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
78 78 sparc.pri \
79 79 /usr/lib64/qt4/mkspecs/features/release.prf \
80 80 /usr/lib64/qt4/mkspecs/features/default_post.prf \
81 81 /usr/lib64/qt4/mkspecs/features/shared.prf \
82 82 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
83 83 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
84 84 /usr/lib64/qt4/mkspecs/features/resources.prf \
85 85 /usr/lib64/qt4/mkspecs/features/uic.prf \
86 86 /usr/lib64/qt4/mkspecs/features/yacc.prf \
87 87 /usr/lib64/qt4/mkspecs/features/lex.prf \
88 88 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf \
89 89 fsw-qt.pro
90 90 QMAKE_TARGET = fsw
91 91 DESTDIR = bin/
92 92 TARGET = bin/fsw
93 93
94 94 first: all
95 95 ####### Implicit rules
96 96
97 97 .SUFFIXES: .o .c .cpp .cc .cxx .C
98 98
99 99 .cpp.o:
100 100 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
101 101
102 102 .cc.o:
103 103 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
104 104
105 105 .cxx.o:
106 106 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
107 107
108 108 .C.o:
109 109 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
110 110
111 111 .c.o:
112 112 $(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
113 113
114 114 ####### Build rules
115 115
116 116 all: Makefile $(TARGET)
117 117
118 118 $(TARGET): $(OBJECTS)
119 119 @$(CHK_DIR_EXISTS) bin/ || $(MKDIR) bin/
120 120 $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
121 121
122 122 Makefile: fsw-qt.pro /usr/lib64/qt4/mkspecs/linux-g++/qmake.conf /usr/lib64/qt4/mkspecs/common/unix.conf \
123 123 /usr/lib64/qt4/mkspecs/common/linux.conf \
124 124 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
125 125 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
126 126 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
127 127 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
128 128 /usr/lib64/qt4/mkspecs/qconfig.pri \
129 129 /usr/lib64/qt4/mkspecs/modules/qt_webkit.pri \
130 130 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
131 131 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
132 132 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
133 133 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
134 134 sparc.pri \
135 135 /usr/lib64/qt4/mkspecs/features/release.prf \
136 136 /usr/lib64/qt4/mkspecs/features/default_post.prf \
137 137 /usr/lib64/qt4/mkspecs/features/shared.prf \
138 138 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
139 139 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
140 140 /usr/lib64/qt4/mkspecs/features/resources.prf \
141 141 /usr/lib64/qt4/mkspecs/features/uic.prf \
142 142 /usr/lib64/qt4/mkspecs/features/yacc.prf \
143 143 /usr/lib64/qt4/mkspecs/features/lex.prf \
144 144 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf
145 145 $(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
146 146 /usr/lib64/qt4/mkspecs/common/unix.conf:
147 147 /usr/lib64/qt4/mkspecs/common/linux.conf:
148 148 /usr/lib64/qt4/mkspecs/common/gcc-base.conf:
149 149 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf:
150 150 /usr/lib64/qt4/mkspecs/common/g++-base.conf:
151 151 /usr/lib64/qt4/mkspecs/common/g++-unix.conf:
152 152 /usr/lib64/qt4/mkspecs/qconfig.pri:
153 153 /usr/lib64/qt4/mkspecs/modules/qt_webkit.pri:
154 154 /usr/lib64/qt4/mkspecs/features/qt_functions.prf:
155 155 /usr/lib64/qt4/mkspecs/features/qt_config.prf:
156 156 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf:
157 157 /usr/lib64/qt4/mkspecs/features/default_pre.prf:
158 158 sparc.pri:
159 159 /usr/lib64/qt4/mkspecs/features/release.prf:
160 160 /usr/lib64/qt4/mkspecs/features/default_post.prf:
161 161 /usr/lib64/qt4/mkspecs/features/shared.prf:
162 162 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf:
163 163 /usr/lib64/qt4/mkspecs/features/warn_on.prf:
164 164 /usr/lib64/qt4/mkspecs/features/resources.prf:
165 165 /usr/lib64/qt4/mkspecs/features/uic.prf:
166 166 /usr/lib64/qt4/mkspecs/features/yacc.prf:
167 167 /usr/lib64/qt4/mkspecs/features/lex.prf:
168 168 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf:
169 169 qmake: FORCE
170 170 @$(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
171 171
172 172 dist:
173 173 @$(CHK_DIR_EXISTS) obj/fsw1.0.0 || $(MKDIR) obj/fsw1.0.0
174 174 $(COPY_FILE) --parents $(SOURCES) $(DIST) obj/fsw1.0.0/ && (cd `dirname obj/fsw1.0.0` && $(TAR) fsw1.0.0.tar fsw1.0.0 && $(COMPRESS) fsw1.0.0.tar) && $(MOVE) `dirname obj/fsw1.0.0`/fsw1.0.0.tar.gz . && $(DEL_FILE) -r obj/fsw1.0.0
175 175
176 176
177 177 clean:compiler_clean
178 178 -$(DEL_FILE) $(OBJECTS)
179 179 -$(DEL_FILE) *~ core *.core
180 180
181 181
182 182 ####### Sub-libraries
183 183
184 184 distclean: clean
185 185 -$(DEL_FILE) $(TARGET)
186 186 -$(DEL_FILE) Makefile
187 187
188 188
189 189 grmon:
190 190 cd bin && C:/opt/grmon-eval-2.0.29b/win32/bin/grmon.exe -uart COM4 -u
191 191
192 192 check: first
193 193
194 194 compiler_rcc_make_all:
195 195 compiler_rcc_clean:
196 196 compiler_uic_make_all:
197 197 compiler_uic_clean:
198 198 compiler_image_collection_make_all: qmake_image_collection.cpp
199 199 compiler_image_collection_clean:
200 200 -$(DEL_FILE) qmake_image_collection.cpp
201 201 compiler_yacc_decl_make_all:
202 202 compiler_yacc_decl_clean:
203 203 compiler_yacc_impl_make_all:
204 204 compiler_yacc_impl_clean:
205 205 compiler_lex_make_all:
206 206 compiler_lex_clean:
207 207 compiler_clean:
208 208
209 209 ####### Compile
210 210
211 211 obj/wf_handler.o: ../src/wf_handler.c
212 212 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/wf_handler.o ../src/wf_handler.c
213 213
214 214 obj/tc_handler.o: ../src/tc_handler.c
215 215 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/tc_handler.o ../src/tc_handler.c
216 216
217 217 obj/fsw_processing.o: ../src/fsw_processing.c ../src/fsw_processing_globals.c
218 218 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/fsw_processing.o ../src/fsw_processing.c
219 219
220 220 obj/fsw_misc.o: ../src/fsw_misc.c
221 221 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/fsw_misc.o ../src/fsw_misc.c
222 222
223 223 obj/fsw_init.o: ../src/fsw_init.c ../src/fsw_config.c
224 224 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/fsw_init.o ../src/fsw_init.c
225 225
226 226 obj/fsw_globals.o: ../src/fsw_globals.c
227 227 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/fsw_globals.o ../src/fsw_globals.c
228 228
229 229 obj/fsw_spacewire.o: ../src/fsw_spacewire.c
230 230 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/fsw_spacewire.o ../src/fsw_spacewire.c
231 231
232 232 obj/tc_load_dump_parameters.o: ../src/tc_load_dump_parameters.c
233 233 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/tc_load_dump_parameters.o ../src/tc_load_dump_parameters.c
234 234
235 235 obj/tm_lfr_tc_exe.o: ../src/tm_lfr_tc_exe.c
236 236 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/tm_lfr_tc_exe.o ../src/tm_lfr_tc_exe.c
237 237
238 238 obj/tc_acceptance.o: ../src/tc_acceptance.c
239 239 $(CC) -c $(CFLAGS) $(INCPATH) -o obj/tc_acceptance.o ../src/tc_acceptance.c
240 240
241 241 ####### Install
242 242
243 243 install: FORCE
244 244
245 245 uninstall: FORCE
246 246
247 247 FORCE:
248 248
1 NO CONTENT: modified file, binary diff hidden
@@ -1,74 +1,74
1 1 TEMPLATE = app
2 2 # CONFIG += console v8 sim
3 3 # CONFIG options = verbose *** boot_messages *** debug_messages *** cpu_usage_report *** stack_report *** gsa
4 4 CONFIG += console verbose
5 5 CONFIG -= qt
6 6
7 7 include(./sparc.pri)
8 8
9 9 # flight software version
10 SWVERSION=-0-17
10 SWVERSION=-0-18
11 11 DEFINES += SW_VERSION_N1=0
12 12 DEFINES += SW_VERSION_N2=0
13 13 DEFINES += SW_VERSION_N3=0
14 DEFINES += SW_VERSION_N4=17
14 DEFINES += SW_VERSION_N4=18
15 15
16 16 contains( CONFIG, verbose ) {
17 17 DEFINES += PRINT_MESSAGES_ON_CONSOLE
18 18 }
19 19
20 20 contains( CONFIG, cpu_usage_report ) {
21 21 DEFINES += PRINT_TASK_STATISTICS
22 22 }
23 23
24 24 contains( CONFIG, stack_report ) {
25 25 DEFINES += PRINT_STACK_REPORT
26 26 }
27 27
28 28 contains( CONFIG, boot_messages ) {
29 29 DEFINES += BOOT_MESSAGES
30 30 }
31 31
32 32 #doxygen.target = doxygen
33 33 #doxygen.commands = doxygen ../doc/Doxyfile
34 34 #QMAKE_EXTRA_TARGETS += doxygen
35 35
36 36 TARGET = fsw
37 37 contains( CONFIG, gsa ) {
38 38 DEFINES += GSA
39 39 TARGET = fsw-gsa
40 40 }
41 41
42 42 INCLUDEPATH += \
43 43 ../src \
44 44 ../header
45 45
46 46 SOURCES += \
47 47 ../src/wf_handler.c \
48 48 ../src/tc_handler.c \
49 49 ../src/fsw_processing.c \
50 50 ../src/fsw_misc.c \
51 51 ../src/fsw_init.c \
52 52 ../src/fsw_globals.c \
53 53 ../src/fsw_spacewire.c \
54 54 ../src/tc_load_dump_parameters.c \
55 55 ../src/tm_lfr_tc_exe.c \
56 56 ../src/tc_acceptance.c
57 57
58 58
59 59 HEADERS += \
60 60 ../header/wf_handler.h \
61 61 ../header/tc_handler.h \
62 62 ../header/grlib_regs.h \
63 63 ../header/fsw_processing.h \
64 64 ../header/fsw_params.h \
65 65 ../header/fsw_misc.h \
66 66 ../header/fsw_init.h \
67 67 ../header/ccsds_types.h \
68 68 ../header/fsw_params_processing.h \
69 69 ../header/fsw_spacewire.h \
70 70 ../header/tm_byte_positions.h \
71 71 ../header/tc_load_dump_parameters.h \
72 72 ../header/tm_lfr_tc_exe.h \
73 73 ../header/tc_acceptance.h
74 74
@@ -1,233 +1,233
1 1 #ifndef FSW_PARAMS_H_INCLUDED
2 2 #define FSW_PARAMS_H_INCLUDED
3 3
4 4 #include "grlib_regs.h"
5 5 #include "fsw_params_processing.h"
6 6 #include "tm_byte_positions.h"
7 7 #include "ccsds_types.h"
8 8
9 9 #define GRSPW_DEVICE_NAME "/dev/grspw0"
10 10 #define UART_DEVICE_NAME "/dev/console"
11 11
12 12 //************************
13 13 // flight software version
14 14 // this parameters is handled by the Qt project options
15 15
16 16 //**********
17 17 // LFR MODES
18 18 #define LFR_MODE_STANDBY 0
19 19 #define LFR_MODE_NORMAL 1
20 20 #define LFR_MODE_BURST 2
21 21 #define LFR_MODE_SBM1 3
22 22 #define LFR_MODE_SBM2 4
23 23 #define LFR_MODE_NORMAL_CWF_F3 5
24 24
25 25 #define RTEMS_EVENT_MODE_STANDBY RTEMS_EVENT_0
26 26 #define RTEMS_EVENT_MODE_NORMAL RTEMS_EVENT_1
27 27 #define RTEMS_EVENT_MODE_BURST RTEMS_EVENT_2
28 28 #define RTEMS_EVENT_MODE_SBM1 RTEMS_EVENT_3
29 29 #define RTEMS_EVENT_MODE_SBM2 RTEMS_EVENT_4
30 30 #define RTEMS_EVENT_MODE_SBM2_WFRM RTEMS_EVENT_5
31 31
32 32 //****************************
33 33 // LFR DEFAULT MODE PARAMETERS
34 34 // COMMON
35 35 #define DEFAULT_SY_LFR_COMMON0 0x00
36 36 #define DEFAULT_SY_LFR_COMMON1 0x10 // default value 0 0 0 1 0 0 0 0
37 37 // NORM
38 38 #define SY_LFR_N_SWF_L 2048 // nb sample
39 39 #define SY_LFR_N_SWF_P 300 // sec
40 40 #define SY_LFR_N_ASM_P 3600 // sec
41 41 #define SY_LFR_N_BP_P0 4 // sec
42 42 #define SY_LFR_N_BP_P1 20 // sec
43 43 #define MIN_DELTA_SNAPSHOT 16 // sec
44 44 // BURST
45 45 #define DEFAULT_SY_LFR_B_BP_P0 1 // sec
46 46 #define DEFAULT_SY_LFR_B_BP_P1 5 // sec
47 47 // SBM1
48 48 #define DEFAULT_SY_LFR_S1_BP_P0 1 // sec
49 49 #define DEFAULT_SY_LFR_S1_BP_P1 1 // sec
50 50 // SBM2
51 51 #define DEFAULT_SY_LFR_S2_BP_P0 1 // sec
52 52 #define DEFAULT_SY_LFR_S2_BP_P1 5 // sec
53 53 // ADDITIONAL PARAMETERS
54 54 #define TIME_BETWEEN_TWO_SWF_PACKETS 30 // nb x 10 ms => 300 ms
55 55 #define TIME_BETWEEN_TWO_CWF3_PACKETS 1000 // nb x 10 ms => 10 s
56 56 // STATUS WORD
57 57 #define DEFAULT_STATUS_WORD_BYTE0 0x0d // [0000] [1] [101] mode 4 bits / SPW enabled 1 bit / state is run 3 bits
58 58 #define DEFAULT_STATUS_WORD_BYTE1 0x00
59 59 //
60 60 #define SY_LFR_DPU_CONNECT_TIMEOUT 100 // 100 * 10 ms = 1 s
61 61 #define SY_LFR_DPU_CONNECT_ATTEMPT 3
62 62 //****************************
63 63
64 64 //*****************************
65 65 // APB REGISTERS BASE ADDRESSES
66 66 #define REGS_ADDR_APBUART 0x80000100
67 67 #define REGS_ADDR_GPTIMER 0x80000300
68 68 #define REGS_ADDR_GRSPW 0x80000500
69 69 #define REGS_ADDR_TIME_MANAGEMENT 0x80000600
70 70 #define REGS_ADDR_SPECTRAL_MATRIX 0x80000f00
71 71
72 72 #ifdef GSA
73 73 #else
74 74 #define REGS_ADDR_WAVEFORM_PICKER 0x80000f20
75 75 #endif
76 76
77 77 #define APBUART_CTRL_REG_MASK_DB 0xfffff7ff
78 78 #define APBUART_SCALER_RELOAD_VALUE 0x00000050 // 25 MHz => about 38400 (0x50)
79 79
80 80 //**********
81 81 // IRQ LINES
82 82 #define IRQ_SM 9
83 83 #define IRQ_SPARC_SM 0x19 // see sparcv8.pdf p.76 for interrupt levels
84 84 #define IRQ_WF 10
85 85 #define IRQ_SPARC_WF 0x1a // see sparcv8.pdf p.76 for interrupt levels
86 86 #define IRQ_TIME1 12
87 87 #define IRQ_SPARC_TIME1 0x1c // see sparcv8.pdf p.76 for interrupt levels
88 88 #define IRQ_TIME2 13
89 89 #define IRQ_SPARC_TIME2 0x1d // see sparcv8.pdf p.76 for interrupt levels
90 90 #define IRQ_WAVEFORM_PICKER 14
91 91 #define IRQ_SPARC_WAVEFORM_PICKER 0x1e // see sparcv8.pdf p.76 for interrupt levels
92 92 #define IRQ_SPECTRAL_MATRIX 6
93 93 #define IRQ_SPARC_SPECTRAL_MATRIX 0x16 // see sparcv8.pdf p.76 for interrupt levels
94 94
95 95 //*****
96 96 // TIME
97 97 #define CLKDIV_SM_SIMULATOR (10000 - 1) // 10 ms
98 98 #define CLKDIV_WF_SIMULATOR (10000000 - 1) // 10 000 000 * 1 us = 10 s
99 99 #define TIMER_SM_SIMULATOR 1
100 100 #define TIMER_WF_SIMULATOR 2
101 101 #define HK_PERIOD 100 // 100 * 10ms => 1sec
102 102
103 103 //**********
104 104 // LPP CODES
105 105 #define LFR_SUCCESSFUL 0
106 106 #define LFR_DEFAULT 1
107 107
108 108 //******
109 109 // RTEMS
110 110 #define TASKID_RECV 1
111 111 #define TASKID_ACTN 2
112 112 #define TASKID_SPIQ 3
113 113 #define TASKID_SMIQ 4
114 114 #define TASKID_STAT 5
115 115 #define TASKID_AVF0 6
116 116 #define TASKID_BPF0 7
117 117 #define TASKID_WFRM 8
118 118 #define TASKID_DUMB 9
119 119 #define TASKID_HOUS 10
120 120 #define TASKID_MATR 11
121 121 #define TASKID_CWF3 12
122 122 #define TASKID_CWF2 13
123 123 #define TASKID_CWF1 14
124 124 #define TASKID_SEND 15
125 125 #define TASKID_WTDG 16
126 126
127 127 #define TASK_PRIORITY_SPIQ 5
128 128 #define TASK_PRIORITY_SMIQ 10
129 129 //
130 130 #define TASK_PRIORITY_WTDG 20
131 131 //
132 #define TASK_PRIORITY_RECV 30
133 #define TASK_PRIORITY_ACTN 30
134 //
135 132 #define TASK_PRIORITY_HOUS 40
136 133 #define TASK_PRIORITY_CWF1 40
137 134 #define TASK_PRIORITY_CWF2 40
138 135 #define TASK_PRIORITY_WFRM 40
139 136 #define TASK_PRIORITY_CWF3 40
140 137 //
141 138 #define TASK_PRIORITY_SEND 40
142 139 //
140 #define TASK_PRIORITY_RECV 50
141 #define TASK_PRIORITY_ACTN 50
142 //
143 143 #define TASK_PRIORITY_AVF0 60
144 144 #define TASK_PRIORITY_BPF0 60
145 145 #define TASK_PRIORITY_MATR 100
146 146 #define TASK_PRIORITY_STAT 200
147 147 #define TASK_PRIORITY_DUMB 200
148 148
149 149 #define ACTION_MSG_QUEUE_COUNT 10
150 150 #define ACTION_MSG_PKTS_COUNT 50
151 151 #define ACTION_MSG_PKTS_MAX_SIZE (PACKET_LENGTH_HK + CCSDS_TC_TM_PACKET_OFFSET + CCSDS_PROTOCOLE_EXTRA_BYTES)
152 152 #define ACTION_MSG_SPW_IOCTL_SEND_SIZE 24 // hlen *hdr dlen *data sent options
153 153
154 154 #define QUEUE_RECV 0
155 155 #define QUEUE_SEND 1
156 156
157 157 //*******
158 158 // MACROS
159 159 #ifdef PRINT_MESSAGES_ON_CONSOLE
160 160 #define PRINTF(x) printf(x);
161 161 #define PRINTF1(x,y) printf(x,y);
162 162 #define PRINTF2(x,y,z) printf(x,y,z);
163 163 #else
164 164 #define PRINTF(x) ;
165 165 #define PRINTF1(x,y) ;
166 166 #define PRINTF2(x,y,z) ;
167 167 #endif
168 168
169 169 #ifdef BOOT_MESSAGES
170 170 #define BOOT_PRINTF(x) printf(x);
171 171 #define BOOT_PRINTF1(x,y) printf(x,y);
172 172 #define BOOT_PRINTF2(x,y,z) printf(x,y,z);
173 173 #else
174 174 #define BOOT_PRINTF(x) ;
175 175 #define BOOT_PRINTF1(x,y) ;
176 176 #define BOOT_PRINTF2(x,y,z) ;
177 177 #endif
178 178
179 179 #ifdef DEBUG_MESSAGES
180 180 #define DEBUG_PRINTF(x) printf(x);
181 181 #define DEBUG_PRINTF1(x,y) printf(x,y);
182 182 #define DEBUG_PRINTF2(x,y,z) printf(x,y,z);
183 183 #else
184 184 #define DEBUG_PRINTF(x) ;
185 185 #define DEBUG_PRINTF1(x,y) ;
186 186 #define DEBUG_PRINTF2(x,y,z) ;
187 187 #endif
188 188
189 189 #define CPU_USAGE_REPORT_PERIOD 6 // * 10 s = period
190 190
191 191 #define NB_SAMPLES_PER_SNAPSHOT 2048
192 192 #define TIME_OFFSET 2
193 193 #define WAVEFORM_EXTENDED_HEADER_OFFSET 22
194 194 #define NB_BYTES_SWF_BLK (2 * 6)
195 195 #define NB_WORDS_SWF_BLK 3
196 196 #define NB_BYTES_CWF3_LIGHT_BLK 6
197 197 #define WFRM_INDEX_OF_LAST_PACKET 6 // waveforms are transmitted in groups of 2048 blocks, 6 packets of 340 and 1 of 8
198 198
199 199 //******************
200 200 // SEQUENCE COUNTERS
201 201 #define SEQ_CNT_NB_PID 2
202 202 #define SEQ_CNT_NB_CAT 4
203 203 #define SEQ_CNT_NB_DEST_ID 11
204 204 // pid
205 205 #define SEQ_CNT_PID_76 0
206 206 #define SEQ_CNT_PID_79 1
207 207 //cat
208 208 #define SEQ_CNT_CAT_1 0
209 209 #define SEQ_CNT_CAT_4 1
210 210 #define SEQ_CNT_CAT_9 2
211 211 #define SEQ_CNT_CAT_12 3
212 212 // destination id
213 213 #define SEQ_CNT_DST_ID_GROUND 0
214 214 #define SEQ_CNT_DST_ID_MISSION_TIMELINE 1
215 215 #define SEQ_CNT_DST_ID_TC_SEQUENCES 2
216 216 #define SEQ_CNT_DST_ID_RECOVERY_ACTION_CMD 3
217 217 #define SEQ_CNT_DST_ID_BACKUP_MISSION_TIMELINE 4
218 218 #define SEQ_CNT_DST_ID_DIRECT_CMD 5
219 219 #define SEQ_CNT_DST_ID_SPARE_GRD_SRC1 6
220 220 #define SEQ_CNT_DST_ID_SPARE_GRD_SRC2 7
221 221 #define SEQ_CNT_DST_ID_OBCP 8
222 222 #define SEQ_CNT_DST_ID_SYSTEM_CONTROL 9
223 223 #define SEQ_CNT_DST_ID_AOCS 10
224 224
225 225 struct param_local_str{
226 226 unsigned int local_sbm1_nb_cwf_sent;
227 227 unsigned int local_sbm1_nb_cwf_max;
228 228 unsigned int local_sbm2_nb_cwf_sent;
229 229 unsigned int local_sbm2_nb_cwf_max;
230 230 unsigned int local_nb_interrupt_f0_MAX;
231 231 };
232 232
233 233 #endif // FSW_PARAMS_H_INCLUDED
General Comments 0
You need to be logged in to leave comments. Login now