#include "core/ObjectFactory.h" #include "core/InitMission.h" #include #include #include #include #include #include #include #include #include #include #define BOARD_NAME "stm32h743zi-nucleo" ObjectManagerIF *objectManager = nullptr; #if FSFW_CPP_OSTREAM_ENABLED == 1 ServiceInterfaceStream sif::debug("DEBUG", true); ServiceInterfaceStream sif::info("INFO", true); ServiceInterfaceStream sif::warning("WARNING", true); ServiceInterfaceStream sif::error("ERROR", true); #endif /** * @brief Core function for the RTEMS BSP, called in Init function. * @return * @author R. Mueller */ int main() { hardware_init(); printf("\n\r%s-- FSFW Example (RTEMS) --\n", sif::ANSI_COLOR_RESET); printf("-- Compiled for %s --\n", BOARD_NAME); printf("-- Compiled on %s %s --\n\r",__DATE__, __TIME__); timeval timeToSet; timeToSet.tv_sec = UNIX_TIMESTAMP; timeToSet.tv_usec = 0; ReturnValue_t clockStatus = Clock::setClock(&timeToSet); if(clockStatus != HasReturnvaluesIF::RETURN_OK) { sif::printError("Clock configuration failed!\n"); } else { sif::printInfo("Clock configured successfully.\n"); } objectManager = new ObjectManager(ObjectFactory::produce); objectManager->initialize(); InitMission::createTasks(); }