⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c2812iqsinetest.c

📁 由MATLAB生成的SIN的源代码
💻 C
字号:
/*
 * File: c2812iqsinetest.c
 *
 * Real-Time Workshop code generated for Simulink model c2812iqsinetest.
 *
 * Model version                        : 1.182
 * Real-Time Workshop file version      : 6.3  (R14SP3)  26-Jul-2005
 * Real-Time Workshop file generated on : Sat Dec 13 20:38:58 2008
 * TLC version                          : 6.3 (Aug  5 2005)
 * C source code generated on           : Sat Dec 13 20:38:58 2008
 */

#include "c2812iqsinetest.h"
#include "c2812iqsinetest_private.h"

/* Block signals (auto storage) */
BlockIO_c2812iqsinetest c2812iqsinetest_B;

/* Real-time model */
RT_MODEL_c2812iqsinetest c2812iqsinetest_M_;
RT_MODEL_c2812iqsinetest *c2812iqsinetest_M = &c2812iqsinetest_M_;

/* Model step function */
void c2812iqsinetest_step(void)
{

  /* C28x IQmath Library (stiiqmath_iq) - '<Root>/Float to IQN' */
  {
    {
      int_T i1;

      const real32_T *u0 = &c2812iqsinetest_P.Constant_Value[0];
      int32_T *y0 = c2812iqsinetest_B.i32_temp1;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ4 (u0[i1]);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqmpyi32) - '<S2>/IQN x int32' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp1;
      int32_T *y0 = c2812iqsinetest_B.i32_temp2;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ4mpyI32 (u0[i1], c2812iqsinetest_P.SineFrequency_Value);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqtrig) - '<S2>/Trig Fcn IQN' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp2;
      int32_T *y0 = c2812iqsinetest_B.i32_temp1;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ4sin(u0[i1]);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqmpyi32) - '<S2>/IQN x int1' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp1;
      int32_T *y0 = c2812iqsinetest_B.i32_temp2;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ4mpyI32 (u0[i1], c2812iqsinetest_P.SineAmplitude_Value);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqtof) - '<Root>/IQN to Float3' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp2;
      real32_T *y0 = c2812iqsinetest_B.r32_temp0;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ4toF (u0[i1]);
      }
    }
  }

  /* S-Function Block: <S5>/C28x To Memory (smemsnk) */
  {
    /* Memory Mapped Output */
    const real32_T *memind = (real32_T *) 32768U;

    {
      int_T i1;

      const real32_T *u0 = c2812iqsinetest_B.r32_temp0;

      for (i1=0; i1 < 200; i1++) {
        *(real32_T *)(memind++) = (real32_T) u0[i1];
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iq) - '<Root>/Float to IQN1' */
  {
    {
      int_T i1;

      const real32_T *u0 = &c2812iqsinetest_P.Constant1_Value[0];
      int32_T *y0 = c2812iqsinetest_B.i32_temp2;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ5 (u0[i1]);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqmpyi32) - '<S3>/IQN x int32' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp2;
      int32_T *y0 = c2812iqsinetest_B.i32_temp1;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ5mpyI32 (u0[i1], c2812iqsinetest_P.SineFrequency_Value_c);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqtrig) - '<S3>/Trig Fcn IQN' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp1;
      int32_T *y0 = c2812iqsinetest_B.i32_temp2;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ5sin(u0[i1]);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqmpyi32) - '<S3>/IQN x int1' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp2;
      int32_T *y0 = c2812iqsinetest_B.i32_temp1;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ5mpyI32 (u0[i1], c2812iqsinetest_P.SineAmplitude_Value_o);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqtof) - '<Root>/IQN to Float1' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp1;
      real32_T *y0 = c2812iqsinetest_B.r32_temp0;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ5toF (u0[i1]);
      }
    }
  }

  /* S-Function Block: <S5>/C28x To Memory1 (smemsnk) */
  {
    /* Memory Mapped Output */
    const real32_T *memind = (real32_T *) 33568U;

    {
      int_T i1;

      const real32_T *u0 = c2812iqsinetest_B.r32_temp0;

      for (i1=0; i1 < 200; i1++) {
        *(real32_T *)(memind++) = (real32_T) u0[i1];
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iq) - '<Root>/Float to IQN2' */
  {
    {
      int_T i1;

      const real32_T *u0 = &c2812iqsinetest_P.Constant2_Value[0];
      int32_T *y0 = c2812iqsinetest_B.i32_temp2;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ15 (u0[i1]);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqmpyi32) - '<S4>/IQN x int32' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp2;
      int32_T *y0 = c2812iqsinetest_B.i32_temp1;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ15mpyI32 (u0[i1], c2812iqsinetest_P.SineFrequency_Value_h);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqtrig) - '<S4>/Trig Fcn IQN' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp1;
      int32_T *y0 = c2812iqsinetest_B.i32_temp2;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ15sin(u0[i1]);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqmpyi32) - '<S4>/IQN x int1' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp2;
      int32_T *y0 = c2812iqsinetest_B.i32_temp1;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ15mpyI32 (u0[i1], c2812iqsinetest_P.SineAmplitude_Value_j);
      }
    }
  }

  /* C28x IQmath Library (stiiqmath_iqtof) - '<Root>/IQN to Float2' */
  {
    {
      int_T i1;

      const int32_T *u0 = c2812iqsinetest_B.i32_temp1;
      real32_T *y0 = c2812iqsinetest_B.r32_temp0;

      for (i1=0; i1 < 200; i1++) {
        y0[i1] = _IQ15toF (u0[i1]);
      }
    }
  }

  /* S-Function Block: <S5>/C28x To Memory2 (smemsnk) */
  {
    /* Memory Mapped Output */
    const real32_T *memind = (real32_T *) 34368U;

    {
      int_T i1;

      const real32_T *u0 = c2812iqsinetest_B.r32_temp0;

      for (i1=0; i1 < 200; i1++) {
        *(real32_T *)(memind++) = (real32_T) u0[i1];
      }
    }
  }
}

