User`s guide

53
/* Model terminate function */
void benchmark_terminate(void)
{
/* (no terminate code required) */
}
/*========================================================================*
* Start of GRT compatible call interface *
*========================================================================*/
void MdlOutputs(int_T tid)
{
benchmark_output(tid);
}
void MdlUpdate(int_T tid)
{
benchmark_update(tid);
}
void MdlInitializeSizes(void)
{
benchmark_M->Sizes.numContStates = (0);/* Number of continuous states */
benchmark_M->Sizes.numY = (0); /* Number of model outputs */
benchmark_M->Sizes.numU = (0); /* Number of model inputs */
benchmark_M->Sizes.sysDirFeedThru = (0);/* The model is not direct feedthrough */
benchmark_M->Sizes.numSampTimes = (1);/* Number of sample times */
benchmark_M->Sizes.numBlocks = (10); /* Number of blocks */
benchmark_M->Sizes.numBlockIO = (4); /* Number of block outputs */
benchmark_M->Sizes.numBlockPrms = (2000);/* Sum of parameter "widths" */
}
void MdlInitializeSampleTimes(void)
{
}
void MdlInitialize(void)
{
}
void MdlStart(void)
{
EALLOW;
GpioMuxRegs.GPAMUX.all &= 32767U;
GpioMuxRegs.GPADIR.all &= 32767U;
EDIS;
/* S-Function Block: <Root>/Timer (c28xevtimer) */
{
configure_timerEV1((unsigned int) 10000U, 5000U, 0, 0, 0, 0);
}
MdlInitialize();
}
RT_MODEL_benchmark *benchmark(void)
{
benchmark_initialize(1);
return benchmark_M;
}