68 lines
1.8 KiB
C++
68 lines
1.8 KiB
C++
#ifndef LINUX_FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
|
|
#define LINUX_FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
|
|
|
|
#include <fsfw/objectmanager/frameworkObjects.h>
|
|
#include <fsfw/introspection/ClasslessEnum.h>
|
|
|
|
#include <cstdint>
|
|
|
|
#include "commonObjects.h"
|
|
|
|
// The objects will be instantiated in the ID order
|
|
// For naming scheme see flight manual
|
|
/*
|
|
https://egit.irs.uni-stuttgart.de/redmine/projects/eive-flight-manual/wiki/EIVE_Project_IDs
|
|
|
|
Second byte first four bits is the subsystem:
|
|
OBDH 0x0
|
|
ACS 0x1
|
|
EPS 0x2
|
|
PL 0x3
|
|
TCS 0x4
|
|
COM 0x5
|
|
|
|
Second byte last four bits is the bus:
|
|
None 0x0
|
|
GPIO 0x1
|
|
SPI 0x2
|
|
UART 0x3
|
|
I2C 0x4
|
|
CAN 0x5
|
|
|
|
Third byte is an assembly counter if there are multiple redundant devices.
|
|
Fourth byte is a unique counter.
|
|
|
|
*/
|
|
namespace objects {
|
|
FSFW_CLASSLESS_ENUM(systemObjects, uint32_t,
|
|
/* 0x53 reserved for FSFW */
|
|
((PUS_SERVICE_6, 0x51000500, "PUS_SERVICE_6"))
|
|
|
|
((CCSDS_IP_CORE_BRIDGE, 0x73500000, "CCSDS_IP_CORE_BRIDGE"))
|
|
((TM_FUNNEL, 0x73000100, "TM_FUNNEL"))
|
|
|
|
/* 0x49 ('I') for Communication Interfaces **/
|
|
((ARDUINO_COM_IF, 0x49000000, "ARDUINO_COM_IF"))
|
|
((CSP_COM_IF, 0x49050001, "CSP_COM_IF"))
|
|
((I2C_COM_IF, 0x49040002, "I2C_COM_IF"))
|
|
((UART_COM_IF, 0x49030003, "UART_COM_IF"))
|
|
((SPI_MAIN_COM_IF, 0x49020004, "SPI_MAIN_COM_IF"))
|
|
((GPIO_IF, 0x49010005, "GPIO_IF"))
|
|
((SPI_RW_COM_IF, 0x49020005, "SPI_RW_COM_IF"))
|
|
((SPI_RTD_COM_IF, 0x49020006, "SPI_RTD_COM_IF"))
|
|
|
|
/* 0x54 ('T') for test handlers */
|
|
((TEST_TASK, 0x54694269, "TEST_TASK"))
|
|
((LIBGPIOD_TEST, 0x54123456, "LIBGPIOD_TEST"))
|
|
((SPI_TEST, 0x54000010, "SPI_TEST"))
|
|
((UART_TEST, 0x54000020, "UART_TEST"))
|
|
((I2C_TEST, 0x54000030, "I2C_TEST"))
|
|
((DUMMY_INTERFACE, 0x5400CAFE, "DUMMY_INTERFACE"))
|
|
((DUMMY_HANDLER, 0x5400AFFE, "DUMMY_HANDLER"))
|
|
((P60DOCK_TEST_TASK, 0x00005060, "P60DOCK_TEST_TASK"))
|
|
((DUMMY_COM_IF, 0x54000040, "DUMMY_COM_IF"))
|
|
)
|
|
}
|
|
|
|
#endif /* LINUX_FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_ */
|