eive-obsw/linux/fsfwconfig/objects/systemObjectList.h

71 lines
1.6 KiB
C
Raw Normal View History

#ifndef LINUX_FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
#define LINUX_FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
2020-09-16 16:22:36 +02:00
2021-01-14 00:40:30 +01:00
#include <fsfw/objectmanager/frameworkObjects.h>
2022-01-17 13:48:55 +01:00
2021-05-26 14:16:16 +02:00
#include <cstdint>
2020-09-16 16:22:36 +02:00
2022-09-16 12:28:39 +02:00
#include "eive/objects.h"
2022-01-17 13:48:55 +01:00
2020-09-16 16:22:36 +02:00
// The objects will be instantiated in the ID order
2021-06-24 16:17:38 +02:00
// For naming scheme see flight manual
/*
https://egit.irs.uni-stuttgart.de/redmine/projects/eive-flight-manual/wiki/EIVE_Project_IDs
2021-01-14 00:40:30 +01:00
2021-06-24 16:17:38 +02:00
Second byte first four bits is the subsystem:
OBDH 0x0
ACS 0x1
EPS 0x2
PL 0x3
TCS 0x4
COM 0x5
2020-09-16 16:22:36 +02:00
2021-06-24 16:17:38 +02:00
Second byte last four bits is the bus:
None 0x0
GPIO 0x1
SPI 0x2
UART 0x3
I2C 0x4
CAN 0x5
2020-09-16 16:22:36 +02:00
2021-06-24 16:17:38 +02:00
Third byte is an assembly counter if there are multiple redundant devices.
Fourth byte is a unique counter.
2020-09-16 16:22:36 +02:00
2021-06-24 16:17:38 +02:00
*/
namespace objects {
2022-01-17 13:48:55 +01:00
enum sourceObjects : uint32_t {
/* 0x53 reserved for FSFW */
FW_ADDRESS_START = PUS_SERVICE_1_VERIFICATION,
FW_ADDRESS_END = TIME_STAMPER,
PUS_SERVICE_6 = 0x51000500,
2020-12-04 14:14:08 +01:00
2022-01-17 13:48:55 +01:00
CCSDS_IP_CORE_BRIDGE = 0x73500000,
TM_FUNNEL = 0x73000100,
2021-01-23 17:22:40 +01:00
2022-01-17 13:48:55 +01:00
/* 0x49 ('I') for Communication Interfaces **/
ARDUINO_COM_IF = 0x49000000,
CSP_COM_IF = 0x49050001,
I2C_COM_IF = 0x49040002,
UART_COM_IF = 0x49030003,
SPI_MAIN_COM_IF = 0x49020004,
2022-01-17 13:48:55 +01:00
GPIO_IF = 0x49010005,
2022-03-25 17:48:38 +01:00
SCEX_UART_READER = 0x49010006,
2021-01-28 14:55:21 +01:00
2022-01-17 13:48:55 +01:00
/* Custom device handler */
SPI_RW_COM_IF = 0x49020005,
2021-05-02 13:48:39 +02:00
2022-01-17 13:48:55 +01:00
/* 0x54 ('T') for test handlers */
TEST_TASK = 0x54694269,
LIBGPIOD_TEST = 0x54123456,
SPI_TEST = 0x54000010,
UART_TEST = 0x54000020,
2022-02-03 13:37:48 +01:00
I2C_TEST = 0x54000030,
2022-01-17 13:48:55 +01:00
DUMMY_INTERFACE = 0x5400CAFE,
DUMMY_HANDLER = 0x5400AFFE,
P60DOCK_TEST_TASK = 0x00005060,
2022-06-17 08:31:36 +02:00
DUMMY_COM_IF = 0x54000040
2021-06-24 16:17:38 +02:00
};
2020-09-16 16:22:36 +02:00
}
#endif /* LINUX_FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_ */