ICAROUS
All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Modules Pages
sch_msgdefs.h
1/*
2** $Id: sch_msgdefs.h 1.3 2017/06/21 15:28:58EDT mdeschu Exp $
3**
4** Copyright (c) 2007-2014 United States Government as represented by the
5** Administrator of the National Aeronautics and Space Administration.
6** All Other Rights Reserved.
7**
8** This software was created at NASA's Goddard Space Flight Center.
9** This software is governed by the NASA Open Source Agreement and may be
10** used, distributed and modified only pursuant to the terms of that
11** agreement.
12**
13** Subsystem: Scheduler (SCH) packet macro definitions
14**
15** Author: David Kobe
16**
17** Notes:
18** These Macro definitions have been put in this file (instead of
19** sch_msg.h) so this file can be included directly into ASIST build
20** test scripts. ASIST RDL files can accept C language #defines but
21** can't handle type definitions. As a result: DO NOT PUT ANY
22** TYPEDEFS OR STRUCTURE DEFINITIONS IN THIS FILE!
23** ADD THEM TO sch_msg.h IF NEEDED!
24**
25**
26*/
27
28#ifndef _sch_msgdefs_
29#define _sch_msgdefs_
30
31/*************************************************************************
32**
33** Include section
34**
35**************************************************************************/
36
37#include "sch_platform_cfg.h"
38
39
40/*************************************************************************
41**
42** SCH application definitions
43**
44**************************************************************************/
45
46/*
47** Table value definitions
48*/
51#define SCH_UNUSED 0
52#define SCH_ENABLED 1
53#define SCH_DISABLED 2
56/*
57** Table Entry Activity Types
58*/
61#define SCH_ACTIVITY_NONE 0
62#define SCH_ACTIVITY_SEND_MSG 1
65/*
66** Synchronized to Mission Elapsed Time States
67*/
70#define SCH_NOT_SYNCHRONIZED 0
71#define SCH_MINOR_SYNCHRONIZED 1
72#define SCH_PENDING_MAJOR_SYNCH 2
73#define SCH_MAJOR_SYNCHRONIZED 4
76/*
77** Major Frame Signal Source Identifiers
78*/
81#define SCH_MAJOR_FS_NONE 0
82#define SCH_MAJOR_FS_CFE_TIME 1
83#define SCH_MAJOR_FS_MINOR_FRAME_TIMER 2
86/*
87** Schedule table group data field masks
88*/
91#define SCH_GROUP_NUMBER_BIT_MASK 0xFF000000
92#define SCH_MULTI_GROUP_BIT_MASK 0x00FFFFFF
95/*
96** Message table definitions
97*/
100#define SCH_MIN_MSG_WORDS (CFE_SB_CMD_HDR_SIZE / 2)
101#define SCH_TABLE_ENTRIES (SCH_TOTAL_SLOTS * SCH_ENTRIES_PER_SLOT)
104#define SCH_NUM_STATUS_BYTES_REQD (((SCH_TABLE_ENTRIES+7)/8)*2)
108/*
109** SCH command packet command codes
110** (SCH_GND_CMD_MID and SCH_SC_CMD_MID)
111*/
146#define SCH_NOOP_CC 0 /* no-op command */
147
195#define SCH_RESET_CC 1 /* Reset HK counters */
196
231#define SCH_ENABLE_CC 2 /* Enable Schedule Table Entry */
232
267#define SCH_DISABLE_CC 3 /* disable schedule table entry */
268
303#define SCH_ENABLE_GROUP_CC 4 /* enable group of entries */
304
339#define SCH_DISABLE_GROUP_CC 5 /* disable group of entries */
340
373#define SCH_ENABLE_SYNC_CC 6 /* enable major frame synchronization */
374
405#define SCH_SEND_DIAG_TLM_CC 7 /* sends diagnostic message packet */
409#endif /* _sch_msgdefs_ */
410
411/************************/
412/* End of File Comment */
413/************************/
414