/* Model initialize function */

void c2812iqsinetest_initialize(boolean_T firstTime)
{

  if (firstTime) {

    /* initialize error status */
    rtmSetErrorStatus(c2812iqsinetest_M, (const char_T *)0);

    /* block I/O */
    (void) memset(((void *)
      &c2812iqsinetest_B),0,sizeof(BlockIO_c2812iqsinetest));

    {

      int_T i;
      void *pVoidBlockIORegion;
      pVoidBlockIORegion = (void *)(&c2812iqsinetest_B.r32_temp0[0]);
      for (i = 0; i < 200; i++) {
        ((real32_T*)pVoidBlockIORegion)[i] = 0.0F;
      }
    }

    /* initialize non-finites */
    rt_InitInfAndNaN(sizeof(real_T));

    /* S-Function Block: <S5>/C28x To Memory (smemsnk) */
    {
      /* Memory Mapped Output */

      const real32_T *memind = (real32_T *) 32768U;

      {
        int_T i1;

        for (i1=0; i1 < 200; i1++) {
          *(real32_T *)(memind++) = (real32_T) 0.0;
        }
      }
    }

    /* S-Function Block: <S5>/C28x To Memory1 (smemsnk) */
    {
      /* Memory Mapped Output */

      const real32_T *memind = (real32_T *) 33568U;

      {
        int_T i1;

        for (i1=0; i1 < 200; i1++) {
          *(real32_T *)(memind++) = (real32_T) 0.0;
        }
      }
    }

    /* S-Function Block: <S5>/C28x To Memory2 (smemsnk) */
    {
      /* Memory Mapped Output */

      const real32_T *memind = (real32_T *) 34368U;

      {
        int_T i1;

        for (i1=0; i1 < 200; i1++) {
          *(real32_T *)(memind++) = (real32_T) 0.0;
        }
      }
    }
  }
}

/* Model terminate function */

void c2812iqsinetest_terminate(void)
{
  /* (no terminate code required) */
}

/* File trailer for Real-Time Workshop generated code.
 *
 * [EOF]
 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -