/* * Academic License - for use in teaching, academic research, and meeting * course requirements at degree granting institutions only. Not for * government, commercial, or other organizational use. * * File: Open0.h * * Code generated for Simulink model 'Open0'. * * Model version : 2.23 * Simulink Coder version : 25.1 (R2025a) 21-Nov-2024 * C/C++ source code generated on : Sat Jun 14 14:25:03 2025 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M * Code generation objectives: * 1. Execution efficiency * 2. RAM efficiency * Validation result: Not run */ #ifndef Open0_h_ #define Open0_h_ #ifndef Open0_COMMON_INCLUDES_ #define Open0_COMMON_INCLUDES_ #include "rtwtypes.h" #include "math.h" #endif /* Open0_COMMON_INCLUDES_ */ #include #include "MW_target_hardware_resources.h" /* Macros for accessing real-time model data structure */ #ifndef rtmGetErrorStatus #define rtmGetErrorStatus(rtm) ((rtm)->errorStatus) #endif #ifndef rtmSetErrorStatus #define rtmSetErrorStatus(rtm, val) ((rtm)->errorStatus = (val)) #endif #define Open0_M (rtM) /* Forward declaration for rtModel */ typedef struct tag_RTM RT_MODEL; /* Constant parameters (default storage) */ typedef struct { /* Expression: dlgSett.sin_table * Referenced by: '/sine_table_values' */ real_T sine_table_values_Value[1002]; } ConstP; /* External inputs (root inport signals with default storage) */ typedef struct { real_T Ud; /* '/Ud' */ real_T Uq; /* '/Uq' */ real_T theta; /* '/theta' */ } ExtU; /* External outputs (root outports fed by signals with default storage) */ typedef struct { real32_T CCR1; /* '/CCR1' */ real32_T CCR2; /* '/CCR2' */ real32_T CCR3; /* '/CCR3' */ } ExtY; /* Real-time Model Data Structure */ struct tag_RTM { const char_T * volatile errorStatus; }; /* External inputs (root inport signals with default storage) */ extern ExtU rtU; /* External outputs (root outports fed by signals with default storage) */ extern ExtY rtY; /* Constant parameters (default storage) */ extern const ConstP rtConstP; /* Model entry point functions */ extern void Open0_initialize(void); extern void Open0_step(void); /* Real-time Model object */ extern RT_MODEL *const rtM; extern volatile boolean_T stopRequested; extern volatile boolean_T runModel; /*- * These blocks were eliminated from the model due to optimizations: * * Block '/D' : Unused code path elimination * Block '/Data Type Duplicate' : Unused code path elimination * Block '/Data Type Propagation' : Unused code path elimination * Block '/Data Type Duplicate' : Unused code path elimination * Block '/Data Type Duplicate' : Unused code path elimination * Block '/Data Type Duplicate' : Unused code path elimination * Block '/Data Type Duplicate1' : Unused code path elimination * Block '/Scope' : Unused code path elimination * Block '/Get_FractionVal' : Eliminate redundant data type conversion * Block '/Offset' : Unused code path elimination * Block '/Unary_Minus' : Unused code path elimination */ /*- * The generated code includes comments that allow you to trace directly * back to the appropriate location in the model. The basic format * is /block_name, where system is the system number (uniquely * assigned by Simulink) and block_name is the name of the block. * * Note that this particular code originates from a subsystem build, * and has its own system numbers different from the parent model. * Refer to the system hierarchy for this subsystem below, and use the * MATLAB hilite_system command to trace the generated code back * to the parent model. For example, * * hilite_system('foc/Open') - opens subsystem foc/Open * hilite_system('foc/Open/Kp') - opens and selects block Kp * * Here is the system hierarchy for this model * * '' : 'foc' * '' : 'foc/Open' * '' : 'foc/Open/Inverse Park Transform' * '' : 'foc/Open/Subsystem1' * '' : 'foc/Open/Inverse Park Transform/Variant' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Two inputs CRL' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup/Interpolation' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup/WrapUp' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup/datatype' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup/WrapUp/Compare To Zero' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup/WrapUp/If Action Subsystem' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup/WrapUp/If Action Subsystem1' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Sine Cosine/Sine-Cosine Lookup/datatype/datatype no change' * '' : 'foc/Open/Inverse Park Transform/Variant/mcb/Inverse Park Transform/Two inputs CRL/Switch_Axis' * '' : 'foc/Open/Subsystem1/MATLAB Function1' * '' : 'foc/Open/Subsystem1/MATLAB Function2' */ #endif /* Open0_h_ */ /* * File trailer for generated code. * * [EOF] */