40 lines
1.2 KiB
C++
40 lines
1.2 KiB
C++
/* Main generated for Simulink Real-Time model Test_LOGICA_3FPWM */
|
|
#include <ModelInfo.hpp>
|
|
#include <utilities.hpp>
|
|
#include "Test_LOGICA_3FPWM.h"
|
|
#include "rte_Test_LOGICA_3FPWM_parameters.h"
|
|
|
|
/* Task wrapper function definitions */
|
|
void Test_LOGICA_3FPWM_Task1(void)
|
|
{
|
|
Test_LOGICA_3FPWM_step();
|
|
}
|
|
/* Task descriptors */
|
|
slrealtime::TaskInfo task_1( 0u, std::bind(Test_LOGICA_3FPWM_Task1), slrealtime::TaskInfo::PERIODIC, 5e-05, 0, 40);
|
|
|
|
/* Executable base address for XCP */
|
|
#ifdef __linux__
|
|
extern char __executable_start;
|
|
static uintptr_t const base_address = reinterpret_cast<uintptr_t>(&__executable_start);
|
|
#else
|
|
/* Set 0 as placeholder, to be parsed later from /proc filesystem */
|
|
static uintptr_t const base_address = 0;
|
|
#endif
|
|
|
|
/* Model descriptor */
|
|
slrealtime::ModelInfo Test_LOGICA_3FPWM_Info =
|
|
{
|
|
"Test_LOGICA_3FPWM",
|
|
Test_LOGICA_3FPWM_initialize,
|
|
Test_LOGICA_3FPWM_terminate,
|
|
[]()->char const*& { return Test_LOGICA_3FPWM_M->errorStatus; },
|
|
[]()->unsigned char& { return Test_LOGICA_3FPWM_M->Timing.stopRequestedFlag; },
|
|
{ task_1 },
|
|
slrealtime::getSegmentVector()
|
|
};
|
|
|
|
int main(int argc, char *argv[]) {
|
|
slrealtime::BaseAddress::set(base_address);
|
|
return slrealtime::runModel(argc, argv, Test_LOGICA_3FPWM_Info);
|
|
}
|