Selaa lähdekoodia

update and Simulink can run speed&current loop

Signed-off-by: huhui <huhui@sharkgulf.com>
huhui 4 vuotta sitten
vanhempi
commit
6bb11ce1fa
85 muutettua tiedostoa jossa 64 lisäystä ja 16057 poistoa
  1. 1 0
      .gitignore
  2. 11 4
      Applications/bsp/bsp.h
  3. 1 1
      Applications/bsp/pwm.c
  4. 18 1
      Applications/bsp/uart.c
  5. 6 0
      Applications/os/queue.c
  6. 11 11
      Project/MC100_OS.uvoptx
  7. 5 5
      Project/MC100_OS.uvprojx
  8. BIN
      Simulink/MotorController_FOC.slx
  9. BIN
      Simulink/MotorController_FOC.slx.autosave
  10. BIN
      Simulink/MotorController_FOC.slxc
  11. BIN
      Simulink/MotorController_FOC_ert_rtw/build_exception.mat
  12. 0 16
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.bat
  13. 0 1038
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.c
  14. 0 431
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.h
  15. 0 426
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.mk
  16. 0 7
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.rsp
  17. 0 7
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_comp.rsp
  18. 0 104
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_data.c
  19. 0 82
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_private.h
  20. 0 0
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_ref.rsp
  21. 0 32
      Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_types.h
  22. 0 171
      Simulink/PMSM_Controller_ert_rtw/Shunt_Three_Sample_Point.c
  23. 0 38
      Simulink/PMSM_Controller_ert_rtw/Shunt_Three_Sample_Point.h
  24. BIN
      Simulink/PMSM_Controller_ert_rtw/buildInfo.mat
  25. BIN
      Simulink/PMSM_Controller_ert_rtw/codeInfo.mat
  26. BIN
      Simulink/PMSM_Controller_ert_rtw/codedescriptor.dmr
  27. BIN
      Simulink/PMSM_Controller_ert_rtw/compileInfo.mat
  28. 0 14
      Simulink/PMSM_Controller_ert_rtw/defines.txt
  29. 0 162
      Simulink/PMSM_Controller_ert_rtw/ert_main.c
  30. 0 2094
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_c.html
  31. 0 33
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_codegen_rpt.html
  32. 0 245
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_coderassumptions.html
  33. 0 427
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_contents.html
  34. 0 226
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_data_c.html
  35. 0 880
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_h.html
  36. 0 878
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_interface.html
  37. 0 18
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_metrics.html
  38. 0 182
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_private_h.html
  39. 0 1191
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_reducedblocks.html
  40. 0 18
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_replacements.html
  41. 0 249
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_subsystems.html
  42. 0 177
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_survey.html
  43. 0 7
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_trace.html
  44. 0 82
      Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_types_h.html
  45. 0 360
      Simulink/PMSM_Controller_ert_rtw/html/Shunt_Three_Sample_Point_c.html
  46. 0 94
      Simulink/PMSM_Controller_ert_rtw/html/Shunt_Three_Sample_Point_h.html
  47. 0 184
      Simulink/PMSM_Controller_ert_rtw/html/css/coder_app.css
  48. 0 133
      Simulink/PMSM_Controller_ert_rtw/html/define.js
  49. 0 342
      Simulink/PMSM_Controller_ert_rtw/html/ert_main_c.html
  50. BIN
      Simulink/PMSM_Controller_ert_rtw/html/hilite_warning.png
  51. 0 33
      Simulink/PMSM_Controller_ert_rtw/html/inspect.html
  52. 0 525
      Simulink/PMSM_Controller_ert_rtw/html/js/coder_app.js
  53. 0 14
      Simulink/PMSM_Controller_ert_rtw/html/nav.html
  54. 0 69
      Simulink/PMSM_Controller_ert_rtw/html/navToolbar.html
  55. 0 216
      Simulink/PMSM_Controller_ert_rtw/html/rtGetInf_c.html
  56. 0 88
      Simulink/PMSM_Controller_ert_rtw/html/rtGetInf_h.html
  57. 0 148
      Simulink/PMSM_Controller_ert_rtw/html/rtGetNaN_c.html
  58. 0 84
      Simulink/PMSM_Controller_ert_rtw/html/rtGetNaN_h.html
  59. 0 130
      Simulink/PMSM_Controller_ert_rtw/html/rt_defines_h.html
  60. 0 212
      Simulink/PMSM_Controller_ert_rtw/html/rt_nonfinite_c.html
  61. 0 140
      Simulink/PMSM_Controller_ert_rtw/html/rt_nonfinite_h.html
  62. 0 2091
      Simulink/PMSM_Controller_ert_rtw/html/rtwhilite.js
  63. 0 31
      Simulink/PMSM_Controller_ert_rtw/html/rtwmsg.html
  64. 0 257
      Simulink/PMSM_Controller_ert_rtw/html/rtwreport.css
  65. 0 92
      Simulink/PMSM_Controller_ert_rtw/html/rtwreport_utils.js
  66. 0 210
      Simulink/PMSM_Controller_ert_rtw/html/rtwshrink.js
  67. 0 222
      Simulink/PMSM_Controller_ert_rtw/html/rtwtypes_h.html
  68. 0 559
      Simulink/PMSM_Controller_ert_rtw/html/search.js
  69. BIN
      Simulink/PMSM_Controller_ert_rtw/html/spinner.gif
  70. 0 3
      Simulink/PMSM_Controller_ert_rtw/modelsources.txt
  71. 0 99
      Simulink/PMSM_Controller_ert_rtw/rtGetInf.c
  72. 0 35
      Simulink/PMSM_Controller_ert_rtw/rtGetInf.h
  73. 0 65
      Simulink/PMSM_Controller_ert_rtw/rtGetNaN.c
  74. 0 33
      Simulink/PMSM_Controller_ert_rtw/rtGetNaN.h
  75. 0 56
      Simulink/PMSM_Controller_ert_rtw/rt_defines.h
  76. 0 97
      Simulink/PMSM_Controller_ert_rtw/rt_nonfinite.c
  77. 0 61
      Simulink/PMSM_Controller_ert_rtw/rt_nonfinite.h
  78. 0 4
      Simulink/PMSM_Controller_ert_rtw/rtw_proj.tmw
  79. 0 102
      Simulink/PMSM_Controller_ert_rtw/rtwtypes.h
  80. BIN
      Simulink/PMSM_Controller_ert_rtw/rtwtypeschksum.mat
  81. 0 2
      Simulink/PMSM_Controller_ert_rtw/setup_msvc.bat
  82. BIN
      Simulink/foc_libs.slx
  83. 11 9
      Simulink/init_model.m
  84. BIN
      Simulink/power_mos.slx
  85. BIN
      Simulink/power_mos.slxc

+ 1 - 0
.gitignore

@@ -1,5 +1,6 @@
 .vs
 slprj
+PMSM_Controller_ert_rtw
 output
 Objects
 Output

+ 11 - 4
Applications/bsp/bsp.h

@@ -13,8 +13,8 @@
 #include "bsp/fmc_flash.h"
 #include "bsp/can.h"
 
-#define GD32_DEMO 1
-#define USER_ITMER_BRAKE 1
+//#define GD32_DEMO 1
+#define USER_ITMER_BRAKE 0
 
 #define ADC_REFERENCE_VOLTAGE  3300.0f
 
@@ -25,7 +25,7 @@
 #define ADC_CLOCK (30000000u)
 #define ADC_CLOCK_MHz (30u)
 #define NS_PER_TCLK (8u) /* (1/120000000 * 1000000000) */
-#define NS_2_TCLK(ns) ((ns/NS_PER_TCLK) + 1u) //ns תΪpwmʹ�õ��Ǹ�TIM��clk count
+#define NS_2_TCLK(ns) (((ns)/NS_PER_TCLK) + 1u) //ns תΪpwmʹ�õ��Ǹ�TIM��clk count
 #define FOC_PWM_FS (16000u)
 #define FOC_PWM_period (TIM_CLOCK/FOC_PWM_FS)
 #define FOC_PWM_Half_Period (FOC_PWM_period/2)
@@ -33,10 +33,17 @@
 #define ADC_TRIG_CONV_LATENCY_CYCLES 12.5f
 #define ADC_SAMPLING_CYCLES 7.5f
 
-
+#ifdef GD32_DEMO
+#define TIMER_DT_NS      400U
+#define MOSDRV_DT_NS     400U
+#define HW_DEAD_TIME_NS  (TIMER_DT_NS+MOSDRV_DT_NS)
+#define HW_RISE_TIME_NS  500u
+#define HW_NOISE_TIME_NS 500u
+#else
 #define HW_DEAD_TIME_NS  1200u
 #define HW_RISE_TIME_NS  500u
 #define HW_NOISE_TIME_NS 500u
+#endif
 #define TDead NS_2_TCLK(HW_DEAD_TIME_NS)/* ����ʱ�� */ 
 #define TRise NS_2_TCLK(HW_RISE_TIME_NS)/* MOS ����ʱ��*/
 #define TNoise NS_2_TCLK(HW_NOISE_TIME_NS)/* MOS��������Ŀ�������ʱ�� */

+ 1 - 1
Applications/bsp/pwm.c

@@ -154,7 +154,7 @@ static void _init_pwm_timer(void) {
     timer_breakpara.runoffstate        = TIMER_ROS_STATE_ENABLE;
     timer_breakpara.ideloffstate       = TIMER_IOS_STATE_ENABLE;
     timer_breakpara.protectmode        = TIMER_CCHP_PROT_OFF; 
-    timer_breakpara.deadtime           = 50;
+    timer_breakpara.deadtime           = NS_2_TCLK(TIMER_DT_NS);
     timer_breakpara.breakstate         = TIMER_BREAK_ENABLE;
     timer_breakpara.breakpolarity      = TIMER_BREAK_POLARITY_HIGH;
     timer_breakpara.outputautostate    = TIMER_OUTAUTO_DISABLE;

+ 18 - 1
Applications/bsp/uart.c

@@ -6,6 +6,23 @@
 
 #define SHARK_UART_BAUDRATE				921600
 
+#ifdef GD32_DEMO
+#define SHARK_UART0_com					USART1
+#define SHARK_UART0_tx_port				GPIOA
+#define SHARK_UART0_tx_pin				GPIO_PIN_2
+#define SHARK_UART0_rx_port				GPIOA
+#define SHARK_UART0_rx_pin				GPIO_PIN_3
+#define SHARK_UART0_irq					USART1_IRQn
+#define SHARK_UART0_clk					RCU_USART1
+#define SHARK_UART0_tx_gpio_clk			RCU_GPIOA
+#define SHARK_UART0_rx_gpio_clk			RCU_GPIOA
+#define SHARK_UART0_tx_dma				DMA0
+#define SHARK_UART0_tx_dma_ch			DMA_CH6
+#define SHARK_UART0_tx_dma_clk			RCU_DMA0
+#define SHARK_UART0_rx_dma				DMA0
+#define SHARK_UART0_rx_dma_ch			DMA_CH5
+#define SHARK_UART0_rx_dma_clk			RCU_DMA0
+#else
 #define SHARK_UART0_com					USART2
 #define SHARK_UART0_tx_port				GPIOB
 #define SHARK_UART0_tx_pin				GPIO_PIN_10
@@ -21,7 +38,7 @@
 #define SHARK_UART0_rx_dma				DMA0
 #define SHARK_UART0_rx_dma_ch			DMA_CH2
 #define SHARK_UART0_rx_dma_clk			RCU_DMA0
-
+#endif
 
 // ================================================================================
 #define ENABLE_RX_DMA 1

+ 6 - 0
Applications/os/queue.c

@@ -40,7 +40,9 @@ void *queue_create(u16 queue_count, u16 esize){
 }
 bool queue_put(co_queue_t vqueue, void *data){
 	queue_t *queue = (queue_t *)vqueue;
+	os_disable_irq();
 	if (!_have_write_space(queue)){
+		os_enable_irq();
 		return false;
 	}
 
@@ -50,13 +52,16 @@ bool queue_put(co_queue_t vqueue, void *data){
 	if (queue->w_pos == queue->count * queue->esize){
 		queue->w_pos = 0;
 	}
+	os_enable_irq();
 	return true;
 
 }
 
 bool queue_get(co_queue_t vqueue, void *data) {
 	queue_t *queue = (queue_t *)vqueue;
+	os_disable_irq();
 	if(!_have_read_space(queue)){
+		os_enable_irq();
 		return false;
 	}
 	if (data) {
@@ -66,6 +71,7 @@ bool queue_get(co_queue_t vqueue, void *data) {
 	if (queue->r_pos == queue->count * queue->esize){
 		queue->r_pos = 0;
 	}
+	os_enable_irq();
 	return true;
 }
 

+ 11 - 11
Project/MC100_OS.uvoptx

@@ -117,6 +117,16 @@
         <pMon>Segger\JL2CM3.dll</pMon>
       </DebugOpt>
       <TargetDriverDllRegistry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>UL2CM3</Key>
+          <Name>UL2CM3(-S0 -C0 -P0 ) -FN1 -FC1000 -FD20000000 -FF0GD32F30x_HD -FL010000 -FS08000000 -FP0($$Device:GD32F303RC$Flash\GD32F30x_HD.FLM)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>JL2CM3</Key>
+          <Name>-U81480416 -O78 -S1 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST2 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO7 -FD20000000 -FC1000 -FN1 -FF0GD32F30x_HD.FLM -FS08000000 -FL010000 -FP0($$Device:GD32F303RC$Flash\GD32F30x_HD.FLM)</Name>
+        </SetRegEntry>
         <SetRegEntry>
           <Number>0</Number>
           <Key>ARMRTXEVENTFLAGS</Key>
@@ -135,17 +145,7 @@
         <SetRegEntry>
           <Number>0</Number>
           <Key>DLGUARM</Key>
-          <Name>d</Name>
-        </SetRegEntry>
-        <SetRegEntry>
-          <Number>0</Number>
-          <Key>JL2CM3</Key>
-          <Name>-U81480416 -O78 -S0 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO7 -FD20000000 -FC1000 -FN1 -FF0GD32F30x_HD.FLM -FS08000000 -FL010000 -FP0($$Device:GD32F303CC$Flash\GD32F30x_HD.FLM)</Name>
-        </SetRegEntry>
-        <SetRegEntry>
-          <Number>0</Number>
-          <Key>UL2CM3</Key>
-          <Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0GD32F30x_HD -FS08000000 -FL010000 -FP0($$Device:GD32F303CC$Flash\GD32F30x_HD.FLM))</Name>
+          <Name></Name>
         </SetRegEntry>
       </TargetDriverDllRegistry>
       <Breakpoint/>

+ 5 - 5
Project/MC100_OS.uvprojx

@@ -14,16 +14,16 @@
       <uAC6>0</uAC6>
       <TargetOption>
         <TargetCommonOption>
-          <Device>GD32F303CC</Device>
+          <Device>GD32F303RC</Device>
           <Vendor>GigaDevice</Vendor>
           <PackID>GigaDevice.GD32F30x_DFP.2.0.0</PackID>
           <PackURL>http://gd32mcu.21ic.com/data/documents/yingyongruanjian/</PackURL>
           <Cpu>IRAM(0x20000000,0x0C000) IROM(0x08000000,0x040000) CPUTYPE("Cortex-M4") FPU2 CLOCK(12000000) ELITTLE</Cpu>
           <FlashUtilSpec></FlashUtilSpec>
           <StartupFile></StartupFile>
-          <FlashDriverDll>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0GD32F30x_HD -FS08000000 -FL010000 -FP0($$Device:GD32F303CC$Flash\GD32F30x_HD.FLM))</FlashDriverDll>
+          <FlashDriverDll>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0GD32F30x_HD -FS08000000 -FL010000 -FP0($$Device:GD32F303RC$Flash\GD32F30x_HD.FLM))</FlashDriverDll>
           <DeviceId>0</DeviceId>
-          <RegisterFile>$$Device:GD32F303CC$Device\Include\gd32f30x.h</RegisterFile>
+          <RegisterFile>$$Device:GD32F303RC$Device\Include\gd32f30x.h</RegisterFile>
           <MemoryEnv></MemoryEnv>
           <Cmp></Cmp>
           <Asm></Asm>
@@ -33,7 +33,7 @@
           <SLE66CMisc></SLE66CMisc>
           <SLE66AMisc></SLE66AMisc>
           <SLE66LinkerMisc></SLE66LinkerMisc>
-          <SFDFile>$$Device:GD32F303CC$SVD\GD32F30x_HD.svd</SFDFile>
+          <SFDFile>$$Device:GD32F303RC$SVD\GD32F30x_HD.svd</SFDFile>
           <bCustSvd>0</bCustSvd>
           <UseEnv>0</UseEnv>
           <BinPath></BinPath>
@@ -275,7 +275,7 @@
               </OCR_RVCT3>
               <OCR_RVCT4>
                 <Type>1</Type>
-                <StartAddress>0x8002000</StartAddress>
+                <StartAddress>0x8000000</StartAddress>
                 <Size>0x40000</Size>
               </OCR_RVCT4>
               <OCR_RVCT5>

BIN
Simulink/MotorController_FOC.slx


BIN
Simulink/MotorController_FOC.slx.autosave


BIN
Simulink/MotorController_FOC.slxc


BIN
Simulink/MotorController_FOC_ert_rtw/build_exception.mat


+ 0 - 16
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.bat

@@ -1,16 +0,0 @@
-
-call "setup_msvc.bat"
-
-
-call  "\\DESKTOP-C3O4FD7\D$\Program Files\R2020b\bin\win64\checkMATLABRootForDriveMap.exe" "\\DESKTOP-C3O4FD7\D$\Program Files\R2020b"  > mlEnv.txt
-for /f %%a in (mlEnv.txt) do set "%%a"\n
-cd .
-
-if "%1"=="" (nmake MATLAB_ROOT=%MATLAB_ROOT% ALT_MATLAB_ROOT=%ALT_MATLAB_ROOT% MATLAB_BIN=%MATLAB_BIN% ALT_MATLAB_BIN=%ALT_MATLAB_BIN%  -f PMSM_Controller.mk all) else (nmake MATLAB_ROOT=%MATLAB_ROOT% ALT_MATLAB_ROOT=%ALT_MATLAB_ROOT% MATLAB_BIN=%MATLAB_BIN% ALT_MATLAB_BIN=%ALT_MATLAB_BIN%  -f PMSM_Controller.mk %1)
-@if errorlevel 1 goto error_exit
-
-exit 0
-
-:error_exit
-echo The make command returned an error of %errorlevel%
-exit 1

+ 0 - 1038
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.c

@@ -1,1038 +0,0 @@
-/*
- * File: PMSM_Controller.c
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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
- */
-
-#include "PMSM_Controller.h"
-#include "PMSM_Controller_private.h"
-
-static void rate_scheduler(RT_MODEL *const rtM);
-uint16_T plook_u16u16_evencka(uint16_T u, uint16_T bp0, uint16_T bpSpace,
-  uint32_T maxIndex)
-{
-  uint16_T bpIndex;
-
-  /* Prelookup - Index only
-     Index Search method: 'even'
-     Extrapolation method: 'Clip'
-     Use previous index: 'off'
-     Use last breakpoint for index at or above upper limit: 'on'
-     Remove protection against out-of-range input in generated code: 'off'
-   */
-  if (u <= bp0) {
-    bpIndex = 0U;
-  } else {
-    bpIndex = (uint16_T)((uint32_T)(uint16_T)((uint32_T)u - bp0) / bpSpace);
-    if (bpIndex < maxIndex) {
-    } else {
-      bpIndex = (uint16_T)maxIndex;
-    }
-  }
-
-  return bpIndex;
-}
-
-int32_T div_nde_s32_floor(int32_T numerator, int32_T denominator)
-{
-  return (((numerator < 0) != (denominator < 0)) && (numerator % denominator !=
-           0) ? -1 : 0) + numerator / denominator;
-}
-
-/*
- *   This function updates active task flag for each subrate.
- * The function is called at model base rate, hence the
- * generated code self-manages all its subrates.
- */
-static void rate_scheduler(RT_MODEL *const rtM)
-{
-  /* Compute which subrates run during the next base time step.  Subrates
-   * are an integer multiple of the base rate counter.  Therefore, the subtask
-   * counter is reset when it reaches its limit (zero means run).
-   */
-  (rtM->Timing.TaskCounters.TID[1])++;
-  if ((rtM->Timing.TaskCounters.TID[1]) > 9) {/* Sample time: [6.2E-5s, 0.0s] */
-    rtM->Timing.TaskCounters.TID[1] = 0;
-  }
-}
-
-real_T rt_modd_snf(real_T u0, real_T u1)
-{
-  real_T q;
-  real_T y;
-  boolean_T yEq;
-  y = u0;
-  if (u1 == 0.0) {
-    if (u0 == 0.0) {
-      y = u1;
-    }
-  } else if (rtIsNaN(u0) || rtIsNaN(u1) || rtIsInf(u0)) {
-    y = (rtNaN);
-  } else if (u0 == 0.0) {
-    y = 0.0 / u1;
-  } else if (rtIsInf(u1)) {
-    if ((u1 < 0.0) != (u0 < 0.0)) {
-      y = u1;
-    }
-  } else {
-    y = fmod(u0, u1);
-    yEq = (y == 0.0);
-    if ((!yEq) && (u1 > floor(u1))) {
-      q = fabs(u0 / u1);
-      yEq = !(fabs(q - floor(q + 0.5)) > DBL_EPSILON * q);
-    }
-
-    if (yEq) {
-      y = u1 * 0.0;
-    } else {
-      if ((u0 < 0.0) != (u1 < 0.0)) {
-        y += u1;
-      }
-    }
-  }
-
-  return y;
-}
-
-real_T rt_roundd_snf(real_T u)
-{
-  real_T y;
-  if (fabs(u) < 4.503599627370496E+15) {
-    if (u >= 0.5) {
-      y = floor(u + 0.5);
-    } else if (u > -0.5) {
-      y = u * 0.0;
-    } else {
-      y = ceil(u - 0.5);
-    }
-  } else {
-    y = u;
-  }
-
-  return y;
-}
-
-/* Model step function */
-void PMSM_Controller_step(RT_MODEL *const rtM, int16_T rtU_Vdc, uint16_T rtU_Ts,
-  int16_T rtU_adc_a, int16_T rtU_adc_b, real_T rtU_rotor_angle, int16_T
-  rtU_rotor_speed, int16_T rtU_input_target, uint16_T rtY_pwm_counts[8], uint8_T
-  *rtY_sector)
-{
-  DW *rtDW = rtM->dwork;
-  int32_T rtb_Sum1_tmp;
-  int32_T rtb_Sum3_idx_0;
-  int32_T rtb_Sum3_idx_1;
-  int32_T tmp;
-  int32_T tmp_0;
-  int16_T rtb_Divide;
-  int16_T rtb_Divide4;
-  int16_T rtb_Divide7;
-  int16_T rtb_Multiply_idx_0;
-  int16_T rtb_Multiply_idx_1;
-  int16_T rtb_SignPreIntegrator;
-  int16_T rtb_SignPreSat;
-  int16_T rtb_SignPreSat_k;
-  int16_T rtb_Sum1;
-  int16_T rtb_Sum2;
-  int16_T rtb_Sum3_l;
-  uint16_T rtb_DataTypeConversion3;
-  uint16_T rtb_MultiportSwitch_idx_0;
-  uint16_T rtb_MultiportSwitch_idx_1;
-  uint16_T rtb_o_samp_p1;
-  uint8_T rtb_DataTypeConversion_a;
-  boolean_T rtb_NotEqual;
-
-  /* Gain: '<S1>/Multiply' incorporates:
-   *  Inport: '<Root>/adc_a'
-   *  Inport: '<Root>/adc_b'
-   */
-  rtb_Multiply_idx_0 = (int16_T)((19761 * rtU_adc_a) >> 17);
-  rtb_Multiply_idx_1 = (int16_T)((19761 * rtU_adc_b) >> 17);
-
-  /* Outputs for Atomic SubSystem: '<S1>/controller' */
-  /* PreLookup: '<S23>/a_elecAngle_XA' incorporates:
-   *  Constant: '<S1>/Constant1'
-   *  Gain: '<S1>/Gain'
-   *  Inport: '<Root>/rotor_angle'
-   *  Math: '<S1>/Math Function'
-   */
-  rtb_o_samp_p1 = plook_u16u16_evencka((uint16_T)(57.295779513082323 *
-    rt_modd_snf(rtU_rotor_angle, 6.2831853071795862)), 0U, 1U, 360U);
-
-  /* Sum: '<S15>/Add1' incorporates:
-   *  Product: '<S177>/Divide4'
-   *  Sum: '<S15>/Add'
-   */
-  rtb_Divide4 = (int16_T)-(rtb_Multiply_idx_0 + rtb_Multiply_idx_1);
-
-  /* Gain: '<S20>/Gain1' incorporates:
-   *  Gain: '<S20>/Gain'
-   *  Product: '<S177>/Divide'
-   *  Product: '<S177>/Divide4'
-   *  Sum: '<S20>/Add'
-   *  Sum: '<S20>/Add1'
-   */
-  rtb_Divide = (int16_T)(((((rtb_Multiply_idx_0 << 1) - rtb_Multiply_idx_1) -
-    rtb_Divide4) * 21845) >> 16);
-
-  /* Gain: '<S20>/Gain2' incorporates:
-   *  Product: '<S177>/Divide4'
-   *  Sum: '<S20>/Add2'
-   */
-  rtb_Divide4 = (int16_T)(((rtb_Multiply_idx_1 - rtb_Divide4) * 18919) >> 15);
-
-  /* Sum: '<S22>/Sum1' incorporates:
-   *  Interpolation_n-D: '<S23>/r_cos_M1'
-   *  Interpolation_n-D: '<S23>/r_sin_M1'
-   *  Product: '<S177>/Divide'
-   *  Product: '<S177>/Divide4'
-   *  Product: '<S22>/Divide2'
-   *  Product: '<S22>/Divide3'
-   */
-  rtb_Sum1_tmp = ((rtb_Divide * rtConstP.r_cos_M1_Table[rtb_o_samp_p1]) >> 14) +
-    ((rtb_Divide4 * rtConstP.r_sin_M1_Table[rtb_o_samp_p1]) >> 14);
-  if (rtb_Sum1_tmp > 32767) {
-    rtb_Sum1_tmp = 32767;
-  } else {
-    if (rtb_Sum1_tmp < -32768) {
-      rtb_Sum1_tmp = -32768;
-    }
-  }
-
-  /* Sum: '<S21>/Sum2' incorporates:
-   *  Sum: '<S22>/Sum1'
-   *  UnitDelay: '<S21>/UnitDelay1'
-   */
-  rtb_Sum1_tmp -= rtDW->UnitDelay1_DSTATE[0] >> 16;
-  if (rtb_Sum1_tmp > 32767) {
-    rtb_Sum1_tmp = 32767;
-  } else {
-    if (rtb_Sum1_tmp < -32768) {
-      rtb_Sum1_tmp = -32768;
-    }
-  }
-
-  /* Sum: '<S21>/Sum3' incorporates:
-   *  Constant: '<S15>/Constant'
-   *  Product: '<S21>/Divide3'
-   *  Sum: '<S21>/Sum2'
-   *  UnitDelay: '<S21>/UnitDelay1'
-   */
-  rtb_Sum3_idx_0 = 13107 * rtb_Sum1_tmp + rtDW->UnitDelay1_DSTATE[0];
-
-  /* Sum: '<S22>/Sum6' incorporates:
-   *  Interpolation_n-D: '<S23>/r_cos_M1'
-   *  Interpolation_n-D: '<S23>/r_sin_M1'
-   *  Product: '<S177>/Divide'
-   *  Product: '<S177>/Divide4'
-   *  Product: '<S22>/Divide1'
-   *  Product: '<S22>/Divide4'
-   */
-  rtb_Sum1_tmp = ((rtb_Divide4 * rtConstP.r_cos_M1_Table[rtb_o_samp_p1]) >> 14)
-    - ((rtb_Divide * rtConstP.r_sin_M1_Table[rtb_o_samp_p1]) >> 14);
-  if (rtb_Sum1_tmp > 32767) {
-    rtb_Sum1_tmp = 32767;
-  } else {
-    if (rtb_Sum1_tmp < -32768) {
-      rtb_Sum1_tmp = -32768;
-    }
-  }
-
-  /* Sum: '<S21>/Sum2' incorporates:
-   *  Sum: '<S22>/Sum6'
-   *  UnitDelay: '<S21>/UnitDelay1'
-   */
-  rtb_Sum1_tmp -= rtDW->UnitDelay1_DSTATE[1] >> 16;
-  if (rtb_Sum1_tmp > 32767) {
-    rtb_Sum1_tmp = 32767;
-  } else {
-    if (rtb_Sum1_tmp < -32768) {
-      rtb_Sum1_tmp = -32768;
-    }
-  }
-
-  /* Sum: '<S21>/Sum3' incorporates:
-   *  Constant: '<S15>/Constant'
-   *  Product: '<S21>/Divide3'
-   *  Sum: '<S21>/Sum2'
-   *  UnitDelay: '<S21>/UnitDelay1'
-   */
-  rtb_Sum3_idx_1 = 13107 * rtb_Sum1_tmp + rtDW->UnitDelay1_DSTATE[1];
-
-  /* DataTypeConversion: '<S21>/Data Type Conversion' incorporates:
-   *  Sum: '<S21>/Sum3'
-   */
-  rtb_Multiply_idx_0 = (int16_T)(rtb_Sum3_idx_0 >> 16);
-
-  /* Sum: '<S69>/Sum' incorporates:
-   *  DiscreteIntegrator: '<S60>/Integrator'
-   *  Gain: '<S65>/Proportional Gain'
-   *  Signum: '<S51>/SignPreSat'
-   *  Sum: '<S16>/Sum1'
-   */
-  rtb_Multiply_idx_1 = (int16_T)((((int16_T)(9 * (int16_T)-rtb_Multiply_idx_0) <<
-    15) + (int32_T)((rtDW->Integrator_DSTATE * 1704243LL) >> 23)) >> 15);
-
-  /* Saturate: '<S67>/Saturation' incorporates:
-   *  Product: '<S177>/Divide'
-   *  Signum: '<S51>/SignPreSat'
-   */
-  if (rtb_Multiply_idx_1 > 8960) {
-    rtb_Divide = 8960;
-  } else if (rtb_Multiply_idx_1 < -8960) {
-    rtb_Divide = -8960;
-  } else {
-    rtb_Divide = rtb_Multiply_idx_1;
-  }
-
-  /* End of Saturate: '<S67>/Saturation' */
-
-  /* Sum: '<S16>/Sum3' incorporates:
-   *  Inport: '<Root>/input_target'
-   *  Inport: '<Root>/rotor_speed'
-   */
-  rtb_Sum3_l = (int16_T)(rtU_input_target - rtU_rotor_speed);
-
-  /* Sum: '<S169>/Sum' incorporates:
-   *  DiscreteIntegrator: '<S160>/Integrator'
-   *  Gain: '<S165>/Proportional Gain'
-   *  Signum: '<S151>/SignPreSat'
-   */
-  rtb_SignPreSat = (int16_T)((rtDW->Integrator_DSTATE_i * 26629 < 0 ? -1 : 0) +
-    (rtb_Sum3_l << 4));
-
-  /* Saturate: '<S167>/Saturation' incorporates:
-   *  Signum: '<S151>/SignPreSat'
-   */
-  if (rtb_SignPreSat > 800) {
-    rtb_Divide4 = 800;
-  } else if (rtb_SignPreSat < -800) {
-    rtb_Divide4 = -800;
-  } else {
-    rtb_Divide4 = rtb_SignPreSat;
-  }
-
-  /* End of Saturate: '<S167>/Saturation' */
-
-  /* Sum: '<S16>/Sum2' incorporates:
-   *  DataTypeConversion: '<S21>/Data Type Conversion'
-   *  Sum: '<S21>/Sum3'
-   */
-  rtb_Sum2 = (int16_T)(rtb_Divide4 - (int16_T)(rtb_Sum3_idx_1 >> 16));
-
-  /* Sum: '<S119>/Sum' incorporates:
-   *  DiscreteIntegrator: '<S110>/Integrator'
-   *  Gain: '<S115>/Proportional Gain'
-   *  Signum: '<S101>/SignPreSat'
-   *  Sum: '<S16>/Sum2'
-   */
-  rtb_SignPreSat_k = (int16_T)((((int16_T)(10 * rtb_Sum2) << 15) + (int32_T)
-    ((rtDW->Integrator_DSTATE_p * 1704243LL) >> 23)) >> 15);
-
-  /* Saturate: '<S117>/Saturation' incorporates:
-   *  Signum: '<S101>/SignPreSat'
-   *  Signum: '<S51>/SignPreIntegrator'
-   */
-  if (rtb_SignPreSat_k > 8960) {
-    rtb_SignPreIntegrator = 8960;
-  } else if (rtb_SignPreSat_k < -8960) {
-    rtb_SignPreIntegrator = -8960;
-  } else {
-    rtb_SignPreIntegrator = rtb_SignPreSat_k;
-  }
-
-  /* End of Saturate: '<S117>/Saturation' */
-
-  /* Sum: '<S18>/Sum1' incorporates:
-   *  Interpolation_n-D: '<S23>/r_cos_M1'
-   *  Interpolation_n-D: '<S23>/r_sin_M1'
-   *  Product: '<S177>/Divide'
-   *  Product: '<S18>/Divide2'
-   *  Product: '<S18>/Divide3'
-   *  Signum: '<S51>/SignPreIntegrator'
-   */
-  rtb_Sum1_tmp = ((rtb_Divide * rtConstP.r_sin_M1_Table[rtb_o_samp_p1]) >> 14) +
-    ((rtb_SignPreIntegrator * rtConstP.r_cos_M1_Table[rtb_o_samp_p1]) >> 14);
-  if (rtb_Sum1_tmp > 32767) {
-    rtb_Sum1_tmp = 32767;
-  } else {
-    if (rtb_Sum1_tmp < -32768) {
-      rtb_Sum1_tmp = -32768;
-    }
-  }
-
-  /* Sum: '<S18>/Sum6' incorporates:
-   *  Interpolation_n-D: '<S23>/r_cos_M1'
-   *  Interpolation_n-D: '<S23>/r_sin_M1'
-   *  Product: '<S177>/Divide'
-   *  Product: '<S18>/Divide1'
-   *  Product: '<S18>/Divide4'
-   *  Signum: '<S51>/SignPreIntegrator'
-   */
-  tmp_0 = ((rtb_Divide * rtConstP.r_cos_M1_Table[rtb_o_samp_p1]) >> 14) -
-    ((rtb_SignPreIntegrator * rtConstP.r_sin_M1_Table[rtb_o_samp_p1]) >> 14);
-  if (tmp_0 > 32767) {
-    tmp_0 = 32767;
-  } else {
-    if (tmp_0 < -32768) {
-      tmp_0 = -32768;
-    }
-  }
-
-  /* Product: '<S177>/Divide7' incorporates:
-   *  Constant: '<S177>/Constant3'
-   *  Sum: '<S18>/Sum1'
-   */
-  rtb_Divide7 = (int16_T)((2365 * (int16_T)rtb_Sum1_tmp) >> 10);
-
-  /* MATLAB Function: '<S177>/sector_select' incorporates:
-   *  Product: '<S177>/Divide7'
-   *  Sum: '<S18>/Sum1'
-   *  Sum: '<S18>/Sum6'
-   */
-  if ((int16_T)rtb_Sum1_tmp >= 0) {
-    if ((int16_T)tmp_0 >= 0) {
-      if (rtb_Divide7 > ((int16_T)tmp_0 << 2)) {
-        /* DataTypeConversion: '<S177>/Data Type Conversion' */
-        rtb_DataTypeConversion_a = 2U;
-      } else {
-        /* DataTypeConversion: '<S177>/Data Type Conversion' */
-        rtb_DataTypeConversion_a = 1U;
-      }
-    } else {
-      tmp = -rtb_Divide7;
-      if (-rtb_Divide7 > 32767) {
-        tmp = 32767;
-      }
-
-      if (tmp > ((int16_T)tmp_0 << 2)) {
-        /* DataTypeConversion: '<S177>/Data Type Conversion' */
-        rtb_DataTypeConversion_a = 3U;
-      } else {
-        /* DataTypeConversion: '<S177>/Data Type Conversion' */
-        rtb_DataTypeConversion_a = 2U;
-      }
-    }
-  } else if ((int16_T)tmp_0 >= 0) {
-    tmp = -rtb_Divide7;
-    if (-rtb_Divide7 > 32767) {
-      tmp = 32767;
-    }
-
-    if (tmp > ((int16_T)tmp_0 << 2)) {
-      /* DataTypeConversion: '<S177>/Data Type Conversion' */
-      rtb_DataTypeConversion_a = 5U;
-    } else {
-      /* DataTypeConversion: '<S177>/Data Type Conversion' */
-      rtb_DataTypeConversion_a = 6U;
-    }
-  } else if (rtb_Divide7 > ((int16_T)tmp_0 << 2)) {
-    /* DataTypeConversion: '<S177>/Data Type Conversion' */
-    rtb_DataTypeConversion_a = 4U;
-  } else {
-    /* DataTypeConversion: '<S177>/Data Type Conversion' */
-    rtb_DataTypeConversion_a = 5U;
-  }
-
-  /* End of MATLAB Function: '<S177>/sector_select' */
-
-  /* Product: '<S177>/Divide' incorporates:
-   *  DataTypeConversion: '<S177>/Data Type Conversion6'
-   *  Inport: '<Root>/Ts'
-   *  Inport: '<Root>/Vdc'
-   */
-  rtb_Divide = (int16_T)div_nde_s32_floor((int16_T)rtU_Ts << 10, rtU_Vdc);
-
-  /* Product: '<S177>/Divide8' incorporates:
-   *  Constant: '<S177>/Constant'
-   *  Product: '<S177>/Divide2'
-   *  Product: '<S177>/Divide4'
-   *  Sum: '<S18>/Sum1'
-   */
-  rtb_Sum1_tmp = 2365 * (int16_T)((3547 * (int16_T)rtb_Sum1_tmp) >> 10);
-
-  /* Product: '<S177>/Divide1' incorporates:
-   *  Product: '<S177>/Divide'
-   *  Product: '<S177>/Divide8'
-   */
-  rtb_Sum1 = (int16_T)(((int16_T)(rtb_Sum1_tmp >> 11) * rtb_Divide) >> 12);
-
-  /* Product: '<S177>/Divide3' incorporates:
-   *  Constant: '<S177>/Constant1'
-   *  Signum: '<S51>/SignPreIntegrator'
-   *  Sum: '<S18>/Sum6'
-   */
-  rtb_SignPreIntegrator = (int16_T)((3547 * (int16_T)tmp_0) >> 10);
-
-  /* Product: '<S177>/Divide4' */
-  rtb_Divide4 = (int16_T)(rtb_Sum1_tmp >> 12);
-
-  /* Product: '<S177>/Divide5' incorporates:
-   *  Product: '<S177>/Divide'
-   *  Product: '<S177>/Divide4'
-   *  Signum: '<S51>/SignPreIntegrator'
-   *  Sum: '<S177>/Add'
-   */
-  rtb_Divide7 = (int16_T)(((int16_T)(rtb_SignPreIntegrator + rtb_Divide4) *
-    rtb_Divide) >> 12);
-
-  /* Product: '<S177>/Divide6' incorporates:
-   *  Product: '<S177>/Divide'
-   *  Product: '<S177>/Divide4'
-   *  Signum: '<S51>/SignPreIntegrator'
-   *  Sum: '<S177>/Add1'
-   */
-  rtb_SignPreIntegrator = (int16_T)(((int16_T)(rtb_Divide4 -
-    rtb_SignPreIntegrator) * rtb_Divide) >> 12);
-
-  /* MATLAB Function: '<S177>/phase_time' incorporates:
-   *  DataTypeConversion: '<S177>/Data Type Conversion1'
-   *  DataTypeConversion: '<S177>/Data Type Conversion2'
-   *  Inport: '<Root>/Ts'
-   */
-  switch ((int8_T)rtb_DataTypeConversion_a) {
-   case 1:
-    rtb_Sum1_tmp = -rtb_SignPreIntegrator;
-    if (-rtb_SignPreIntegrator > 32767) {
-      rtb_Sum1_tmp = 32767;
-    }
-
-    tmp_0 = (int16_T)rtU_Ts - (int16_T)rtb_Sum1_tmp;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    tmp_0 -= rtb_Sum1;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    rtb_Divide = (int16_T)rt_roundd_snf((real_T)tmp_0 / 4.0);
-    rtb_Sum1 = (int16_T)((int32_T)rt_roundd_snf((real_T)rtb_Sum1 / 2.0) +
-                         rtb_Divide);
-    rtb_Sum1_tmp = (int32_T)rt_roundd_snf((real_T)(int16_T)rtb_Sum1_tmp / 2.0) +
-      rtb_Sum1;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Divide7 = (int16_T)rtb_Sum1_tmp;
-    break;
-
-   case 2:
-    rtb_Sum1_tmp = (int16_T)rtU_Ts - rtb_Divide7;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Sum1_tmp -= rtb_SignPreIntegrator;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Divide = (int16_T)rt_roundd_snf((real_T)rtb_Sum1_tmp / 4.0);
-    rtb_Divide7 = (int16_T)((int32_T)rt_roundd_snf((real_T)rtb_Divide7 / 2.0) +
-      rtb_Divide);
-    rtb_Sum1_tmp = (int32_T)rt_roundd_snf((real_T)rtb_SignPreIntegrator / 2.0) +
-      rtb_Divide7;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Sum1 = (int16_T)rtb_Sum1_tmp;
-    break;
-
-   case 3:
-    rtb_Sum1_tmp = -rtb_Divide7;
-    if (-rtb_Divide7 > 32767) {
-      rtb_Sum1_tmp = 32767;
-    }
-
-    tmp_0 = (int16_T)rtU_Ts - rtb_Sum1;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    tmp_0 -= (int16_T)rtb_Sum1_tmp;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    rtb_Divide7 = (int16_T)rt_roundd_snf((real_T)tmp_0 / 4.0);
-    rtb_Divide = (int16_T)((int32_T)rt_roundd_snf((real_T)(int16_T)rtb_Sum1_tmp /
-      2.0) + rtb_Divide7);
-    rtb_Sum1_tmp = (int32_T)rt_roundd_snf((real_T)rtb_Sum1 / 2.0) + rtb_Divide;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Sum1 = (int16_T)rtb_Sum1_tmp;
-    break;
-
-   case 4:
-    rtb_Sum1_tmp = -rtb_Sum1;
-    if (-rtb_Sum1 > 32767) {
-      rtb_Sum1_tmp = 32767;
-    }
-
-    tmp_0 = (int16_T)rtU_Ts - (int16_T)rtb_Sum1_tmp;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    tmp_0 -= rtb_SignPreIntegrator;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    rtb_Divide7 = (int16_T)rt_roundd_snf((real_T)tmp_0 / 4.0);
-    rtb_Sum1 = (int16_T)((int32_T)rt_roundd_snf((real_T)rtb_SignPreIntegrator /
-      2.0) + rtb_Divide7);
-    rtb_Sum1_tmp = (int32_T)rt_roundd_snf((real_T)(int16_T)rtb_Sum1_tmp / 2.0) +
-      rtb_Sum1;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Divide = (int16_T)rtb_Sum1_tmp;
-    break;
-
-   case 5:
-    rtb_Sum1_tmp = -rtb_Divide7;
-    if (-rtb_Divide7 > 32767) {
-      rtb_Sum1_tmp = 32767;
-    }
-
-    tmp_0 = -rtb_SignPreIntegrator;
-    if (-rtb_SignPreIntegrator > 32767) {
-      tmp_0 = 32767;
-    }
-
-    tmp = (int16_T)rtU_Ts - (int16_T)rtb_Sum1_tmp;
-    if (tmp > 32767) {
-      tmp = 32767;
-    } else {
-      if (tmp < -32768) {
-        tmp = -32768;
-      }
-    }
-
-    tmp -= (int16_T)tmp_0;
-    if (tmp > 32767) {
-      tmp = 32767;
-    } else {
-      if (tmp < -32768) {
-        tmp = -32768;
-      }
-    }
-
-    rtb_Sum1 = (int16_T)rt_roundd_snf((real_T)tmp / 4.0);
-    rtb_Divide7 = (int16_T)((int32_T)rt_roundd_snf((real_T)(int16_T)tmp_0 / 2.0)
-      + rtb_Sum1);
-    rtb_Sum1_tmp = (int32_T)rt_roundd_snf((real_T)(int16_T)rtb_Sum1_tmp / 2.0) +
-      rtb_Divide7;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Divide = (int16_T)rtb_Sum1_tmp;
-    break;
-
-   default:
-    rtb_Sum1_tmp = -rtb_Sum1;
-    if (-rtb_Sum1 > 32767) {
-      rtb_Sum1_tmp = 32767;
-    }
-
-    tmp_0 = (int16_T)rtU_Ts - rtb_Divide7;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    tmp_0 -= (int16_T)rtb_Sum1_tmp;
-    if (tmp_0 > 32767) {
-      tmp_0 = 32767;
-    } else {
-      if (tmp_0 < -32768) {
-        tmp_0 = -32768;
-      }
-    }
-
-    rtb_Sum1 = (int16_T)rt_roundd_snf((real_T)tmp_0 / 4.0);
-    rtb_Divide = (int16_T)((int32_T)rt_roundd_snf((real_T)(int16_T)rtb_Sum1_tmp /
-      2.0) + rtb_Sum1);
-    rtb_Sum1_tmp = (int32_T)rt_roundd_snf((real_T)rtb_Divide7 / 2.0) +
-      rtb_Divide;
-    if (rtb_Sum1_tmp > 32767) {
-      rtb_Sum1_tmp = 32767;
-    } else {
-      if (rtb_Sum1_tmp < -32768) {
-        rtb_Sum1_tmp = -32768;
-      }
-    }
-
-    rtb_Divide7 = (int16_T)rtb_Sum1_tmp;
-    break;
-  }
-
-  /* DataTypeConversion: '<S177>/Data Type Conversion3' incorporates:
-   *  MATLAB Function: '<S177>/phase_time'
-   */
-  rtb_DataTypeConversion3 = (uint16_T)rtb_Divide7;
-
-  /* MultiPortSwitch: '<S178>/Multiport Switch' incorporates:
-   *  DataTypeConversion: '<S177>/Data Type Conversion3'
-   *  DataTypeConversion: '<S177>/Data Type Conversion4'
-   *  DataTypeConversion: '<S177>/Data Type Conversion5'
-   *  MATLAB Function: '<S177>/phase_time'
-   */
-  switch (rtb_DataTypeConversion_a) {
-   case 1:
-    rtb_MultiportSwitch_idx_0 = (uint16_T)rtb_Divide7;
-    rtb_MultiportSwitch_idx_1 = (uint16_T)rtb_Sum1;
-    break;
-
-   case 2:
-    rtb_MultiportSwitch_idx_0 = (uint16_T)rtb_Sum1;
-    rtb_MultiportSwitch_idx_1 = (uint16_T)rtb_Divide7;
-    break;
-
-   case 3:
-    rtb_MultiportSwitch_idx_0 = (uint16_T)rtb_Sum1;
-    rtb_MultiportSwitch_idx_1 = (uint16_T)rtb_Divide;
-    break;
-
-   case 4:
-    rtb_MultiportSwitch_idx_0 = (uint16_T)rtb_Divide;
-    rtb_MultiportSwitch_idx_1 = (uint16_T)rtb_Sum1;
-    break;
-
-   case 5:
-    rtb_MultiportSwitch_idx_0 = (uint16_T)rtb_Divide;
-    rtb_MultiportSwitch_idx_1 = (uint16_T)rtb_Divide7;
-    break;
-
-   default:
-    rtb_MultiportSwitch_idx_0 = (uint16_T)rtb_Divide7;
-    rtb_MultiportSwitch_idx_1 = (uint16_T)rtb_Divide;
-    break;
-  }
-
-  /* End of MultiPortSwitch: '<S178>/Multiport Switch' */
-
-  /* Outport: '<Root>/pwm_counts' incorporates:
-   *  Constant: '<S178>/Constant'
-   *  Constant: '<S178>/Constant1'
-   *  Constant: '<S178>/Constant2'
-   *  Constant: '<S178>/Constant3'
-   *  MATLAB Function: '<S178>/Shunt_Three_Sample_Point'
-   *  Outport: '<Root>/sector'
-   */
-  Shunt_Three_Sample_Point(rtb_MultiportSwitch_idx_0, rtb_MultiportSwitch_idx_1,
-    rtb_DataTypeConversion_a, 4000, 10, 10, 10, &rtb_o_samp_p1, &rtY_pwm_counts
-    [7], rtY_sector);
-
-  /* DeadZone: '<S103>/DeadZone' incorporates:
-   *  Signum: '<S101>/SignPreSat'
-   */
-  if (rtb_SignPreSat_k > 8960) {
-    rtb_SignPreSat_k = (int16_T)(rtb_SignPreSat_k - 8960);
-  } else if (rtb_SignPreSat_k >= -8960) {
-    rtb_SignPreSat_k = 0;
-  } else {
-    rtb_SignPreSat_k = (int16_T)(rtb_SignPreSat_k - -8960);
-  }
-
-  /* End of DeadZone: '<S103>/DeadZone' */
-
-  /* RelationalOperator: '<S101>/NotEqual' incorporates:
-   *  Gain: '<S101>/ZeroGain'
-   *  Signum: '<S101>/SignPreSat'
-   */
-  rtb_NotEqual = (0 != rtb_SignPreSat_k);
-
-  /* Signum: '<S101>/SignPreSat' */
-  if (rtb_SignPreSat_k < 0) {
-    rtb_SignPreSat_k = -1;
-  } else {
-    rtb_SignPreSat_k = (int16_T)(rtb_SignPreSat_k > 0);
-  }
-
-  /* End of Signum: '<S101>/SignPreSat' */
-
-  /* Gain: '<S107>/Integral Gain' incorporates:
-   *  Gain: '<S57>/Integral Gain'
-   *  Sum: '<S16>/Sum2'
-   */
-  rtb_Divide7 = (int16_T)(1080 * rtb_Sum2);
-
-  /* Signum: '<S101>/SignPreIntegrator' incorporates:
-   *  Gain: '<S57>/Integral Gain'
-   */
-  if (rtb_Divide7 < 0) {
-    rtb_Divide4 = -1;
-  } else {
-    rtb_Divide4 = (int16_T)(rtb_Divide7 > 0);
-  }
-
-  /* End of Signum: '<S101>/SignPreIntegrator' */
-
-  /* Switch: '<S101>/Switch' incorporates:
-   *  Constant: '<S101>/Constant1'
-   *  DataTypeConversion: '<S101>/DataTypeConv1'
-   *  DataTypeConversion: '<S101>/DataTypeConv2'
-   *  Gain: '<S57>/Integral Gain'
-   *  Logic: '<S101>/AND3'
-   *  RelationalOperator: '<S101>/Equal1'
-   */
-  if (rtb_NotEqual && (rtb_SignPreSat_k == rtb_Divide4)) {
-    rtb_Sum2 = 0;
-  } else {
-    rtb_Sum2 = rtb_Divide7;
-  }
-
-  /* End of Switch: '<S101>/Switch' */
-
-  /* DeadZone: '<S153>/DeadZone' incorporates:
-   *  Signum: '<S151>/SignPreSat'
-   */
-  if (rtb_SignPreSat > 800) {
-    rtb_SignPreSat = (int16_T)(rtb_SignPreSat - 800);
-  } else if (rtb_SignPreSat >= -800) {
-    rtb_SignPreSat = 0;
-  } else {
-    rtb_SignPreSat = (int16_T)(rtb_SignPreSat - -800);
-  }
-
-  /* End of DeadZone: '<S153>/DeadZone' */
-
-  /* RelationalOperator: '<S151>/NotEqual' incorporates:
-   *  Gain: '<S151>/ZeroGain'
-   *  Signum: '<S151>/SignPreSat'
-   */
-  rtb_NotEqual = (0 != rtb_SignPreSat);
-
-  /* Signum: '<S151>/SignPreSat' */
-  if (rtb_SignPreSat < 0) {
-    rtb_SignPreSat = -1;
-  } else {
-    rtb_SignPreSat = (int16_T)(rtb_SignPreSat > 0);
-  }
-
-  /* End of Signum: '<S151>/SignPreSat' */
-
-  /* Gain: '<S157>/Integral Gain' incorporates:
-   *  Gain: '<S57>/Integral Gain'
-   */
-  rtb_Divide7 = (int16_T)((int16_T)(200 * rtb_Sum3_l) << 4);
-
-  /* Signum: '<S151>/SignPreIntegrator' incorporates:
-   *  Gain: '<S57>/Integral Gain'
-   */
-  if (rtb_Divide7 < 0) {
-    rtb_Divide4 = -1;
-  } else {
-    rtb_Divide4 = (int16_T)(rtb_Divide7 > 0);
-  }
-
-  /* End of Signum: '<S151>/SignPreIntegrator' */
-
-  /* Switch: '<S151>/Switch' incorporates:
-   *  Constant: '<S151>/Constant1'
-   *  DataTypeConversion: '<S151>/DataTypeConv1'
-   *  DataTypeConversion: '<S151>/DataTypeConv2'
-   *  Gain: '<S57>/Integral Gain'
-   *  Logic: '<S151>/AND3'
-   *  RelationalOperator: '<S151>/Equal1'
-   */
-  if (rtb_NotEqual && (rtb_SignPreSat == rtb_Divide4)) {
-    rtb_Sum3_l = 0;
-  } else {
-    rtb_Sum3_l = rtb_Divide7;
-  }
-
-  /* End of Switch: '<S151>/Switch' */
-
-  /* DeadZone: '<S53>/DeadZone' incorporates:
-   *  Signum: '<S51>/SignPreSat'
-   */
-  if (rtb_Multiply_idx_1 > 8960) {
-    rtb_Multiply_idx_1 = (int16_T)(rtb_Multiply_idx_1 - 8960);
-  } else if (rtb_Multiply_idx_1 >= -8960) {
-    rtb_Multiply_idx_1 = 0;
-  } else {
-    rtb_Multiply_idx_1 = (int16_T)(rtb_Multiply_idx_1 - -8960);
-  }
-
-  /* End of DeadZone: '<S53>/DeadZone' */
-
-  /* RelationalOperator: '<S51>/NotEqual' incorporates:
-   *  Gain: '<S51>/ZeroGain'
-   *  Signum: '<S51>/SignPreSat'
-   */
-  rtb_NotEqual = (0 != rtb_Multiply_idx_1);
-
-  /* Signum: '<S51>/SignPreSat' */
-  if (rtb_Multiply_idx_1 < 0) {
-    rtb_Multiply_idx_1 = -1;
-  } else {
-    rtb_Multiply_idx_1 = (int16_T)(rtb_Multiply_idx_1 > 0);
-  }
-
-  /* End of Signum: '<S51>/SignPreSat' */
-
-  /* Gain: '<S57>/Integral Gain' incorporates:
-   *  Sum: '<S16>/Sum1'
-   */
-  rtb_Divide7 = (int16_T)(1071 * (int16_T)-rtb_Multiply_idx_0);
-
-  /* Update for UnitDelay: '<S21>/UnitDelay1' incorporates:
-   *  Sum: '<S21>/Sum3'
-   */
-  rtDW->UnitDelay1_DSTATE[0] = rtb_Sum3_idx_0;
-  rtDW->UnitDelay1_DSTATE[1] = rtb_Sum3_idx_1;
-
-  /* Signum: '<S51>/SignPreIntegrator' incorporates:
-   *  Gain: '<S57>/Integral Gain'
-   */
-  if (rtb_Divide7 < 0) {
-    rtb_Divide4 = -1;
-  } else {
-    rtb_Divide4 = (int16_T)(rtb_Divide7 > 0);
-  }
-
-  /* End of Signum: '<S51>/SignPreIntegrator' */
-
-  /* Switch: '<S51>/Switch' incorporates:
-   *  Constant: '<S51>/Constant1'
-   *  DataTypeConversion: '<S51>/DataTypeConv1'
-   *  DataTypeConversion: '<S51>/DataTypeConv2'
-   *  Logic: '<S51>/AND3'
-   *  RelationalOperator: '<S51>/Equal1'
-   */
-  if (rtb_NotEqual && (rtb_Multiply_idx_1 == rtb_Divide4)) {
-    rtb_Divide7 = 0;
-  }
-
-  /* End of Switch: '<S51>/Switch' */
-
-  /* Update for DiscreteIntegrator: '<S60>/Integrator' */
-  rtDW->Integrator_DSTATE += rtb_Divide7;
-
-  /* Update for DiscreteIntegrator: '<S160>/Integrator' incorporates:
-   *  Switch: '<S151>/Switch'
-   */
-  rtDW->Integrator_DSTATE_i += rtb_Sum3_l;
-
-  /* Update for DiscreteIntegrator: '<S110>/Integrator' incorporates:
-   *  Switch: '<S101>/Switch'
-   */
-  rtDW->Integrator_DSTATE_p += rtb_Sum2;
-
-  /* End of Outputs for SubSystem: '<S1>/controller' */
-
-  /* Outport: '<Root>/pwm_counts' incorporates:
-   *  DataTypeConversion: '<S177>/Data Type Conversion4'
-   *  DataTypeConversion: '<S177>/Data Type Conversion5'
-   *  MATLAB Function: '<S177>/phase_time'
-   */
-  rtY_pwm_counts[0] = rtb_DataTypeConversion3;
-
-  /* Outputs for Atomic SubSystem: '<S1>/controller' */
-  rtY_pwm_counts[1] = (uint16_T)rtb_Sum1;
-  rtY_pwm_counts[2] = (uint16_T)rtb_Divide;
-
-  /* End of Outputs for SubSystem: '<S1>/controller' */
-  rtY_pwm_counts[3] = rtb_DataTypeConversion3;
-
-  /* Outputs for Atomic SubSystem: '<S1>/controller' */
-  rtY_pwm_counts[4] = (uint16_T)rtb_Sum1;
-  rtY_pwm_counts[5] = (uint16_T)rtb_Divide;
-
-  /* End of Outputs for SubSystem: '<S1>/controller' */
-  rtY_pwm_counts[6] = rtb_o_samp_p1;
-  rate_scheduler(rtM);
-}
-
-/* Model initialize function */
-void PMSM_Controller_initialize(RT_MODEL *const rtM)
-{
-  /* Registration code */
-
-  /* initialize non-finites */
-  rt_InitInfAndNaN(sizeof(real_T));
-  UNUSED_PARAMETER(rtM);
-}
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 431
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.h

@@ -1,431 +0,0 @@
-/*
- * File: PMSM_Controller.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_PMSM_Controller_h_
-#define RTW_HEADER_PMSM_Controller_h_
-#include <float.h>
-#include <math.h>
-#ifndef PMSM_Controller_COMMON_INCLUDES_
-#define PMSM_Controller_COMMON_INCLUDES_
-#include "rtwtypes.h"
-#endif                                 /* PMSM_Controller_COMMON_INCLUDES_ */
-
-#include "PMSM_Controller_types.h"
-
-/* Child system includes */
-#include "Shunt_Three_Sample_Point.h"
-#include "rt_nonfinite.h"
-#include "rtGetInf.h"
-#include "rt_defines.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
-
-/* Block signals and states (default storage) for system '<Root>' */
-typedef struct {
-  int32_T UnitDelay1_DSTATE[2];        /* '<S21>/UnitDelay1' */
-  int16_T Integrator_DSTATE;           /* '<S60>/Integrator' */
-  int16_T Integrator_DSTATE_i;         /* '<S160>/Integrator' */
-  int16_T Integrator_DSTATE_p;         /* '<S110>/Integrator' */
-} DW;
-
-/* Constant parameters (default storage) */
-typedef struct {
-  /* Computed Parameter: r_sin_M1_Table
-   * Referenced by: '<S23>/r_sin_M1'
-   */
-  int16_T r_sin_M1_Table[361];
-
-  /* Computed Parameter: r_cos_M1_Table
-   * Referenced by: '<S23>/r_cos_M1'
-   */
-  int16_T r_cos_M1_Table[361];
-} ConstP;
-
-/* Real-time Model Data Structure */
-struct tag_RTM {
-  const char_T * volatile errorStatus;
-  DW *dwork;
-
-  /*
-   * Timing:
-   * The following substructure contains information regarding
-   * the timing information for the model.
-   */
-  struct {
-    struct {
-      uint8_T TID[2];
-    } TaskCounters;
-  } Timing;
-};
-
-/* Constant parameters (default storage) */
-extern const ConstP rtConstP;
-
-/* Model entry point functions */
-extern void PMSM_Controller_initialize(RT_MODEL *const rtM);
-extern void PMSM_Controller_step(RT_MODEL *const rtM, int16_T rtU_Vdc, uint16_T
-  rtU_Ts, int16_T rtU_adc_a, int16_T rtU_adc_b, real_T rtU_rotor_angle, int16_T
-  rtU_rotor_speed, int16_T rtU_input_target, uint16_T rtY_pwm_counts[8], uint8_T
-  *rtY_sector);
-
-/*-
- * These blocks were eliminated from the model due to optimizations:
- *
- * Block '<S1>/Abs1' : Unused code path elimination
- * Block '<S2>/Scope' : Unused code path elimination
- * Block '<S7>/Scope' : Unused code path elimination
- * Block '<S3>/Scope' : Unused code path elimination
- * Block '<S10>/Relational Operator9' : Unused code path elimination
- * Block '<S10>/Scope1' : Unused code path elimination
- * Block '<S10>/Scope2' : Unused code path elimination
- * Block '<S10>/n_stdStillDet' : Unused code path elimination
- * Block '<S12>/Abs5' : Unused code path elimination
- * Block '<S12>/Divide1' : Unused code path elimination
- * Block '<S12>/Divide14' : Unused code path elimination
- * Block '<S12>/Divide2' : Unused code path elimination
- * Block '<S12>/Divide3' : Unused code path elimination
- * Block '<S13>/Data Type Duplicate' : Unused code path elimination
- * Block '<S13>/Data Type Propagation' : Unused code path elimination
- * Block '<S13>/LowerRelop1' : Unused code path elimination
- * Block '<S13>/Switch' : Unused code path elimination
- * Block '<S13>/Switch2' : Unused code path elimination
- * Block '<S13>/UpperRelop' : Unused code path elimination
- * Block '<S14>/Data Type Duplicate' : Unused code path elimination
- * Block '<S14>/Data Type Propagation' : Unused code path elimination
- * Block '<S14>/LowerRelop1' : Unused code path elimination
- * Block '<S14>/Switch' : Unused code path elimination
- * Block '<S14>/Switch2' : Unused code path elimination
- * Block '<S14>/UpperRelop' : Unused code path elimination
- * Block '<S12>/Sum1' : Unused code path elimination
- * Block '<S12>/Sum2' : Unused code path elimination
- * Block '<S12>/Sum3' : Unused code path elimination
- * Block '<S12>/Sum4' : Unused code path elimination
- * Block '<S12>/id_fieldWeakMax' : Unused code path elimination
- * Block '<S12>/n_fieldWeakAuthHi' : Unused code path elimination
- * Block '<S12>/n_fieldWeakAuthLo' : Unused code path elimination
- * Block '<S12>/r_fieldWeakHi' : Unused code path elimination
- * Block '<S12>/r_fieldWeakLo' : Unused code path elimination
- * Block '<S1>/Scope' : Unused code path elimination
- * Block '<S1>/Scope1' : Unused code path elimination
- * Block '<S5>/Gain6' : Unused code path elimination
- * Block '<S17>/Abs5' : Unused code path elimination
- * Block '<S17>/Constant' : Unused code path elimination
- * Block '<S17>/Constant1' : Unused code path elimination
- * Block '<S17>/Divide1' : Unused code path elimination
- * Block '<S17>/Divide4' : Unused code path elimination
- * Block '<S17>/Gain1' : Unused code path elimination
- * Block '<S17>/Gain3' : Unused code path elimination
- * Block '<S17>/Gain4' : Unused code path elimination
- * Block '<S17>/Gain5' : Unused code path elimination
- * Block '<S17>/Vd_max1' : Unused code path elimination
- * Block '<S17>/Vq_max_M1' : Unused code path elimination
- * Block '<S17>/Vq_max_XA' : Unused code path elimination
- * Block '<S17>/i_max' : Unused code path elimination
- * Block '<S17>/iq_maxSca_M1' : Unused code path elimination
- * Block '<S17>/iq_maxSca_XA' : Unused code path elimination
- * Block '<S17>/n_max1' : Unused code path elimination
- * Block '<S178>/Scope' : Unused code path elimination
- * Block '<S5>/Scope1' : Unused code path elimination
- * Block '<S5>/Scope12' : Unused code path elimination
- * Block '<S5>/UnitDelay4' : Unused code path elimination
- * Block '<S2>/Signal Conversion2' : Eliminate redundant signal conversion block
- * Block '<S1>/hall_motor_angel_choice' : Eliminated due to constant selection input
- * Block '<S1>/hall_motor_speed_choice' : Eliminated due to constant selection input
- * Block '<S2>/AND' : Unused code path elimination
- * Block '<S2>/Constant1' : Unused code path elimination
- * Block '<S2>/Constant16' : Unused code path elimination
- * Block '<S2>/Constant2' : Unused code path elimination
- * Block '<S2>/Divide1' : Unused code path elimination
- * Block '<S2>/Divide2' : Unused code path elimination
- * Block '<S2>/Divide3' : Unused code path elimination
- * Block '<S2>/MinMax' : Unused code path elimination
- * Block '<S2>/MinMax1' : Unused code path elimination
- * Block '<S2>/NOT' : Unused code path elimination
- * Block '<S2>/Relational Operator7' : Unused code path elimination
- * Block '<S2>/Sum1' : Unused code path elimination
- * Block '<S2>/Sum3' : Unused code path elimination
- * Block '<S2>/Switch2' : Unused code path elimination
- * Block '<S2>/Switch3' : Unused code path elimination
- * Block '<S2>/a_elecAngle1' : Unused code path elimination
- * Block '<S6>/Add2' : Unused code path elimination
- * Block '<S6>/Constant1' : Unused code path elimination
- * Block '<S6>/Constant2' : Unused code path elimination
- * Block '<S6>/Math Function' : Unused code path elimination
- * Block '<S2>/ÊÇ·ñ·½²¨Æô¶¯' : Unused code path elimination
- * Block '<S7>/Constant20' : Unused code path elimination
- * Block '<S7>/Constant23' : Unused code path elimination
- * Block '<S7>/Constant24' : Unused code path elimination
- * Block '<S7>/Constant8' : Unused code path elimination
- * Block '<S7>/Logical Operator3' : Unused code path elimination
- * Block '<S7>/Relational Operator1' : Unused code path elimination
- * Block '<S7>/Relational Operator6' : Unused code path elimination
- * Block '<S7>/Sum2' : Unused code path elimination
- * Block '<S7>/Switch2' : Unused code path elimination
- * Block '<S7>/UnitDelay2' : Unused code path elimination
- * Block '<S7>/UnitDelay3' : Unused code path elimination
- * Block '<S9>/Add' : Unused code path elimination
- * Block '<S9>/Gain' : Unused code path elimination
- * Block '<S9>/Gain1' : Unused code path elimination
- * Block '<S9>/Selector' : Unused code path elimination
- * Block '<S9>/vec_hallToPos' : Unused code path elimination
- * Block '<S10>/Abs5' : Unused code path elimination
- * Block '<S10>/Constant4' : Unused code path elimination
- * Block '<S10>/Logical Operator1' : Unused code path elimination
- * Block '<S10>/Logical Operator2' : Unused code path elimination
- * Block '<S10>/Logical Operator3' : Unused code path elimination
- * Block '<S11>/Abs2' : Unused code path elimination
- * Block '<S11>/Constant4' : Unused code path elimination
- * Block '<S11>/Divide11' : Unused code path elimination
- * Block '<S11>/Divide13' : Unused code path elimination
- * Block '<S11>/Divide14' : Unused code path elimination
- * Block '<S11>/Logical Operator1' : Unused code path elimination
- * Block '<S11>/Relational Operator4' : Unused code path elimination
- * Block '<S11>/Sum13' : Unused code path elimination
- * Block '<S11>/Sum7' : Unused code path elimination
- * Block '<S11>/Switch1' : Unused code path elimination
- * Block '<S11>/Switch2' : Unused code path elimination
- * Block '<S11>/Switch3' : Unused code path elimination
- * Block '<S11>/UnitDelay1' : Unused code path elimination
- * Block '<S11>/UnitDelay2' : Unused code path elimination
- * Block '<S11>/UnitDelay3' : Unused code path elimination
- * Block '<S11>/UnitDelay4' : Unused code path elimination
- * Block '<S11>/UnitDelay5' : Unused code path elimination
- * Block '<S11>/cf_speedCoef' : Unused code path elimination
- * Block '<S11>/dz_cntTrnsDet' : Unused code path elimination
- * Block '<S11>/g_Ha' : Unused code path elimination
- * Block '<S10>/Relational Operator2' : Unused code path elimination
- * Block '<S10>/Switch2' : Unused code path elimination
- * Block '<S10>/UnitDelay4' : Unused code path elimination
- * Block '<S10>/b_angleMeasEna' : Unused code path elimination
- * Block '<S10>/n_commDeacv' : Unused code path elimination
- * Block '<S10>/z_maxCntRst' : 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 <system>/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('MotorController_FOC/PMSM_Controller')    - opens subsystem MotorController_FOC/PMSM_Controller
- * hilite_system('MotorController_FOC/PMSM_Controller/Kp') - opens and selects block Kp
- *
- * Here is the system hierarchy for this model
- *
- * '<Root>' : 'MotorController_FOC'
- * '<S1>'   : 'MotorController_FOC/PMSM_Controller'
- * '<S2>'   : 'MotorController_FOC/PMSM_Controller/Electrical_Angle_Estimation'
- * '<S3>'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation'
- * '<S4>'   : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled'
- * '<S5>'   : 'MotorController_FOC/PMSM_Controller/controller'
- * '<S6>'   : 'MotorController_FOC/PMSM_Controller/Electrical_Angle_Estimation/degree_rad'
- * '<S7>'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Direction_Detection'
- * '<S8>'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Edge_Detect'
- * '<S9>'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Hall_Angle_Raw'
- * '<S10>'  : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Speed_Estimation'
- * '<S11>'  : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Speed_Estimation/Raw_Motor_Speed_Estimation'
- * '<S12>'  : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled/Field_Weakening'
- * '<S13>'  : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled/Field_Weakening/Saturation Dynamic'
- * '<S14>'  : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled/Field_Weakening/Saturation Dynamic1'
- * '<S15>'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward'
- * '<S16>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC'
- * '<S17>'  : 'MotorController_FOC/PMSM_Controller/controller/Motor_Limitations_Enabled'
- * '<S18>'  : 'MotorController_FOC/PMSM_Controller/controller/Park_Transform_Inverse'
- * '<S19>'  : 'MotorController_FOC/PMSM_Controller/controller/SVM'
- * '<S20>'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/Clarke'
- * '<S21>'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/LowPassFilter'
- * '<S22>'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/Park'
- * '<S23>'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/Sine_Cosine_Approximation'
- * '<S24>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id'
- * '<S25>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq'
- * '<S26>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed'
- * '<S27>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup'
- * '<S28>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/D Gain'
- * '<S29>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter'
- * '<S30>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter ICs'
- * '<S31>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/I Gain'
- * '<S32>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain'
- * '<S33>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain Fdbk'
- * '<S34>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator'
- * '<S35>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator ICs'
- * '<S36>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Copy'
- * '<S37>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Gain'
- * '<S38>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/P Copy'
- * '<S39>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Parallel P Gain'
- * '<S40>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Reset Signal'
- * '<S41>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation'
- * '<S42>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation Fdbk'
- * '<S43>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum'
- * '<S44>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum Fdbk'
- * '<S45>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode'
- * '<S46>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode Sum'
- * '<S47>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Integral'
- * '<S48>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Ngain'
- * '<S49>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/postSat Signal'
- * '<S50>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/preSat Signal'
- * '<S51>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup/Disc. Clamping Parallel'
- * '<S52>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup/Disc. Clamping Parallel/Dead Zone'
- * '<S53>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup/Disc. Clamping Parallel/Dead Zone/Enabled'
- * '<S54>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/D Gain/Disabled'
- * '<S55>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter/Disabled'
- * '<S56>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter ICs/Disabled'
- * '<S57>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/I Gain/Internal Parameters'
- * '<S58>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain/Passthrough'
- * '<S59>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain Fdbk/Disabled'
- * '<S60>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator/Discrete'
- * '<S61>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator ICs/Internal IC'
- * '<S62>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Copy/Disabled wSignal Specification'
- * '<S63>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Gain/Disabled'
- * '<S64>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/P Copy/Disabled'
- * '<S65>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Parallel P Gain/Internal Parameters'
- * '<S66>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Reset Signal/Disabled'
- * '<S67>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation/Enabled'
- * '<S68>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation Fdbk/Disabled'
- * '<S69>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum/Sum_PI'
- * '<S70>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum Fdbk/Disabled'
- * '<S71>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode/Disabled'
- * '<S72>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode Sum/Passthrough'
- * '<S73>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Integral/Passthrough'
- * '<S74>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Ngain/Passthrough'
- * '<S75>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/postSat Signal/Forward_Path'
- * '<S76>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/preSat Signal/Forward_Path'
- * '<S77>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup'
- * '<S78>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/D Gain'
- * '<S79>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter'
- * '<S80>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter ICs'
- * '<S81>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/I Gain'
- * '<S82>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain'
- * '<S83>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain Fdbk'
- * '<S84>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator'
- * '<S85>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator ICs'
- * '<S86>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Copy'
- * '<S87>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Gain'
- * '<S88>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/P Copy'
- * '<S89>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Parallel P Gain'
- * '<S90>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Reset Signal'
- * '<S91>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation'
- * '<S92>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation Fdbk'
- * '<S93>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum'
- * '<S94>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum Fdbk'
- * '<S95>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode'
- * '<S96>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode Sum'
- * '<S97>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Integral'
- * '<S98>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Ngain'
- * '<S99>'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/postSat Signal'
- * '<S100>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/preSat Signal'
- * '<S101>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup/Disc. Clamping Parallel'
- * '<S102>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup/Disc. Clamping Parallel/Dead Zone'
- * '<S103>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup/Disc. Clamping Parallel/Dead Zone/Enabled'
- * '<S104>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/D Gain/Disabled'
- * '<S105>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter/Disabled'
- * '<S106>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter ICs/Disabled'
- * '<S107>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/I Gain/Internal Parameters'
- * '<S108>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain/Passthrough'
- * '<S109>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain Fdbk/Disabled'
- * '<S110>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator/Discrete'
- * '<S111>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator ICs/Internal IC'
- * '<S112>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Copy/Disabled wSignal Specification'
- * '<S113>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Gain/Disabled'
- * '<S114>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/P Copy/Disabled'
- * '<S115>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Parallel P Gain/Internal Parameters'
- * '<S116>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Reset Signal/Disabled'
- * '<S117>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation/Enabled'
- * '<S118>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation Fdbk/Disabled'
- * '<S119>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum/Sum_PI'
- * '<S120>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum Fdbk/Disabled'
- * '<S121>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode/Disabled'
- * '<S122>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode Sum/Passthrough'
- * '<S123>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Integral/Passthrough'
- * '<S124>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Ngain/Passthrough'
- * '<S125>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/postSat Signal/Forward_Path'
- * '<S126>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/preSat Signal/Forward_Path'
- * '<S127>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup'
- * '<S128>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/D Gain'
- * '<S129>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter'
- * '<S130>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter ICs'
- * '<S131>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/I Gain'
- * '<S132>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain'
- * '<S133>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain Fdbk'
- * '<S134>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator'
- * '<S135>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator ICs'
- * '<S136>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Copy'
- * '<S137>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Gain'
- * '<S138>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/P Copy'
- * '<S139>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Parallel P Gain'
- * '<S140>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Reset Signal'
- * '<S141>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation'
- * '<S142>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation Fdbk'
- * '<S143>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum'
- * '<S144>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum Fdbk'
- * '<S145>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode'
- * '<S146>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode Sum'
- * '<S147>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Integral'
- * '<S148>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Ngain'
- * '<S149>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/postSat Signal'
- * '<S150>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/preSat Signal'
- * '<S151>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup/Disc. Clamping Parallel'
- * '<S152>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup/Disc. Clamping Parallel/Dead Zone'
- * '<S153>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup/Disc. Clamping Parallel/Dead Zone/Enabled'
- * '<S154>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/D Gain/Disabled'
- * '<S155>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter/Disabled'
- * '<S156>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter ICs/Disabled'
- * '<S157>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/I Gain/Internal Parameters'
- * '<S158>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain/Passthrough'
- * '<S159>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain Fdbk/Disabled'
- * '<S160>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator/Discrete'
- * '<S161>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator ICs/Internal IC'
- * '<S162>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Copy/Disabled wSignal Specification'
- * '<S163>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Gain/Disabled'
- * '<S164>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/P Copy/Disabled'
- * '<S165>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Parallel P Gain/Internal Parameters'
- * '<S166>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Reset Signal/Disabled'
- * '<S167>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation/Enabled'
- * '<S168>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation Fdbk/Disabled'
- * '<S169>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum/Sum_PI'
- * '<S170>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum Fdbk/Disabled'
- * '<S171>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode/Disabled'
- * '<S172>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode Sum/Passthrough'
- * '<S173>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Integral/Passthrough'
- * '<S174>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Ngain/Passthrough'
- * '<S175>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/postSat Signal/Forward_Path'
- * '<S176>' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/preSat Signal/Forward_Path'
- * '<S177>' : 'MotorController_FOC/PMSM_Controller/controller/SVM/SVPWM'
- * '<S178>' : 'MotorController_FOC/PMSM_Controller/controller/SVM/Sample_Control'
- * '<S179>' : 'MotorController_FOC/PMSM_Controller/controller/SVM/SVPWM/phase_time'
- * '<S180>' : 'MotorController_FOC/PMSM_Controller/controller/SVM/SVPWM/sector_select'
- * '<S181>' : 'MotorController_FOC/PMSM_Controller/controller/SVM/Sample_Control/Shunt_Three_Sample_Point'
- */
-#endif                                 /* RTW_HEADER_PMSM_Controller_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 426
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.mk

@@ -1,426 +0,0 @@
-###########################################################################
-## Makefile generated for component 'PMSM_Controller'. 
-## 
-## Makefile     : PMSM_Controller.mk
-## Generated on : Tue Jan 04 17:22:17 2022
-## Final product: $(RELATIVE_PATH_TO_ANCHOR)\PMSM_Controller.exe
-## Product type : executable
-## 
-###########################################################################
-
-###########################################################################
-## MACROS
-###########################################################################
-
-# Macro Descriptions:
-# PRODUCT_NAME            Name of the system to build
-# MAKEFILE                Name of this makefile
-# COMPILER_COMMAND_FILE   Compiler command listing model reference header paths
-# CMD_FILE                Command file
-
-PRODUCT_NAME              = PMSM_Controller
-MAKEFILE                  = PMSM_Controller.mk
-MATLAB_ROOT               = D:\Program Files\R2020b
-MATLAB_BIN                = D:\Program Files\R2020b\bin
-MATLAB_ARCH_BIN           = $(MATLAB_BIN)\win64
-START_DIR                 = E:\works\mcu\MC100\Simulink
-SOLVER                    = 
-SOLVER_OBJ                = 
-CLASSIC_INTERFACE         = 0
-TGT_FCN_LIB               = ISO_C
-MODEL_HAS_DYNAMICALLY_LOADED_SFCNS = 0
-RELATIVE_PATH_TO_ANCHOR   = ..
-COMPILER_COMMAND_FILE     = PMSM_Controller_comp.rsp
-CMD_FILE                  = PMSM_Controller.rsp
-C_STANDARD_OPTS           = 
-CPP_STANDARD_OPTS         = 
-NODEBUG                   = 1
-
-###########################################################################
-## TOOLCHAIN SPECIFICATIONS
-###########################################################################
-
-# Toolchain Name:          Microsoft Visual C++ 2019 v16.0 | nmake (64-bit Windows)
-# Supported Version(s):    16.0
-# ToolchainInfo Version:   2020b
-# Specification Revision:  1.0
-# 
-#-------------------------------------------
-# Macros assumed to be defined elsewhere
-#-------------------------------------------
-
-# NODEBUG
-# cvarsdll
-# cvarsmt
-# conlibsmt
-# ldebug
-# conflags
-# cflags
-
-#-----------
-# MACROS
-#-----------
-
-MW_EXTERNLIB_DIR    = $(MATLAB_ROOT)\extern\lib\win64\microsoft
-MW_LIB_DIR          = $(MATLAB_ROOT)\lib\win64
-CPU                 = AMD64
-APPVER              = 5.02
-CVARSFLAG           = $(cvarsmt)
-CFLAGS_ADDITIONAL   = -D_CRT_SECURE_NO_WARNINGS
-CPPFLAGS_ADDITIONAL = -EHs -D_CRT_SECURE_NO_WARNINGS /wd4251
-LIBS_TOOLCHAIN      = $(conlibs)
-
-TOOLCHAIN_SRCS = 
-TOOLCHAIN_INCS = 
-TOOLCHAIN_LIBS = 
-
-#------------------------
-# BUILD TOOL COMMANDS
-#------------------------
-
-# C Compiler: Microsoft Visual C Compiler
-CC = cl
-
-# Linker: Microsoft Visual C Linker
-LD = link
-
-# C++ Compiler: Microsoft Visual C++ Compiler
-CPP = cl
-
-# C++ Linker: Microsoft Visual C++ Linker
-CPP_LD = link
-
-# Archiver: Microsoft Visual C/C++ Archiver
-AR = lib
-
-# MEX Tool: MEX Tool
-MEX_PATH = $(MATLAB_ARCH_BIN)
-MEX = "$(MEX_PATH)\mex"
-
-# Download: Download
-DOWNLOAD =
-
-# Execute: Execute
-EXECUTE = $(PRODUCT)
-
-# Builder: NMAKE Utility
-MAKE = nmake
-
-
-#-------------------------
-# Directives/Utilities
-#-------------------------
-
-CDEBUG              = -Zi
-C_OUTPUT_FLAG       = -Fo
-LDDEBUG             = /DEBUG
-OUTPUT_FLAG         = -out:
-CPPDEBUG            = -Zi
-CPP_OUTPUT_FLAG     = -Fo
-CPPLDDEBUG          = /DEBUG
-OUTPUT_FLAG         = -out:
-ARDEBUG             =
-STATICLIB_OUTPUT_FLAG = -out:
-MEX_DEBUG           = -g
-RM                  = @del
-ECHO                = @echo
-MV                  = @ren
-RUN                 = @cmd /C
-
-#----------------------------------------
-# "Faster Builds" Build Configuration
-#----------------------------------------
-
-ARFLAGS              = /nologo
-CFLAGS               = $(cflags) $(CVARSFLAG) $(CFLAGS_ADDITIONAL) \
-                       /Od /Oy-
-CPPFLAGS             = /TP $(cflags) $(CVARSFLAG) $(CPPFLAGS_ADDITIONAL) \
-                       /Od /Oy-
-CPP_LDFLAGS          = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN)
-CPP_SHAREDLIB_LDFLAGS  = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN) \
-                         -dll -def:$(DEF_FILE)
-DOWNLOAD_FLAGS       =
-EXECUTE_FLAGS        =
-LDFLAGS              = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN)
-MEX_CPPFLAGS         =
-MEX_CPPLDFLAGS       =
-MEX_CFLAGS           =
-MEX_LDFLAGS          =
-MAKE_FLAGS           = -f $(MAKEFILE)
-SHAREDLIB_LDFLAGS    = $(ldebug) $(conflags) $(LIBS_TOOLCHAIN) \
-                       -dll -def:$(DEF_FILE)
-
-
-
-###########################################################################
-## OUTPUT INFO
-###########################################################################
-
-PRODUCT = $(RELATIVE_PATH_TO_ANCHOR)\PMSM_Controller.exe
-PRODUCT_TYPE = "executable"
-BUILD_TYPE = "Top-Level Standalone Executable"
-
-###########################################################################
-## INCLUDE PATHS
-###########################################################################
-
-INCLUDES_BUILDINFO = 
-
-INCLUDES = $(INCLUDES_BUILDINFO)
-
-###########################################################################
-## DEFINES
-###########################################################################
-
-DEFINES_BUILD_ARGS = -DCLASSIC_INTERFACE=0 -DALLOCATIONFCN=0 -DTERMFCN=0 -DONESTEPFCN=1 -DMAT_FILE=0 -DMULTI_INSTANCE_CODE=1 -DINTEGER_CODE=0 -DMT=0
-DEFINES_CUSTOM = 
-DEFINES_OPTS = -DTID01EQ=0
-DEFINES_STANDARD = -DMODEL=PMSM_Controller -DNUMST=2 -DNCSTATES=0 -DHAVESTDIO -DMODEL_HAS_DYNAMICALLY_LOADED_SFCNS=0
-
-DEFINES = $(DEFINES_BUILD_ARGS) $(DEFINES_CUSTOM) $(DEFINES_OPTS) $(DEFINES_STANDARD)
-
-###########################################################################
-## SOURCE FILES
-###########################################################################
-
-SRCS = $(START_DIR)\PMSM_Controller_ert_rtw\PMSM_Controller.c $(START_DIR)\PMSM_Controller_ert_rtw\PMSM_Controller_data.c $(START_DIR)\PMSM_Controller_ert_rtw\Shunt_Three_Sample_Point.c $(START_DIR)\PMSM_Controller_ert_rtw\rtGetInf.c $(START_DIR)\PMSM_Controller_ert_rtw\rtGetNaN.c $(START_DIR)\PMSM_Controller_ert_rtw\rt_nonfinite.c
-
-MAIN_SRC = $(START_DIR)\PMSM_Controller_ert_rtw\ert_main.c
-
-ALL_SRCS = $(SRCS) $(MAIN_SRC)
-
-###########################################################################
-## OBJECTS
-###########################################################################
-
-OBJS = PMSM_Controller.obj PMSM_Controller_data.obj Shunt_Three_Sample_Point.obj rtGetInf.obj rtGetNaN.obj rt_nonfinite.obj
-
-MAIN_OBJ = ert_main.obj
-
-ALL_OBJS = $(OBJS) $(MAIN_OBJ)
-
-###########################################################################
-## PREBUILT OBJECT FILES
-###########################################################################
-
-PREBUILT_OBJS = 
-
-###########################################################################
-## LIBRARIES
-###########################################################################
-
-LIBS = 
-
-###########################################################################
-## SYSTEM LIBRARIES
-###########################################################################
-
-SYSTEM_LIBS = 
-
-###########################################################################
-## ADDITIONAL TOOLCHAIN FLAGS
-###########################################################################
-
-#---------------
-# C Compiler
-#---------------
-
-CFLAGS_BASIC = $(DEFINES) @$(COMPILER_COMMAND_FILE)
-
-CFLAGS = $(CFLAGS) $(CFLAGS_BASIC)
-
-#-----------------
-# C++ Compiler
-#-----------------
-
-CPPFLAGS_BASIC = $(DEFINES) @$(COMPILER_COMMAND_FILE)
-
-CPPFLAGS = $(CPPFLAGS) $(CPPFLAGS_BASIC)
-
-###########################################################################
-## INLINED COMMANDS
-###########################################################################
-
-
-!include $(MATLAB_ROOT)\rtw\c\tools\vcdefs.mak
-
-
-###########################################################################
-## PHONY TARGETS
-###########################################################################
-
-.PHONY : all build buildobj clean info prebuild download execute set_environment_variables
-
-
-all : build
-	@cmd /C "@echo ### Successfully generated all binary outputs."
-
-
-build : set_environment_variables prebuild $(PRODUCT)
-
-
-buildobj : set_environment_variables prebuild $(OBJS) $(PREBUILT_OBJS)
-	@cmd /C "@echo ### Successfully generated all binary outputs."
-
-
-prebuild : 
-
-
-download : $(PRODUCT)
-
-
-execute : download
-	@cmd /C "@echo ### Invoking postbuild tool "Execute" ..."
-	$(EXECUTE) $(EXECUTE_FLAGS)
-	@cmd /C "@echo ### Done invoking postbuild tool."
-
-
-set_environment_variables : 
-	@set INCLUDE=$(INCLUDES);$(INCLUDE)
-	@set LIB=$(LIB)
-
-
-###########################################################################
-## FINAL TARGET
-###########################################################################
-
-#-------------------------------------------
-# Create a standalone executable            
-#-------------------------------------------
-
-$(PRODUCT) : $(OBJS) $(PREBUILT_OBJS) $(MAIN_OBJ)
-	@cmd /C "@echo ### Creating standalone executable "$(PRODUCT)" ..."
-	$(LD) $(LDFLAGS) -out:$(PRODUCT) @$(CMD_FILE) $(SYSTEM_LIBS) $(TOOLCHAIN_LIBS)
-	@cmd /C "@echo ### Created: $(PRODUCT)"
-
-
-###########################################################################
-## INTERMEDIATE TARGETS
-###########################################################################
-
-#---------------------
-# SOURCE-TO-OBJECT
-#---------------------
-
-.c.obj :
-	$(CC) $(CFLAGS) -Fo"$@" "$<"
-
-
-.cpp.obj :
-	$(CPP) $(CPPFLAGS) -Fo"$@" "$<"
-
-
-{$(RELATIVE_PATH_TO_ANCHOR)}.c.obj :
-	$(CC) $(CFLAGS) -Fo"$@" "$<"
-
-
-{$(RELATIVE_PATH_TO_ANCHOR)}.cpp.obj :
-	$(CPP) $(CPPFLAGS) -Fo"$@" "$<"
-
-
-{$(START_DIR)}.c.obj :
-	$(CC) $(CFLAGS) -Fo"$@" "$<"
-
-
-{$(START_DIR)}.cpp.obj :
-	$(CPP) $(CPPFLAGS) -Fo"$@" "$<"
-
-
-{$(START_DIR)\PMSM_Controller_ert_rtw}.c.obj :
-	$(CC) $(CFLAGS) -Fo"$@" "$<"
-
-
-{$(START_DIR)\PMSM_Controller_ert_rtw}.cpp.obj :
-	$(CPP) $(CPPFLAGS) -Fo"$@" "$<"
-
-
-{$(MATLAB_ROOT)\rtw\c\src}.c.obj :
-	$(CC) $(CFLAGS) -Fo"$@" "$<"
-
-
-{$(MATLAB_ROOT)\rtw\c\src}.cpp.obj :
-	$(CPP) $(CPPFLAGS) -Fo"$@" "$<"
-
-
-{$(MATLAB_ROOT)\simulink\src}.c.obj :
-	$(CC) $(CFLAGS) -Fo"$@" "$<"
-
-
-{$(MATLAB_ROOT)\simulink\src}.cpp.obj :
-	$(CPP) $(CPPFLAGS) -Fo"$@" "$<"
-
-
-PMSM_Controller.obj : $(START_DIR)\PMSM_Controller_ert_rtw\PMSM_Controller.c
-	$(CC) $(CFLAGS) -Fo"$@" $(START_DIR)\PMSM_Controller_ert_rtw\PMSM_Controller.c
-
-
-PMSM_Controller_data.obj : $(START_DIR)\PMSM_Controller_ert_rtw\PMSM_Controller_data.c
-	$(CC) $(CFLAGS) -Fo"$@" $(START_DIR)\PMSM_Controller_ert_rtw\PMSM_Controller_data.c
-
-
-Shunt_Three_Sample_Point.obj : $(START_DIR)\PMSM_Controller_ert_rtw\Shunt_Three_Sample_Point.c
-	$(CC) $(CFLAGS) -Fo"$@" $(START_DIR)\PMSM_Controller_ert_rtw\Shunt_Three_Sample_Point.c
-
-
-ert_main.obj : $(START_DIR)\PMSM_Controller_ert_rtw\ert_main.c
-	$(CC) $(CFLAGS) -Fo"$@" $(START_DIR)\PMSM_Controller_ert_rtw\ert_main.c
-
-
-rtGetInf.obj : $(START_DIR)\PMSM_Controller_ert_rtw\rtGetInf.c
-	$(CC) $(CFLAGS) -Fo"$@" $(START_DIR)\PMSM_Controller_ert_rtw\rtGetInf.c
-
-
-rtGetNaN.obj : $(START_DIR)\PMSM_Controller_ert_rtw\rtGetNaN.c
-	$(CC) $(CFLAGS) -Fo"$@" $(START_DIR)\PMSM_Controller_ert_rtw\rtGetNaN.c
-
-
-rt_nonfinite.obj : $(START_DIR)\PMSM_Controller_ert_rtw\rt_nonfinite.c
-	$(CC) $(CFLAGS) -Fo"$@" $(START_DIR)\PMSM_Controller_ert_rtw\rt_nonfinite.c
-
-
-###########################################################################
-## DEPENDENCIES
-###########################################################################
-
-$(ALL_OBJS) : rtw_proj.tmw $(COMPILER_COMMAND_FILE) $(MAKEFILE)
-
-
-###########################################################################
-## MISCELLANEOUS TARGETS
-###########################################################################
-
-info : 
-	@cmd /C "@echo ### PRODUCT = $(PRODUCT)"
-	@cmd /C "@echo ### PRODUCT_TYPE = $(PRODUCT_TYPE)"
-	@cmd /C "@echo ### BUILD_TYPE = $(BUILD_TYPE)"
-	@cmd /C "@echo ### INCLUDES = $(INCLUDES)"
-	@cmd /C "@echo ### DEFINES = $(DEFINES)"
-	@cmd /C "@echo ### ALL_SRCS = $(ALL_SRCS)"
-	@cmd /C "@echo ### ALL_OBJS = $(ALL_OBJS)"
-	@cmd /C "@echo ### LIBS = $(LIBS)"
-	@cmd /C "@echo ### MODELREF_LIBS = $(MODELREF_LIBS)"
-	@cmd /C "@echo ### SYSTEM_LIBS = $(SYSTEM_LIBS)"
-	@cmd /C "@echo ### TOOLCHAIN_LIBS = $(TOOLCHAIN_LIBS)"
-	@cmd /C "@echo ### CFLAGS = $(CFLAGS)"
-	@cmd /C "@echo ### LDFLAGS = $(LDFLAGS)"
-	@cmd /C "@echo ### SHAREDLIB_LDFLAGS = $(SHAREDLIB_LDFLAGS)"
-	@cmd /C "@echo ### CPPFLAGS = $(CPPFLAGS)"
-	@cmd /C "@echo ### CPP_LDFLAGS = $(CPP_LDFLAGS)"
-	@cmd /C "@echo ### CPP_SHAREDLIB_LDFLAGS = $(CPP_SHAREDLIB_LDFLAGS)"
-	@cmd /C "@echo ### ARFLAGS = $(ARFLAGS)"
-	@cmd /C "@echo ### MEX_CFLAGS = $(MEX_CFLAGS)"
-	@cmd /C "@echo ### MEX_CPPFLAGS = $(MEX_CPPFLAGS)"
-	@cmd /C "@echo ### MEX_LDFLAGS = $(MEX_LDFLAGS)"
-	@cmd /C "@echo ### MEX_CPPLDFLAGS = $(MEX_CPPLDFLAGS)"
-	@cmd /C "@echo ### DOWNLOAD_FLAGS = $(DOWNLOAD_FLAGS)"
-	@cmd /C "@echo ### EXECUTE_FLAGS = $(EXECUTE_FLAGS)"
-	@cmd /C "@echo ### MAKE_FLAGS = $(MAKE_FLAGS)"
-
-
-clean : 
-	$(ECHO) "### Deleting all derived files..."
-	@if exist $(PRODUCT) $(RM) $(PRODUCT)
-	$(RM) $(ALL_OBJS)
-	$(ECHO) "### Deleted all derived files."
-
-

+ 0 - 7
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller.rsp

@@ -1,7 +0,0 @@
-PMSM_Controller.obj
-PMSM_Controller_data.obj
-Shunt_Three_Sample_Point.obj
-ert_main.obj
-rtGetInf.obj
-rtGetNaN.obj
-rt_nonfinite.obj

+ 0 - 7
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_comp.rsp

@@ -1,7 +0,0 @@
--IE:\works\mcu\MC100\Simulink
--IE:\works\mcu\MC100\Simulink\PMSM_Controller_ert_rtw
--I"D:\Program Files\R2020b\extern\include"
--I"D:\Program Files\R2020b\simulink\include"
--I"D:\Program Files\R2020b\rtw\c\src"
--I"D:\Program Files\R2020b\rtw\c\src\ext_mode\common"
--I"D:\Program Files\R2020b\rtw\c\ert"

+ 0 - 104
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_data.c

@@ -1,104 +0,0 @@
-/*
- * File: PMSM_Controller_data.c
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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
- */
-
-#include "PMSM_Controller.h"
-#include "PMSM_Controller_private.h"
-
-/* Constant parameters (default storage) */
-const ConstP rtConstP = {
-  /* Computed Parameter: r_sin_M1_Table
-   * Referenced by: '<S23>/r_sin_M1'
-   */
-  { 0, 286, 572, 857, 1143, 1428, 1713, 1997, 2280, 2563, 2845, 3126, 3406, 3686,
-    3964, 4240, 4516, 4790, 5063, 5334, 5604, 5872, 6138, 6402, 6664, 6924, 7182,
-    7438, 7692, 7943, 8192, 8438, 8682, 8923, 9162, 9397, 9630, 9860, 10087,
-    10311, 10531, 10749, 10963, 11174, 11381, 11585, 11786, 11982, 12176, 12365,
-    12551, 12733, 12911, 13085, 13255, 13421, 13583, 13741, 13894, 14044, 14189,
-    14330, 14466, 14598, 14726, 14849, 14968, 15082, 15191, 15296, 15396, 15491,
-    15582, 15668, 15749, 15826, 15897, 15964, 16026, 16083, 16135, 16182, 16225,
-    16262, 16294, 16322, 16344, 16362, 16374, 16382, 16384, 16382, 16374, 16362,
-    16344, 16322, 16294, 16262, 16225, 16182, 16135, 16083, 16026, 15964, 15897,
-    15826, 15749, 15668, 15582, 15491, 15396, 15296, 15191, 15082, 14968, 14849,
-    14726, 14598, 14466, 14330, 14189, 14044, 13894, 13741, 13583, 13421, 13255,
-    13085, 12911, 12733, 12551, 12365, 12176, 11982, 11786, 11585, 11381, 11174,
-    10963, 10749, 10531, 10311, 10087, 9860, 9630, 9397, 9162, 8923, 8682, 8438,
-    8192, 7943, 7692, 7438, 7182, 6924, 6664, 6402, 6138, 5872, 5604, 5334, 5063,
-    4790, 4516, 4240, 3964, 3686, 3406, 3126, 2845, 2563, 2280, 1997, 1713, 1428,
-    1143, 857, 572, 286, 0, -286, -572, -857, -1143, -1428, -1713, -1997, -2280,
-    -2563, -2845, -3126, -3406, -3686, -3964, -4240, -4516, -4790, -5063, -5334,
-    -5604, -5872, -6138, -6402, -6664, -6924, -7182, -7438, -7692, -7943, -8192,
-    -8438, -8682, -8923, -9162, -9397, -9630, -9860, -10087, -10311, -10531,
-    -10749, -10963, -11174, -11381, -11585, -11786, -11982, -12176, -12365,
-    -12551, -12733, -12911, -13085, -13255, -13421, -13583, -13741, -13894,
-    -14044, -14189, -14330, -14466, -14598, -14726, -14849, -14968, -15082,
-    -15191, -15296, -15396, -15491, -15582, -15668, -15749, -15826, -15897,
-    -15964, -16026, -16083, -16135, -16182, -16225, -16262, -16294, -16322,
-    -16344, -16362, -16374, -16382, -16384, -16382, -16374, -16362, -16344,
-    -16322, -16294, -16262, -16225, -16182, -16135, -16083, -16026, -15964,
-    -15897, -15826, -15749, -15668, -15582, -15491, -15396, -15296, -15191,
-    -15082, -14968, -14849, -14726, -14598, -14466, -14330, -14189, -14044,
-    -13894, -13741, -13583, -13421, -13255, -13085, -12911, -12733, -12551,
-    -12365, -12176, -11982, -11786, -11585, -11381, -11174, -10963, -10749,
-    -10531, -10311, -10087, -9860, -9630, -9397, -9162, -8923, -8682, -8438,
-    -8192, -7943, -7692, -7438, -7182, -6924, -6664, -6402, -6138, -5872, -5604,
-    -5334, -5063, -4790, -4516, -4240, -3964, -3686, -3406, -3126, -2845, -2563,
-    -2280, -1997, -1713, -1428, -1143, -857, -572, -286, 0 },
-
-  /* Computed Parameter: r_cos_M1_Table
-   * Referenced by: '<S23>/r_cos_M1'
-   */
-  { 16384, 16382, 16374, 16362, 16344, 16322, 16294, 16262, 16225, 16182, 16135,
-    16083, 16026, 15964, 15897, 15826, 15749, 15668, 15582, 15491, 15396, 15296,
-    15191, 15082, 14968, 14849, 14726, 14598, 14466, 14330, 14189, 14044, 13894,
-    13741, 13583, 13421, 13255, 13085, 12911, 12733, 12551, 12365, 12176, 11982,
-    11786, 11585, 11381, 11174, 10963, 10749, 10531, 10311, 10087, 9860, 9630,
-    9397, 9162, 8923, 8682, 8438, 8192, 7943, 7692, 7438, 7182, 6924, 6664, 6402,
-    6138, 5872, 5604, 5334, 5063, 4790, 4516, 4240, 3964, 3686, 3406, 3126, 2845,
-    2563, 2280, 1997, 1713, 1428, 1143, 857, 572, 286, 0, -286, -572, -857,
-    -1143, -1428, -1713, -1997, -2280, -2563, -2845, -3126, -3406, -3686, -3964,
-    -4240, -4516, -4790, -5063, -5334, -5604, -5872, -6138, -6402, -6664, -6924,
-    -7182, -7438, -7692, -7943, -8192, -8438, -8682, -8923, -9162, -9397, -9630,
-    -9860, -10087, -10311, -10531, -10749, -10963, -11174, -11381, -11585,
-    -11786, -11982, -12176, -12365, -12551, -12733, -12911, -13085, -13255,
-    -13421, -13583, -13741, -13894, -14044, -14189, -14330, -14466, -14598,
-    -14726, -14849, -14968, -15082, -15191, -15296, -15396, -15491, -15582,
-    -15668, -15749, -15826, -15897, -15964, -16026, -16083, -16135, -16182,
-    -16225, -16262, -16294, -16322, -16344, -16362, -16374, -16382, -16384,
-    -16382, -16374, -16362, -16344, -16322, -16294, -16262, -16225, -16182,
-    -16135, -16083, -16026, -15964, -15897, -15826, -15749, -15668, -15582,
-    -15491, -15396, -15296, -15191, -15082, -14968, -14849, -14726, -14598,
-    -14466, -14330, -14189, -14044, -13894, -13741, -13583, -13421, -13255,
-    -13085, -12911, -12733, -12551, -12365, -12176, -11982, -11786, -11585,
-    -11381, -11174, -10963, -10749, -10531, -10311, -10087, -9860, -9630, -9397,
-    -9162, -8923, -8682, -8438, -8192, -7943, -7692, -7438, -7182, -6924, -6664,
-    -6402, -6138, -5872, -5604, -5334, -5063, -4790, -4516, -4240, -3964, -3686,
-    -3406, -3126, -2845, -2563, -2280, -1997, -1713, -1428, -1143, -857, -572,
-    -286, 0, 286, 572, 857, 1143, 1428, 1713, 1997, 2280, 2563, 2845, 3126, 3406,
-    3686, 3964, 4240, 4516, 4790, 5063, 5334, 5604, 5872, 6138, 6402, 6664, 6924,
-    7182, 7438, 7692, 7943, 8192, 8438, 8682, 8923, 9162, 9397, 9630, 9860,
-    10087, 10311, 10531, 10749, 10963, 11174, 11381, 11585, 11786, 11982, 12176,
-    12365, 12551, 12733, 12911, 13085, 13255, 13421, 13583, 13741, 13894, 14044,
-    14189, 14330, 14466, 14598, 14726, 14849, 14968, 15082, 15191, 15296, 15396,
-    15491, 15582, 15668, 15749, 15826, 15897, 15964, 16026, 16083, 16135, 16182,
-    16225, 16262, 16294, 16322, 16344, 16362, 16374, 16382, 16384 }
-};
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 82
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_private.h

@@ -1,82 +0,0 @@
-/*
- * File: PMSM_Controller_private.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_PMSM_Controller_private_h_
-#define RTW_HEADER_PMSM_Controller_private_h_
-#include "rtwtypes.h"
-#ifndef UCHAR_MAX
-#include <limits.h>
-#endif
-
-#if ( UCHAR_MAX != (0xFFU) ) || ( SCHAR_MAX != (0x7F) )
-#error Code was generated for compiler with different sized uchar/char. \
-Consider adjusting Test hardware word size settings on the \
-Hardware Implementation pane to match your compiler word sizes as \
-defined in limits.h of the compiler. Alternatively, you can \
-select the Test hardware is the same as production hardware option and \
-select the Enable portable word sizes option on the Code Generation > \
-Verification pane for ERT based targets, which will disable the \
-preprocessor word size checks.
-#endif
-
-#if ( USHRT_MAX != (0xFFFFU) ) || ( SHRT_MAX != (0x7FFF) )
-#error Code was generated for compiler with different sized ushort/short. \
-Consider adjusting Test hardware word size settings on the \
-Hardware Implementation pane to match your compiler word sizes as \
-defined in limits.h of the compiler. Alternatively, you can \
-select the Test hardware is the same as production hardware option and \
-select the Enable portable word sizes option on the Code Generation > \
-Verification pane for ERT based targets, which will disable the \
-preprocessor word size checks.
-#endif
-
-#if ( UINT_MAX != (0xFFFFFFFFU) ) || ( INT_MAX != (0x7FFFFFFF) )
-#error Code was generated for compiler with different sized uint/int. \
-Consider adjusting Test hardware word size settings on the \
-Hardware Implementation pane to match your compiler word sizes as \
-defined in limits.h of the compiler. Alternatively, you can \
-select the Test hardware is the same as production hardware option and \
-select the Enable portable word sizes option on the Code Generation > \
-Verification pane for ERT based targets, which will disable the \
-preprocessor word size checks.
-#endif
-
-#if ( ULONG_MAX != (0xFFFFFFFFU) ) || ( LONG_MAX != (0x7FFFFFFF) )
-#error Code was generated for compiler with different sized ulong/long. \
-Consider adjusting Test hardware word size settings on the \
-Hardware Implementation pane to match your compiler word sizes as \
-defined in limits.h of the compiler. Alternatively, you can \
-select the Test hardware is the same as production hardware option and \
-select the Enable portable word sizes option on the Code Generation > \
-Verification pane for ERT based targets, which will disable the \
-preprocessor word size checks.
-#endif
-
-/* Skipping ulong_long/long_long check: insufficient preprocessor integer range. */
-extern real_T rt_modd_snf(real_T u0, real_T u1);
-extern real_T rt_roundd_snf(real_T u);
-extern uint16_T plook_u16u16_evencka(uint16_T u, uint16_T bp0, uint16_T bpSpace,
-  uint32_T maxIndex);
-extern int32_T div_nde_s32_floor(int32_T numerator, int32_T denominator);
-
-#endif                               /* RTW_HEADER_PMSM_Controller_private_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 0
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_ref.rsp


+ 0 - 32
Simulink/PMSM_Controller_ert_rtw/PMSM_Controller_types.h

@@ -1,32 +0,0 @@
-/*
- * File: PMSM_Controller_types.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_PMSM_Controller_types_h_
-#define RTW_HEADER_PMSM_Controller_types_h_
-
-/* Model Code Variants */
-
-/* Forward declaration for rtModel */
-typedef struct tag_RTM RT_MODEL;
-
-#endif                                 /* RTW_HEADER_PMSM_Controller_types_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 171
Simulink/PMSM_Controller_ert_rtw/Shunt_Three_Sample_Point.c

@@ -1,171 +0,0 @@
-/*
- * File: Shunt_Three_Sample_Point.c
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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
- */
-
-#include "Shunt_Three_Sample_Point.h"
-
-/* Include model header file for global data */
-#include "PMSM_Controller.h"
-#include "PMSM_Controller_private.h"
-
-/* Output and update for atomic system: '<S178>/Shunt_Three_Sample_Point' */
-void Shunt_Three_Sample_Point(uint16_T rtu_low, uint16_T rtu_midle, uint8_T
-  rtu_i_sector, uint16_T rtu_half_pwm_count, uint16_T rtu_t_adc, uint16_T
-  rtu_t_dead, uint16_T rtu_t_samp_before, uint16_T *rty_o_samp_p1, uint16_T
-  *rty_o_samp_p2, uint8_T *rty_o_sector)
-{
-  uint32_T qY;
-  uint32_T qY_0;
-  uint32_T tmp;
-  uint32_T tmp_0;
-  uint16_T qY_1;
-  *rty_o_sector = rtu_i_sector;
-  tmp_0 = rtu_half_pwm_count + 1U;
-  if (rtu_half_pwm_count + 1U > 65535U) {
-    tmp_0 = 65535U;
-  }
-
-  *rty_o_samp_p1 = (uint16_T)tmp_0;
-  tmp_0 = rtu_half_pwm_count + 1U;
-  if (rtu_half_pwm_count + 1U > 65535U) {
-    tmp_0 = 65535U;
-  }
-
-  *rty_o_samp_p2 = (uint16_T)tmp_0;
-  tmp_0 = (uint32_T)rtu_t_adc + rtu_t_dead;
-  tmp = tmp_0;
-  if (tmp_0 > 65535U) {
-    tmp = 65535U;
-  }
-
-  tmp += rtu_t_samp_before;
-  if (tmp > 65535U) {
-    tmp = 65535U;
-  }
-
-  qY_0 = (uint32_T)rtu_half_pwm_count - /*MW:OvSatOk*/ rtu_low;
-  if (qY_0 > rtu_half_pwm_count) {
-    qY_0 = 0U;
-  }
-
-  qY = (uint32_T)rtu_half_pwm_count - /*MW:OvSatOk*/ rtu_midle;
-  if (qY > rtu_half_pwm_count) {
-    qY = 0U;
-  }
-
-  if ((uint16_T)qY_0 > 32767) {
-    qY_1 = MAX_uint16_T;
-  } else {
-    qY_1 = (uint16_T)((uint16_T)qY_0 << 1);
-  }
-
-  if (qY_1 >= (uint16_T)tmp) {
-    if (tmp_0 > 65535U) {
-      tmp_0 = 65535U;
-    }
-
-    if ((uint16_T)qY_0 >= (int32_T)tmp_0) {
-      qY_0 = rtu_half_pwm_count - /*MW:OvSatOk*/ 1U;
-      if (rtu_half_pwm_count - 1U > rtu_half_pwm_count) {
-        qY_0 = 0U;
-      }
-
-      *rty_o_samp_p1 = (uint16_T)qY_0;
-      *rty_o_sector = 1U;
-    } else {
-      tmp_0 = (uint32_T)rtu_low + rtu_t_samp_before;
-      if (tmp_0 > 65535U) {
-        tmp_0 = 65535U;
-      }
-
-      if ((uint16_T)tmp_0 >= rtu_half_pwm_count) {
-        if (rtu_half_pwm_count > 32767) {
-          qY_1 = MAX_uint16_T;
-        } else {
-          qY_1 = (uint16_T)(rtu_half_pwm_count << 1);
-        }
-
-        qY_0 = (uint32_T)qY_1 - /*MW:OvSatOk*/ (uint16_T)tmp_0;
-        if (qY_0 > qY_1) {
-          qY_0 = 0U;
-        }
-
-        qY = qY_0 - /*MW:OvSatOk*/ 1U;
-        if (qY_0 - 1U > qY_0) {
-          qY = 0U;
-        }
-
-        *rty_o_samp_p2 = (uint16_T)qY;
-      } else {
-        *rty_o_samp_p1 = (uint16_T)tmp_0;
-      }
-    }
-  } else {
-    if ((uint16_T)qY > 32767) {
-      qY_1 = MAX_uint16_T;
-    } else {
-      qY_1 = (uint16_T)((uint16_T)qY << 1);
-    }
-
-    if (qY_1 >= (uint16_T)tmp) {
-      if (tmp_0 > 65535U) {
-        tmp_0 = 65535U;
-      }
-
-      if ((uint16_T)qY >= (int32_T)tmp_0) {
-        qY_0 = rtu_half_pwm_count - /*MW:OvSatOk*/ 1U;
-        if (rtu_half_pwm_count - 1U > rtu_half_pwm_count) {
-          qY_0 = 0U;
-        }
-
-        *rty_o_samp_p1 = (uint16_T)qY_0;
-      } else {
-        tmp_0 = (uint32_T)rtu_midle + rtu_t_samp_before;
-        if (tmp_0 > 65535U) {
-          tmp_0 = 65535U;
-        }
-
-        if ((uint16_T)tmp_0 >= rtu_half_pwm_count) {
-          if (rtu_half_pwm_count > 32767) {
-            qY_1 = MAX_uint16_T;
-          } else {
-            qY_1 = (uint16_T)(rtu_half_pwm_count << 1);
-          }
-
-          qY_0 = (uint32_T)qY_1 - /*MW:OvSatOk*/ (uint16_T)tmp_0;
-          if (qY_0 > qY_1) {
-            qY_0 = 0U;
-          }
-
-          qY = qY_0 - /*MW:OvSatOk*/ 1U;
-          if (qY_0 - 1U > qY_0) {
-            qY = 0U;
-          }
-
-          *rty_o_samp_p2 = (uint16_T)qY;
-        } else {
-          *rty_o_samp_p1 = (uint16_T)tmp_0;
-        }
-      }
-    }
-  }
-}
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 38
Simulink/PMSM_Controller_ert_rtw/Shunt_Three_Sample_Point.h

@@ -1,38 +0,0 @@
-/*
- * File: Shunt_Three_Sample_Point.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_Shunt_Three_Sample_Point_h_
-#define RTW_HEADER_Shunt_Three_Sample_Point_h_
-#ifndef PMSM_Controller_COMMON_INCLUDES_
-#define PMSM_Controller_COMMON_INCLUDES_
-#include "rtwtypes.h"
-#endif                                 /* PMSM_Controller_COMMON_INCLUDES_ */
-
-#include "PMSM_Controller_types.h"
-
-extern void Shunt_Three_Sample_Point(uint16_T rtu_low, uint16_T rtu_midle,
-  uint8_T rtu_i_sector, uint16_T rtu_half_pwm_count, uint16_T rtu_t_adc,
-  uint16_T rtu_t_dead, uint16_T rtu_t_samp_before, uint16_T *rty_o_samp_p1,
-  uint16_T *rty_o_samp_p2, uint8_T *rty_o_sector);
-
-#endif                              /* RTW_HEADER_Shunt_Three_Sample_Point_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

BIN
Simulink/PMSM_Controller_ert_rtw/buildInfo.mat


BIN
Simulink/PMSM_Controller_ert_rtw/codeInfo.mat


BIN
Simulink/PMSM_Controller_ert_rtw/codedescriptor.dmr


BIN
Simulink/PMSM_Controller_ert_rtw/compileInfo.mat


+ 0 - 14
Simulink/PMSM_Controller_ert_rtw/defines.txt

@@ -1,14 +0,0 @@
-MODEL=PMSM_Controller
-NUMST=2
-NCSTATES=0
-HAVESTDIO
-MODEL_HAS_DYNAMICALLY_LOADED_SFCNS=0
-CLASSIC_INTERFACE=0
-ALLOCATIONFCN=0
-TID01EQ=0
-TERMFCN=0
-ONESTEPFCN=1
-MAT_FILE=0
-MULTI_INSTANCE_CODE=1
-INTEGER_CODE=0
-MT=0

+ 0 - 162
Simulink/PMSM_Controller_ert_rtw/ert_main.c

@@ -1,162 +0,0 @@
-/*
- * File: ert_main.c
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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
- */
-
-#include <stddef.h>
-#include <stdio.h>              /* This ert_main.c example uses printf/fflush */
-#include "PMSM_Controller.h"           /* Model's header file */
-#include "rtwtypes.h"
-
-static RT_MODEL rtM_;
-static RT_MODEL *const rtMPtr = &rtM_; /* Real-time model */
-static DW rtDW;                        /* Observable states */
-
-/* '<Root>/Vdc' */
-static int16_T rtU_Vdc;
-
-/* '<Root>/Ts' */
-static uint16_T rtU_Ts;
-
-/* '<Root>/adc_a' */
-static int16_T rtU_adc_a;
-
-/* '<Root>/adc_b' */
-static int16_T rtU_adc_b;
-
-/* '<Root>/rotor_angle' */
-static real_T rtU_rotor_angle;
-
-/* '<Root>/rotor_speed' */
-static int16_T rtU_rotor_speed;
-
-/* '<Root>/input_target' */
-static int16_T rtU_input_target;
-
-/* '<Root>/hall_a' */
-static uint8_T rtU_hall_a;
-
-/* '<Root>/hall_b' */
-static uint8_T rtU_hall_b;
-
-/* '<Root>/hall_c' */
-static uint8_T rtU_hall_c;
-
-/* '<Root>/hw_count' */
-static uint32_T rtU_hw_count;
-
-/* '<Root>/b_motor_enable' */
-static boolean_T rtU_b_motor_enable;
-
-/* '<Root>/b_cruise_enable' */
-static boolean_T rtU_b_cruise_enable;
-
-/* '<Root>/n_ctrl_type' */
-static uint8_T rtU_n_ctrl_type;
-
-/* '<Root>/pwm_counts' */
-static uint16_T rtY_pwm_counts[8];
-
-/* '<Root>/sector' */
-static uint8_T rtY_sector;
-
-/*
- * Associating rt_OneStep with a real-time clock or interrupt service routine
- * is what makes the generated code "real-time".  The function rt_OneStep is
- * always associated with the base rate of the model.  Subrates are managed
- * by the base rate from inside the generated code.  Enabling/disabling
- * interrupts and floating point context switches are target specific.  This
- * example code indicates where these should take place relative to executing
- * the generated code step function.  Overrun behavior should be tailored to
- * your application needs.  This example simply sets an error status in the
- * real-time model and returns from rt_OneStep.
- */
-void rt_OneStep(RT_MODEL *const rtM);
-void rt_OneStep(RT_MODEL *const rtM)
-{
-  static boolean_T OverrunFlag = false;
-
-  /* Disable interrupts here */
-
-  /* Check for overrun */
-  if (OverrunFlag) {
-    rtmSetErrorStatus(rtM, "Overrun");
-    return;
-  }
-
-  OverrunFlag = true;
-
-  /* Save FPU context here (if necessary) */
-  /* Re-enable timer or interrupt here */
-  /* Set model inputs here */
-
-  /* Step the model for base rate */
-  PMSM_Controller_step(rtM, rtU_Vdc, rtU_Ts, rtU_adc_a, rtU_adc_b,
-                       rtU_rotor_angle, rtU_rotor_speed, rtU_input_target,
-                       rtY_pwm_counts, &rtY_sector);
-
-  /* Get model outputs here */
-
-  /* Indicate task complete */
-  OverrunFlag = false;
-
-  /* Disable interrupts here */
-  /* Restore FPU context here (if necessary) */
-  /* Enable interrupts here */
-}
-
-/*
- * The example "main" function illustrates what is required by your
- * application code to initialize, execute, and terminate the generated code.
- * Attaching rt_OneStep to a real-time clock is target specific.  This example
- * illustrates how you do this relative to initializing the model.
- */
-int_T main(int_T argc, const char *argv[])
-{
-  RT_MODEL *const rtM = rtMPtr;
-
-  /* Unused arguments */
-  (void)(argc);
-  (void)(argv);
-
-  /* Pack model data into RTM */
-  rtM->dwork = &rtDW;
-
-  /* Initialize model */
-  PMSM_Controller_initialize(rtM);
-
-  /* Attach rt_OneStep to a timer or interrupt service routine with
-   * period 6.2E-6 seconds (the model's base sample time) here.  The
-   * call syntax for rt_OneStep is
-   *
-   *  rt_OneStep(rtM);
-   */
-  printf("Warning: The simulation will run forever. "
-         "Generated ERT main won't simulate model step behavior. "
-         "To change this behavior select the 'MAT-file logging' option.\n");
-  fflush((NULL));
-  while (rtmGetErrorStatus(rtM) == (NULL)) {
-    /*  Perform other application tasks here */
-  }
-
-  /* Disable rt_OneStep() here */
-  return 0;
-}
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 2094
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_c.html

@@ -1,2094 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: PMSM_Controller.c</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#include "PMSM_Controller.h"</span></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#include "PMSM_Controller_private.h"</span></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="21c13" class="tk">rate_scheduler</a>(<a id="21c28" class="tk">RT_MODEL</a> <a id="21c37" class="tk">*</a><span class="kw">const</span> <a id="21c44" class="tk">rtM</a>);</td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><a id="22c1" class="tk">uint16_T</a> <a id="22c10" class="tk">plook_u16u16_evencka</a>(<a id="22c31" class="tk">uint16_T</a> <a id="22c40" class="tk">u</a>, <a id="22c43" class="tk">uint16_T</a> <a id="22c52" class="tk">bp0</a>, <a id="22c57" class="tk">uint16_T</a> <a id="22c66" class="tk">bpSpace</a>,</td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td>  <a id="23c3" class="tk">uint32_T</a> <a id="23c12" class="tk">maxIndex</a>)</td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="br">{</span></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td>  <a id="25c3" class="tk">uint16_T</a> <a id="25c12" class="tk">bpIndex</a>;</td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td>  <span class="ct">/* Prelookup - Index only</span></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="ct">     Index Search method: 'even'</span></td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="ct">     Extrapolation method: 'Clip'</span></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="ct">     Use previous index: 'off'</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="ct">     Use last breakpoint for index at or above upper limit: 'on'</span></td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="ct">     Remove protection against out-of-range input in generated code: 'off'</span></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td>  <span class="kw">if</span> (<a id="34c7" class="tk">u</a> <a id="34c9" class="tk">&lt;=</a> <a id="34c12" class="tk">bp0</a>) <span class="br">{</span></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td>    <a id="35c5" class="tk">bpIndex</a> = 0U;</td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td>    <a id="37c5" class="tk">bpIndex</a> = (<a id="37c16" class="tk">uint16_T</a>)((<a id="37c27" class="tk">uint32_T</a>)(<a id="37c37" class="tk">uint16_T</a>)((<a id="37c48" class="tk">uint32_T</a>)<a id="37c57" class="tk">u</a> <a id="37c59" class="tk">-</a> <a id="37c61" class="tk">bp0</a>) <a id="37c66" class="tk">/</a> <a id="37c68" class="tk">bpSpace</a>);</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td>    <span class="kw">if</span> (<a id="38c9" class="tk">bpIndex</a> <a id="38c17" class="tk">&lt;</a> <a id="38c19" class="tk">maxIndex</a>) <span class="br">{</span></td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td>      <a id="40c7" class="tk">bpIndex</a> = (<a id="40c18" class="tk">uint16_T</a>)<a id="40c27" class="tk">maxIndex</a>;</td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td></td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td>  <span class="kw">return</span> <a id="44c10" class="tk">bpIndex</a>;</td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td><span class="br">}</span></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td></td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td><a id="47c1" class="tk">int32_T</a> <a id="47c9" class="tk">div_nde_s32_floor</a>(<a id="47c27" class="tk">int32_T</a> <a id="47c35" class="tk">numerator</a>, <a id="47c46" class="tk">int32_T</a> <a id="47c54" class="tk">denominator</a>)</td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td><span class="br">{</span></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td>  <span class="kw">return</span> (((<a id="49c13" class="tk">numerator</a> <a id="49c23" class="tk">&lt;</a> 0) <a id="49c28" class="tk">!=</a> (<a id="49c32" class="tk">denominator</a> <a id="49c44" class="tk">&lt;</a> 0)) <a id="49c50" class="tk">&amp;&amp;</a> (<a id="49c54" class="tk">numerator</a> <a id="49c64" class="tk">%</a> <a id="49c66" class="tk">denominator</a> <a id="49c78" class="tk">!=</a></td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td>           0) <a id="50c15" class="tk">?</a> <a id="50c17" class="tk">-</a>1 <a id="50c20" class="tk">:</a> 0) <a id="50c25" class="tk">+</a> <a id="50c27" class="tk">numerator</a> <a id="50c37" class="tk">/</a> <a id="50c39" class="tk">denominator</a>;</td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td><span class="br">}</span></td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td></td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><span class="ct"> *   This function updates active task flag for each subrate.</span></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td><span class="ct"> * The function is called at model base rate, hence the</span></td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td><span class="ct"> * generated code self-manages all its subrates.</span></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="58c13" class="tk">rate_scheduler</a>(<a id="58c28" class="tk">RT_MODEL</a> <a id="58c37" class="tk">*</a><span class="kw">const</span> <a id="58c44" class="tk">rtM</a>)</td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td><span class="br">{</span></td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td>  <span class="ct">/* Compute which subrates run during the next base time step.  Subrates</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><span class="ct">   * are an integer multiple of the base rate counter.  Therefore, the subtask</span></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td><span class="ct">   * counter is reset when it reaches its limit (zero means run).</span></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td>  (<a id="64c4" class="tk">rtM</a>-&gt;<a id="64c9" class="tk">Timing</a>.<a id="64c16" class="tk">TaskCounters</a>.<a id="64c29" class="tk">TID</a>[1])<a id="64c36" class="tk">++</a>;</td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td>  <span class="kw">if</span> ((<a id="65c8" class="tk">rtM</a>-&gt;<a id="65c13" class="tk">Timing</a>.<a id="65c20" class="tk">TaskCounters</a>.<a id="65c33" class="tk">TID</a>[1]) <a id="65c41" class="tk">&gt;</a> 9) <span class="br">{</span><span class="ct">/* Sample time: [6.2E-5s, 0.0s] */</span></td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td>    <a id="66c5" class="tk">rtM</a>-&gt;<a id="66c10" class="tk">Timing</a>.<a id="66c17" class="tk">TaskCounters</a>.<a id="66c30" class="tk">TID</a>[1] = 0;</td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td><span class="br">}</span></td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td></td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td><a id="70c1" class="tk">real_T</a> <a id="70c8" class="tk">rt_modd_snf</a>(<a id="70c20" class="tk">real_T</a> <a id="70c27" class="tk">u0</a>, <a id="70c31" class="tk">real_T</a> <a id="70c38" class="tk">u1</a>)</td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td><span class="br">{</span></td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td>  <a id="72c3" class="tk">real_T</a> <a id="72c10" class="tk">q</a>;</td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td>  <a id="73c3" class="tk">real_T</a> <a id="73c10" class="tk">y</a>;</td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td>  <a id="74c3" class="tk">boolean_T</a> <a id="74c13" class="tk">yEq</a>;</td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td>  <a id="75c3" class="tk">y</a> = <a id="75c7" class="tk">u0</a>;</td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td>  <span class="kw">if</span> (<a id="76c7" class="tk">u1</a> <a id="76c10" class="tk">==</a> 0.0) <span class="br">{</span></td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td>    <span class="kw">if</span> (<a id="77c9" class="tk">u0</a> <a id="77c12" class="tk">==</a> 0.0) <span class="br">{</span></td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td>      <a id="78c7" class="tk">y</a> = <a id="78c11" class="tk">u1</a>;</td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="80c14" class="tk">rtIsNaN</a>(<a id="80c22" class="tk">u0</a>) <a id="80c26" class="tk">||</a> <a id="80c29" class="tk">rtIsNaN</a>(<a id="80c37" class="tk">u1</a>) <a id="80c41" class="tk">||</a> <a id="80c44" class="tk">rtIsInf</a>(<a id="80c52" class="tk">u0</a>)) <span class="br">{</span></td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td>    <a id="81c5" class="tk">y</a> = (<a id="81c10" class="tk">rtNaN</a>);</td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="82c14" class="tk">u0</a> <a id="82c17" class="tk">==</a> 0.0) <span class="br">{</span></td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td>    <a id="83c5" class="tk">y</a> = 0.0 <a id="83c13" class="tk">/</a> <a id="83c15" class="tk">u1</a>;</td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="84c14" class="tk">rtIsInf</a>(<a id="84c22" class="tk">u1</a>)) <span class="br">{</span></td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td>    <span class="kw">if</span> ((<a id="85c10" class="tk">u1</a> <a id="85c13" class="tk">&lt;</a> 0.0) <a id="85c20" class="tk">!=</a> (<a id="85c24" class="tk">u0</a> <a id="85c27" class="tk">&lt;</a> 0.0)) <span class="br">{</span></td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td>      <a id="86c7" class="tk">y</a> = <a id="86c11" class="tk">u1</a>;</td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td>    <a id="89c5" class="tk">y</a> = <a id="89c9" class="tk">fmod</a>(<a id="89c14" class="tk">u0</a>, <a id="89c18" class="tk">u1</a>);</td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td>    <a id="90c5" class="tk">yEq</a> = (<a id="90c12" class="tk">y</a> <a id="90c14" class="tk">==</a> 0.0);</td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td>    <span class="kw">if</span> ((<a id="91c10" class="tk">!</a><a id="91c11" class="tk">yEq</a>) <a id="91c16" class="tk">&amp;&amp;</a> (<a id="91c20" class="tk">u1</a> <a id="91c23" class="tk">&gt;</a> <a id="91c25" class="tk">floor</a>(<a id="91c31" class="tk">u1</a>))) <span class="br">{</span></td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td>      <a id="92c7" class="tk">q</a> = <a id="92c11" class="tk">fabs</a>(<a id="92c16" class="tk">u0</a> <a id="92c19" class="tk">/</a> <a id="92c21" class="tk">u1</a>);</td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td>      <a id="93c7" class="tk">yEq</a> = <a id="93c13" class="tk">!</a>(<a id="93c15" class="tk">fabs</a>(<a id="93c20" class="tk">q</a> <a id="93c22" class="tk">-</a> <a id="93c24" class="tk">floor</a>(<a id="93c30" class="tk">q</a> <a id="93c32" class="tk">+</a> 0.5)) <a id="93c40" class="tk">&gt;</a> <a id="93c42" class="tk">DBL_EPSILON</a> <a id="93c54" class="tk">*</a> <a id="93c56" class="tk">q</a>);</td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td></td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td>    <span class="kw">if</span> (<a id="96c9" class="tk">yEq</a>) <span class="br">{</span></td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td>      <a id="97c7" class="tk">y</a> = <a id="97c11" class="tk">u1</a> <a id="97c14" class="tk">*</a> 0.0;</td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="99" id="99">
-<td><a id="l99" class='ln'>99</a></td><td>      <span class="kw">if</span> ((<a id="99c12" class="tk">u0</a> <a id="99c15" class="tk">&lt;</a> 0.0) <a id="99c22" class="tk">!=</a> (<a id="99c26" class="tk">u1</a> <a id="99c29" class="tk">&lt;</a> 0.0)) <span class="br">{</span></td></tr>
-<tr name="100" id="100">
-<td><a id="l100" class='ln'>100</a></td><td>        <a id="100c9" class="tk">y</a> <a id="100c11" class="tk">+=</a> <a id="100c14" class="tk">u1</a>;</td></tr>
-<tr name="101" id="101">
-<td><a id="l101" class='ln'>101</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="102" id="102">
-<td><a id="l102" class='ln'>102</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="103" id="103">
-<td><a id="l103" class='ln'>103</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="104" id="104">
-<td><a id="l104" class='ln'>104</a></td><td></td></tr>
-<tr name="105" id="105">
-<td><a id="l105" class='ln'>105</a></td><td>  <span class="kw">return</span> <a id="105c10" class="tk">y</a>;</td></tr>
-<tr name="106" id="106">
-<td><a id="l106" class='ln'>106</a></td><td><span class="br">}</span></td></tr>
-<tr name="107" id="107">
-<td><a id="l107" class='ln'>107</a></td><td></td></tr>
-<tr name="108" id="108">
-<td><a id="l108" class='ln'>108</a></td><td><a id="108c1" class="tk">real_T</a> <a id="108c8" class="tk">rt_roundd_snf</a>(<a id="108c22" class="tk">real_T</a> <a id="108c29" class="tk">u</a>)</td></tr>
-<tr name="109" id="109">
-<td><a id="l109" class='ln'>109</a></td><td><span class="br">{</span></td></tr>
-<tr name="110" id="110">
-<td><a id="l110" class='ln'>110</a></td><td>  <a id="110c3" class="tk">real_T</a> <a id="110c10" class="tk">y</a>;</td></tr>
-<tr name="111" id="111">
-<td><a id="l111" class='ln'>111</a></td><td>  <span class="kw">if</span> (<a id="111c7" class="tk">fabs</a>(<a id="111c12" class="tk">u</a>) <a id="111c15" class="tk">&lt;</a> 4.503599627370496E+15) <span class="br">{</span></td></tr>
-<tr name="112" id="112">
-<td><a id="l112" class='ln'>112</a></td><td>    <span class="kw">if</span> (<a id="112c9" class="tk">u</a> <a id="112c11" class="tk">&gt;=</a> 0.5) <span class="br">{</span></td></tr>
-<tr name="113" id="113">
-<td><a id="l113" class='ln'>113</a></td><td>      <a id="113c7" class="tk">y</a> = <a id="113c11" class="tk">floor</a>(<a id="113c17" class="tk">u</a> <a id="113c19" class="tk">+</a> 0.5);</td></tr>
-<tr name="114" id="114">
-<td><a id="l114" class='ln'>114</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="114c16" class="tk">u</a> <a id="114c18" class="tk">&gt;</a> <a id="114c20" class="tk">-</a>0.5) <span class="br">{</span></td></tr>
-<tr name="115" id="115">
-<td><a id="l115" class='ln'>115</a></td><td>      <a id="115c7" class="tk">y</a> = <a id="115c11" class="tk">u</a> <a id="115c13" class="tk">*</a> 0.0;</td></tr>
-<tr name="116" id="116">
-<td><a id="l116" class='ln'>116</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="117" id="117">
-<td><a id="l117" class='ln'>117</a></td><td>      <a id="117c7" class="tk">y</a> = <a id="117c11" class="tk">ceil</a>(<a id="117c16" class="tk">u</a> <a id="117c18" class="tk">-</a> 0.5);</td></tr>
-<tr name="118" id="118">
-<td><a id="l118" class='ln'>118</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="119" id="119">
-<td><a id="l119" class='ln'>119</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="120" id="120">
-<td><a id="l120" class='ln'>120</a></td><td>    <a id="120c5" class="tk">y</a> = <a id="120c9" class="tk">u</a>;</td></tr>
-<tr name="121" id="121">
-<td><a id="l121" class='ln'>121</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="122" id="122">
-<td><a id="l122" class='ln'>122</a></td><td></td></tr>
-<tr name="123" id="123">
-<td><a id="l123" class='ln'>123</a></td><td>  <span class="kw">return</span> <a id="123c10" class="tk">y</a>;</td></tr>
-<tr name="124" id="124">
-<td><a id="l124" class='ln'>124</a></td><td><span class="br">}</span></td></tr>
-<tr name="125" id="125">
-<td><a id="l125" class='ln'>125</a></td><td></td></tr>
-<tr name="126" id="126">
-<td><a id="l126" class='ln'>126</a></td><td><span class="ct">/* Model step function */</span></td></tr>
-<tr name="127" id="127">
-<td><a id="l127" class='ln'>127</a></td><td><span class="kw">void</span> <a id="127c6" class="tk">PMSM_Controller_step</a>(<a id="127c27" class="tk">RT_MODEL</a> <a id="127c36" class="tk">*</a><span class="kw">const</span> <a id="127c43" class="tk">rtM</a>, <a id="127c48" class="tk">int16_T</a> <a id="127c56" class="tk">rtU_Vdc</a>, <a id="127c65" class="tk">uint16_T</a> <a id="127c74" class="tk">rtU_Ts</a>,</td></tr>
-<tr name="128" id="128">
-<td><a id="l128" class='ln'>128</a></td><td>  <a id="128c3" class="tk">int16_T</a> <a id="128c11" class="tk">rtU_adc_a</a>, <a id="128c22" class="tk">int16_T</a> <a id="128c30" class="tk">rtU_adc_b</a>, <a id="128c41" class="tk">real_T</a> <a id="128c48" class="tk">rtU_rotor_angle</a>, <a id="128c65" class="tk">int16_T</a></td></tr>
-<tr name="129" id="129">
-<td><a id="l129" class='ln'>129</a></td><td>  <a id="129c3" class="tk">rtU_rotor_speed</a>, <a id="129c20" class="tk">int16_T</a> <a id="129c28" class="tk">rtU_input_target</a>, <a id="129c46" class="tk">uint16_T</a> <a id="129c55" class="tk">rtY_pwm_counts</a>[8], <a id="129c74" class="tk">uint8_T</a></td></tr>
-<tr name="130" id="130">
-<td><a id="l130" class='ln'>130</a></td><td>  <a id="130c3" class="tk">*</a><a id="130c4" class="tk">rtY_sector</a>)</td></tr>
-<tr name="131" id="131">
-<td><a id="l131" class='ln'>131</a></td><td><span class="br">{</span></td></tr>
-<tr name="132" id="132">
-<td><a id="l132" class='ln'>132</a></td><td>  <a id="132c3" class="tk">DW</a> <a id="132c6" class="tk">*</a><a id="132c7" class="tk">rtDW</a> = <a id="132c14" class="tk">rtM</a>-&gt;<a id="132c19" class="tk">dwork</a>;</td></tr>
-<tr name="133" id="133">
-<td><a id="l133" class='ln'>133</a></td><td>  <a id="133c3" class="tk">int32_T</a> <a id="133c11" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="134" id="134">
-<td><a id="l134" class='ln'>134</a></td><td>  <a id="134c3" class="tk">int32_T</a> <a id="134c11" class="tk">rtb_Sum3_idx_0</a>;</td></tr>
-<tr name="135" id="135">
-<td><a id="l135" class='ln'>135</a></td><td>  <a id="135c3" class="tk">int32_T</a> <a id="135c11" class="tk">rtb_Sum3_idx_1</a>;</td></tr>
-<tr name="136" id="136">
-<td><a id="l136" class='ln'>136</a></td><td>  <a id="136c3" class="tk">int32_T</a> <a id="136c11" class="tk">tmp</a>;</td></tr>
-<tr name="137" id="137">
-<td><a id="l137" class='ln'>137</a></td><td>  <a id="137c3" class="tk">int32_T</a> <a id="137c11" class="tk">tmp_0</a>;</td></tr>
-<tr name="138" id="138">
-<td><a id="l138" class='ln'>138</a></td><td>  <a id="138c3" class="tk">int16_T</a> <a id="138c11" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="139" id="139">
-<td><a id="l139" class='ln'>139</a></td><td>  <a id="139c3" class="tk">int16_T</a> <a id="139c11" class="tk">rtb_Divide4</a>;</td></tr>
-<tr name="140" id="140">
-<td><a id="l140" class='ln'>140</a></td><td>  <a id="140c3" class="tk">int16_T</a> <a id="140c11" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="141" id="141">
-<td><a id="l141" class='ln'>141</a></td><td>  <a id="141c3" class="tk">int16_T</a> <a id="141c11" class="tk">rtb_Multiply_idx_0</a>;</td></tr>
-<tr name="142" id="142">
-<td><a id="l142" class='ln'>142</a></td><td>  <a id="142c3" class="tk">int16_T</a> <a id="142c11" class="tk">rtb_Multiply_idx_1</a>;</td></tr>
-<tr name="143" id="143">
-<td><a id="l143" class='ln'>143</a></td><td>  <a id="143c3" class="tk">int16_T</a> <a id="143c11" class="tk">rtb_SignPreIntegrator</a>;</td></tr>
-<tr name="144" id="144">
-<td><a id="l144" class='ln'>144</a></td><td>  <a id="144c3" class="tk">int16_T</a> <a id="144c11" class="tk">rtb_SignPreSat</a>;</td></tr>
-<tr name="145" id="145">
-<td><a id="l145" class='ln'>145</a></td><td>  <a id="145c3" class="tk">int16_T</a> <a id="145c11" class="tk">rtb_SignPreSat_k</a>;</td></tr>
-<tr name="146" id="146">
-<td><a id="l146" class='ln'>146</a></td><td>  <a id="146c3" class="tk">int16_T</a> <a id="146c11" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="147" id="147">
-<td><a id="l147" class='ln'>147</a></td><td>  <a id="147c3" class="tk">int16_T</a> <a id="147c11" class="tk">rtb_Sum2</a>;</td></tr>
-<tr name="148" id="148">
-<td><a id="l148" class='ln'>148</a></td><td>  <a id="148c3" class="tk">int16_T</a> <a id="148c11" class="tk">rtb_Sum3_l</a>;</td></tr>
-<tr name="149" id="149">
-<td><a id="l149" class='ln'>149</a></td><td>  <a id="149c3" class="tk">uint16_T</a> <a id="149c12" class="tk">rtb_DataTypeConversion3</a>;</td></tr>
-<tr name="150" id="150">
-<td><a id="l150" class='ln'>150</a></td><td>  <a id="150c3" class="tk">uint16_T</a> <a id="150c12" class="tk">rtb_MultiportSwitch_idx_0</a>;</td></tr>
-<tr name="151" id="151">
-<td><a id="l151" class='ln'>151</a></td><td>  <a id="151c3" class="tk">uint16_T</a> <a id="151c12" class="tk">rtb_MultiportSwitch_idx_1</a>;</td></tr>
-<tr name="152" id="152">
-<td><a id="l152" class='ln'>152</a></td><td>  <a id="152c3" class="tk">uint16_T</a> <a id="152c12" class="tk">rtb_o_samp_p1</a>;</td></tr>
-<tr name="153" id="153">
-<td><a id="l153" class='ln'>153</a></td><td>  <a id="153c3" class="tk">uint8_T</a> <a id="153c11" class="tk">rtb_DataTypeConversion_a</a>;</td></tr>
-<tr name="154" id="154">
-<td><a id="l154" class='ln'>154</a></td><td>  <a id="154c3" class="tk">boolean_T</a> <a id="154c13" class="tk">rtb_NotEqual</a>;</td></tr>
-<tr name="155" id="155">
-<td><a id="l155" class='ln'>155</a></td><td></td></tr>
-<tr name="156" id="156">
-<td><a id="l156" class='ln'>156</a></td><td>  <span class="ct">/* Gain: '&lt;S1&gt;/Multiply' incorporates:</span></td></tr>
-<tr name="157" id="157">
-<td><a id="l157" class='ln'>157</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/adc_a'</span></td></tr>
-<tr name="158" id="158">
-<td><a id="l158" class='ln'>158</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/adc_b'</span></td></tr>
-<tr name="159" id="159">
-<td><a id="l159" class='ln'>159</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="160" id="160">
-<td><a id="l160" class='ln'>160</a></td><td>  <a id="160c3" class="tk">rtb_Multiply_idx_0</a> = (<a id="160c25" class="tk">int16_T</a>)((19761 <a id="160c41" class="tk">*</a> <a id="160c43" class="tk">rtU_adc_a</a>) <a id="160c54" class="tk">&gt;&gt;</a> 17);</td></tr>
-<tr name="161" id="161">
-<td><a id="l161" class='ln'>161</a></td><td>  <a id="161c3" class="tk">rtb_Multiply_idx_1</a> = (<a id="161c25" class="tk">int16_T</a>)((19761 <a id="161c41" class="tk">*</a> <a id="161c43" class="tk">rtU_adc_b</a>) <a id="161c54" class="tk">&gt;&gt;</a> 17);</td></tr>
-<tr name="162" id="162">
-<td><a id="l162" class='ln'>162</a></td><td></td></tr>
-<tr name="163" id="163">
-<td><a id="l163" class='ln'>163</a></td><td>  <span class="ct">/* Outputs for Atomic SubSystem: '&lt;S1&gt;/controller' */</span></td></tr>
-<tr name="164" id="164">
-<td><a id="l164" class='ln'>164</a></td><td>  <span class="ct">/* PreLookup: '&lt;S23&gt;/a_elecAngle_XA' incorporates:</span></td></tr>
-<tr name="165" id="165">
-<td><a id="l165" class='ln'>165</a></td><td><span class="ct">   *  Constant: '&lt;S1&gt;/Constant1'</span></td></tr>
-<tr name="166" id="166">
-<td><a id="l166" class='ln'>166</a></td><td><span class="ct">   *  Gain: '&lt;S1&gt;/Gain'</span></td></tr>
-<tr name="167" id="167">
-<td><a id="l167" class='ln'>167</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/rotor_angle'</span></td></tr>
-<tr name="168" id="168">
-<td><a id="l168" class='ln'>168</a></td><td><span class="ct">   *  Math: '&lt;S1&gt;/Math Function'</span></td></tr>
-<tr name="169" id="169">
-<td><a id="l169" class='ln'>169</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="170" id="170">
-<td><a id="l170" class='ln'>170</a></td><td>  <a id="170c3" class="tk">rtb_o_samp_p1</a> = <a id="170c19" class="tk">plook_u16u16_evencka</a>((<a id="170c41" class="tk">uint16_T</a>)(57.295779513082323 <a id="170c70" class="tk">*</a></td></tr>
-<tr name="171" id="171">
-<td><a id="l171" class='ln'>171</a></td><td>    <a id="171c5" class="tk">rt_modd_snf</a>(<a id="171c17" class="tk">rtU_rotor_angle</a>, 6.2831853071795862)), 0U, 1U, 360U);</td></tr>
-<tr name="172" id="172">
-<td><a id="l172" class='ln'>172</a></td><td></td></tr>
-<tr name="173" id="173">
-<td><a id="l173" class='ln'>173</a></td><td>  <span class="ct">/* Sum: '&lt;S15&gt;/Add1' incorporates:</span></td></tr>
-<tr name="174" id="174">
-<td><a id="l174" class='ln'>174</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="175" id="175">
-<td><a id="l175" class='ln'>175</a></td><td><span class="ct">   *  Sum: '&lt;S15&gt;/Add'</span></td></tr>
-<tr name="176" id="176">
-<td><a id="l176" class='ln'>176</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="177" id="177">
-<td><a id="l177" class='ln'>177</a></td><td>  <a id="177c3" class="tk">rtb_Divide4</a> = (<a id="177c18" class="tk">int16_T</a>)<a id="177c26" class="tk">-</a>(<a id="177c28" class="tk">rtb_Multiply_idx_0</a> <a id="177c47" class="tk">+</a> <a id="177c49" class="tk">rtb_Multiply_idx_1</a>);</td></tr>
-<tr name="178" id="178">
-<td><a id="l178" class='ln'>178</a></td><td></td></tr>
-<tr name="179" id="179">
-<td><a id="l179" class='ln'>179</a></td><td>  <span class="ct">/* Gain: '&lt;S20&gt;/Gain1' incorporates:</span></td></tr>
-<tr name="180" id="180">
-<td><a id="l180" class='ln'>180</a></td><td><span class="ct">   *  Gain: '&lt;S20&gt;/Gain'</span></td></tr>
-<tr name="181" id="181">
-<td><a id="l181" class='ln'>181</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="182" id="182">
-<td><a id="l182" class='ln'>182</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="183" id="183">
-<td><a id="l183" class='ln'>183</a></td><td><span class="ct">   *  Sum: '&lt;S20&gt;/Add'</span></td></tr>
-<tr name="184" id="184">
-<td><a id="l184" class='ln'>184</a></td><td><span class="ct">   *  Sum: '&lt;S20&gt;/Add1'</span></td></tr>
-<tr name="185" id="185">
-<td><a id="l185" class='ln'>185</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="186" id="186">
-<td><a id="l186" class='ln'>186</a></td><td>  <a id="186c3" class="tk">rtb_Divide</a> = (<a id="186c17" class="tk">int16_T</a>)(((((<a id="186c30" class="tk">rtb_Multiply_idx_0</a> <a id="186c49" class="tk">&lt;&lt;</a> 1) <a id="186c55" class="tk">-</a> <a id="186c57" class="tk">rtb_Multiply_idx_1</a>) <a id="186c77" class="tk">-</a></td></tr>
-<tr name="187" id="187">
-<td><a id="l187" class='ln'>187</a></td><td>    <a id="187c5" class="tk">rtb_Divide4</a>) <a id="187c18" class="tk">*</a> 21845) <a id="187c27" class="tk">&gt;&gt;</a> 16);</td></tr>
-<tr name="188" id="188">
-<td><a id="l188" class='ln'>188</a></td><td></td></tr>
-<tr name="189" id="189">
-<td><a id="l189" class='ln'>189</a></td><td>  <span class="ct">/* Gain: '&lt;S20&gt;/Gain2' incorporates:</span></td></tr>
-<tr name="190" id="190">
-<td><a id="l190" class='ln'>190</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="191" id="191">
-<td><a id="l191" class='ln'>191</a></td><td><span class="ct">   *  Sum: '&lt;S20&gt;/Add2'</span></td></tr>
-<tr name="192" id="192">
-<td><a id="l192" class='ln'>192</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="193" id="193">
-<td><a id="l193" class='ln'>193</a></td><td>  <a id="193c3" class="tk">rtb_Divide4</a> = (<a id="193c18" class="tk">int16_T</a>)(((<a id="193c29" class="tk">rtb_Multiply_idx_1</a> <a id="193c48" class="tk">-</a> <a id="193c50" class="tk">rtb_Divide4</a>) <a id="193c63" class="tk">*</a> 18919) <a id="193c72" class="tk">&gt;&gt;</a> 15);</td></tr>
-<tr name="194" id="194">
-<td><a id="l194" class='ln'>194</a></td><td></td></tr>
-<tr name="195" id="195">
-<td><a id="l195" class='ln'>195</a></td><td>  <span class="ct">/* Sum: '&lt;S22&gt;/Sum1' incorporates:</span></td></tr>
-<tr name="196" id="196">
-<td><a id="l196" class='ln'>196</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_cos_M1'</span></td></tr>
-<tr name="197" id="197">
-<td><a id="l197" class='ln'>197</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_sin_M1'</span></td></tr>
-<tr name="198" id="198">
-<td><a id="l198" class='ln'>198</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="199" id="199">
-<td><a id="l199" class='ln'>199</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="200" id="200">
-<td><a id="l200" class='ln'>200</a></td><td><span class="ct">   *  Product: '&lt;S22&gt;/Divide2'</span></td></tr>
-<tr name="201" id="201">
-<td><a id="l201" class='ln'>201</a></td><td><span class="ct">   *  Product: '&lt;S22&gt;/Divide3'</span></td></tr>
-<tr name="202" id="202">
-<td><a id="l202" class='ln'>202</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="203" id="203">
-<td><a id="l203" class='ln'>203</a></td><td>  <a id="203c3" class="tk">rtb_Sum1_tmp</a> = ((<a id="203c20" class="tk">rtb_Divide</a> <a id="203c31" class="tk">*</a> <a id="203c33" class="tk">rtConstP</a>.<a id="203c42" class="tk">r_cos_M1_Table</a>[<a id="203c57" class="tk">rtb_o_samp_p1</a>]) <a id="203c73" class="tk">&gt;&gt;</a> 14) <a id="203c80" class="tk">+</a></td></tr>
-<tr name="204" id="204">
-<td><a id="l204" class='ln'>204</a></td><td>    ((<a id="204c7" class="tk">rtb_Divide4</a> <a id="204c19" class="tk">*</a> <a id="204c21" class="tk">rtConstP</a>.<a id="204c30" class="tk">r_sin_M1_Table</a>[<a id="204c45" class="tk">rtb_o_samp_p1</a>]) <a id="204c61" class="tk">&gt;&gt;</a> 14);</td></tr>
-<tr name="205" id="205">
-<td><a id="l205" class='ln'>205</a></td><td>  <span class="kw">if</span> (<a id="205c7" class="tk">rtb_Sum1_tmp</a> <a id="205c20" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="206" id="206">
-<td><a id="l206" class='ln'>206</a></td><td>    <a id="206c5" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="207" id="207">
-<td><a id="l207" class='ln'>207</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="208" id="208">
-<td><a id="l208" class='ln'>208</a></td><td>    <span class="kw">if</span> (<a id="208c9" class="tk">rtb_Sum1_tmp</a> <a id="208c22" class="tk">&lt;</a> <a id="208c24" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="209" id="209">
-<td><a id="l209" class='ln'>209</a></td><td>      <a id="209c7" class="tk">rtb_Sum1_tmp</a> = <a id="209c22" class="tk">-</a>32768;</td></tr>
-<tr name="210" id="210">
-<td><a id="l210" class='ln'>210</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="211" id="211">
-<td><a id="l211" class='ln'>211</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="212" id="212">
-<td><a id="l212" class='ln'>212</a></td><td></td></tr>
-<tr name="213" id="213">
-<td><a id="l213" class='ln'>213</a></td><td>  <span class="ct">/* Sum: '&lt;S21&gt;/Sum2' incorporates:</span></td></tr>
-<tr name="214" id="214">
-<td><a id="l214" class='ln'>214</a></td><td><span class="ct">   *  Sum: '&lt;S22&gt;/Sum1'</span></td></tr>
-<tr name="215" id="215">
-<td><a id="l215" class='ln'>215</a></td><td><span class="ct">   *  UnitDelay: '&lt;S21&gt;/UnitDelay1'</span></td></tr>
-<tr name="216" id="216">
-<td><a id="l216" class='ln'>216</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="217" id="217">
-<td><a id="l217" class='ln'>217</a></td><td>  <a id="217c3" class="tk">rtb_Sum1_tmp</a> <a id="217c16" class="tk">-=</a> <a id="217c19" class="tk">rtDW</a>-&gt;<a id="217c25" class="tk">UnitDelay1_DSTATE</a>[0] <a id="217c46" class="tk">&gt;&gt;</a> 16;</td></tr>
-<tr name="218" id="218">
-<td><a id="l218" class='ln'>218</a></td><td>  <span class="kw">if</span> (<a id="218c7" class="tk">rtb_Sum1_tmp</a> <a id="218c20" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="219" id="219">
-<td><a id="l219" class='ln'>219</a></td><td>    <a id="219c5" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="220" id="220">
-<td><a id="l220" class='ln'>220</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="221" id="221">
-<td><a id="l221" class='ln'>221</a></td><td>    <span class="kw">if</span> (<a id="221c9" class="tk">rtb_Sum1_tmp</a> <a id="221c22" class="tk">&lt;</a> <a id="221c24" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="222" id="222">
-<td><a id="l222" class='ln'>222</a></td><td>      <a id="222c7" class="tk">rtb_Sum1_tmp</a> = <a id="222c22" class="tk">-</a>32768;</td></tr>
-<tr name="223" id="223">
-<td><a id="l223" class='ln'>223</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="224" id="224">
-<td><a id="l224" class='ln'>224</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="225" id="225">
-<td><a id="l225" class='ln'>225</a></td><td></td></tr>
-<tr name="226" id="226">
-<td><a id="l226" class='ln'>226</a></td><td>  <span class="ct">/* Sum: '&lt;S21&gt;/Sum3' incorporates:</span></td></tr>
-<tr name="227" id="227">
-<td><a id="l227" class='ln'>227</a></td><td><span class="ct">   *  Constant: '&lt;S15&gt;/Constant'</span></td></tr>
-<tr name="228" id="228">
-<td><a id="l228" class='ln'>228</a></td><td><span class="ct">   *  Product: '&lt;S21&gt;/Divide3'</span></td></tr>
-<tr name="229" id="229">
-<td><a id="l229" class='ln'>229</a></td><td><span class="ct">   *  Sum: '&lt;S21&gt;/Sum2'</span></td></tr>
-<tr name="230" id="230">
-<td><a id="l230" class='ln'>230</a></td><td><span class="ct">   *  UnitDelay: '&lt;S21&gt;/UnitDelay1'</span></td></tr>
-<tr name="231" id="231">
-<td><a id="l231" class='ln'>231</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="232" id="232">
-<td><a id="l232" class='ln'>232</a></td><td>  <a id="232c3" class="tk">rtb_Sum3_idx_0</a> = 13107 <a id="232c26" class="tk">*</a> <a id="232c28" class="tk">rtb_Sum1_tmp</a> <a id="232c41" class="tk">+</a> <a id="232c43" class="tk">rtDW</a>-&gt;<a id="232c49" class="tk">UnitDelay1_DSTATE</a>[0];</td></tr>
-<tr name="233" id="233">
-<td><a id="l233" class='ln'>233</a></td><td></td></tr>
-<tr name="234" id="234">
-<td><a id="l234" class='ln'>234</a></td><td>  <span class="ct">/* Sum: '&lt;S22&gt;/Sum6' incorporates:</span></td></tr>
-<tr name="235" id="235">
-<td><a id="l235" class='ln'>235</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_cos_M1'</span></td></tr>
-<tr name="236" id="236">
-<td><a id="l236" class='ln'>236</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_sin_M1'</span></td></tr>
-<tr name="237" id="237">
-<td><a id="l237" class='ln'>237</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="238" id="238">
-<td><a id="l238" class='ln'>238</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="239" id="239">
-<td><a id="l239" class='ln'>239</a></td><td><span class="ct">   *  Product: '&lt;S22&gt;/Divide1'</span></td></tr>
-<tr name="240" id="240">
-<td><a id="l240" class='ln'>240</a></td><td><span class="ct">   *  Product: '&lt;S22&gt;/Divide4'</span></td></tr>
-<tr name="241" id="241">
-<td><a id="l241" class='ln'>241</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="242" id="242">
-<td><a id="l242" class='ln'>242</a></td><td>  <a id="242c3" class="tk">rtb_Sum1_tmp</a> = ((<a id="242c20" class="tk">rtb_Divide4</a> <a id="242c32" class="tk">*</a> <a id="242c34" class="tk">rtConstP</a>.<a id="242c43" class="tk">r_cos_M1_Table</a>[<a id="242c58" class="tk">rtb_o_samp_p1</a>]) <a id="242c74" class="tk">&gt;&gt;</a> 14)</td></tr>
-<tr name="243" id="243">
-<td><a id="l243" class='ln'>243</a></td><td>    <a id="243c5" class="tk">-</a> ((<a id="243c9" class="tk">rtb_Divide</a> <a id="243c20" class="tk">*</a> <a id="243c22" class="tk">rtConstP</a>.<a id="243c31" class="tk">r_sin_M1_Table</a>[<a id="243c46" class="tk">rtb_o_samp_p1</a>]) <a id="243c62" class="tk">&gt;&gt;</a> 14);</td></tr>
-<tr name="244" id="244">
-<td><a id="l244" class='ln'>244</a></td><td>  <span class="kw">if</span> (<a id="244c7" class="tk">rtb_Sum1_tmp</a> <a id="244c20" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="245" id="245">
-<td><a id="l245" class='ln'>245</a></td><td>    <a id="245c5" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="246" id="246">
-<td><a id="l246" class='ln'>246</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="247" id="247">
-<td><a id="l247" class='ln'>247</a></td><td>    <span class="kw">if</span> (<a id="247c9" class="tk">rtb_Sum1_tmp</a> <a id="247c22" class="tk">&lt;</a> <a id="247c24" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="248" id="248">
-<td><a id="l248" class='ln'>248</a></td><td>      <a id="248c7" class="tk">rtb_Sum1_tmp</a> = <a id="248c22" class="tk">-</a>32768;</td></tr>
-<tr name="249" id="249">
-<td><a id="l249" class='ln'>249</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="250" id="250">
-<td><a id="l250" class='ln'>250</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="251" id="251">
-<td><a id="l251" class='ln'>251</a></td><td></td></tr>
-<tr name="252" id="252">
-<td><a id="l252" class='ln'>252</a></td><td>  <span class="ct">/* Sum: '&lt;S21&gt;/Sum2' incorporates:</span></td></tr>
-<tr name="253" id="253">
-<td><a id="l253" class='ln'>253</a></td><td><span class="ct">   *  Sum: '&lt;S22&gt;/Sum6'</span></td></tr>
-<tr name="254" id="254">
-<td><a id="l254" class='ln'>254</a></td><td><span class="ct">   *  UnitDelay: '&lt;S21&gt;/UnitDelay1'</span></td></tr>
-<tr name="255" id="255">
-<td><a id="l255" class='ln'>255</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="256" id="256">
-<td><a id="l256" class='ln'>256</a></td><td>  <a id="256c3" class="tk">rtb_Sum1_tmp</a> <a id="256c16" class="tk">-=</a> <a id="256c19" class="tk">rtDW</a>-&gt;<a id="256c25" class="tk">UnitDelay1_DSTATE</a>[1] <a id="256c46" class="tk">&gt;&gt;</a> 16;</td></tr>
-<tr name="257" id="257">
-<td><a id="l257" class='ln'>257</a></td><td>  <span class="kw">if</span> (<a id="257c7" class="tk">rtb_Sum1_tmp</a> <a id="257c20" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="258" id="258">
-<td><a id="l258" class='ln'>258</a></td><td>    <a id="258c5" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="259" id="259">
-<td><a id="l259" class='ln'>259</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="260" id="260">
-<td><a id="l260" class='ln'>260</a></td><td>    <span class="kw">if</span> (<a id="260c9" class="tk">rtb_Sum1_tmp</a> <a id="260c22" class="tk">&lt;</a> <a id="260c24" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="261" id="261">
-<td><a id="l261" class='ln'>261</a></td><td>      <a id="261c7" class="tk">rtb_Sum1_tmp</a> = <a id="261c22" class="tk">-</a>32768;</td></tr>
-<tr name="262" id="262">
-<td><a id="l262" class='ln'>262</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="263" id="263">
-<td><a id="l263" class='ln'>263</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="264" id="264">
-<td><a id="l264" class='ln'>264</a></td><td></td></tr>
-<tr name="265" id="265">
-<td><a id="l265" class='ln'>265</a></td><td>  <span class="ct">/* Sum: '&lt;S21&gt;/Sum3' incorporates:</span></td></tr>
-<tr name="266" id="266">
-<td><a id="l266" class='ln'>266</a></td><td><span class="ct">   *  Constant: '&lt;S15&gt;/Constant'</span></td></tr>
-<tr name="267" id="267">
-<td><a id="l267" class='ln'>267</a></td><td><span class="ct">   *  Product: '&lt;S21&gt;/Divide3'</span></td></tr>
-<tr name="268" id="268">
-<td><a id="l268" class='ln'>268</a></td><td><span class="ct">   *  Sum: '&lt;S21&gt;/Sum2'</span></td></tr>
-<tr name="269" id="269">
-<td><a id="l269" class='ln'>269</a></td><td><span class="ct">   *  UnitDelay: '&lt;S21&gt;/UnitDelay1'</span></td></tr>
-<tr name="270" id="270">
-<td><a id="l270" class='ln'>270</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="271" id="271">
-<td><a id="l271" class='ln'>271</a></td><td>  <a id="271c3" class="tk">rtb_Sum3_idx_1</a> = 13107 <a id="271c26" class="tk">*</a> <a id="271c28" class="tk">rtb_Sum1_tmp</a> <a id="271c41" class="tk">+</a> <a id="271c43" class="tk">rtDW</a>-&gt;<a id="271c49" class="tk">UnitDelay1_DSTATE</a>[1];</td></tr>
-<tr name="272" id="272">
-<td><a id="l272" class='ln'>272</a></td><td></td></tr>
-<tr name="273" id="273">
-<td><a id="l273" class='ln'>273</a></td><td>  <span class="ct">/* DataTypeConversion: '&lt;S21&gt;/Data Type Conversion' incorporates:</span></td></tr>
-<tr name="274" id="274">
-<td><a id="l274" class='ln'>274</a></td><td><span class="ct">   *  Sum: '&lt;S21&gt;/Sum3'</span></td></tr>
-<tr name="275" id="275">
-<td><a id="l275" class='ln'>275</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="276" id="276">
-<td><a id="l276" class='ln'>276</a></td><td>  <a id="276c3" class="tk">rtb_Multiply_idx_0</a> = (<a id="276c25" class="tk">int16_T</a>)(<a id="276c34" class="tk">rtb_Sum3_idx_0</a> <a id="276c49" class="tk">&gt;&gt;</a> 16);</td></tr>
-<tr name="277" id="277">
-<td><a id="l277" class='ln'>277</a></td><td></td></tr>
-<tr name="278" id="278">
-<td><a id="l278" class='ln'>278</a></td><td>  <span class="ct">/* Sum: '&lt;S69&gt;/Sum' incorporates:</span></td></tr>
-<tr name="279" id="279">
-<td><a id="l279" class='ln'>279</a></td><td><span class="ct">   *  DiscreteIntegrator: '&lt;S60&gt;/Integrator'</span></td></tr>
-<tr name="280" id="280">
-<td><a id="l280" class='ln'>280</a></td><td><span class="ct">   *  Gain: '&lt;S65&gt;/Proportional Gain'</span></td></tr>
-<tr name="281" id="281">
-<td><a id="l281" class='ln'>281</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreSat'</span></td></tr>
-<tr name="282" id="282">
-<td><a id="l282" class='ln'>282</a></td><td><span class="ct">   *  Sum: '&lt;S16&gt;/Sum1'</span></td></tr>
-<tr name="283" id="283">
-<td><a id="l283" class='ln'>283</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="284" id="284">
-<td><a id="l284" class='ln'>284</a></td><td>  <a id="284c3" class="tk">rtb_Multiply_idx_1</a> = (<a id="284c25" class="tk">int16_T</a>)((((<a id="284c37" class="tk">int16_T</a>)(9 <a id="284c48" class="tk">*</a> (<a id="284c51" class="tk">int16_T</a>)<a id="284c59" class="tk">-</a><a id="284c60" class="tk">rtb_Multiply_idx_0</a>) <a id="284c80" class="tk">&lt;&lt;</a></td></tr>
-<tr name="285" id="285">
-<td><a id="l285" class='ln'>285</a></td><td>    15) <a id="285c9" class="tk">+</a> (<a id="285c12" class="tk">int32_T</a>)((<a id="285c22" class="tk">rtDW</a>-&gt;<a id="285c28" class="tk">Integrator_DSTATE</a> <a id="285c46" class="tk">*</a> 1704243LL) <a id="285c59" class="tk">&gt;&gt;</a> 23)) <a id="285c67" class="tk">&gt;&gt;</a> 15);</td></tr>
-<tr name="286" id="286">
-<td><a id="l286" class='ln'>286</a></td><td></td></tr>
-<tr name="287" id="287">
-<td><a id="l287" class='ln'>287</a></td><td>  <span class="ct">/* Saturate: '&lt;S67&gt;/Saturation' incorporates:</span></td></tr>
-<tr name="288" id="288">
-<td><a id="l288" class='ln'>288</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="289" id="289">
-<td><a id="l289" class='ln'>289</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreSat'</span></td></tr>
-<tr name="290" id="290">
-<td><a id="l290" class='ln'>290</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="291" id="291">
-<td><a id="l291" class='ln'>291</a></td><td>  <span class="kw">if</span> (<a id="291c7" class="tk">rtb_Multiply_idx_1</a> <a id="291c26" class="tk">&gt;</a> 8960) <span class="br">{</span></td></tr>
-<tr name="292" id="292">
-<td><a id="l292" class='ln'>292</a></td><td>    <a id="292c5" class="tk">rtb_Divide</a> = 8960;</td></tr>
-<tr name="293" id="293">
-<td><a id="l293" class='ln'>293</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="293c14" class="tk">rtb_Multiply_idx_1</a> <a id="293c33" class="tk">&lt;</a> <a id="293c35" class="tk">-</a>8960) <span class="br">{</span></td></tr>
-<tr name="294" id="294">
-<td><a id="l294" class='ln'>294</a></td><td>    <a id="294c5" class="tk">rtb_Divide</a> = <a id="294c18" class="tk">-</a>8960;</td></tr>
-<tr name="295" id="295">
-<td><a id="l295" class='ln'>295</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="296" id="296">
-<td><a id="l296" class='ln'>296</a></td><td>    <a id="296c5" class="tk">rtb_Divide</a> = <a id="296c18" class="tk">rtb_Multiply_idx_1</a>;</td></tr>
-<tr name="297" id="297">
-<td><a id="l297" class='ln'>297</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="298" id="298">
-<td><a id="l298" class='ln'>298</a></td><td></td></tr>
-<tr name="299" id="299">
-<td><a id="l299" class='ln'>299</a></td><td>  <span class="ct">/* End of Saturate: '&lt;S67&gt;/Saturation' */</span></td></tr>
-<tr name="300" id="300">
-<td><a id="l300" class='ln'>300</a></td><td></td></tr>
-<tr name="301" id="301">
-<td><a id="l301" class='ln'>301</a></td><td>  <span class="ct">/* Sum: '&lt;S16&gt;/Sum3' incorporates:</span></td></tr>
-<tr name="302" id="302">
-<td><a id="l302" class='ln'>302</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/input_target'</span></td></tr>
-<tr name="303" id="303">
-<td><a id="l303" class='ln'>303</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/rotor_speed'</span></td></tr>
-<tr name="304" id="304">
-<td><a id="l304" class='ln'>304</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="305" id="305">
-<td><a id="l305" class='ln'>305</a></td><td>  <a id="305c3" class="tk">rtb_Sum3_l</a> = (<a id="305c17" class="tk">int16_T</a>)(<a id="305c26" class="tk">rtU_input_target</a> <a id="305c43" class="tk">-</a> <a id="305c45" class="tk">rtU_rotor_speed</a>);</td></tr>
-<tr name="306" id="306">
-<td><a id="l306" class='ln'>306</a></td><td></td></tr>
-<tr name="307" id="307">
-<td><a id="l307" class='ln'>307</a></td><td>  <span class="ct">/* Sum: '&lt;S169&gt;/Sum' incorporates:</span></td></tr>
-<tr name="308" id="308">
-<td><a id="l308" class='ln'>308</a></td><td><span class="ct">   *  DiscreteIntegrator: '&lt;S160&gt;/Integrator'</span></td></tr>
-<tr name="309" id="309">
-<td><a id="l309" class='ln'>309</a></td><td><span class="ct">   *  Gain: '&lt;S165&gt;/Proportional Gain'</span></td></tr>
-<tr name="310" id="310">
-<td><a id="l310" class='ln'>310</a></td><td><span class="ct">   *  Signum: '&lt;S151&gt;/SignPreSat'</span></td></tr>
-<tr name="311" id="311">
-<td><a id="l311" class='ln'>311</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="312" id="312">
-<td><a id="l312" class='ln'>312</a></td><td>  <a id="312c3" class="tk">rtb_SignPreSat</a> = (<a id="312c21" class="tk">int16_T</a>)((<a id="312c31" class="tk">rtDW</a>-&gt;<a id="312c37" class="tk">Integrator_DSTATE_i</a> <a id="312c57" class="tk">*</a> 26629 <a id="312c65" class="tk">&lt;</a> 0 <a id="312c69" class="tk">?</a> <a id="312c71" class="tk">-</a>1 <a id="312c74" class="tk">:</a> 0) <a id="312c79" class="tk">+</a></td></tr>
-<tr name="313" id="313">
-<td><a id="l313" class='ln'>313</a></td><td>    (<a id="313c6" class="tk">rtb_Sum3_l</a> <a id="313c17" class="tk">&lt;&lt;</a> 4));</td></tr>
-<tr name="314" id="314">
-<td><a id="l314" class='ln'>314</a></td><td></td></tr>
-<tr name="315" id="315">
-<td><a id="l315" class='ln'>315</a></td><td>  <span class="ct">/* Saturate: '&lt;S167&gt;/Saturation' incorporates:</span></td></tr>
-<tr name="316" id="316">
-<td><a id="l316" class='ln'>316</a></td><td><span class="ct">   *  Signum: '&lt;S151&gt;/SignPreSat'</span></td></tr>
-<tr name="317" id="317">
-<td><a id="l317" class='ln'>317</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="318" id="318">
-<td><a id="l318" class='ln'>318</a></td><td>  <span class="kw">if</span> (<a id="318c7" class="tk">rtb_SignPreSat</a> <a id="318c22" class="tk">&gt;</a> 800) <span class="br">{</span></td></tr>
-<tr name="319" id="319">
-<td><a id="l319" class='ln'>319</a></td><td>    <a id="319c5" class="tk">rtb_Divide4</a> = 800;</td></tr>
-<tr name="320" id="320">
-<td><a id="l320" class='ln'>320</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="320c14" class="tk">rtb_SignPreSat</a> <a id="320c29" class="tk">&lt;</a> <a id="320c31" class="tk">-</a>800) <span class="br">{</span></td></tr>
-<tr name="321" id="321">
-<td><a id="l321" class='ln'>321</a></td><td>    <a id="321c5" class="tk">rtb_Divide4</a> = <a id="321c19" class="tk">-</a>800;</td></tr>
-<tr name="322" id="322">
-<td><a id="l322" class='ln'>322</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="323" id="323">
-<td><a id="l323" class='ln'>323</a></td><td>    <a id="323c5" class="tk">rtb_Divide4</a> = <a id="323c19" class="tk">rtb_SignPreSat</a>;</td></tr>
-<tr name="324" id="324">
-<td><a id="l324" class='ln'>324</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="325" id="325">
-<td><a id="l325" class='ln'>325</a></td><td></td></tr>
-<tr name="326" id="326">
-<td><a id="l326" class='ln'>326</a></td><td>  <span class="ct">/* End of Saturate: '&lt;S167&gt;/Saturation' */</span></td></tr>
-<tr name="327" id="327">
-<td><a id="l327" class='ln'>327</a></td><td></td></tr>
-<tr name="328" id="328">
-<td><a id="l328" class='ln'>328</a></td><td>  <span class="ct">/* Sum: '&lt;S16&gt;/Sum2' incorporates:</span></td></tr>
-<tr name="329" id="329">
-<td><a id="l329" class='ln'>329</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S21&gt;/Data Type Conversion'</span></td></tr>
-<tr name="330" id="330">
-<td><a id="l330" class='ln'>330</a></td><td><span class="ct">   *  Sum: '&lt;S21&gt;/Sum3'</span></td></tr>
-<tr name="331" id="331">
-<td><a id="l331" class='ln'>331</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="332" id="332">
-<td><a id="l332" class='ln'>332</a></td><td>  <a id="332c3" class="tk">rtb_Sum2</a> = (<a id="332c15" class="tk">int16_T</a>)(<a id="332c24" class="tk">rtb_Divide4</a> <a id="332c36" class="tk">-</a> (<a id="332c39" class="tk">int16_T</a>)(<a id="332c48" class="tk">rtb_Sum3_idx_1</a> <a id="332c63" class="tk">&gt;&gt;</a> 16));</td></tr>
-<tr name="333" id="333">
-<td><a id="l333" class='ln'>333</a></td><td></td></tr>
-<tr name="334" id="334">
-<td><a id="l334" class='ln'>334</a></td><td>  <span class="ct">/* Sum: '&lt;S119&gt;/Sum' incorporates:</span></td></tr>
-<tr name="335" id="335">
-<td><a id="l335" class='ln'>335</a></td><td><span class="ct">   *  DiscreteIntegrator: '&lt;S110&gt;/Integrator'</span></td></tr>
-<tr name="336" id="336">
-<td><a id="l336" class='ln'>336</a></td><td><span class="ct">   *  Gain: '&lt;S115&gt;/Proportional Gain'</span></td></tr>
-<tr name="337" id="337">
-<td><a id="l337" class='ln'>337</a></td><td><span class="ct">   *  Signum: '&lt;S101&gt;/SignPreSat'</span></td></tr>
-<tr name="338" id="338">
-<td><a id="l338" class='ln'>338</a></td><td><span class="ct">   *  Sum: '&lt;S16&gt;/Sum2'</span></td></tr>
-<tr name="339" id="339">
-<td><a id="l339" class='ln'>339</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="340" id="340">
-<td><a id="l340" class='ln'>340</a></td><td>  <a id="340c3" class="tk">rtb_SignPreSat_k</a> = (<a id="340c23" class="tk">int16_T</a>)((((<a id="340c35" class="tk">int16_T</a>)(10 <a id="340c47" class="tk">*</a> <a id="340c49" class="tk">rtb_Sum2</a>) <a id="340c59" class="tk">&lt;&lt;</a> 15) <a id="340c66" class="tk">+</a> (<a id="340c69" class="tk">int32_T</a>)</td></tr>
-<tr name="341" id="341">
-<td><a id="l341" class='ln'>341</a></td><td>    ((<a id="341c7" class="tk">rtDW</a>-&gt;<a id="341c13" class="tk">Integrator_DSTATE_p</a> <a id="341c33" class="tk">*</a> 1704243LL) <a id="341c46" class="tk">&gt;&gt;</a> 23)) <a id="341c54" class="tk">&gt;&gt;</a> 15);</td></tr>
-<tr name="342" id="342">
-<td><a id="l342" class='ln'>342</a></td><td></td></tr>
-<tr name="343" id="343">
-<td><a id="l343" class='ln'>343</a></td><td>  <span class="ct">/* Saturate: '&lt;S117&gt;/Saturation' incorporates:</span></td></tr>
-<tr name="344" id="344">
-<td><a id="l344" class='ln'>344</a></td><td><span class="ct">   *  Signum: '&lt;S101&gt;/SignPreSat'</span></td></tr>
-<tr name="345" id="345">
-<td><a id="l345" class='ln'>345</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreIntegrator'</span></td></tr>
-<tr name="346" id="346">
-<td><a id="l346" class='ln'>346</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="347" id="347">
-<td><a id="l347" class='ln'>347</a></td><td>  <span class="kw">if</span> (<a id="347c7" class="tk">rtb_SignPreSat_k</a> <a id="347c24" class="tk">&gt;</a> 8960) <span class="br">{</span></td></tr>
-<tr name="348" id="348">
-<td><a id="l348" class='ln'>348</a></td><td>    <a id="348c5" class="tk">rtb_SignPreIntegrator</a> = 8960;</td></tr>
-<tr name="349" id="349">
-<td><a id="l349" class='ln'>349</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="349c14" class="tk">rtb_SignPreSat_k</a> <a id="349c31" class="tk">&lt;</a> <a id="349c33" class="tk">-</a>8960) <span class="br">{</span></td></tr>
-<tr name="350" id="350">
-<td><a id="l350" class='ln'>350</a></td><td>    <a id="350c5" class="tk">rtb_SignPreIntegrator</a> = <a id="350c29" class="tk">-</a>8960;</td></tr>
-<tr name="351" id="351">
-<td><a id="l351" class='ln'>351</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="352" id="352">
-<td><a id="l352" class='ln'>352</a></td><td>    <a id="352c5" class="tk">rtb_SignPreIntegrator</a> = <a id="352c29" class="tk">rtb_SignPreSat_k</a>;</td></tr>
-<tr name="353" id="353">
-<td><a id="l353" class='ln'>353</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="354" id="354">
-<td><a id="l354" class='ln'>354</a></td><td></td></tr>
-<tr name="355" id="355">
-<td><a id="l355" class='ln'>355</a></td><td>  <span class="ct">/* End of Saturate: '&lt;S117&gt;/Saturation' */</span></td></tr>
-<tr name="356" id="356">
-<td><a id="l356" class='ln'>356</a></td><td></td></tr>
-<tr name="357" id="357">
-<td><a id="l357" class='ln'>357</a></td><td>  <span class="ct">/* Sum: '&lt;S18&gt;/Sum1' incorporates:</span></td></tr>
-<tr name="358" id="358">
-<td><a id="l358" class='ln'>358</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_cos_M1'</span></td></tr>
-<tr name="359" id="359">
-<td><a id="l359" class='ln'>359</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_sin_M1'</span></td></tr>
-<tr name="360" id="360">
-<td><a id="l360" class='ln'>360</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="361" id="361">
-<td><a id="l361" class='ln'>361</a></td><td><span class="ct">   *  Product: '&lt;S18&gt;/Divide2'</span></td></tr>
-<tr name="362" id="362">
-<td><a id="l362" class='ln'>362</a></td><td><span class="ct">   *  Product: '&lt;S18&gt;/Divide3'</span></td></tr>
-<tr name="363" id="363">
-<td><a id="l363" class='ln'>363</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreIntegrator'</span></td></tr>
-<tr name="364" id="364">
-<td><a id="l364" class='ln'>364</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="365" id="365">
-<td><a id="l365" class='ln'>365</a></td><td>  <a id="365c3" class="tk">rtb_Sum1_tmp</a> = ((<a id="365c20" class="tk">rtb_Divide</a> <a id="365c31" class="tk">*</a> <a id="365c33" class="tk">rtConstP</a>.<a id="365c42" class="tk">r_sin_M1_Table</a>[<a id="365c57" class="tk">rtb_o_samp_p1</a>]) <a id="365c73" class="tk">&gt;&gt;</a> 14) <a id="365c80" class="tk">+</a></td></tr>
-<tr name="366" id="366">
-<td><a id="l366" class='ln'>366</a></td><td>    ((<a id="366c7" class="tk">rtb_SignPreIntegrator</a> <a id="366c29" class="tk">*</a> <a id="366c31" class="tk">rtConstP</a>.<a id="366c40" class="tk">r_cos_M1_Table</a>[<a id="366c55" class="tk">rtb_o_samp_p1</a>]) <a id="366c71" class="tk">&gt;&gt;</a> 14);</td></tr>
-<tr name="367" id="367">
-<td><a id="l367" class='ln'>367</a></td><td>  <span class="kw">if</span> (<a id="367c7" class="tk">rtb_Sum1_tmp</a> <a id="367c20" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="368" id="368">
-<td><a id="l368" class='ln'>368</a></td><td>    <a id="368c5" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="369" id="369">
-<td><a id="l369" class='ln'>369</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="370" id="370">
-<td><a id="l370" class='ln'>370</a></td><td>    <span class="kw">if</span> (<a id="370c9" class="tk">rtb_Sum1_tmp</a> <a id="370c22" class="tk">&lt;</a> <a id="370c24" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="371" id="371">
-<td><a id="l371" class='ln'>371</a></td><td>      <a id="371c7" class="tk">rtb_Sum1_tmp</a> = <a id="371c22" class="tk">-</a>32768;</td></tr>
-<tr name="372" id="372">
-<td><a id="l372" class='ln'>372</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="373" id="373">
-<td><a id="l373" class='ln'>373</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="374" id="374">
-<td><a id="l374" class='ln'>374</a></td><td></td></tr>
-<tr name="375" id="375">
-<td><a id="l375" class='ln'>375</a></td><td>  <span class="ct">/* Sum: '&lt;S18&gt;/Sum6' incorporates:</span></td></tr>
-<tr name="376" id="376">
-<td><a id="l376" class='ln'>376</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_cos_M1'</span></td></tr>
-<tr name="377" id="377">
-<td><a id="l377" class='ln'>377</a></td><td><span class="ct">   *  Interpolation_n-D: '&lt;S23&gt;/r_sin_M1'</span></td></tr>
-<tr name="378" id="378">
-<td><a id="l378" class='ln'>378</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="379" id="379">
-<td><a id="l379" class='ln'>379</a></td><td><span class="ct">   *  Product: '&lt;S18&gt;/Divide1'</span></td></tr>
-<tr name="380" id="380">
-<td><a id="l380" class='ln'>380</a></td><td><span class="ct">   *  Product: '&lt;S18&gt;/Divide4'</span></td></tr>
-<tr name="381" id="381">
-<td><a id="l381" class='ln'>381</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreIntegrator'</span></td></tr>
-<tr name="382" id="382">
-<td><a id="l382" class='ln'>382</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="383" id="383">
-<td><a id="l383" class='ln'>383</a></td><td>  <a id="383c3" class="tk">tmp_0</a> = ((<a id="383c13" class="tk">rtb_Divide</a> <a id="383c24" class="tk">*</a> <a id="383c26" class="tk">rtConstP</a>.<a id="383c35" class="tk">r_cos_M1_Table</a>[<a id="383c50" class="tk">rtb_o_samp_p1</a>]) <a id="383c66" class="tk">&gt;&gt;</a> 14) <a id="383c73" class="tk">-</a></td></tr>
-<tr name="384" id="384">
-<td><a id="l384" class='ln'>384</a></td><td>    ((<a id="384c7" class="tk">rtb_SignPreIntegrator</a> <a id="384c29" class="tk">*</a> <a id="384c31" class="tk">rtConstP</a>.<a id="384c40" class="tk">r_sin_M1_Table</a>[<a id="384c55" class="tk">rtb_o_samp_p1</a>]) <a id="384c71" class="tk">&gt;&gt;</a> 14);</td></tr>
-<tr name="385" id="385">
-<td><a id="l385" class='ln'>385</a></td><td>  <span class="kw">if</span> (<a id="385c7" class="tk">tmp_0</a> <a id="385c13" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="386" id="386">
-<td><a id="l386" class='ln'>386</a></td><td>    <a id="386c5" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="387" id="387">
-<td><a id="l387" class='ln'>387</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="388" id="388">
-<td><a id="l388" class='ln'>388</a></td><td>    <span class="kw">if</span> (<a id="388c9" class="tk">tmp_0</a> <a id="388c15" class="tk">&lt;</a> <a id="388c17" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="389" id="389">
-<td><a id="l389" class='ln'>389</a></td><td>      <a id="389c7" class="tk">tmp_0</a> = <a id="389c15" class="tk">-</a>32768;</td></tr>
-<tr name="390" id="390">
-<td><a id="l390" class='ln'>390</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="391" id="391">
-<td><a id="l391" class='ln'>391</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="392" id="392">
-<td><a id="l392" class='ln'>392</a></td><td></td></tr>
-<tr name="393" id="393">
-<td><a id="l393" class='ln'>393</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide7' incorporates:</span></td></tr>
-<tr name="394" id="394">
-<td><a id="l394" class='ln'>394</a></td><td><span class="ct">   *  Constant: '&lt;S177&gt;/Constant3'</span></td></tr>
-<tr name="395" id="395">
-<td><a id="l395" class='ln'>395</a></td><td><span class="ct">   *  Sum: '&lt;S18&gt;/Sum1'</span></td></tr>
-<tr name="396" id="396">
-<td><a id="l396" class='ln'>396</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="397" id="397">
-<td><a id="l397" class='ln'>397</a></td><td>  <a id="397c3" class="tk">rtb_Divide7</a> = (<a id="397c18" class="tk">int16_T</a>)((2365 <a id="397c33" class="tk">*</a> (<a id="397c36" class="tk">int16_T</a>)<a id="397c44" class="tk">rtb_Sum1_tmp</a>) <a id="397c58" class="tk">&gt;&gt;</a> 10);</td></tr>
-<tr name="398" id="398">
-<td><a id="l398" class='ln'>398</a></td><td></td></tr>
-<tr name="399" id="399">
-<td><a id="l399" class='ln'>399</a></td><td>  <span class="ct">/* MATLAB Function: '&lt;S177&gt;/sector_select' incorporates:</span></td></tr>
-<tr name="400" id="400">
-<td><a id="l400" class='ln'>400</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide7'</span></td></tr>
-<tr name="401" id="401">
-<td><a id="l401" class='ln'>401</a></td><td><span class="ct">   *  Sum: '&lt;S18&gt;/Sum1'</span></td></tr>
-<tr name="402" id="402">
-<td><a id="l402" class='ln'>402</a></td><td><span class="ct">   *  Sum: '&lt;S18&gt;/Sum6'</span></td></tr>
-<tr name="403" id="403">
-<td><a id="l403" class='ln'>403</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="404" id="404">
-<td><a id="l404" class='ln'>404</a></td><td>  <span class="kw">if</span> ((<a id="404c8" class="tk">int16_T</a>)<a id="404c16" class="tk">rtb_Sum1_tmp</a> <a id="404c29" class="tk">&gt;=</a> 0) <span class="br">{</span></td></tr>
-<tr name="405" id="405">
-<td><a id="l405" class='ln'>405</a></td><td>    <span class="kw">if</span> ((<a id="405c10" class="tk">int16_T</a>)<a id="405c18" class="tk">tmp_0</a> <a id="405c24" class="tk">&gt;=</a> 0) <span class="br">{</span></td></tr>
-<tr name="406" id="406">
-<td><a id="l406" class='ln'>406</a></td><td>      <span class="kw">if</span> (<a id="406c11" class="tk">rtb_Divide7</a> <a id="406c23" class="tk">&gt;</a> ((<a id="406c27" class="tk">int16_T</a>)<a id="406c35" class="tk">tmp_0</a> <a id="406c41" class="tk">&lt;&lt;</a> 2)) <span class="br">{</span></td></tr>
-<tr name="407" id="407">
-<td><a id="l407" class='ln'>407</a></td><td>        <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="408" id="408">
-<td><a id="l408" class='ln'>408</a></td><td>        <a id="408c9" class="tk">rtb_DataTypeConversion_a</a> = 2U;</td></tr>
-<tr name="409" id="409">
-<td><a id="l409" class='ln'>409</a></td><td>      <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="410" id="410">
-<td><a id="l410" class='ln'>410</a></td><td>        <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="411" id="411">
-<td><a id="l411" class='ln'>411</a></td><td>        <a id="411c9" class="tk">rtb_DataTypeConversion_a</a> = 1U;</td></tr>
-<tr name="412" id="412">
-<td><a id="l412" class='ln'>412</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="413" id="413">
-<td><a id="l413" class='ln'>413</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="414" id="414">
-<td><a id="l414" class='ln'>414</a></td><td>      <a id="414c7" class="tk">tmp</a> = <a id="414c13" class="tk">-</a><a id="414c14" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="415" id="415">
-<td><a id="l415" class='ln'>415</a></td><td>      <span class="kw">if</span> (<a id="415c11" class="tk">-</a><a id="415c12" class="tk">rtb_Divide7</a> <a id="415c24" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="416" id="416">
-<td><a id="l416" class='ln'>416</a></td><td>        <a id="416c9" class="tk">tmp</a> = 32767;</td></tr>
-<tr name="417" id="417">
-<td><a id="l417" class='ln'>417</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="418" id="418">
-<td><a id="l418" class='ln'>418</a></td><td></td></tr>
-<tr name="419" id="419">
-<td><a id="l419" class='ln'>419</a></td><td>      <span class="kw">if</span> (<a id="419c11" class="tk">tmp</a> <a id="419c15" class="tk">&gt;</a> ((<a id="419c19" class="tk">int16_T</a>)<a id="419c27" class="tk">tmp_0</a> <a id="419c33" class="tk">&lt;&lt;</a> 2)) <span class="br">{</span></td></tr>
-<tr name="420" id="420">
-<td><a id="l420" class='ln'>420</a></td><td>        <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="421" id="421">
-<td><a id="l421" class='ln'>421</a></td><td>        <a id="421c9" class="tk">rtb_DataTypeConversion_a</a> = 3U;</td></tr>
-<tr name="422" id="422">
-<td><a id="l422" class='ln'>422</a></td><td>      <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="423" id="423">
-<td><a id="l423" class='ln'>423</a></td><td>        <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="424" id="424">
-<td><a id="l424" class='ln'>424</a></td><td>        <a id="424c9" class="tk">rtb_DataTypeConversion_a</a> = 2U;</td></tr>
-<tr name="425" id="425">
-<td><a id="l425" class='ln'>425</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="426" id="426">
-<td><a id="l426" class='ln'>426</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="427" id="427">
-<td><a id="l427" class='ln'>427</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> ((<a id="427c15" class="tk">int16_T</a>)<a id="427c23" class="tk">tmp_0</a> <a id="427c29" class="tk">&gt;=</a> 0) <span class="br">{</span></td></tr>
-<tr name="428" id="428">
-<td><a id="l428" class='ln'>428</a></td><td>    <a id="428c5" class="tk">tmp</a> = <a id="428c11" class="tk">-</a><a id="428c12" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="429" id="429">
-<td><a id="l429" class='ln'>429</a></td><td>    <span class="kw">if</span> (<a id="429c9" class="tk">-</a><a id="429c10" class="tk">rtb_Divide7</a> <a id="429c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="430" id="430">
-<td><a id="l430" class='ln'>430</a></td><td>      <a id="430c7" class="tk">tmp</a> = 32767;</td></tr>
-<tr name="431" id="431">
-<td><a id="l431" class='ln'>431</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="432" id="432">
-<td><a id="l432" class='ln'>432</a></td><td></td></tr>
-<tr name="433" id="433">
-<td><a id="l433" class='ln'>433</a></td><td>    <span class="kw">if</span> (<a id="433c9" class="tk">tmp</a> <a id="433c13" class="tk">&gt;</a> ((<a id="433c17" class="tk">int16_T</a>)<a id="433c25" class="tk">tmp_0</a> <a id="433c31" class="tk">&lt;&lt;</a> 2)) <span class="br">{</span></td></tr>
-<tr name="434" id="434">
-<td><a id="l434" class='ln'>434</a></td><td>      <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="435" id="435">
-<td><a id="l435" class='ln'>435</a></td><td>      <a id="435c7" class="tk">rtb_DataTypeConversion_a</a> = 5U;</td></tr>
-<tr name="436" id="436">
-<td><a id="l436" class='ln'>436</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="437" id="437">
-<td><a id="l437" class='ln'>437</a></td><td>      <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="438" id="438">
-<td><a id="l438" class='ln'>438</a></td><td>      <a id="438c7" class="tk">rtb_DataTypeConversion_a</a> = 6U;</td></tr>
-<tr name="439" id="439">
-<td><a id="l439" class='ln'>439</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="440" id="440">
-<td><a id="l440" class='ln'>440</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="440c14" class="tk">rtb_Divide7</a> <a id="440c26" class="tk">&gt;</a> ((<a id="440c30" class="tk">int16_T</a>)<a id="440c38" class="tk">tmp_0</a> <a id="440c44" class="tk">&lt;&lt;</a> 2)) <span class="br">{</span></td></tr>
-<tr name="441" id="441">
-<td><a id="l441" class='ln'>441</a></td><td>    <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="442" id="442">
-<td><a id="l442" class='ln'>442</a></td><td>    <a id="442c5" class="tk">rtb_DataTypeConversion_a</a> = 4U;</td></tr>
-<tr name="443" id="443">
-<td><a id="l443" class='ln'>443</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="444" id="444">
-<td><a id="l444" class='ln'>444</a></td><td>    <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion' */</span></td></tr>
-<tr name="445" id="445">
-<td><a id="l445" class='ln'>445</a></td><td>    <a id="445c5" class="tk">rtb_DataTypeConversion_a</a> = 5U;</td></tr>
-<tr name="446" id="446">
-<td><a id="l446" class='ln'>446</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="447" id="447">
-<td><a id="l447" class='ln'>447</a></td><td></td></tr>
-<tr name="448" id="448">
-<td><a id="l448" class='ln'>448</a></td><td>  <span class="ct">/* End of MATLAB Function: '&lt;S177&gt;/sector_select' */</span></td></tr>
-<tr name="449" id="449">
-<td><a id="l449" class='ln'>449</a></td><td></td></tr>
-<tr name="450" id="450">
-<td><a id="l450" class='ln'>450</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide' incorporates:</span></td></tr>
-<tr name="451" id="451">
-<td><a id="l451" class='ln'>451</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion6'</span></td></tr>
-<tr name="452" id="452">
-<td><a id="l452" class='ln'>452</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/Ts'</span></td></tr>
-<tr name="453" id="453">
-<td><a id="l453" class='ln'>453</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/Vdc'</span></td></tr>
-<tr name="454" id="454">
-<td><a id="l454" class='ln'>454</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="455" id="455">
-<td><a id="l455" class='ln'>455</a></td><td>  <a id="455c3" class="tk">rtb_Divide</a> = (<a id="455c17" class="tk">int16_T</a>)<a id="455c25" class="tk">div_nde_s32_floor</a>((<a id="455c44" class="tk">int16_T</a>)<a id="455c52" class="tk">rtU_Ts</a> <a id="455c59" class="tk">&lt;&lt;</a> 10, <a id="455c66" class="tk">rtU_Vdc</a>);</td></tr>
-<tr name="456" id="456">
-<td><a id="l456" class='ln'>456</a></td><td></td></tr>
-<tr name="457" id="457">
-<td><a id="l457" class='ln'>457</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide8' incorporates:</span></td></tr>
-<tr name="458" id="458">
-<td><a id="l458" class='ln'>458</a></td><td><span class="ct">   *  Constant: '&lt;S177&gt;/Constant'</span></td></tr>
-<tr name="459" id="459">
-<td><a id="l459" class='ln'>459</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide2'</span></td></tr>
-<tr name="460" id="460">
-<td><a id="l460" class='ln'>460</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="461" id="461">
-<td><a id="l461" class='ln'>461</a></td><td><span class="ct">   *  Sum: '&lt;S18&gt;/Sum1'</span></td></tr>
-<tr name="462" id="462">
-<td><a id="l462" class='ln'>462</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="463" id="463">
-<td><a id="l463" class='ln'>463</a></td><td>  <a id="463c3" class="tk">rtb_Sum1_tmp</a> = 2365 <a id="463c23" class="tk">*</a> (<a id="463c26" class="tk">int16_T</a>)((3547 <a id="463c41" class="tk">*</a> (<a id="463c44" class="tk">int16_T</a>)<a id="463c52" class="tk">rtb_Sum1_tmp</a>) <a id="463c66" class="tk">&gt;&gt;</a> 10);</td></tr>
-<tr name="464" id="464">
-<td><a id="l464" class='ln'>464</a></td><td></td></tr>
-<tr name="465" id="465">
-<td><a id="l465" class='ln'>465</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide1' incorporates:</span></td></tr>
-<tr name="466" id="466">
-<td><a id="l466" class='ln'>466</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="467" id="467">
-<td><a id="l467" class='ln'>467</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide8'</span></td></tr>
-<tr name="468" id="468">
-<td><a id="l468" class='ln'>468</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="469" id="469">
-<td><a id="l469" class='ln'>469</a></td><td>  <a id="469c3" class="tk">rtb_Sum1</a> = (<a id="469c15" class="tk">int16_T</a>)(((<a id="469c26" class="tk">int16_T</a>)(<a id="469c35" class="tk">rtb_Sum1_tmp</a> <a id="469c48" class="tk">&gt;&gt;</a> 11) <a id="469c55" class="tk">*</a> <a id="469c57" class="tk">rtb_Divide</a>) <a id="469c69" class="tk">&gt;&gt;</a> 12);</td></tr>
-<tr name="470" id="470">
-<td><a id="l470" class='ln'>470</a></td><td></td></tr>
-<tr name="471" id="471">
-<td><a id="l471" class='ln'>471</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide3' incorporates:</span></td></tr>
-<tr name="472" id="472">
-<td><a id="l472" class='ln'>472</a></td><td><span class="ct">   *  Constant: '&lt;S177&gt;/Constant1'</span></td></tr>
-<tr name="473" id="473">
-<td><a id="l473" class='ln'>473</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreIntegrator'</span></td></tr>
-<tr name="474" id="474">
-<td><a id="l474" class='ln'>474</a></td><td><span class="ct">   *  Sum: '&lt;S18&gt;/Sum6'</span></td></tr>
-<tr name="475" id="475">
-<td><a id="l475" class='ln'>475</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="476" id="476">
-<td><a id="l476" class='ln'>476</a></td><td>  <a id="476c3" class="tk">rtb_SignPreIntegrator</a> = (<a id="476c28" class="tk">int16_T</a>)((3547 <a id="476c43" class="tk">*</a> (<a id="476c46" class="tk">int16_T</a>)<a id="476c54" class="tk">tmp_0</a>) <a id="476c61" class="tk">&gt;&gt;</a> 10);</td></tr>
-<tr name="477" id="477">
-<td><a id="l477" class='ln'>477</a></td><td></td></tr>
-<tr name="478" id="478">
-<td><a id="l478" class='ln'>478</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide4' */</span></td></tr>
-<tr name="479" id="479">
-<td><a id="l479" class='ln'>479</a></td><td>  <a id="479c3" class="tk">rtb_Divide4</a> = (<a id="479c18" class="tk">int16_T</a>)(<a id="479c27" class="tk">rtb_Sum1_tmp</a> <a id="479c40" class="tk">&gt;&gt;</a> 12);</td></tr>
-<tr name="480" id="480">
-<td><a id="l480" class='ln'>480</a></td><td></td></tr>
-<tr name="481" id="481">
-<td><a id="l481" class='ln'>481</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide5' incorporates:</span></td></tr>
-<tr name="482" id="482">
-<td><a id="l482" class='ln'>482</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="483" id="483">
-<td><a id="l483" class='ln'>483</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="484" id="484">
-<td><a id="l484" class='ln'>484</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreIntegrator'</span></td></tr>
-<tr name="485" id="485">
-<td><a id="l485" class='ln'>485</a></td><td><span class="ct">   *  Sum: '&lt;S177&gt;/Add'</span></td></tr>
-<tr name="486" id="486">
-<td><a id="l486" class='ln'>486</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="487" id="487">
-<td><a id="l487" class='ln'>487</a></td><td>  <a id="487c3" class="tk">rtb_Divide7</a> = (<a id="487c18" class="tk">int16_T</a>)(((<a id="487c29" class="tk">int16_T</a>)(<a id="487c38" class="tk">rtb_SignPreIntegrator</a> <a id="487c60" class="tk">+</a> <a id="487c62" class="tk">rtb_Divide4</a>) <a id="487c75" class="tk">*</a></td></tr>
-<tr name="488" id="488">
-<td><a id="l488" class='ln'>488</a></td><td>    <a id="488c5" class="tk">rtb_Divide</a>) <a id="488c17" class="tk">&gt;&gt;</a> 12);</td></tr>
-<tr name="489" id="489">
-<td><a id="l489" class='ln'>489</a></td><td></td></tr>
-<tr name="490" id="490">
-<td><a id="l490" class='ln'>490</a></td><td>  <span class="ct">/* Product: '&lt;S177&gt;/Divide6' incorporates:</span></td></tr>
-<tr name="491" id="491">
-<td><a id="l491" class='ln'>491</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide'</span></td></tr>
-<tr name="492" id="492">
-<td><a id="l492" class='ln'>492</a></td><td><span class="ct">   *  Product: '&lt;S177&gt;/Divide4'</span></td></tr>
-<tr name="493" id="493">
-<td><a id="l493" class='ln'>493</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreIntegrator'</span></td></tr>
-<tr name="494" id="494">
-<td><a id="l494" class='ln'>494</a></td><td><span class="ct">   *  Sum: '&lt;S177&gt;/Add1'</span></td></tr>
-<tr name="495" id="495">
-<td><a id="l495" class='ln'>495</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="496" id="496">
-<td><a id="l496" class='ln'>496</a></td><td>  <a id="496c3" class="tk">rtb_SignPreIntegrator</a> = (<a id="496c28" class="tk">int16_T</a>)(((<a id="496c39" class="tk">int16_T</a>)(<a id="496c48" class="tk">rtb_Divide4</a> <a id="496c60" class="tk">-</a></td></tr>
-<tr name="497" id="497">
-<td><a id="l497" class='ln'>497</a></td><td>    <a id="497c5" class="tk">rtb_SignPreIntegrator</a>) <a id="497c28" class="tk">*</a> <a id="497c30" class="tk">rtb_Divide</a>) <a id="497c42" class="tk">&gt;&gt;</a> 12);</td></tr>
-<tr name="498" id="498">
-<td><a id="l498" class='ln'>498</a></td><td></td></tr>
-<tr name="499" id="499">
-<td><a id="l499" class='ln'>499</a></td><td>  <span class="ct">/* MATLAB Function: '&lt;S177&gt;/phase_time' incorporates:</span></td></tr>
-<tr name="500" id="500">
-<td><a id="l500" class='ln'>500</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion1'</span></td></tr>
-<tr name="501" id="501">
-<td><a id="l501" class='ln'>501</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion2'</span></td></tr>
-<tr name="502" id="502">
-<td><a id="l502" class='ln'>502</a></td><td><span class="ct">   *  Inport: '&lt;Root&gt;/Ts'</span></td></tr>
-<tr name="503" id="503">
-<td><a id="l503" class='ln'>503</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="504" id="504">
-<td><a id="l504" class='ln'>504</a></td><td>  <span class="kw">switch</span> ((<a id="504c12" class="tk">int8_T</a>)<a id="504c19" class="tk">rtb_DataTypeConversion_a</a>) <span class="br">{</span></td></tr>
-<tr name="505" id="505">
-<td><a id="l505" class='ln'>505</a></td><td>   <span class="kw">case</span> 1<a id="505c10" class="tk">:</a></td></tr>
-<tr name="506" id="506">
-<td><a id="l506" class='ln'>506</a></td><td>    <a id="506c5" class="tk">rtb_Sum1_tmp</a> = <a id="506c20" class="tk">-</a><a id="506c21" class="tk">rtb_SignPreIntegrator</a>;</td></tr>
-<tr name="507" id="507">
-<td><a id="l507" class='ln'>507</a></td><td>    <span class="kw">if</span> (<a id="507c9" class="tk">-</a><a id="507c10" class="tk">rtb_SignPreIntegrator</a> <a id="507c32" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="508" id="508">
-<td><a id="l508" class='ln'>508</a></td><td>      <a id="508c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="509" id="509">
-<td><a id="l509" class='ln'>509</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="510" id="510">
-<td><a id="l510" class='ln'>510</a></td><td></td></tr>
-<tr name="511" id="511">
-<td><a id="l511" class='ln'>511</a></td><td>    <a id="511c5" class="tk">tmp_0</a> = (<a id="511c14" class="tk">int16_T</a>)<a id="511c22" class="tk">rtU_Ts</a> <a id="511c29" class="tk">-</a> (<a id="511c32" class="tk">int16_T</a>)<a id="511c40" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="512" id="512">
-<td><a id="l512" class='ln'>512</a></td><td>    <span class="kw">if</span> (<a id="512c9" class="tk">tmp_0</a> <a id="512c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="513" id="513">
-<td><a id="l513" class='ln'>513</a></td><td>      <a id="513c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="514" id="514">
-<td><a id="l514" class='ln'>514</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="515" id="515">
-<td><a id="l515" class='ln'>515</a></td><td>      <span class="kw">if</span> (<a id="515c11" class="tk">tmp_0</a> <a id="515c17" class="tk">&lt;</a> <a id="515c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="516" id="516">
-<td><a id="l516" class='ln'>516</a></td><td>        <a id="516c9" class="tk">tmp_0</a> = <a id="516c17" class="tk">-</a>32768;</td></tr>
-<tr name="517" id="517">
-<td><a id="l517" class='ln'>517</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="518" id="518">
-<td><a id="l518" class='ln'>518</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="519" id="519">
-<td><a id="l519" class='ln'>519</a></td><td></td></tr>
-<tr name="520" id="520">
-<td><a id="l520" class='ln'>520</a></td><td>    <a id="520c5" class="tk">tmp_0</a> <a id="520c11" class="tk">-=</a> <a id="520c14" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="521" id="521">
-<td><a id="l521" class='ln'>521</a></td><td>    <span class="kw">if</span> (<a id="521c9" class="tk">tmp_0</a> <a id="521c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="522" id="522">
-<td><a id="l522" class='ln'>522</a></td><td>      <a id="522c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="523" id="523">
-<td><a id="l523" class='ln'>523</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="524" id="524">
-<td><a id="l524" class='ln'>524</a></td><td>      <span class="kw">if</span> (<a id="524c11" class="tk">tmp_0</a> <a id="524c17" class="tk">&lt;</a> <a id="524c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="525" id="525">
-<td><a id="l525" class='ln'>525</a></td><td>        <a id="525c9" class="tk">tmp_0</a> = <a id="525c17" class="tk">-</a>32768;</td></tr>
-<tr name="526" id="526">
-<td><a id="l526" class='ln'>526</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="527" id="527">
-<td><a id="l527" class='ln'>527</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="528" id="528">
-<td><a id="l528" class='ln'>528</a></td><td></td></tr>
-<tr name="529" id="529">
-<td><a id="l529" class='ln'>529</a></td><td>    <a id="529c5" class="tk">rtb_Divide</a> = (<a id="529c19" class="tk">int16_T</a>)<a id="529c27" class="tk">rt_roundd_snf</a>((<a id="529c42" class="tk">real_T</a>)<a id="529c49" class="tk">tmp_0</a> <a id="529c55" class="tk">/</a> 4.0);</td></tr>
-<tr name="530" id="530">
-<td><a id="l530" class='ln'>530</a></td><td>    <a id="530c5" class="tk">rtb_Sum1</a> = (<a id="530c17" class="tk">int16_T</a>)((<a id="530c27" class="tk">int32_T</a>)<a id="530c35" class="tk">rt_roundd_snf</a>((<a id="530c50" class="tk">real_T</a>)<a id="530c57" class="tk">rtb_Sum1</a> <a id="530c66" class="tk">/</a> 2.0) <a id="530c73" class="tk">+</a></td></tr>
-<tr name="531" id="531">
-<td><a id="l531" class='ln'>531</a></td><td>                         <a id="531c26" class="tk">rtb_Divide</a>);</td></tr>
-<tr name="532" id="532">
-<td><a id="l532" class='ln'>532</a></td><td>    <a id="532c5" class="tk">rtb_Sum1_tmp</a> = (<a id="532c21" class="tk">int32_T</a>)<a id="532c29" class="tk">rt_roundd_snf</a>((<a id="532c44" class="tk">real_T</a>)(<a id="532c52" class="tk">int16_T</a>)<a id="532c60" class="tk">rtb_Sum1_tmp</a> <a id="532c73" class="tk">/</a> 2.0) <a id="532c80" class="tk">+</a></td></tr>
-<tr name="533" id="533">
-<td><a id="l533" class='ln'>533</a></td><td>      <a id="533c7" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="534" id="534">
-<td><a id="l534" class='ln'>534</a></td><td>    <span class="kw">if</span> (<a id="534c9" class="tk">rtb_Sum1_tmp</a> <a id="534c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="535" id="535">
-<td><a id="l535" class='ln'>535</a></td><td>      <a id="535c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="536" id="536">
-<td><a id="l536" class='ln'>536</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="537" id="537">
-<td><a id="l537" class='ln'>537</a></td><td>      <span class="kw">if</span> (<a id="537c11" class="tk">rtb_Sum1_tmp</a> <a id="537c24" class="tk">&lt;</a> <a id="537c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="538" id="538">
-<td><a id="l538" class='ln'>538</a></td><td>        <a id="538c9" class="tk">rtb_Sum1_tmp</a> = <a id="538c24" class="tk">-</a>32768;</td></tr>
-<tr name="539" id="539">
-<td><a id="l539" class='ln'>539</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="540" id="540">
-<td><a id="l540" class='ln'>540</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="541" id="541">
-<td><a id="l541" class='ln'>541</a></td><td></td></tr>
-<tr name="542" id="542">
-<td><a id="l542" class='ln'>542</a></td><td>    <a id="542c5" class="tk">rtb_Divide7</a> = (<a id="542c20" class="tk">int16_T</a>)<a id="542c28" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="543" id="543">
-<td><a id="l543" class='ln'>543</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="544" id="544">
-<td><a id="l544" class='ln'>544</a></td><td></td></tr>
-<tr name="545" id="545">
-<td><a id="l545" class='ln'>545</a></td><td>   <span class="kw">case</span> 2<a id="545c10" class="tk">:</a></td></tr>
-<tr name="546" id="546">
-<td><a id="l546" class='ln'>546</a></td><td>    <a id="546c5" class="tk">rtb_Sum1_tmp</a> = (<a id="546c21" class="tk">int16_T</a>)<a id="546c29" class="tk">rtU_Ts</a> <a id="546c36" class="tk">-</a> <a id="546c38" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="547" id="547">
-<td><a id="l547" class='ln'>547</a></td><td>    <span class="kw">if</span> (<a id="547c9" class="tk">rtb_Sum1_tmp</a> <a id="547c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="548" id="548">
-<td><a id="l548" class='ln'>548</a></td><td>      <a id="548c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="549" id="549">
-<td><a id="l549" class='ln'>549</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="550" id="550">
-<td><a id="l550" class='ln'>550</a></td><td>      <span class="kw">if</span> (<a id="550c11" class="tk">rtb_Sum1_tmp</a> <a id="550c24" class="tk">&lt;</a> <a id="550c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="551" id="551">
-<td><a id="l551" class='ln'>551</a></td><td>        <a id="551c9" class="tk">rtb_Sum1_tmp</a> = <a id="551c24" class="tk">-</a>32768;</td></tr>
-<tr name="552" id="552">
-<td><a id="l552" class='ln'>552</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="553" id="553">
-<td><a id="l553" class='ln'>553</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="554" id="554">
-<td><a id="l554" class='ln'>554</a></td><td></td></tr>
-<tr name="555" id="555">
-<td><a id="l555" class='ln'>555</a></td><td>    <a id="555c5" class="tk">rtb_Sum1_tmp</a> <a id="555c18" class="tk">-=</a> <a id="555c21" class="tk">rtb_SignPreIntegrator</a>;</td></tr>
-<tr name="556" id="556">
-<td><a id="l556" class='ln'>556</a></td><td>    <span class="kw">if</span> (<a id="556c9" class="tk">rtb_Sum1_tmp</a> <a id="556c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="557" id="557">
-<td><a id="l557" class='ln'>557</a></td><td>      <a id="557c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="558" id="558">
-<td><a id="l558" class='ln'>558</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="559" id="559">
-<td><a id="l559" class='ln'>559</a></td><td>      <span class="kw">if</span> (<a id="559c11" class="tk">rtb_Sum1_tmp</a> <a id="559c24" class="tk">&lt;</a> <a id="559c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="560" id="560">
-<td><a id="l560" class='ln'>560</a></td><td>        <a id="560c9" class="tk">rtb_Sum1_tmp</a> = <a id="560c24" class="tk">-</a>32768;</td></tr>
-<tr name="561" id="561">
-<td><a id="l561" class='ln'>561</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="562" id="562">
-<td><a id="l562" class='ln'>562</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="563" id="563">
-<td><a id="l563" class='ln'>563</a></td><td></td></tr>
-<tr name="564" id="564">
-<td><a id="l564" class='ln'>564</a></td><td>    <a id="564c5" class="tk">rtb_Divide</a> = (<a id="564c19" class="tk">int16_T</a>)<a id="564c27" class="tk">rt_roundd_snf</a>((<a id="564c42" class="tk">real_T</a>)<a id="564c49" class="tk">rtb_Sum1_tmp</a> <a id="564c62" class="tk">/</a> 4.0);</td></tr>
-<tr name="565" id="565">
-<td><a id="l565" class='ln'>565</a></td><td>    <a id="565c5" class="tk">rtb_Divide7</a> = (<a id="565c20" class="tk">int16_T</a>)((<a id="565c30" class="tk">int32_T</a>)<a id="565c38" class="tk">rt_roundd_snf</a>((<a id="565c53" class="tk">real_T</a>)<a id="565c60" class="tk">rtb_Divide7</a> <a id="565c72" class="tk">/</a> 2.0) <a id="565c79" class="tk">+</a></td></tr>
-<tr name="566" id="566">
-<td><a id="l566" class='ln'>566</a></td><td>      <a id="566c7" class="tk">rtb_Divide</a>);</td></tr>
-<tr name="567" id="567">
-<td><a id="l567" class='ln'>567</a></td><td>    <a id="567c5" class="tk">rtb_Sum1_tmp</a> = (<a id="567c21" class="tk">int32_T</a>)<a id="567c29" class="tk">rt_roundd_snf</a>((<a id="567c44" class="tk">real_T</a>)<a id="567c51" class="tk">rtb_SignPreIntegrator</a> <a id="567c73" class="tk">/</a> 2.0) <a id="567c80" class="tk">+</a></td></tr>
-<tr name="568" id="568">
-<td><a id="l568" class='ln'>568</a></td><td>      <a id="568c7" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="569" id="569">
-<td><a id="l569" class='ln'>569</a></td><td>    <span class="kw">if</span> (<a id="569c9" class="tk">rtb_Sum1_tmp</a> <a id="569c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="570" id="570">
-<td><a id="l570" class='ln'>570</a></td><td>      <a id="570c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="571" id="571">
-<td><a id="l571" class='ln'>571</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="572" id="572">
-<td><a id="l572" class='ln'>572</a></td><td>      <span class="kw">if</span> (<a id="572c11" class="tk">rtb_Sum1_tmp</a> <a id="572c24" class="tk">&lt;</a> <a id="572c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="573" id="573">
-<td><a id="l573" class='ln'>573</a></td><td>        <a id="573c9" class="tk">rtb_Sum1_tmp</a> = <a id="573c24" class="tk">-</a>32768;</td></tr>
-<tr name="574" id="574">
-<td><a id="l574" class='ln'>574</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="575" id="575">
-<td><a id="l575" class='ln'>575</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="576" id="576">
-<td><a id="l576" class='ln'>576</a></td><td></td></tr>
-<tr name="577" id="577">
-<td><a id="l577" class='ln'>577</a></td><td>    <a id="577c5" class="tk">rtb_Sum1</a> = (<a id="577c17" class="tk">int16_T</a>)<a id="577c25" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="578" id="578">
-<td><a id="l578" class='ln'>578</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="579" id="579">
-<td><a id="l579" class='ln'>579</a></td><td></td></tr>
-<tr name="580" id="580">
-<td><a id="l580" class='ln'>580</a></td><td>   <span class="kw">case</span> 3<a id="580c10" class="tk">:</a></td></tr>
-<tr name="581" id="581">
-<td><a id="l581" class='ln'>581</a></td><td>    <a id="581c5" class="tk">rtb_Sum1_tmp</a> = <a id="581c20" class="tk">-</a><a id="581c21" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="582" id="582">
-<td><a id="l582" class='ln'>582</a></td><td>    <span class="kw">if</span> (<a id="582c9" class="tk">-</a><a id="582c10" class="tk">rtb_Divide7</a> <a id="582c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="583" id="583">
-<td><a id="l583" class='ln'>583</a></td><td>      <a id="583c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="584" id="584">
-<td><a id="l584" class='ln'>584</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="585" id="585">
-<td><a id="l585" class='ln'>585</a></td><td></td></tr>
-<tr name="586" id="586">
-<td><a id="l586" class='ln'>586</a></td><td>    <a id="586c5" class="tk">tmp_0</a> = (<a id="586c14" class="tk">int16_T</a>)<a id="586c22" class="tk">rtU_Ts</a> <a id="586c29" class="tk">-</a> <a id="586c31" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="587" id="587">
-<td><a id="l587" class='ln'>587</a></td><td>    <span class="kw">if</span> (<a id="587c9" class="tk">tmp_0</a> <a id="587c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="588" id="588">
-<td><a id="l588" class='ln'>588</a></td><td>      <a id="588c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="589" id="589">
-<td><a id="l589" class='ln'>589</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="590" id="590">
-<td><a id="l590" class='ln'>590</a></td><td>      <span class="kw">if</span> (<a id="590c11" class="tk">tmp_0</a> <a id="590c17" class="tk">&lt;</a> <a id="590c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="591" id="591">
-<td><a id="l591" class='ln'>591</a></td><td>        <a id="591c9" class="tk">tmp_0</a> = <a id="591c17" class="tk">-</a>32768;</td></tr>
-<tr name="592" id="592">
-<td><a id="l592" class='ln'>592</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="593" id="593">
-<td><a id="l593" class='ln'>593</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="594" id="594">
-<td><a id="l594" class='ln'>594</a></td><td></td></tr>
-<tr name="595" id="595">
-<td><a id="l595" class='ln'>595</a></td><td>    <a id="595c5" class="tk">tmp_0</a> <a id="595c11" class="tk">-=</a> (<a id="595c15" class="tk">int16_T</a>)<a id="595c23" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="596" id="596">
-<td><a id="l596" class='ln'>596</a></td><td>    <span class="kw">if</span> (<a id="596c9" class="tk">tmp_0</a> <a id="596c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="597" id="597">
-<td><a id="l597" class='ln'>597</a></td><td>      <a id="597c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="598" id="598">
-<td><a id="l598" class='ln'>598</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="599" id="599">
-<td><a id="l599" class='ln'>599</a></td><td>      <span class="kw">if</span> (<a id="599c11" class="tk">tmp_0</a> <a id="599c17" class="tk">&lt;</a> <a id="599c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="600" id="600">
-<td><a id="l600" class='ln'>600</a></td><td>        <a id="600c9" class="tk">tmp_0</a> = <a id="600c17" class="tk">-</a>32768;</td></tr>
-<tr name="601" id="601">
-<td><a id="l601" class='ln'>601</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="602" id="602">
-<td><a id="l602" class='ln'>602</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="603" id="603">
-<td><a id="l603" class='ln'>603</a></td><td></td></tr>
-<tr name="604" id="604">
-<td><a id="l604" class='ln'>604</a></td><td>    <a id="604c5" class="tk">rtb_Divide7</a> = (<a id="604c20" class="tk">int16_T</a>)<a id="604c28" class="tk">rt_roundd_snf</a>((<a id="604c43" class="tk">real_T</a>)<a id="604c50" class="tk">tmp_0</a> <a id="604c56" class="tk">/</a> 4.0);</td></tr>
-<tr name="605" id="605">
-<td><a id="l605" class='ln'>605</a></td><td>    <a id="605c5" class="tk">rtb_Divide</a> = (<a id="605c19" class="tk">int16_T</a>)((<a id="605c29" class="tk">int32_T</a>)<a id="605c37" class="tk">rt_roundd_snf</a>((<a id="605c52" class="tk">real_T</a>)(<a id="605c60" class="tk">int16_T</a>)<a id="605c68" class="tk">rtb_Sum1_tmp</a> <a id="605c81" class="tk">/</a></td></tr>
-<tr name="606" id="606">
-<td><a id="l606" class='ln'>606</a></td><td>      2.0) <a id="606c12" class="tk">+</a> <a id="606c14" class="tk">rtb_Divide7</a>);</td></tr>
-<tr name="607" id="607">
-<td><a id="l607" class='ln'>607</a></td><td>    <a id="607c5" class="tk">rtb_Sum1_tmp</a> = (<a id="607c21" class="tk">int32_T</a>)<a id="607c29" class="tk">rt_roundd_snf</a>((<a id="607c44" class="tk">real_T</a>)<a id="607c51" class="tk">rtb_Sum1</a> <a id="607c60" class="tk">/</a> 2.0) <a id="607c67" class="tk">+</a> <a id="607c69" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="608" id="608">
-<td><a id="l608" class='ln'>608</a></td><td>    <span class="kw">if</span> (<a id="608c9" class="tk">rtb_Sum1_tmp</a> <a id="608c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="609" id="609">
-<td><a id="l609" class='ln'>609</a></td><td>      <a id="609c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="610" id="610">
-<td><a id="l610" class='ln'>610</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="611" id="611">
-<td><a id="l611" class='ln'>611</a></td><td>      <span class="kw">if</span> (<a id="611c11" class="tk">rtb_Sum1_tmp</a> <a id="611c24" class="tk">&lt;</a> <a id="611c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="612" id="612">
-<td><a id="l612" class='ln'>612</a></td><td>        <a id="612c9" class="tk">rtb_Sum1_tmp</a> = <a id="612c24" class="tk">-</a>32768;</td></tr>
-<tr name="613" id="613">
-<td><a id="l613" class='ln'>613</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="614" id="614">
-<td><a id="l614" class='ln'>614</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="615" id="615">
-<td><a id="l615" class='ln'>615</a></td><td></td></tr>
-<tr name="616" id="616">
-<td><a id="l616" class='ln'>616</a></td><td>    <a id="616c5" class="tk">rtb_Sum1</a> = (<a id="616c17" class="tk">int16_T</a>)<a id="616c25" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="617" id="617">
-<td><a id="l617" class='ln'>617</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="618" id="618">
-<td><a id="l618" class='ln'>618</a></td><td></td></tr>
-<tr name="619" id="619">
-<td><a id="l619" class='ln'>619</a></td><td>   <span class="kw">case</span> 4<a id="619c10" class="tk">:</a></td></tr>
-<tr name="620" id="620">
-<td><a id="l620" class='ln'>620</a></td><td>    <a id="620c5" class="tk">rtb_Sum1_tmp</a> = <a id="620c20" class="tk">-</a><a id="620c21" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="621" id="621">
-<td><a id="l621" class='ln'>621</a></td><td>    <span class="kw">if</span> (<a id="621c9" class="tk">-</a><a id="621c10" class="tk">rtb_Sum1</a> <a id="621c19" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="622" id="622">
-<td><a id="l622" class='ln'>622</a></td><td>      <a id="622c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="623" id="623">
-<td><a id="l623" class='ln'>623</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="624" id="624">
-<td><a id="l624" class='ln'>624</a></td><td></td></tr>
-<tr name="625" id="625">
-<td><a id="l625" class='ln'>625</a></td><td>    <a id="625c5" class="tk">tmp_0</a> = (<a id="625c14" class="tk">int16_T</a>)<a id="625c22" class="tk">rtU_Ts</a> <a id="625c29" class="tk">-</a> (<a id="625c32" class="tk">int16_T</a>)<a id="625c40" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="626" id="626">
-<td><a id="l626" class='ln'>626</a></td><td>    <span class="kw">if</span> (<a id="626c9" class="tk">tmp_0</a> <a id="626c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="627" id="627">
-<td><a id="l627" class='ln'>627</a></td><td>      <a id="627c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="628" id="628">
-<td><a id="l628" class='ln'>628</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="629" id="629">
-<td><a id="l629" class='ln'>629</a></td><td>      <span class="kw">if</span> (<a id="629c11" class="tk">tmp_0</a> <a id="629c17" class="tk">&lt;</a> <a id="629c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="630" id="630">
-<td><a id="l630" class='ln'>630</a></td><td>        <a id="630c9" class="tk">tmp_0</a> = <a id="630c17" class="tk">-</a>32768;</td></tr>
-<tr name="631" id="631">
-<td><a id="l631" class='ln'>631</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="632" id="632">
-<td><a id="l632" class='ln'>632</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="633" id="633">
-<td><a id="l633" class='ln'>633</a></td><td></td></tr>
-<tr name="634" id="634">
-<td><a id="l634" class='ln'>634</a></td><td>    <a id="634c5" class="tk">tmp_0</a> <a id="634c11" class="tk">-=</a> <a id="634c14" class="tk">rtb_SignPreIntegrator</a>;</td></tr>
-<tr name="635" id="635">
-<td><a id="l635" class='ln'>635</a></td><td>    <span class="kw">if</span> (<a id="635c9" class="tk">tmp_0</a> <a id="635c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="636" id="636">
-<td><a id="l636" class='ln'>636</a></td><td>      <a id="636c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="637" id="637">
-<td><a id="l637" class='ln'>637</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="638" id="638">
-<td><a id="l638" class='ln'>638</a></td><td>      <span class="kw">if</span> (<a id="638c11" class="tk">tmp_0</a> <a id="638c17" class="tk">&lt;</a> <a id="638c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="639" id="639">
-<td><a id="l639" class='ln'>639</a></td><td>        <a id="639c9" class="tk">tmp_0</a> = <a id="639c17" class="tk">-</a>32768;</td></tr>
-<tr name="640" id="640">
-<td><a id="l640" class='ln'>640</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="641" id="641">
-<td><a id="l641" class='ln'>641</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="642" id="642">
-<td><a id="l642" class='ln'>642</a></td><td></td></tr>
-<tr name="643" id="643">
-<td><a id="l643" class='ln'>643</a></td><td>    <a id="643c5" class="tk">rtb_Divide7</a> = (<a id="643c20" class="tk">int16_T</a>)<a id="643c28" class="tk">rt_roundd_snf</a>((<a id="643c43" class="tk">real_T</a>)<a id="643c50" class="tk">tmp_0</a> <a id="643c56" class="tk">/</a> 4.0);</td></tr>
-<tr name="644" id="644">
-<td><a id="l644" class='ln'>644</a></td><td>    <a id="644c5" class="tk">rtb_Sum1</a> = (<a id="644c17" class="tk">int16_T</a>)((<a id="644c27" class="tk">int32_T</a>)<a id="644c35" class="tk">rt_roundd_snf</a>((<a id="644c50" class="tk">real_T</a>)<a id="644c57" class="tk">rtb_SignPreIntegrator</a> <a id="644c79" class="tk">/</a></td></tr>
-<tr name="645" id="645">
-<td><a id="l645" class='ln'>645</a></td><td>      2.0) <a id="645c12" class="tk">+</a> <a id="645c14" class="tk">rtb_Divide7</a>);</td></tr>
-<tr name="646" id="646">
-<td><a id="l646" class='ln'>646</a></td><td>    <a id="646c5" class="tk">rtb_Sum1_tmp</a> = (<a id="646c21" class="tk">int32_T</a>)<a id="646c29" class="tk">rt_roundd_snf</a>((<a id="646c44" class="tk">real_T</a>)(<a id="646c52" class="tk">int16_T</a>)<a id="646c60" class="tk">rtb_Sum1_tmp</a> <a id="646c73" class="tk">/</a> 2.0) <a id="646c80" class="tk">+</a></td></tr>
-<tr name="647" id="647">
-<td><a id="l647" class='ln'>647</a></td><td>      <a id="647c7" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="648" id="648">
-<td><a id="l648" class='ln'>648</a></td><td>    <span class="kw">if</span> (<a id="648c9" class="tk">rtb_Sum1_tmp</a> <a id="648c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="649" id="649">
-<td><a id="l649" class='ln'>649</a></td><td>      <a id="649c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="650" id="650">
-<td><a id="l650" class='ln'>650</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="651" id="651">
-<td><a id="l651" class='ln'>651</a></td><td>      <span class="kw">if</span> (<a id="651c11" class="tk">rtb_Sum1_tmp</a> <a id="651c24" class="tk">&lt;</a> <a id="651c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="652" id="652">
-<td><a id="l652" class='ln'>652</a></td><td>        <a id="652c9" class="tk">rtb_Sum1_tmp</a> = <a id="652c24" class="tk">-</a>32768;</td></tr>
-<tr name="653" id="653">
-<td><a id="l653" class='ln'>653</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="654" id="654">
-<td><a id="l654" class='ln'>654</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="655" id="655">
-<td><a id="l655" class='ln'>655</a></td><td></td></tr>
-<tr name="656" id="656">
-<td><a id="l656" class='ln'>656</a></td><td>    <a id="656c5" class="tk">rtb_Divide</a> = (<a id="656c19" class="tk">int16_T</a>)<a id="656c27" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="657" id="657">
-<td><a id="l657" class='ln'>657</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="658" id="658">
-<td><a id="l658" class='ln'>658</a></td><td></td></tr>
-<tr name="659" id="659">
-<td><a id="l659" class='ln'>659</a></td><td>   <span class="kw">case</span> 5<a id="659c10" class="tk">:</a></td></tr>
-<tr name="660" id="660">
-<td><a id="l660" class='ln'>660</a></td><td>    <a id="660c5" class="tk">rtb_Sum1_tmp</a> = <a id="660c20" class="tk">-</a><a id="660c21" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="661" id="661">
-<td><a id="l661" class='ln'>661</a></td><td>    <span class="kw">if</span> (<a id="661c9" class="tk">-</a><a id="661c10" class="tk">rtb_Divide7</a> <a id="661c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="662" id="662">
-<td><a id="l662" class='ln'>662</a></td><td>      <a id="662c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="663" id="663">
-<td><a id="l663" class='ln'>663</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="664" id="664">
-<td><a id="l664" class='ln'>664</a></td><td></td></tr>
-<tr name="665" id="665">
-<td><a id="l665" class='ln'>665</a></td><td>    <a id="665c5" class="tk">tmp_0</a> = <a id="665c13" class="tk">-</a><a id="665c14" class="tk">rtb_SignPreIntegrator</a>;</td></tr>
-<tr name="666" id="666">
-<td><a id="l666" class='ln'>666</a></td><td>    <span class="kw">if</span> (<a id="666c9" class="tk">-</a><a id="666c10" class="tk">rtb_SignPreIntegrator</a> <a id="666c32" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="667" id="667">
-<td><a id="l667" class='ln'>667</a></td><td>      <a id="667c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="668" id="668">
-<td><a id="l668" class='ln'>668</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="669" id="669">
-<td><a id="l669" class='ln'>669</a></td><td></td></tr>
-<tr name="670" id="670">
-<td><a id="l670" class='ln'>670</a></td><td>    <a id="670c5" class="tk">tmp</a> = (<a id="670c12" class="tk">int16_T</a>)<a id="670c20" class="tk">rtU_Ts</a> <a id="670c27" class="tk">-</a> (<a id="670c30" class="tk">int16_T</a>)<a id="670c38" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="671" id="671">
-<td><a id="l671" class='ln'>671</a></td><td>    <span class="kw">if</span> (<a id="671c9" class="tk">tmp</a> <a id="671c13" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="672" id="672">
-<td><a id="l672" class='ln'>672</a></td><td>      <a id="672c7" class="tk">tmp</a> = 32767;</td></tr>
-<tr name="673" id="673">
-<td><a id="l673" class='ln'>673</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="674" id="674">
-<td><a id="l674" class='ln'>674</a></td><td>      <span class="kw">if</span> (<a id="674c11" class="tk">tmp</a> <a id="674c15" class="tk">&lt;</a> <a id="674c17" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="675" id="675">
-<td><a id="l675" class='ln'>675</a></td><td>        <a id="675c9" class="tk">tmp</a> = <a id="675c15" class="tk">-</a>32768;</td></tr>
-<tr name="676" id="676">
-<td><a id="l676" class='ln'>676</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="677" id="677">
-<td><a id="l677" class='ln'>677</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="678" id="678">
-<td><a id="l678" class='ln'>678</a></td><td></td></tr>
-<tr name="679" id="679">
-<td><a id="l679" class='ln'>679</a></td><td>    <a id="679c5" class="tk">tmp</a> <a id="679c9" class="tk">-=</a> (<a id="679c13" class="tk">int16_T</a>)<a id="679c21" class="tk">tmp_0</a>;</td></tr>
-<tr name="680" id="680">
-<td><a id="l680" class='ln'>680</a></td><td>    <span class="kw">if</span> (<a id="680c9" class="tk">tmp</a> <a id="680c13" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="681" id="681">
-<td><a id="l681" class='ln'>681</a></td><td>      <a id="681c7" class="tk">tmp</a> = 32767;</td></tr>
-<tr name="682" id="682">
-<td><a id="l682" class='ln'>682</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="683" id="683">
-<td><a id="l683" class='ln'>683</a></td><td>      <span class="kw">if</span> (<a id="683c11" class="tk">tmp</a> <a id="683c15" class="tk">&lt;</a> <a id="683c17" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="684" id="684">
-<td><a id="l684" class='ln'>684</a></td><td>        <a id="684c9" class="tk">tmp</a> = <a id="684c15" class="tk">-</a>32768;</td></tr>
-<tr name="685" id="685">
-<td><a id="l685" class='ln'>685</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="686" id="686">
-<td><a id="l686" class='ln'>686</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="687" id="687">
-<td><a id="l687" class='ln'>687</a></td><td></td></tr>
-<tr name="688" id="688">
-<td><a id="l688" class='ln'>688</a></td><td>    <a id="688c5" class="tk">rtb_Sum1</a> = (<a id="688c17" class="tk">int16_T</a>)<a id="688c25" class="tk">rt_roundd_snf</a>((<a id="688c40" class="tk">real_T</a>)<a id="688c47" class="tk">tmp</a> <a id="688c51" class="tk">/</a> 4.0);</td></tr>
-<tr name="689" id="689">
-<td><a id="l689" class='ln'>689</a></td><td>    <a id="689c5" class="tk">rtb_Divide7</a> = (<a id="689c20" class="tk">int16_T</a>)((<a id="689c30" class="tk">int32_T</a>)<a id="689c38" class="tk">rt_roundd_snf</a>((<a id="689c53" class="tk">real_T</a>)(<a id="689c61" class="tk">int16_T</a>)<a id="689c69" class="tk">tmp_0</a> <a id="689c75" class="tk">/</a> 2.0)</td></tr>
-<tr name="690" id="690">
-<td><a id="l690" class='ln'>690</a></td><td>      <a id="690c7" class="tk">+</a> <a id="690c9" class="tk">rtb_Sum1</a>);</td></tr>
-<tr name="691" id="691">
-<td><a id="l691" class='ln'>691</a></td><td>    <a id="691c5" class="tk">rtb_Sum1_tmp</a> = (<a id="691c21" class="tk">int32_T</a>)<a id="691c29" class="tk">rt_roundd_snf</a>((<a id="691c44" class="tk">real_T</a>)(<a id="691c52" class="tk">int16_T</a>)<a id="691c60" class="tk">rtb_Sum1_tmp</a> <a id="691c73" class="tk">/</a> 2.0) <a id="691c80" class="tk">+</a></td></tr>
-<tr name="692" id="692">
-<td><a id="l692" class='ln'>692</a></td><td>      <a id="692c7" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="693" id="693">
-<td><a id="l693" class='ln'>693</a></td><td>    <span class="kw">if</span> (<a id="693c9" class="tk">rtb_Sum1_tmp</a> <a id="693c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="694" id="694">
-<td><a id="l694" class='ln'>694</a></td><td>      <a id="694c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="695" id="695">
-<td><a id="l695" class='ln'>695</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="696" id="696">
-<td><a id="l696" class='ln'>696</a></td><td>      <span class="kw">if</span> (<a id="696c11" class="tk">rtb_Sum1_tmp</a> <a id="696c24" class="tk">&lt;</a> <a id="696c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="697" id="697">
-<td><a id="l697" class='ln'>697</a></td><td>        <a id="697c9" class="tk">rtb_Sum1_tmp</a> = <a id="697c24" class="tk">-</a>32768;</td></tr>
-<tr name="698" id="698">
-<td><a id="l698" class='ln'>698</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="699" id="699">
-<td><a id="l699" class='ln'>699</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="700" id="700">
-<td><a id="l700" class='ln'>700</a></td><td></td></tr>
-<tr name="701" id="701">
-<td><a id="l701" class='ln'>701</a></td><td>    <a id="701c5" class="tk">rtb_Divide</a> = (<a id="701c19" class="tk">int16_T</a>)<a id="701c27" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="702" id="702">
-<td><a id="l702" class='ln'>702</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="703" id="703">
-<td><a id="l703" class='ln'>703</a></td><td></td></tr>
-<tr name="704" id="704">
-<td><a id="l704" class='ln'>704</a></td><td>   <span class="kw">default</span><a id="704c11" class="tk">:</a></td></tr>
-<tr name="705" id="705">
-<td><a id="l705" class='ln'>705</a></td><td>    <a id="705c5" class="tk">rtb_Sum1_tmp</a> = <a id="705c20" class="tk">-</a><a id="705c21" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="706" id="706">
-<td><a id="l706" class='ln'>706</a></td><td>    <span class="kw">if</span> (<a id="706c9" class="tk">-</a><a id="706c10" class="tk">rtb_Sum1</a> <a id="706c19" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="707" id="707">
-<td><a id="l707" class='ln'>707</a></td><td>      <a id="707c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="708" id="708">
-<td><a id="l708" class='ln'>708</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="709" id="709">
-<td><a id="l709" class='ln'>709</a></td><td></td></tr>
-<tr name="710" id="710">
-<td><a id="l710" class='ln'>710</a></td><td>    <a id="710c5" class="tk">tmp_0</a> = (<a id="710c14" class="tk">int16_T</a>)<a id="710c22" class="tk">rtU_Ts</a> <a id="710c29" class="tk">-</a> <a id="710c31" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="711" id="711">
-<td><a id="l711" class='ln'>711</a></td><td>    <span class="kw">if</span> (<a id="711c9" class="tk">tmp_0</a> <a id="711c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="712" id="712">
-<td><a id="l712" class='ln'>712</a></td><td>      <a id="712c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="713" id="713">
-<td><a id="l713" class='ln'>713</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="714" id="714">
-<td><a id="l714" class='ln'>714</a></td><td>      <span class="kw">if</span> (<a id="714c11" class="tk">tmp_0</a> <a id="714c17" class="tk">&lt;</a> <a id="714c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="715" id="715">
-<td><a id="l715" class='ln'>715</a></td><td>        <a id="715c9" class="tk">tmp_0</a> = <a id="715c17" class="tk">-</a>32768;</td></tr>
-<tr name="716" id="716">
-<td><a id="l716" class='ln'>716</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="717" id="717">
-<td><a id="l717" class='ln'>717</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="718" id="718">
-<td><a id="l718" class='ln'>718</a></td><td></td></tr>
-<tr name="719" id="719">
-<td><a id="l719" class='ln'>719</a></td><td>    <a id="719c5" class="tk">tmp_0</a> <a id="719c11" class="tk">-=</a> (<a id="719c15" class="tk">int16_T</a>)<a id="719c23" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="720" id="720">
-<td><a id="l720" class='ln'>720</a></td><td>    <span class="kw">if</span> (<a id="720c9" class="tk">tmp_0</a> <a id="720c15" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="721" id="721">
-<td><a id="l721" class='ln'>721</a></td><td>      <a id="721c7" class="tk">tmp_0</a> = 32767;</td></tr>
-<tr name="722" id="722">
-<td><a id="l722" class='ln'>722</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="723" id="723">
-<td><a id="l723" class='ln'>723</a></td><td>      <span class="kw">if</span> (<a id="723c11" class="tk">tmp_0</a> <a id="723c17" class="tk">&lt;</a> <a id="723c19" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="724" id="724">
-<td><a id="l724" class='ln'>724</a></td><td>        <a id="724c9" class="tk">tmp_0</a> = <a id="724c17" class="tk">-</a>32768;</td></tr>
-<tr name="725" id="725">
-<td><a id="l725" class='ln'>725</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="726" id="726">
-<td><a id="l726" class='ln'>726</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="727" id="727">
-<td><a id="l727" class='ln'>727</a></td><td></td></tr>
-<tr name="728" id="728">
-<td><a id="l728" class='ln'>728</a></td><td>    <a id="728c5" class="tk">rtb_Sum1</a> = (<a id="728c17" class="tk">int16_T</a>)<a id="728c25" class="tk">rt_roundd_snf</a>((<a id="728c40" class="tk">real_T</a>)<a id="728c47" class="tk">tmp_0</a> <a id="728c53" class="tk">/</a> 4.0);</td></tr>
-<tr name="729" id="729">
-<td><a id="l729" class='ln'>729</a></td><td>    <a id="729c5" class="tk">rtb_Divide</a> = (<a id="729c19" class="tk">int16_T</a>)((<a id="729c29" class="tk">int32_T</a>)<a id="729c37" class="tk">rt_roundd_snf</a>((<a id="729c52" class="tk">real_T</a>)(<a id="729c60" class="tk">int16_T</a>)<a id="729c68" class="tk">rtb_Sum1_tmp</a> <a id="729c81" class="tk">/</a></td></tr>
-<tr name="730" id="730">
-<td><a id="l730" class='ln'>730</a></td><td>      2.0) <a id="730c12" class="tk">+</a> <a id="730c14" class="tk">rtb_Sum1</a>);</td></tr>
-<tr name="731" id="731">
-<td><a id="l731" class='ln'>731</a></td><td>    <a id="731c5" class="tk">rtb_Sum1_tmp</a> = (<a id="731c21" class="tk">int32_T</a>)<a id="731c29" class="tk">rt_roundd_snf</a>((<a id="731c44" class="tk">real_T</a>)<a id="731c51" class="tk">rtb_Divide7</a> <a id="731c63" class="tk">/</a> 2.0) <a id="731c70" class="tk">+</a></td></tr>
-<tr name="732" id="732">
-<td><a id="l732" class='ln'>732</a></td><td>      <a id="732c7" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="733" id="733">
-<td><a id="l733" class='ln'>733</a></td><td>    <span class="kw">if</span> (<a id="733c9" class="tk">rtb_Sum1_tmp</a> <a id="733c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="734" id="734">
-<td><a id="l734" class='ln'>734</a></td><td>      <a id="734c7" class="tk">rtb_Sum1_tmp</a> = 32767;</td></tr>
-<tr name="735" id="735">
-<td><a id="l735" class='ln'>735</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="736" id="736">
-<td><a id="l736" class='ln'>736</a></td><td>      <span class="kw">if</span> (<a id="736c11" class="tk">rtb_Sum1_tmp</a> <a id="736c24" class="tk">&lt;</a> <a id="736c26" class="tk">-</a>32768) <span class="br">{</span></td></tr>
-<tr name="737" id="737">
-<td><a id="l737" class='ln'>737</a></td><td>        <a id="737c9" class="tk">rtb_Sum1_tmp</a> = <a id="737c24" class="tk">-</a>32768;</td></tr>
-<tr name="738" id="738">
-<td><a id="l738" class='ln'>738</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="739" id="739">
-<td><a id="l739" class='ln'>739</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="740" id="740">
-<td><a id="l740" class='ln'>740</a></td><td></td></tr>
-<tr name="741" id="741">
-<td><a id="l741" class='ln'>741</a></td><td>    <a id="741c5" class="tk">rtb_Divide7</a> = (<a id="741c20" class="tk">int16_T</a>)<a id="741c28" class="tk">rtb_Sum1_tmp</a>;</td></tr>
-<tr name="742" id="742">
-<td><a id="l742" class='ln'>742</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="743" id="743">
-<td><a id="l743" class='ln'>743</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="744" id="744">
-<td><a id="l744" class='ln'>744</a></td><td></td></tr>
-<tr name="745" id="745">
-<td><a id="l745" class='ln'>745</a></td><td>  <span class="ct">/* DataTypeConversion: '&lt;S177&gt;/Data Type Conversion3' incorporates:</span></td></tr>
-<tr name="746" id="746">
-<td><a id="l746" class='ln'>746</a></td><td><span class="ct">   *  MATLAB Function: '&lt;S177&gt;/phase_time'</span></td></tr>
-<tr name="747" id="747">
-<td><a id="l747" class='ln'>747</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="748" id="748">
-<td><a id="l748" class='ln'>748</a></td><td>  <a id="748c3" class="tk">rtb_DataTypeConversion3</a> = (<a id="748c30" class="tk">uint16_T</a>)<a id="748c39" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="749" id="749">
-<td><a id="l749" class='ln'>749</a></td><td></td></tr>
-<tr name="750" id="750">
-<td><a id="l750" class='ln'>750</a></td><td>  <span class="ct">/* MultiPortSwitch: '&lt;S178&gt;/Multiport Switch' incorporates:</span></td></tr>
-<tr name="751" id="751">
-<td><a id="l751" class='ln'>751</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion3'</span></td></tr>
-<tr name="752" id="752">
-<td><a id="l752" class='ln'>752</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion4'</span></td></tr>
-<tr name="753" id="753">
-<td><a id="l753" class='ln'>753</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion5'</span></td></tr>
-<tr name="754" id="754">
-<td><a id="l754" class='ln'>754</a></td><td><span class="ct">   *  MATLAB Function: '&lt;S177&gt;/phase_time'</span></td></tr>
-<tr name="755" id="755">
-<td><a id="l755" class='ln'>755</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="756" id="756">
-<td><a id="l756" class='ln'>756</a></td><td>  <span class="kw">switch</span> (<a id="756c11" class="tk">rtb_DataTypeConversion_a</a>) <span class="br">{</span></td></tr>
-<tr name="757" id="757">
-<td><a id="l757" class='ln'>757</a></td><td>   <span class="kw">case</span> 1<a id="757c10" class="tk">:</a></td></tr>
-<tr name="758" id="758">
-<td><a id="l758" class='ln'>758</a></td><td>    <a id="758c5" class="tk">rtb_MultiportSwitch_idx_0</a> = (<a id="758c34" class="tk">uint16_T</a>)<a id="758c43" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="759" id="759">
-<td><a id="l759" class='ln'>759</a></td><td>    <a id="759c5" class="tk">rtb_MultiportSwitch_idx_1</a> = (<a id="759c34" class="tk">uint16_T</a>)<a id="759c43" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="760" id="760">
-<td><a id="l760" class='ln'>760</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="761" id="761">
-<td><a id="l761" class='ln'>761</a></td><td></td></tr>
-<tr name="762" id="762">
-<td><a id="l762" class='ln'>762</a></td><td>   <span class="kw">case</span> 2<a id="762c10" class="tk">:</a></td></tr>
-<tr name="763" id="763">
-<td><a id="l763" class='ln'>763</a></td><td>    <a id="763c5" class="tk">rtb_MultiportSwitch_idx_0</a> = (<a id="763c34" class="tk">uint16_T</a>)<a id="763c43" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="764" id="764">
-<td><a id="l764" class='ln'>764</a></td><td>    <a id="764c5" class="tk">rtb_MultiportSwitch_idx_1</a> = (<a id="764c34" class="tk">uint16_T</a>)<a id="764c43" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="765" id="765">
-<td><a id="l765" class='ln'>765</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="766" id="766">
-<td><a id="l766" class='ln'>766</a></td><td></td></tr>
-<tr name="767" id="767">
-<td><a id="l767" class='ln'>767</a></td><td>   <span class="kw">case</span> 3<a id="767c10" class="tk">:</a></td></tr>
-<tr name="768" id="768">
-<td><a id="l768" class='ln'>768</a></td><td>    <a id="768c5" class="tk">rtb_MultiportSwitch_idx_0</a> = (<a id="768c34" class="tk">uint16_T</a>)<a id="768c43" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="769" id="769">
-<td><a id="l769" class='ln'>769</a></td><td>    <a id="769c5" class="tk">rtb_MultiportSwitch_idx_1</a> = (<a id="769c34" class="tk">uint16_T</a>)<a id="769c43" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="770" id="770">
-<td><a id="l770" class='ln'>770</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="771" id="771">
-<td><a id="l771" class='ln'>771</a></td><td></td></tr>
-<tr name="772" id="772">
-<td><a id="l772" class='ln'>772</a></td><td>   <span class="kw">case</span> 4<a id="772c10" class="tk">:</a></td></tr>
-<tr name="773" id="773">
-<td><a id="l773" class='ln'>773</a></td><td>    <a id="773c5" class="tk">rtb_MultiportSwitch_idx_0</a> = (<a id="773c34" class="tk">uint16_T</a>)<a id="773c43" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="774" id="774">
-<td><a id="l774" class='ln'>774</a></td><td>    <a id="774c5" class="tk">rtb_MultiportSwitch_idx_1</a> = (<a id="774c34" class="tk">uint16_T</a>)<a id="774c43" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="775" id="775">
-<td><a id="l775" class='ln'>775</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="776" id="776">
-<td><a id="l776" class='ln'>776</a></td><td></td></tr>
-<tr name="777" id="777">
-<td><a id="l777" class='ln'>777</a></td><td>   <span class="kw">case</span> 5<a id="777c10" class="tk">:</a></td></tr>
-<tr name="778" id="778">
-<td><a id="l778" class='ln'>778</a></td><td>    <a id="778c5" class="tk">rtb_MultiportSwitch_idx_0</a> = (<a id="778c34" class="tk">uint16_T</a>)<a id="778c43" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="779" id="779">
-<td><a id="l779" class='ln'>779</a></td><td>    <a id="779c5" class="tk">rtb_MultiportSwitch_idx_1</a> = (<a id="779c34" class="tk">uint16_T</a>)<a id="779c43" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="780" id="780">
-<td><a id="l780" class='ln'>780</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="781" id="781">
-<td><a id="l781" class='ln'>781</a></td><td></td></tr>
-<tr name="782" id="782">
-<td><a id="l782" class='ln'>782</a></td><td>   <span class="kw">default</span><a id="782c11" class="tk">:</a></td></tr>
-<tr name="783" id="783">
-<td><a id="l783" class='ln'>783</a></td><td>    <a id="783c5" class="tk">rtb_MultiportSwitch_idx_0</a> = (<a id="783c34" class="tk">uint16_T</a>)<a id="783c43" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="784" id="784">
-<td><a id="l784" class='ln'>784</a></td><td>    <a id="784c5" class="tk">rtb_MultiportSwitch_idx_1</a> = (<a id="784c34" class="tk">uint16_T</a>)<a id="784c43" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="785" id="785">
-<td><a id="l785" class='ln'>785</a></td><td>    <span class="kw">break</span>;</td></tr>
-<tr name="786" id="786">
-<td><a id="l786" class='ln'>786</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="787" id="787">
-<td><a id="l787" class='ln'>787</a></td><td></td></tr>
-<tr name="788" id="788">
-<td><a id="l788" class='ln'>788</a></td><td>  <span class="ct">/* End of MultiPortSwitch: '&lt;S178&gt;/Multiport Switch' */</span></td></tr>
-<tr name="789" id="789">
-<td><a id="l789" class='ln'>789</a></td><td></td></tr>
-<tr name="790" id="790">
-<td><a id="l790" class='ln'>790</a></td><td>  <span class="ct">/* Outport: '&lt;Root&gt;/pwm_counts' incorporates:</span></td></tr>
-<tr name="791" id="791">
-<td><a id="l791" class='ln'>791</a></td><td><span class="ct">   *  Constant: '&lt;S178&gt;/Constant'</span></td></tr>
-<tr name="792" id="792">
-<td><a id="l792" class='ln'>792</a></td><td><span class="ct">   *  Constant: '&lt;S178&gt;/Constant1'</span></td></tr>
-<tr name="793" id="793">
-<td><a id="l793" class='ln'>793</a></td><td><span class="ct">   *  Constant: '&lt;S178&gt;/Constant2'</span></td></tr>
-<tr name="794" id="794">
-<td><a id="l794" class='ln'>794</a></td><td><span class="ct">   *  Constant: '&lt;S178&gt;/Constant3'</span></td></tr>
-<tr name="795" id="795">
-<td><a id="l795" class='ln'>795</a></td><td><span class="ct">   *  MATLAB Function: '&lt;S178&gt;/Shunt_Three_Sample_Point'</span></td></tr>
-<tr name="796" id="796">
-<td><a id="l796" class='ln'>796</a></td><td><span class="ct">   *  Outport: '&lt;Root&gt;/sector'</span></td></tr>
-<tr name="797" id="797">
-<td><a id="l797" class='ln'>797</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="798" id="798">
-<td><a id="l798" class='ln'>798</a></td><td>  <a id="798c3" class="tk">Shunt_Three_Sample_Point</a>(<a id="798c28" class="tk">rtb_MultiportSwitch_idx_0</a>, <a id="798c55" class="tk">rtb_MultiportSwitch_idx_1</a>,</td></tr>
-<tr name="799" id="799">
-<td><a id="l799" class='ln'>799</a></td><td>    <a id="799c5" class="tk">rtb_DataTypeConversion_a</a>, 4000, 10, 10, 10, <a id="799c49" class="tk">&amp;</a><a id="799c50" class="tk">rtb_o_samp_p1</a>, <a id="799c65" class="tk">&amp;</a><a id="799c66" class="tk">rtY_pwm_counts</a></td></tr>
-<tr name="800" id="800">
-<td><a id="l800" class='ln'>800</a></td><td>    [7], <a id="800c10" class="tk">rtY_sector</a>);</td></tr>
-<tr name="801" id="801">
-<td><a id="l801" class='ln'>801</a></td><td></td></tr>
-<tr name="802" id="802">
-<td><a id="l802" class='ln'>802</a></td><td>  <span class="ct">/* DeadZone: '&lt;S103&gt;/DeadZone' incorporates:</span></td></tr>
-<tr name="803" id="803">
-<td><a id="l803" class='ln'>803</a></td><td><span class="ct">   *  Signum: '&lt;S101&gt;/SignPreSat'</span></td></tr>
-<tr name="804" id="804">
-<td><a id="l804" class='ln'>804</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="805" id="805">
-<td><a id="l805" class='ln'>805</a></td><td>  <span class="kw">if</span> (<a id="805c7" class="tk">rtb_SignPreSat_k</a> <a id="805c24" class="tk">&gt;</a> 8960) <span class="br">{</span></td></tr>
-<tr name="806" id="806">
-<td><a id="l806" class='ln'>806</a></td><td>    <a id="806c5" class="tk">rtb_SignPreSat_k</a> = (<a id="806c25" class="tk">int16_T</a>)(<a id="806c34" class="tk">rtb_SignPreSat_k</a> <a id="806c51" class="tk">-</a> 8960);</td></tr>
-<tr name="807" id="807">
-<td><a id="l807" class='ln'>807</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="807c14" class="tk">rtb_SignPreSat_k</a> <a id="807c31" class="tk">&gt;=</a> <a id="807c34" class="tk">-</a>8960) <span class="br">{</span></td></tr>
-<tr name="808" id="808">
-<td><a id="l808" class='ln'>808</a></td><td>    <a id="808c5" class="tk">rtb_SignPreSat_k</a> = 0;</td></tr>
-<tr name="809" id="809">
-<td><a id="l809" class='ln'>809</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="810" id="810">
-<td><a id="l810" class='ln'>810</a></td><td>    <a id="810c5" class="tk">rtb_SignPreSat_k</a> = (<a id="810c25" class="tk">int16_T</a>)(<a id="810c34" class="tk">rtb_SignPreSat_k</a> <a id="810c51" class="tk">-</a> <a id="810c53" class="tk">-</a>8960);</td></tr>
-<tr name="811" id="811">
-<td><a id="l811" class='ln'>811</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="812" id="812">
-<td><a id="l812" class='ln'>812</a></td><td></td></tr>
-<tr name="813" id="813">
-<td><a id="l813" class='ln'>813</a></td><td>  <span class="ct">/* End of DeadZone: '&lt;S103&gt;/DeadZone' */</span></td></tr>
-<tr name="814" id="814">
-<td><a id="l814" class='ln'>814</a></td><td></td></tr>
-<tr name="815" id="815">
-<td><a id="l815" class='ln'>815</a></td><td>  <span class="ct">/* RelationalOperator: '&lt;S101&gt;/NotEqual' incorporates:</span></td></tr>
-<tr name="816" id="816">
-<td><a id="l816" class='ln'>816</a></td><td><span class="ct">   *  Gain: '&lt;S101&gt;/ZeroGain'</span></td></tr>
-<tr name="817" id="817">
-<td><a id="l817" class='ln'>817</a></td><td><span class="ct">   *  Signum: '&lt;S101&gt;/SignPreSat'</span></td></tr>
-<tr name="818" id="818">
-<td><a id="l818" class='ln'>818</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="819" id="819">
-<td><a id="l819" class='ln'>819</a></td><td>  <a id="819c3" class="tk">rtb_NotEqual</a> = (0 <a id="819c21" class="tk">!=</a> <a id="819c24" class="tk">rtb_SignPreSat_k</a>);</td></tr>
-<tr name="820" id="820">
-<td><a id="l820" class='ln'>820</a></td><td></td></tr>
-<tr name="821" id="821">
-<td><a id="l821" class='ln'>821</a></td><td>  <span class="ct">/* Signum: '&lt;S101&gt;/SignPreSat' */</span></td></tr>
-<tr name="822" id="822">
-<td><a id="l822" class='ln'>822</a></td><td>  <span class="kw">if</span> (<a id="822c7" class="tk">rtb_SignPreSat_k</a> <a id="822c24" class="tk">&lt;</a> 0) <span class="br">{</span></td></tr>
-<tr name="823" id="823">
-<td><a id="l823" class='ln'>823</a></td><td>    <a id="823c5" class="tk">rtb_SignPreSat_k</a> = <a id="823c24" class="tk">-</a>1;</td></tr>
-<tr name="824" id="824">
-<td><a id="l824" class='ln'>824</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="825" id="825">
-<td><a id="l825" class='ln'>825</a></td><td>    <a id="825c5" class="tk">rtb_SignPreSat_k</a> = (<a id="825c25" class="tk">int16_T</a>)(<a id="825c34" class="tk">rtb_SignPreSat_k</a> <a id="825c51" class="tk">&gt;</a> 0);</td></tr>
-<tr name="826" id="826">
-<td><a id="l826" class='ln'>826</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="827" id="827">
-<td><a id="l827" class='ln'>827</a></td><td></td></tr>
-<tr name="828" id="828">
-<td><a id="l828" class='ln'>828</a></td><td>  <span class="ct">/* End of Signum: '&lt;S101&gt;/SignPreSat' */</span></td></tr>
-<tr name="829" id="829">
-<td><a id="l829" class='ln'>829</a></td><td></td></tr>
-<tr name="830" id="830">
-<td><a id="l830" class='ln'>830</a></td><td>  <span class="ct">/* Gain: '&lt;S107&gt;/Integral Gain' incorporates:</span></td></tr>
-<tr name="831" id="831">
-<td><a id="l831" class='ln'>831</a></td><td><span class="ct">   *  Gain: '&lt;S57&gt;/Integral Gain'</span></td></tr>
-<tr name="832" id="832">
-<td><a id="l832" class='ln'>832</a></td><td><span class="ct">   *  Sum: '&lt;S16&gt;/Sum2'</span></td></tr>
-<tr name="833" id="833">
-<td><a id="l833" class='ln'>833</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="834" id="834">
-<td><a id="l834" class='ln'>834</a></td><td>  <a id="834c3" class="tk">rtb_Divide7</a> = (<a id="834c18" class="tk">int16_T</a>)(1080 <a id="834c32" class="tk">*</a> <a id="834c34" class="tk">rtb_Sum2</a>);</td></tr>
-<tr name="835" id="835">
-<td><a id="l835" class='ln'>835</a></td><td></td></tr>
-<tr name="836" id="836">
-<td><a id="l836" class='ln'>836</a></td><td>  <span class="ct">/* Signum: '&lt;S101&gt;/SignPreIntegrator' incorporates:</span></td></tr>
-<tr name="837" id="837">
-<td><a id="l837" class='ln'>837</a></td><td><span class="ct">   *  Gain: '&lt;S57&gt;/Integral Gain'</span></td></tr>
-<tr name="838" id="838">
-<td><a id="l838" class='ln'>838</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="839" id="839">
-<td><a id="l839" class='ln'>839</a></td><td>  <span class="kw">if</span> (<a id="839c7" class="tk">rtb_Divide7</a> <a id="839c19" class="tk">&lt;</a> 0) <span class="br">{</span></td></tr>
-<tr name="840" id="840">
-<td><a id="l840" class='ln'>840</a></td><td>    <a id="840c5" class="tk">rtb_Divide4</a> = <a id="840c19" class="tk">-</a>1;</td></tr>
-<tr name="841" id="841">
-<td><a id="l841" class='ln'>841</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="842" id="842">
-<td><a id="l842" class='ln'>842</a></td><td>    <a id="842c5" class="tk">rtb_Divide4</a> = (<a id="842c20" class="tk">int16_T</a>)(<a id="842c29" class="tk">rtb_Divide7</a> <a id="842c41" class="tk">&gt;</a> 0);</td></tr>
-<tr name="843" id="843">
-<td><a id="l843" class='ln'>843</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="844" id="844">
-<td><a id="l844" class='ln'>844</a></td><td></td></tr>
-<tr name="845" id="845">
-<td><a id="l845" class='ln'>845</a></td><td>  <span class="ct">/* End of Signum: '&lt;S101&gt;/SignPreIntegrator' */</span></td></tr>
-<tr name="846" id="846">
-<td><a id="l846" class='ln'>846</a></td><td></td></tr>
-<tr name="847" id="847">
-<td><a id="l847" class='ln'>847</a></td><td>  <span class="ct">/* Switch: '&lt;S101&gt;/Switch' incorporates:</span></td></tr>
-<tr name="848" id="848">
-<td><a id="l848" class='ln'>848</a></td><td><span class="ct">   *  Constant: '&lt;S101&gt;/Constant1'</span></td></tr>
-<tr name="849" id="849">
-<td><a id="l849" class='ln'>849</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S101&gt;/DataTypeConv1'</span></td></tr>
-<tr name="850" id="850">
-<td><a id="l850" class='ln'>850</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S101&gt;/DataTypeConv2'</span></td></tr>
-<tr name="851" id="851">
-<td><a id="l851" class='ln'>851</a></td><td><span class="ct">   *  Gain: '&lt;S57&gt;/Integral Gain'</span></td></tr>
-<tr name="852" id="852">
-<td><a id="l852" class='ln'>852</a></td><td><span class="ct">   *  Logic: '&lt;S101&gt;/AND3'</span></td></tr>
-<tr name="853" id="853">
-<td><a id="l853" class='ln'>853</a></td><td><span class="ct">   *  RelationalOperator: '&lt;S101&gt;/Equal1'</span></td></tr>
-<tr name="854" id="854">
-<td><a id="l854" class='ln'>854</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="855" id="855">
-<td><a id="l855" class='ln'>855</a></td><td>  <span class="kw">if</span> (<a id="855c7" class="tk">rtb_NotEqual</a> <a id="855c20" class="tk">&amp;&amp;</a> (<a id="855c24" class="tk">rtb_SignPreSat_k</a> <a id="855c41" class="tk">==</a> <a id="855c44" class="tk">rtb_Divide4</a>)) <span class="br">{</span></td></tr>
-<tr name="856" id="856">
-<td><a id="l856" class='ln'>856</a></td><td>    <a id="856c5" class="tk">rtb_Sum2</a> = 0;</td></tr>
-<tr name="857" id="857">
-<td><a id="l857" class='ln'>857</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="858" id="858">
-<td><a id="l858" class='ln'>858</a></td><td>    <a id="858c5" class="tk">rtb_Sum2</a> = <a id="858c16" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="859" id="859">
-<td><a id="l859" class='ln'>859</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="860" id="860">
-<td><a id="l860" class='ln'>860</a></td><td></td></tr>
-<tr name="861" id="861">
-<td><a id="l861" class='ln'>861</a></td><td>  <span class="ct">/* End of Switch: '&lt;S101&gt;/Switch' */</span></td></tr>
-<tr name="862" id="862">
-<td><a id="l862" class='ln'>862</a></td><td></td></tr>
-<tr name="863" id="863">
-<td><a id="l863" class='ln'>863</a></td><td>  <span class="ct">/* DeadZone: '&lt;S153&gt;/DeadZone' incorporates:</span></td></tr>
-<tr name="864" id="864">
-<td><a id="l864" class='ln'>864</a></td><td><span class="ct">   *  Signum: '&lt;S151&gt;/SignPreSat'</span></td></tr>
-<tr name="865" id="865">
-<td><a id="l865" class='ln'>865</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="866" id="866">
-<td><a id="l866" class='ln'>866</a></td><td>  <span class="kw">if</span> (<a id="866c7" class="tk">rtb_SignPreSat</a> <a id="866c22" class="tk">&gt;</a> 800) <span class="br">{</span></td></tr>
-<tr name="867" id="867">
-<td><a id="l867" class='ln'>867</a></td><td>    <a id="867c5" class="tk">rtb_SignPreSat</a> = (<a id="867c23" class="tk">int16_T</a>)(<a id="867c32" class="tk">rtb_SignPreSat</a> <a id="867c47" class="tk">-</a> 800);</td></tr>
-<tr name="868" id="868">
-<td><a id="l868" class='ln'>868</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="868c14" class="tk">rtb_SignPreSat</a> <a id="868c29" class="tk">&gt;=</a> <a id="868c32" class="tk">-</a>800) <span class="br">{</span></td></tr>
-<tr name="869" id="869">
-<td><a id="l869" class='ln'>869</a></td><td>    <a id="869c5" class="tk">rtb_SignPreSat</a> = 0;</td></tr>
-<tr name="870" id="870">
-<td><a id="l870" class='ln'>870</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="871" id="871">
-<td><a id="l871" class='ln'>871</a></td><td>    <a id="871c5" class="tk">rtb_SignPreSat</a> = (<a id="871c23" class="tk">int16_T</a>)(<a id="871c32" class="tk">rtb_SignPreSat</a> <a id="871c47" class="tk">-</a> <a id="871c49" class="tk">-</a>800);</td></tr>
-<tr name="872" id="872">
-<td><a id="l872" class='ln'>872</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="873" id="873">
-<td><a id="l873" class='ln'>873</a></td><td></td></tr>
-<tr name="874" id="874">
-<td><a id="l874" class='ln'>874</a></td><td>  <span class="ct">/* End of DeadZone: '&lt;S153&gt;/DeadZone' */</span></td></tr>
-<tr name="875" id="875">
-<td><a id="l875" class='ln'>875</a></td><td></td></tr>
-<tr name="876" id="876">
-<td><a id="l876" class='ln'>876</a></td><td>  <span class="ct">/* RelationalOperator: '&lt;S151&gt;/NotEqual' incorporates:</span></td></tr>
-<tr name="877" id="877">
-<td><a id="l877" class='ln'>877</a></td><td><span class="ct">   *  Gain: '&lt;S151&gt;/ZeroGain'</span></td></tr>
-<tr name="878" id="878">
-<td><a id="l878" class='ln'>878</a></td><td><span class="ct">   *  Signum: '&lt;S151&gt;/SignPreSat'</span></td></tr>
-<tr name="879" id="879">
-<td><a id="l879" class='ln'>879</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="880" id="880">
-<td><a id="l880" class='ln'>880</a></td><td>  <a id="880c3" class="tk">rtb_NotEqual</a> = (0 <a id="880c21" class="tk">!=</a> <a id="880c24" class="tk">rtb_SignPreSat</a>);</td></tr>
-<tr name="881" id="881">
-<td><a id="l881" class='ln'>881</a></td><td></td></tr>
-<tr name="882" id="882">
-<td><a id="l882" class='ln'>882</a></td><td>  <span class="ct">/* Signum: '&lt;S151&gt;/SignPreSat' */</span></td></tr>
-<tr name="883" id="883">
-<td><a id="l883" class='ln'>883</a></td><td>  <span class="kw">if</span> (<a id="883c7" class="tk">rtb_SignPreSat</a> <a id="883c22" class="tk">&lt;</a> 0) <span class="br">{</span></td></tr>
-<tr name="884" id="884">
-<td><a id="l884" class='ln'>884</a></td><td>    <a id="884c5" class="tk">rtb_SignPreSat</a> = <a id="884c22" class="tk">-</a>1;</td></tr>
-<tr name="885" id="885">
-<td><a id="l885" class='ln'>885</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="886" id="886">
-<td><a id="l886" class='ln'>886</a></td><td>    <a id="886c5" class="tk">rtb_SignPreSat</a> = (<a id="886c23" class="tk">int16_T</a>)(<a id="886c32" class="tk">rtb_SignPreSat</a> <a id="886c47" class="tk">&gt;</a> 0);</td></tr>
-<tr name="887" id="887">
-<td><a id="l887" class='ln'>887</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="888" id="888">
-<td><a id="l888" class='ln'>888</a></td><td></td></tr>
-<tr name="889" id="889">
-<td><a id="l889" class='ln'>889</a></td><td>  <span class="ct">/* End of Signum: '&lt;S151&gt;/SignPreSat' */</span></td></tr>
-<tr name="890" id="890">
-<td><a id="l890" class='ln'>890</a></td><td></td></tr>
-<tr name="891" id="891">
-<td><a id="l891" class='ln'>891</a></td><td>  <span class="ct">/* Gain: '&lt;S157&gt;/Integral Gain' incorporates:</span></td></tr>
-<tr name="892" id="892">
-<td><a id="l892" class='ln'>892</a></td><td><span class="ct">   *  Gain: '&lt;S57&gt;/Integral Gain'</span></td></tr>
-<tr name="893" id="893">
-<td><a id="l893" class='ln'>893</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="894" id="894">
-<td><a id="l894" class='ln'>894</a></td><td>  <a id="894c3" class="tk">rtb_Divide7</a> = (<a id="894c18" class="tk">int16_T</a>)((<a id="894c28" class="tk">int16_T</a>)(200 <a id="894c41" class="tk">*</a> <a id="894c43" class="tk">rtb_Sum3_l</a>) <a id="894c55" class="tk">&lt;&lt;</a> 4);</td></tr>
-<tr name="895" id="895">
-<td><a id="l895" class='ln'>895</a></td><td></td></tr>
-<tr name="896" id="896">
-<td><a id="l896" class='ln'>896</a></td><td>  <span class="ct">/* Signum: '&lt;S151&gt;/SignPreIntegrator' incorporates:</span></td></tr>
-<tr name="897" id="897">
-<td><a id="l897" class='ln'>897</a></td><td><span class="ct">   *  Gain: '&lt;S57&gt;/Integral Gain'</span></td></tr>
-<tr name="898" id="898">
-<td><a id="l898" class='ln'>898</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="899" id="899">
-<td><a id="l899" class='ln'>899</a></td><td>  <span class="kw">if</span> (<a id="899c7" class="tk">rtb_Divide7</a> <a id="899c19" class="tk">&lt;</a> 0) <span class="br">{</span></td></tr>
-<tr name="900" id="900">
-<td><a id="l900" class='ln'>900</a></td><td>    <a id="900c5" class="tk">rtb_Divide4</a> = <a id="900c19" class="tk">-</a>1;</td></tr>
-<tr name="901" id="901">
-<td><a id="l901" class='ln'>901</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="902" id="902">
-<td><a id="l902" class='ln'>902</a></td><td>    <a id="902c5" class="tk">rtb_Divide4</a> = (<a id="902c20" class="tk">int16_T</a>)(<a id="902c29" class="tk">rtb_Divide7</a> <a id="902c41" class="tk">&gt;</a> 0);</td></tr>
-<tr name="903" id="903">
-<td><a id="l903" class='ln'>903</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="904" id="904">
-<td><a id="l904" class='ln'>904</a></td><td></td></tr>
-<tr name="905" id="905">
-<td><a id="l905" class='ln'>905</a></td><td>  <span class="ct">/* End of Signum: '&lt;S151&gt;/SignPreIntegrator' */</span></td></tr>
-<tr name="906" id="906">
-<td><a id="l906" class='ln'>906</a></td><td></td></tr>
-<tr name="907" id="907">
-<td><a id="l907" class='ln'>907</a></td><td>  <span class="ct">/* Switch: '&lt;S151&gt;/Switch' incorporates:</span></td></tr>
-<tr name="908" id="908">
-<td><a id="l908" class='ln'>908</a></td><td><span class="ct">   *  Constant: '&lt;S151&gt;/Constant1'</span></td></tr>
-<tr name="909" id="909">
-<td><a id="l909" class='ln'>909</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S151&gt;/DataTypeConv1'</span></td></tr>
-<tr name="910" id="910">
-<td><a id="l910" class='ln'>910</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S151&gt;/DataTypeConv2'</span></td></tr>
-<tr name="911" id="911">
-<td><a id="l911" class='ln'>911</a></td><td><span class="ct">   *  Gain: '&lt;S57&gt;/Integral Gain'</span></td></tr>
-<tr name="912" id="912">
-<td><a id="l912" class='ln'>912</a></td><td><span class="ct">   *  Logic: '&lt;S151&gt;/AND3'</span></td></tr>
-<tr name="913" id="913">
-<td><a id="l913" class='ln'>913</a></td><td><span class="ct">   *  RelationalOperator: '&lt;S151&gt;/Equal1'</span></td></tr>
-<tr name="914" id="914">
-<td><a id="l914" class='ln'>914</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="915" id="915">
-<td><a id="l915" class='ln'>915</a></td><td>  <span class="kw">if</span> (<a id="915c7" class="tk">rtb_NotEqual</a> <a id="915c20" class="tk">&amp;&amp;</a> (<a id="915c24" class="tk">rtb_SignPreSat</a> <a id="915c39" class="tk">==</a> <a id="915c42" class="tk">rtb_Divide4</a>)) <span class="br">{</span></td></tr>
-<tr name="916" id="916">
-<td><a id="l916" class='ln'>916</a></td><td>    <a id="916c5" class="tk">rtb_Sum3_l</a> = 0;</td></tr>
-<tr name="917" id="917">
-<td><a id="l917" class='ln'>917</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="918" id="918">
-<td><a id="l918" class='ln'>918</a></td><td>    <a id="918c5" class="tk">rtb_Sum3_l</a> = <a id="918c18" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="919" id="919">
-<td><a id="l919" class='ln'>919</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="920" id="920">
-<td><a id="l920" class='ln'>920</a></td><td></td></tr>
-<tr name="921" id="921">
-<td><a id="l921" class='ln'>921</a></td><td>  <span class="ct">/* End of Switch: '&lt;S151&gt;/Switch' */</span></td></tr>
-<tr name="922" id="922">
-<td><a id="l922" class='ln'>922</a></td><td></td></tr>
-<tr name="923" id="923">
-<td><a id="l923" class='ln'>923</a></td><td>  <span class="ct">/* DeadZone: '&lt;S53&gt;/DeadZone' incorporates:</span></td></tr>
-<tr name="924" id="924">
-<td><a id="l924" class='ln'>924</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreSat'</span></td></tr>
-<tr name="925" id="925">
-<td><a id="l925" class='ln'>925</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="926" id="926">
-<td><a id="l926" class='ln'>926</a></td><td>  <span class="kw">if</span> (<a id="926c7" class="tk">rtb_Multiply_idx_1</a> <a id="926c26" class="tk">&gt;</a> 8960) <span class="br">{</span></td></tr>
-<tr name="927" id="927">
-<td><a id="l927" class='ln'>927</a></td><td>    <a id="927c5" class="tk">rtb_Multiply_idx_1</a> = (<a id="927c27" class="tk">int16_T</a>)(<a id="927c36" class="tk">rtb_Multiply_idx_1</a> <a id="927c55" class="tk">-</a> 8960);</td></tr>
-<tr name="928" id="928">
-<td><a id="l928" class='ln'>928</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="928c14" class="tk">rtb_Multiply_idx_1</a> <a id="928c33" class="tk">&gt;=</a> <a id="928c36" class="tk">-</a>8960) <span class="br">{</span></td></tr>
-<tr name="929" id="929">
-<td><a id="l929" class='ln'>929</a></td><td>    <a id="929c5" class="tk">rtb_Multiply_idx_1</a> = 0;</td></tr>
-<tr name="930" id="930">
-<td><a id="l930" class='ln'>930</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="931" id="931">
-<td><a id="l931" class='ln'>931</a></td><td>    <a id="931c5" class="tk">rtb_Multiply_idx_1</a> = (<a id="931c27" class="tk">int16_T</a>)(<a id="931c36" class="tk">rtb_Multiply_idx_1</a> <a id="931c55" class="tk">-</a> <a id="931c57" class="tk">-</a>8960);</td></tr>
-<tr name="932" id="932">
-<td><a id="l932" class='ln'>932</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="933" id="933">
-<td><a id="l933" class='ln'>933</a></td><td></td></tr>
-<tr name="934" id="934">
-<td><a id="l934" class='ln'>934</a></td><td>  <span class="ct">/* End of DeadZone: '&lt;S53&gt;/DeadZone' */</span></td></tr>
-<tr name="935" id="935">
-<td><a id="l935" class='ln'>935</a></td><td></td></tr>
-<tr name="936" id="936">
-<td><a id="l936" class='ln'>936</a></td><td>  <span class="ct">/* RelationalOperator: '&lt;S51&gt;/NotEqual' incorporates:</span></td></tr>
-<tr name="937" id="937">
-<td><a id="l937" class='ln'>937</a></td><td><span class="ct">   *  Gain: '&lt;S51&gt;/ZeroGain'</span></td></tr>
-<tr name="938" id="938">
-<td><a id="l938" class='ln'>938</a></td><td><span class="ct">   *  Signum: '&lt;S51&gt;/SignPreSat'</span></td></tr>
-<tr name="939" id="939">
-<td><a id="l939" class='ln'>939</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="940" id="940">
-<td><a id="l940" class='ln'>940</a></td><td>  <a id="940c3" class="tk">rtb_NotEqual</a> = (0 <a id="940c21" class="tk">!=</a> <a id="940c24" class="tk">rtb_Multiply_idx_1</a>);</td></tr>
-<tr name="941" id="941">
-<td><a id="l941" class='ln'>941</a></td><td></td></tr>
-<tr name="942" id="942">
-<td><a id="l942" class='ln'>942</a></td><td>  <span class="ct">/* Signum: '&lt;S51&gt;/SignPreSat' */</span></td></tr>
-<tr name="943" id="943">
-<td><a id="l943" class='ln'>943</a></td><td>  <span class="kw">if</span> (<a id="943c7" class="tk">rtb_Multiply_idx_1</a> <a id="943c26" class="tk">&lt;</a> 0) <span class="br">{</span></td></tr>
-<tr name="944" id="944">
-<td><a id="l944" class='ln'>944</a></td><td>    <a id="944c5" class="tk">rtb_Multiply_idx_1</a> = <a id="944c26" class="tk">-</a>1;</td></tr>
-<tr name="945" id="945">
-<td><a id="l945" class='ln'>945</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="946" id="946">
-<td><a id="l946" class='ln'>946</a></td><td>    <a id="946c5" class="tk">rtb_Multiply_idx_1</a> = (<a id="946c27" class="tk">int16_T</a>)(<a id="946c36" class="tk">rtb_Multiply_idx_1</a> <a id="946c55" class="tk">&gt;</a> 0);</td></tr>
-<tr name="947" id="947">
-<td><a id="l947" class='ln'>947</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="948" id="948">
-<td><a id="l948" class='ln'>948</a></td><td></td></tr>
-<tr name="949" id="949">
-<td><a id="l949" class='ln'>949</a></td><td>  <span class="ct">/* End of Signum: '&lt;S51&gt;/SignPreSat' */</span></td></tr>
-<tr name="950" id="950">
-<td><a id="l950" class='ln'>950</a></td><td></td></tr>
-<tr name="951" id="951">
-<td><a id="l951" class='ln'>951</a></td><td>  <span class="ct">/* Gain: '&lt;S57&gt;/Integral Gain' incorporates:</span></td></tr>
-<tr name="952" id="952">
-<td><a id="l952" class='ln'>952</a></td><td><span class="ct">   *  Sum: '&lt;S16&gt;/Sum1'</span></td></tr>
-<tr name="953" id="953">
-<td><a id="l953" class='ln'>953</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="954" id="954">
-<td><a id="l954" class='ln'>954</a></td><td>  <a id="954c3" class="tk">rtb_Divide7</a> = (<a id="954c18" class="tk">int16_T</a>)(1071 <a id="954c32" class="tk">*</a> (<a id="954c35" class="tk">int16_T</a>)<a id="954c43" class="tk">-</a><a id="954c44" class="tk">rtb_Multiply_idx_0</a>);</td></tr>
-<tr name="955" id="955">
-<td><a id="l955" class='ln'>955</a></td><td></td></tr>
-<tr name="956" id="956">
-<td><a id="l956" class='ln'>956</a></td><td>  <span class="ct">/* Update for UnitDelay: '&lt;S21&gt;/UnitDelay1' incorporates:</span></td></tr>
-<tr name="957" id="957">
-<td><a id="l957" class='ln'>957</a></td><td><span class="ct">   *  Sum: '&lt;S21&gt;/Sum3'</span></td></tr>
-<tr name="958" id="958">
-<td><a id="l958" class='ln'>958</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="959" id="959">
-<td><a id="l959" class='ln'>959</a></td><td>  <a id="959c3" class="tk">rtDW</a>-&gt;<a id="959c9" class="tk">UnitDelay1_DSTATE</a>[0] = <a id="959c32" class="tk">rtb_Sum3_idx_0</a>;</td></tr>
-<tr name="960" id="960">
-<td><a id="l960" class='ln'>960</a></td><td>  <a id="960c3" class="tk">rtDW</a>-&gt;<a id="960c9" class="tk">UnitDelay1_DSTATE</a>[1] = <a id="960c32" class="tk">rtb_Sum3_idx_1</a>;</td></tr>
-<tr name="961" id="961">
-<td><a id="l961" class='ln'>961</a></td><td></td></tr>
-<tr name="962" id="962">
-<td><a id="l962" class='ln'>962</a></td><td>  <span class="ct">/* Signum: '&lt;S51&gt;/SignPreIntegrator' incorporates:</span></td></tr>
-<tr name="963" id="963">
-<td><a id="l963" class='ln'>963</a></td><td><span class="ct">   *  Gain: '&lt;S57&gt;/Integral Gain'</span></td></tr>
-<tr name="964" id="964">
-<td><a id="l964" class='ln'>964</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="965" id="965">
-<td><a id="l965" class='ln'>965</a></td><td>  <span class="kw">if</span> (<a id="965c7" class="tk">rtb_Divide7</a> <a id="965c19" class="tk">&lt;</a> 0) <span class="br">{</span></td></tr>
-<tr name="966" id="966">
-<td><a id="l966" class='ln'>966</a></td><td>    <a id="966c5" class="tk">rtb_Divide4</a> = <a id="966c19" class="tk">-</a>1;</td></tr>
-<tr name="967" id="967">
-<td><a id="l967" class='ln'>967</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="968" id="968">
-<td><a id="l968" class='ln'>968</a></td><td>    <a id="968c5" class="tk">rtb_Divide4</a> = (<a id="968c20" class="tk">int16_T</a>)(<a id="968c29" class="tk">rtb_Divide7</a> <a id="968c41" class="tk">&gt;</a> 0);</td></tr>
-<tr name="969" id="969">
-<td><a id="l969" class='ln'>969</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="970" id="970">
-<td><a id="l970" class='ln'>970</a></td><td></td></tr>
-<tr name="971" id="971">
-<td><a id="l971" class='ln'>971</a></td><td>  <span class="ct">/* End of Signum: '&lt;S51&gt;/SignPreIntegrator' */</span></td></tr>
-<tr name="972" id="972">
-<td><a id="l972" class='ln'>972</a></td><td></td></tr>
-<tr name="973" id="973">
-<td><a id="l973" class='ln'>973</a></td><td>  <span class="ct">/* Switch: '&lt;S51&gt;/Switch' incorporates:</span></td></tr>
-<tr name="974" id="974">
-<td><a id="l974" class='ln'>974</a></td><td><span class="ct">   *  Constant: '&lt;S51&gt;/Constant1'</span></td></tr>
-<tr name="975" id="975">
-<td><a id="l975" class='ln'>975</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S51&gt;/DataTypeConv1'</span></td></tr>
-<tr name="976" id="976">
-<td><a id="l976" class='ln'>976</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S51&gt;/DataTypeConv2'</span></td></tr>
-<tr name="977" id="977">
-<td><a id="l977" class='ln'>977</a></td><td><span class="ct">   *  Logic: '&lt;S51&gt;/AND3'</span></td></tr>
-<tr name="978" id="978">
-<td><a id="l978" class='ln'>978</a></td><td><span class="ct">   *  RelationalOperator: '&lt;S51&gt;/Equal1'</span></td></tr>
-<tr name="979" id="979">
-<td><a id="l979" class='ln'>979</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="980" id="980">
-<td><a id="l980" class='ln'>980</a></td><td>  <span class="kw">if</span> (<a id="980c7" class="tk">rtb_NotEqual</a> <a id="980c20" class="tk">&amp;&amp;</a> (<a id="980c24" class="tk">rtb_Multiply_idx_1</a> <a id="980c43" class="tk">==</a> <a id="980c46" class="tk">rtb_Divide4</a>)) <span class="br">{</span></td></tr>
-<tr name="981" id="981">
-<td><a id="l981" class='ln'>981</a></td><td>    <a id="981c5" class="tk">rtb_Divide7</a> = 0;</td></tr>
-<tr name="982" id="982">
-<td><a id="l982" class='ln'>982</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="983" id="983">
-<td><a id="l983" class='ln'>983</a></td><td></td></tr>
-<tr name="984" id="984">
-<td><a id="l984" class='ln'>984</a></td><td>  <span class="ct">/* End of Switch: '&lt;S51&gt;/Switch' */</span></td></tr>
-<tr name="985" id="985">
-<td><a id="l985" class='ln'>985</a></td><td></td></tr>
-<tr name="986" id="986">
-<td><a id="l986" class='ln'>986</a></td><td>  <span class="ct">/* Update for DiscreteIntegrator: '&lt;S60&gt;/Integrator' */</span></td></tr>
-<tr name="987" id="987">
-<td><a id="l987" class='ln'>987</a></td><td>  <a id="987c3" class="tk">rtDW</a>-&gt;<a id="987c9" class="tk">Integrator_DSTATE</a> <a id="987c27" class="tk">+=</a> <a id="987c30" class="tk">rtb_Divide7</a>;</td></tr>
-<tr name="988" id="988">
-<td><a id="l988" class='ln'>988</a></td><td></td></tr>
-<tr name="989" id="989">
-<td><a id="l989" class='ln'>989</a></td><td>  <span class="ct">/* Update for DiscreteIntegrator: '&lt;S160&gt;/Integrator' incorporates:</span></td></tr>
-<tr name="990" id="990">
-<td><a id="l990" class='ln'>990</a></td><td><span class="ct">   *  Switch: '&lt;S151&gt;/Switch'</span></td></tr>
-<tr name="991" id="991">
-<td><a id="l991" class='ln'>991</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="992" id="992">
-<td><a id="l992" class='ln'>992</a></td><td>  <a id="992c3" class="tk">rtDW</a>-&gt;<a id="992c9" class="tk">Integrator_DSTATE_i</a> <a id="992c29" class="tk">+=</a> <a id="992c32" class="tk">rtb_Sum3_l</a>;</td></tr>
-<tr name="993" id="993">
-<td><a id="l993" class='ln'>993</a></td><td></td></tr>
-<tr name="994" id="994">
-<td><a id="l994" class='ln'>994</a></td><td>  <span class="ct">/* Update for DiscreteIntegrator: '&lt;S110&gt;/Integrator' incorporates:</span></td></tr>
-<tr name="995" id="995">
-<td><a id="l995" class='ln'>995</a></td><td><span class="ct">   *  Switch: '&lt;S101&gt;/Switch'</span></td></tr>
-<tr name="996" id="996">
-<td><a id="l996" class='ln'>996</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="997" id="997">
-<td><a id="l997" class='ln'>997</a></td><td>  <a id="997c3" class="tk">rtDW</a>-&gt;<a id="997c9" class="tk">Integrator_DSTATE_p</a> <a id="997c29" class="tk">+=</a> <a id="997c32" class="tk">rtb_Sum2</a>;</td></tr>
-<tr name="998" id="998">
-<td><a id="l998" class='ln'>998</a></td><td></td></tr>
-<tr name="999" id="999">
-<td><a id="l999" class='ln'>999</a></td><td>  <span class="ct">/* End of Outputs for SubSystem: '&lt;S1&gt;/controller' */</span></td></tr>
-<tr name="1000" id="1000">
-<td><a id="l1000" class='ln'>1000</a></td><td></td></tr>
-<tr name="1001" id="1001">
-<td><a id="l1001" class='ln'>1001</a></td><td>  <span class="ct">/* Outport: '&lt;Root&gt;/pwm_counts' incorporates:</span></td></tr>
-<tr name="1002" id="1002">
-<td><a id="l1002" class='ln'>1002</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion4'</span></td></tr>
-<tr name="1003" id="1003">
-<td><a id="l1003" class='ln'>1003</a></td><td><span class="ct">   *  DataTypeConversion: '&lt;S177&gt;/Data Type Conversion5'</span></td></tr>
-<tr name="1004" id="1004">
-<td><a id="l1004" class='ln'>1004</a></td><td><span class="ct">   *  MATLAB Function: '&lt;S177&gt;/phase_time'</span></td></tr>
-<tr name="1005" id="1005">
-<td><a id="l1005" class='ln'>1005</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="1006" id="1006">
-<td><a id="l1006" class='ln'>1006</a></td><td>  <a id="1006c3" class="tk">rtY_pwm_counts</a>[0] = <a id="1006c23" class="tk">rtb_DataTypeConversion3</a>;</td></tr>
-<tr name="1007" id="1007">
-<td><a id="l1007" class='ln'>1007</a></td><td></td></tr>
-<tr name="1008" id="1008">
-<td><a id="l1008" class='ln'>1008</a></td><td>  <span class="ct">/* Outputs for Atomic SubSystem: '&lt;S1&gt;/controller' */</span></td></tr>
-<tr name="1009" id="1009">
-<td><a id="l1009" class='ln'>1009</a></td><td>  <a id="1009c3" class="tk">rtY_pwm_counts</a>[1] = (<a id="1009c24" class="tk">uint16_T</a>)<a id="1009c33" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="1010" id="1010">
-<td><a id="l1010" class='ln'>1010</a></td><td>  <a id="1010c3" class="tk">rtY_pwm_counts</a>[2] = (<a id="1010c24" class="tk">uint16_T</a>)<a id="1010c33" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="1011" id="1011">
-<td><a id="l1011" class='ln'>1011</a></td><td></td></tr>
-<tr name="1012" id="1012">
-<td><a id="l1012" class='ln'>1012</a></td><td>  <span class="ct">/* End of Outputs for SubSystem: '&lt;S1&gt;/controller' */</span></td></tr>
-<tr name="1013" id="1013">
-<td><a id="l1013" class='ln'>1013</a></td><td>  <a id="1013c3" class="tk">rtY_pwm_counts</a>[3] = <a id="1013c23" class="tk">rtb_DataTypeConversion3</a>;</td></tr>
-<tr name="1014" id="1014">
-<td><a id="l1014" class='ln'>1014</a></td><td></td></tr>
-<tr name="1015" id="1015">
-<td><a id="l1015" class='ln'>1015</a></td><td>  <span class="ct">/* Outputs for Atomic SubSystem: '&lt;S1&gt;/controller' */</span></td></tr>
-<tr name="1016" id="1016">
-<td><a id="l1016" class='ln'>1016</a></td><td>  <a id="1016c3" class="tk">rtY_pwm_counts</a>[4] = (<a id="1016c24" class="tk">uint16_T</a>)<a id="1016c33" class="tk">rtb_Sum1</a>;</td></tr>
-<tr name="1017" id="1017">
-<td><a id="l1017" class='ln'>1017</a></td><td>  <a id="1017c3" class="tk">rtY_pwm_counts</a>[5] = (<a id="1017c24" class="tk">uint16_T</a>)<a id="1017c33" class="tk">rtb_Divide</a>;</td></tr>
-<tr name="1018" id="1018">
-<td><a id="l1018" class='ln'>1018</a></td><td></td></tr>
-<tr name="1019" id="1019">
-<td><a id="l1019" class='ln'>1019</a></td><td>  <span class="ct">/* End of Outputs for SubSystem: '&lt;S1&gt;/controller' */</span></td></tr>
-<tr name="1020" id="1020">
-<td><a id="l1020" class='ln'>1020</a></td><td>  <a id="1020c3" class="tk">rtY_pwm_counts</a>[6] = <a id="1020c23" class="tk">rtb_o_samp_p1</a>;</td></tr>
-<tr name="1021" id="1021">
-<td><a id="l1021" class='ln'>1021</a></td><td>  <a id="1021c3" class="tk">rate_scheduler</a>(<a id="1021c18" class="tk">rtM</a>);</td></tr>
-<tr name="1022" id="1022">
-<td><a id="l1022" class='ln'>1022</a></td><td><span class="br">}</span></td></tr>
-<tr name="1023" id="1023">
-<td><a id="l1023" class='ln'>1023</a></td><td></td></tr>
-<tr name="1024" id="1024">
-<td><a id="l1024" class='ln'>1024</a></td><td><span class="ct">/* Model initialize function */</span></td></tr>
-<tr name="1025" id="1025">
-<td><a id="l1025" class='ln'>1025</a></td><td><span class="kw">void</span> <a id="1025c6" class="tk">PMSM_Controller_initialize</a>(<a id="1025c33" class="tk">RT_MODEL</a> <a id="1025c42" class="tk">*</a><span class="kw">const</span> <a id="1025c49" class="tk">rtM</a>)</td></tr>
-<tr name="1026" id="1026">
-<td><a id="l1026" class='ln'>1026</a></td><td><span class="br">{</span></td></tr>
-<tr name="1027" id="1027">
-<td><a id="l1027" class='ln'>1027</a></td><td>  <span class="ct">/* Registration code */</span></td></tr>
-<tr name="1028" id="1028">
-<td><a id="l1028" class='ln'>1028</a></td><td></td></tr>
-<tr name="1029" id="1029">
-<td><a id="l1029" class='ln'>1029</a></td><td>  <span class="ct">/* initialize non-finites */</span></td></tr>
-<tr name="1030" id="1030">
-<td><a id="l1030" class='ln'>1030</a></td><td>  <a id="1030c3" class="tk">rt_InitInfAndNaN</a>(<span class="kw">sizeof</span>(<a id="1030c27" class="tk">real_T</a>));</td></tr>
-<tr name="1031" id="1031">
-<td><a id="l1031" class='ln'>1031</a></td><td>  <a id="1031c3" class="tk">UNUSED_PARAMETER</a>(<a id="1031c20" class="tk">rtM</a>);</td></tr>
-<tr name="1032" id="1032">
-<td><a id="l1032" class='ln'>1032</a></td><td><span class="br">}</span></td></tr>
-<tr name="1033" id="1033">
-<td><a id="l1033" class='ln'>1033</a></td><td></td></tr>
-<tr name="1034" id="1034">
-<td><a id="l1034" class='ln'>1034</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="1035" id="1035">
-<td><a id="l1035" class='ln'>1035</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="1036" id="1036">
-<td><a id="l1036" class='ln'>1036</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="1037" id="1037">
-<td><a id="l1037" class='ln'>1037</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="1038" id="1038">
-<td><a id="l1038" class='ln'>1038</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="1039" id="1039">
-<td><a id="l1039" class='ln'>1039</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 33
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_codegen_rpt.html

@@ -1,33 +0,0 @@
-<html>
-<head>
-<meta http-equiv="X-UA-Compatible" content="IE=edge" ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><script language="JavaScript" type="text/javascript" src="rtwhilite.js"></script><script language="JavaScript" type="text/javascript" src="rtwshrink.js"></script><script language="JavaScript" type="text/javascript">var reportModel = "MotorController_FOC:434"; </script><script type="text/javascript">var TargetLang = "C"; </script><script language="JavaScript" type="text/javascript" src="define.js"></script><script language="JavaScript" type="text/javascript" src="traceInfo_flag.js"></script><title>
-PMSM_Controller Code Generation Report
-</title>
-
-</head>
-<frameset cols="25%,75%,0%" id="main" border="2">
-<frame scrolling="auto" src="PMSM_Controller_contents.html" name="rtwreport_contents_frame" id="rtwreport_contents_frame" onLoad="loadDocFrameSource('PMSM_Controller')">
-
-</frame>
-<frameset rows="0%,100%,0%" id="rtw_midFrame">
-<frame scrolling="no" src="navToolbar.html" name="rtwreport_navToolbar_frame" id="rtwreport_navToolbar_frame" noresize="noresize">
-
-</frame>
-<frame scrolling="auto" name="rtwreport_document_frame" id="rtwreport_document_frame" style="background-color: white;">
-
-</frame>
-<frame scrolling="no" src="inspect.html" name="rtwreport_inspect_frame" id="rtwreport_inspect_frame" noresize="noresize">
-
-</frame>
-
-</frameset>
-<frame scrolling="no" src="nav.html" name="rtwreport_nav_frame" id="rtwreport_nav_frame" noresize="noresize">
-
-</frame>
-
-</frameset>
-<body>
-
-</body>
-
-</html>

+ 0 - 245
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_coderassumptions.html

@@ -1,245 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><title>
-Coder Assumptions for 'PMSM_Controller'
-</title>
-
-</head>
-<body onload="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdCoderAssumptionsPage'); else local_onload();}} catch(err) {};">
-<h1>
-Coder Assumptions for 'PMSM_Controller'
-</h1>
-<div>
-<p>
-List of assumptions that you can check and expected results for selected target environment. For more information see, <a href="matlab:helpview(fullfile(docroot,'toolbox','ecoder','helptargets.map'),'verif_of_code_generation_assumptions')">Verification of Code Generation Assumptions</a>.
-</p>
-</div>
-<div>
-
-</div>
-<h3 name="sec_C_Language_Configuration_for_ARM_Compatible->ARM_Cortex-M_Target_Hardware" id="sec_target_hardware">
-C Language Configuration for ARM Compatible->ARM Cortex-M Target Hardware
-</h3>
-<table width="100%" border="0">
-<tr>
-<td align="left" valign="top">
-<p>
-<table class="AltRow" cellspacing="0">
-<tr class="even">
-<td align="left" valign="top">
-BitPerChar
-</td>
-<td align="left" valign="top">
-8
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-BitPerShort
-</td>
-<td align="left" valign="top">
-16
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-BitPerInt
-</td>
-<td align="left" valign="top">
-32
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-BitPerLong
-</td>
-<td align="left" valign="top">
-32
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-BitPerLongLong
-</td>
-<td align="left" valign="top">
-64
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-BitPerFloat
-</td>
-<td align="left" valign="top">
-32
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-BitPerDouble
-</td>
-<td align="left" valign="top">
-64
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-BitPerPointer
-</td>
-<td align="left" valign="top">
-32
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-BitPerSizeT
-</td>
-<td align="left" valign="top">
-32
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-BitPerPtrDiffT
-</td>
-<td align="left" valign="top">
-32
-</td>
-
-</tr>
-
-</table>
-<br /><table class="AltRow" cellspacing="0">
-<tr class="even">
-<td align="left" valign="top">
-Endianess
-</td>
-<td align="left" valign="top">
-LittleEndian
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-Shift right for signed integer is arithmetic shift
-</td>
-<td align="left" valign="top">
-True
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-Signed integer division rounds to
-</td>
-<td align="left" valign="top">
-Zero
-</td>
-
-</tr>
-
-</table>
-
-</p>
-
-</td>
-
-</tr>
-
-</table>
-<h3 name="sec_C_Language_Standard" id="sec_lang_standard">
-C Language Standard
-</h3>
-<table width="100%" border="0">
-<tr>
-<td align="left" valign="top">
-<p>
-Zero initialization code has been optimized for model 'PMSM_Controller'.
-</p>
-<p>
-<table class="AltRow" cellspacing="0">
-<tr class="even">
-<td align="left" valign="top">
-Initial value of a global integer variable is zero
-</td>
-<td align="left" valign="top">
-True
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-Initial value of each element of dynamically allocated int array is zero
-</td>
-<td align="left" valign="top">
-True
-</td>
-
-</tr>
-
-</table>
-
-</p>
-<p>
-If the assumption is not correct, remove the optimization through the <a href="matlab:rtw.report.CoderAssumptions.showMemZeroInitParams('PMSM_Controller')">Configuration Parameters > Code Generation > Optimization</a> settings. Alternatively, configure your target environment to make the assumption hold.
-</p>
-
-</td>
-
-</tr>
-
-</table>
-<h3 name="sec_Floating-Point_Numbers" id="sec_floating_point_num">
-Floating-Point Numbers
-</h3>
-<table width="100%" border="0">
-<tr>
-<td align="left" valign="top">
-<p>
-Code generation is configured to support floating-point numbers, therefore your target environment might perform subnormal number calculations.
-</p>
-<p>
-<table class="AltRow" cellspacing="0">
-<tr class="even">
-<td align="left" valign="top">
-Flush-to-zero computed subnormal values (FTZ)
-</td>
-<td align="left" valign="top">
-False
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-Flush-to-zero incoming subnormal values (DAZ)
-</td>
-<td align="left" valign="top">
-False
-</td>
-
-</tr>
-
-</table>
-
-</p>
-<p>
-If the assumptions are not correct, subnormal numbers might cause mismatches between model and generated code simulation results.  For more information see, <a href="matlab:helpview(fullfile(docroot,'toolbox','ecoder','helptargets.map'),'subnormal_numbers_performance')">Subnormal Number Performance</a>.
-</p>
-
-</td>
-
-</tr>
-
-</table>
-
-</body>
-
-</html>

+ 0 - 427
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_contents.html

@@ -1,427 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><script language="JavaScript" type="text/javascript" defer="defer">
-    function rtwFileListShrink(o, category, categoryMsg, numFiles)
-    {
-        var indent = document.getElementById(category + "_indent");
-        var fileTable = document.getElementById(category + "_table");
-        var catName = document.getElementById(category + "_name");
-        if (fileTable.style.display == "none") {
-            fileTable.style.display = "";
-            indent.style.display = "";
-            o.innerHTML = '<span style="font-family:monospace" id = "' + category + '_button">[-]</span>';
-            catName.innerHTML = "<b>" + categoryMsg + "</b>";
-        } else {
-            fileTable.style.display = "none";
-            indent.style.display = "none";
-            o.innerHTML = '<span style="font-family:monospace" id = "' + category + '_button">[+]</span>';
-            catName.innerHTML = "<b>" + categoryMsg + " (" + numFiles + ")" + "</b>";
-        }
-    }
-</script>
-
-</head>
-<body bgcolor="#eeeeee" link="#0033cc" vlink="#666666" rightmargin="0">
-<table class="toc" border="1">
-<tr>
-<td align="left" valign="top">
-<b>
-Contents
-</b>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="rtwmsg.html" id="rtwIdMsgFileLink" style="display: none" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Block-to-code Message
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_survey.html" id="rtwIdSummaryPage" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Summary
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_subsystems.html" id="rtwIdSubsystem" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Subsystem Report
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_interface.html" id="rtwIdCodeInterface" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Code Interface Report
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_trace.html" id="rtwIdTraceability" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Traceability Report
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_metrics.html" id="rtwIdCodeMetrics" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Static Code Metrics Report
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_reducedblocks.html" id="rtwIdReducedBlocks" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Eliminated Blocks
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_replacements.html" id="rtwIdCodeReplacements" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Code Replacements Report
-</a>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<a href="PMSM_Controller_coderassumptions.html" id="rtwIdCoderAssumptionsPage" target="rtwreport_document_frame" onclick="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, true);" name="TOC_List">
-Coder Assumptions
-</a>
-
-</td>
-
-</tr>
-
-</table>
-<!--ADD_CODE_PROFILE_REPORT_LINK_HERE--><hr /><table cellspacing="0" cellpadding="4" width="100%" bgcolor="#ffffff" border="0">
-<tr>
-<td align="left" valign="top">
-<b>
-Generated Code
-</b>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<table cellspacing="0" cellpadding="1" width="100%" bgcolor="#ffffff" id="Main" label="Main file" border="0">
-<tr>
-<td width="0%" align="left" valign="top">
-<span style="background-color:#ffffff;width:100%;cursor:pointer;white-space:nowrap" title="Click to shrink or expand category" onclick="rtwFileListShrink(this,'Main','Main file','1')"><span style="font-family:monospace" id = "Main_button">[-]</span></span>
-</td>
-<td width="100%" align="left" valign="top">
-<span id="Main_name"><b>Main file</b></span>
-</td>
-
-</tr>
-<tr>
-<td width="0%" align="left" valign="top">
-<span id="Main_indent"></span>
-</td>
-<td width="100%" align="left" valign="top">
-<table cellspacing="0" cellpadding="4" width="100%" bgcolor="#ffffff" id="Main_table" border="0">
-<tr>
-<td align="left" valign="top">
-<A HREF="ert_main_c.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="ert_main_c.html" NAME="rtwIdGenFileLinks">
-ert_main.c
-</A>
-<span> </span>
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<table cellspacing="0" cellpadding="1" width="100%" bgcolor="#ffffff" id="Model" label="Model files" border="0">
-<tr>
-<td width="0%" align="left" valign="top">
-<span style="background-color:#ffffff;width:100%;cursor:pointer;white-space:nowrap" title="Click to shrink or expand category" onclick="rtwFileListShrink(this,'Model','Model files','4')"><span style="font-family:monospace" id = "Model_button">[-]</span></span>
-</td>
-<td width="100%" align="left" valign="top">
-<span id="Model_name"><b>Model files</b></span>
-</td>
-
-</tr>
-<tr>
-<td width="0%" align="left" valign="top">
-<span id="Model_indent"></span>
-</td>
-<td width="100%" align="left" valign="top">
-<table cellspacing="0" cellpadding="4" width="100%" bgcolor="#ffffff" id="Model_table" border="0">
-<tr>
-<td align="left" valign="top">
-<A HREF="PMSM_Controller_c.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="PMSM_Controller_c.html" NAME="rtwIdGenFileLinks">
-PMSM_Controller.c
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="PMSM_Controller_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="PMSM_Controller_h.html" NAME="rtwIdGenFileLinks">
-PMSM_Controller.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="PMSM_Controller_private_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="PMSM_Controller_private_h.html" NAME="rtwIdGenFileLinks">
-PMSM_Controller_private.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="PMSM_Controller_types_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="PMSM_Controller_types_h.html" NAME="rtwIdGenFileLinks">
-PMSM_Controller_types.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<table cellspacing="0" cellpadding="1" width="100%" bgcolor="#ffffff" id="Subsystem" label="Subsystem files" border="0">
-<tr>
-<td width="0%" align="left" valign="top">
-<span style="background-color:#ffffff;width:100%;cursor:pointer;white-space:nowrap" title="Click to shrink or expand category" onclick="rtwFileListShrink(this,'Subsystem','Subsystem files','2')"><span style="font-family:monospace" id = "Subsystem_button">[-]</span></span>
-</td>
-<td width="100%" align="left" valign="top">
-<span id="Subsystem_name"><b>Subsystem files</b></span>
-</td>
-
-</tr>
-<tr>
-<td width="0%" align="left" valign="top">
-<span id="Subsystem_indent"></span>
-</td>
-<td width="100%" align="left" valign="top">
-<table cellspacing="0" cellpadding="4" width="100%" bgcolor="#ffffff" id="Subsystem_table" border="0">
-<tr>
-<td align="left" valign="top">
-<A HREF="Shunt_Three_Sample_Point_c.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="Shunt_Three_Sample_Point_c.html" NAME="rtwIdGenFileLinks">
-Shunt_Three_Sample_Point.c
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="Shunt_Three_Sample_Point_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="Shunt_Three_Sample_Point_h.html" NAME="rtwIdGenFileLinks">
-Shunt_Three_Sample_Point.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<table cellspacing="0" cellpadding="1" width="100%" bgcolor="#ffffff" id="Data" label="Data files" border="0">
-<tr>
-<td width="0%" align="left" valign="top">
-<span style="background-color:#ffffff;width:100%;cursor:pointer;white-space:nowrap" title="Click to shrink or expand category" onclick="rtwFileListShrink(this,'Data','Data files','1')"><span style="font-family:monospace" id = "Data_button">[-]</span></span>
-</td>
-<td width="100%" align="left" valign="top">
-<span id="Data_name"><b>Data files</b></span>
-</td>
-
-</tr>
-<tr>
-<td width="0%" align="left" valign="top">
-<span id="Data_indent"></span>
-</td>
-<td width="100%" align="left" valign="top">
-<table cellspacing="0" cellpadding="4" width="100%" bgcolor="#ffffff" id="Data_table" border="0">
-<tr>
-<td align="left" valign="top">
-<A HREF="PMSM_Controller_data_c.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="PMSM_Controller_data_c.html" NAME="rtwIdGenFileLinks">
-PMSM_Controller_data.c
-</A>
-<span> </span>
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<table cellspacing="0" cellpadding="1" width="100%" bgcolor="#ffffff" id="Utility" label="Utility files" border="0">
-<tr>
-<td width="0%" align="left" valign="top">
-<span style="background-color:#ffffff;width:100%;cursor:pointer;white-space:nowrap" title="Click to shrink or expand category" onclick="rtwFileListShrink(this,'Utility','Utility files','8')"><span style="font-family:monospace" id = "Utility_button">[+]</span></span>
-</td>
-<td width="100%" align="left" valign="top">
-<span id="Utility_name"><b>Utility files (8)</b></span>
-</td>
-
-</tr>
-<tr>
-<td width="0%" align="left" valign="top">
-<span id="Utility_indent"></span>
-</td>
-<td width="100%" align="left" valign="top">
-<table cellspacing="0" cellpadding="4" width="100%" bgcolor="#ffffff" id="Utility_table" style="display:none" border="0">
-<tr>
-<td align="left" valign="top">
-<A HREF="rtGetInf_c.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rtGetInf_c.html" NAME="rtwIdGenFileLinks">
-rtGetInf.c
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="rtGetInf_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rtGetInf_h.html" NAME="rtwIdGenFileLinks">
-rtGetInf.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="rtGetNaN_c.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rtGetNaN_c.html" NAME="rtwIdGenFileLinks">
-rtGetNaN.c
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="rtGetNaN_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rtGetNaN_h.html" NAME="rtwIdGenFileLinks">
-rtGetNaN.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="rt_defines_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rt_defines_h.html" NAME="rtwIdGenFileLinks">
-rt_defines.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="rt_nonfinite_c.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rt_nonfinite_c.html" NAME="rtwIdGenFileLinks">
-rt_nonfinite.c
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="rt_nonfinite_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rt_nonfinite_h.html" NAME="rtwIdGenFileLinks">
-rt_nonfinite.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<A HREF="rtwtypes_h.html" TARGET="rtwreport_document_frame" ONCLICK="if (top) if (top.tocHiliteMe) top.tocHiliteMe(window, this, false);" ID="rtwtypes_h.html" NAME="rtwIdGenFileLinks">
-rtwtypes.h
-</A>
-<span> </span>
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-<hr />
-</body>
-
-</html>

+ 0 - 226
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_data_c.html

@@ -1,226 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: PMSM_Controller_data.c</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#include "PMSM_Controller.h"</span></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#include "PMSM_Controller_private.h"</span></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="ct">/* Constant parameters (default storage) */</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="kw">const</span> <a id="22c7" class="tk">ConstP</a> <a id="22c14" class="tk">rtConstP</a> = <span class="br">{</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td>  <span class="ct">/* Computed Parameter: r_sin_M1_Table</span></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="ct">   * Referenced by: '&lt;S23&gt;/r_sin_M1'</span></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td>  <span class="br">{</span> 0, 286, 572, 857, 1143, 1428, 1713, 1997, 2280, 2563, 2845, 3126, 3406, 3686,</td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td>    3964, 4240, 4516, 4790, 5063, 5334, 5604, 5872, 6138, 6402, 6664, 6924, 7182,</td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td>    7438, 7692, 7943, 8192, 8438, 8682, 8923, 9162, 9397, 9630, 9860, 10087,</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td>    10311, 10531, 10749, 10963, 11174, 11381, 11585, 11786, 11982, 12176, 12365,</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td>    12551, 12733, 12911, 13085, 13255, 13421, 13583, 13741, 13894, 14044, 14189,</td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td>    14330, 14466, 14598, 14726, 14849, 14968, 15082, 15191, 15296, 15396, 15491,</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td>    15582, 15668, 15749, 15826, 15897, 15964, 16026, 16083, 16135, 16182, 16225,</td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td>    16262, 16294, 16322, 16344, 16362, 16374, 16382, 16384, 16382, 16374, 16362,</td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td>    16344, 16322, 16294, 16262, 16225, 16182, 16135, 16083, 16026, 15964, 15897,</td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td>    15826, 15749, 15668, 15582, 15491, 15396, 15296, 15191, 15082, 14968, 14849,</td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td>    14726, 14598, 14466, 14330, 14189, 14044, 13894, 13741, 13583, 13421, 13255,</td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td>    13085, 12911, 12733, 12551, 12365, 12176, 11982, 11786, 11585, 11381, 11174,</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td>    10963, 10749, 10531, 10311, 10087, 9860, 9630, 9397, 9162, 8923, 8682, 8438,</td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td>    8192, 7943, 7692, 7438, 7182, 6924, 6664, 6402, 6138, 5872, 5604, 5334, 5063,</td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td>    4790, 4516, 4240, 3964, 3686, 3406, 3126, 2845, 2563, 2280, 1997, 1713, 1428,</td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td>    1143, 857, 572, 286, 0, <a id="41c29" class="tk">-</a>286, <a id="41c35" class="tk">-</a>572, <a id="41c41" class="tk">-</a>857, <a id="41c47" class="tk">-</a>1143, <a id="41c54" class="tk">-</a>1428, <a id="41c61" class="tk">-</a>1713, <a id="41c68" class="tk">-</a>1997, <a id="41c75" class="tk">-</a>2280,</td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td>    <a id="42c5" class="tk">-</a>2563, <a id="42c12" class="tk">-</a>2845, <a id="42c19" class="tk">-</a>3126, <a id="42c26" class="tk">-</a>3406, <a id="42c33" class="tk">-</a>3686, <a id="42c40" class="tk">-</a>3964, <a id="42c47" class="tk">-</a>4240, <a id="42c54" class="tk">-</a>4516, <a id="42c61" class="tk">-</a>4790, <a id="42c68" class="tk">-</a>5063, <a id="42c75" class="tk">-</a>5334,</td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td>    <a id="43c5" class="tk">-</a>5604, <a id="43c12" class="tk">-</a>5872, <a id="43c19" class="tk">-</a>6138, <a id="43c26" class="tk">-</a>6402, <a id="43c33" class="tk">-</a>6664, <a id="43c40" class="tk">-</a>6924, <a id="43c47" class="tk">-</a>7182, <a id="43c54" class="tk">-</a>7438, <a id="43c61" class="tk">-</a>7692, <a id="43c68" class="tk">-</a>7943, <a id="43c75" class="tk">-</a>8192,</td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td>    <a id="44c5" class="tk">-</a>8438, <a id="44c12" class="tk">-</a>8682, <a id="44c19" class="tk">-</a>8923, <a id="44c26" class="tk">-</a>9162, <a id="44c33" class="tk">-</a>9397, <a id="44c40" class="tk">-</a>9630, <a id="44c47" class="tk">-</a>9860, <a id="44c54" class="tk">-</a>10087, <a id="44c62" class="tk">-</a>10311, <a id="44c70" class="tk">-</a>10531,</td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td>    <a id="45c5" class="tk">-</a>10749, <a id="45c13" class="tk">-</a>10963, <a id="45c21" class="tk">-</a>11174, <a id="45c29" class="tk">-</a>11381, <a id="45c37" class="tk">-</a>11585, <a id="45c45" class="tk">-</a>11786, <a id="45c53" class="tk">-</a>11982, <a id="45c61" class="tk">-</a>12176, <a id="45c69" class="tk">-</a>12365,</td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td>    <a id="46c5" class="tk">-</a>12551, <a id="46c13" class="tk">-</a>12733, <a id="46c21" class="tk">-</a>12911, <a id="46c29" class="tk">-</a>13085, <a id="46c37" class="tk">-</a>13255, <a id="46c45" class="tk">-</a>13421, <a id="46c53" class="tk">-</a>13583, <a id="46c61" class="tk">-</a>13741, <a id="46c69" class="tk">-</a>13894,</td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td>    <a id="47c5" class="tk">-</a>14044, <a id="47c13" class="tk">-</a>14189, <a id="47c21" class="tk">-</a>14330, <a id="47c29" class="tk">-</a>14466, <a id="47c37" class="tk">-</a>14598, <a id="47c45" class="tk">-</a>14726, <a id="47c53" class="tk">-</a>14849, <a id="47c61" class="tk">-</a>14968, <a id="47c69" class="tk">-</a>15082,</td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td>    <a id="48c5" class="tk">-</a>15191, <a id="48c13" class="tk">-</a>15296, <a id="48c21" class="tk">-</a>15396, <a id="48c29" class="tk">-</a>15491, <a id="48c37" class="tk">-</a>15582, <a id="48c45" class="tk">-</a>15668, <a id="48c53" class="tk">-</a>15749, <a id="48c61" class="tk">-</a>15826, <a id="48c69" class="tk">-</a>15897,</td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td>    <a id="49c5" class="tk">-</a>15964, <a id="49c13" class="tk">-</a>16026, <a id="49c21" class="tk">-</a>16083, <a id="49c29" class="tk">-</a>16135, <a id="49c37" class="tk">-</a>16182, <a id="49c45" class="tk">-</a>16225, <a id="49c53" class="tk">-</a>16262, <a id="49c61" class="tk">-</a>16294, <a id="49c69" class="tk">-</a>16322,</td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td>    <a id="50c5" class="tk">-</a>16344, <a id="50c13" class="tk">-</a>16362, <a id="50c21" class="tk">-</a>16374, <a id="50c29" class="tk">-</a>16382, <a id="50c37" class="tk">-</a>16384, <a id="50c45" class="tk">-</a>16382, <a id="50c53" class="tk">-</a>16374, <a id="50c61" class="tk">-</a>16362, <a id="50c69" class="tk">-</a>16344,</td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td>    <a id="51c5" class="tk">-</a>16322, <a id="51c13" class="tk">-</a>16294, <a id="51c21" class="tk">-</a>16262, <a id="51c29" class="tk">-</a>16225, <a id="51c37" class="tk">-</a>16182, <a id="51c45" class="tk">-</a>16135, <a id="51c53" class="tk">-</a>16083, <a id="51c61" class="tk">-</a>16026, <a id="51c69" class="tk">-</a>15964,</td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td>    <a id="52c5" class="tk">-</a>15897, <a id="52c13" class="tk">-</a>15826, <a id="52c21" class="tk">-</a>15749, <a id="52c29" class="tk">-</a>15668, <a id="52c37" class="tk">-</a>15582, <a id="52c45" class="tk">-</a>15491, <a id="52c53" class="tk">-</a>15396, <a id="52c61" class="tk">-</a>15296, <a id="52c69" class="tk">-</a>15191,</td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td>    <a id="53c5" class="tk">-</a>15082, <a id="53c13" class="tk">-</a>14968, <a id="53c21" class="tk">-</a>14849, <a id="53c29" class="tk">-</a>14726, <a id="53c37" class="tk">-</a>14598, <a id="53c45" class="tk">-</a>14466, <a id="53c53" class="tk">-</a>14330, <a id="53c61" class="tk">-</a>14189, <a id="53c69" class="tk">-</a>14044,</td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td>    <a id="54c5" class="tk">-</a>13894, <a id="54c13" class="tk">-</a>13741, <a id="54c21" class="tk">-</a>13583, <a id="54c29" class="tk">-</a>13421, <a id="54c37" class="tk">-</a>13255, <a id="54c45" class="tk">-</a>13085, <a id="54c53" class="tk">-</a>12911, <a id="54c61" class="tk">-</a>12733, <a id="54c69" class="tk">-</a>12551,</td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td>    <a id="55c5" class="tk">-</a>12365, <a id="55c13" class="tk">-</a>12176, <a id="55c21" class="tk">-</a>11982, <a id="55c29" class="tk">-</a>11786, <a id="55c37" class="tk">-</a>11585, <a id="55c45" class="tk">-</a>11381, <a id="55c53" class="tk">-</a>11174, <a id="55c61" class="tk">-</a>10963, <a id="55c69" class="tk">-</a>10749,</td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td>    <a id="56c5" class="tk">-</a>10531, <a id="56c13" class="tk">-</a>10311, <a id="56c21" class="tk">-</a>10087, <a id="56c29" class="tk">-</a>9860, <a id="56c36" class="tk">-</a>9630, <a id="56c43" class="tk">-</a>9397, <a id="56c50" class="tk">-</a>9162, <a id="56c57" class="tk">-</a>8923, <a id="56c64" class="tk">-</a>8682, <a id="56c71" class="tk">-</a>8438,</td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td>    <a id="57c5" class="tk">-</a>8192, <a id="57c12" class="tk">-</a>7943, <a id="57c19" class="tk">-</a>7692, <a id="57c26" class="tk">-</a>7438, <a id="57c33" class="tk">-</a>7182, <a id="57c40" class="tk">-</a>6924, <a id="57c47" class="tk">-</a>6664, <a id="57c54" class="tk">-</a>6402, <a id="57c61" class="tk">-</a>6138, <a id="57c68" class="tk">-</a>5872, <a id="57c75" class="tk">-</a>5604,</td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td>    <a id="58c5" class="tk">-</a>5334, <a id="58c12" class="tk">-</a>5063, <a id="58c19" class="tk">-</a>4790, <a id="58c26" class="tk">-</a>4516, <a id="58c33" class="tk">-</a>4240, <a id="58c40" class="tk">-</a>3964, <a id="58c47" class="tk">-</a>3686, <a id="58c54" class="tk">-</a>3406, <a id="58c61" class="tk">-</a>3126, <a id="58c68" class="tk">-</a>2845, <a id="58c75" class="tk">-</a>2563,</td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td>    <a id="59c5" class="tk">-</a>2280, <a id="59c12" class="tk">-</a>1997, <a id="59c19" class="tk">-</a>1713, <a id="59c26" class="tk">-</a>1428, <a id="59c33" class="tk">-</a>1143, <a id="59c40" class="tk">-</a>857, <a id="59c46" class="tk">-</a>572, <a id="59c52" class="tk">-</a>286, 0 <span class="br">}</span>,</td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td>  <span class="ct">/* Computed Parameter: r_cos_M1_Table</span></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td><span class="ct">   * Referenced by: '&lt;S23&gt;/r_cos_M1'</span></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td>  <span class="br">{</span> 16384, 16382, 16374, 16362, 16344, 16322, 16294, 16262, 16225, 16182, 16135,</td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td>    16083, 16026, 15964, 15897, 15826, 15749, 15668, 15582, 15491, 15396, 15296,</td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td>    15191, 15082, 14968, 14849, 14726, 14598, 14466, 14330, 14189, 14044, 13894,</td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td>    13741, 13583, 13421, 13255, 13085, 12911, 12733, 12551, 12365, 12176, 11982,</td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td>    11786, 11585, 11381, 11174, 10963, 10749, 10531, 10311, 10087, 9860, 9630,</td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td>    9397, 9162, 8923, 8682, 8438, 8192, 7943, 7692, 7438, 7182, 6924, 6664, 6402,</td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td>    6138, 5872, 5604, 5334, 5063, 4790, 4516, 4240, 3964, 3686, 3406, 3126, 2845,</td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td>    2563, 2280, 1997, 1713, 1428, 1143, 857, 572, 286, 0, <a id="71c59" class="tk">-</a>286, <a id="71c65" class="tk">-</a>572, <a id="71c71" class="tk">-</a>857,</td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td>    <a id="72c5" class="tk">-</a>1143, <a id="72c12" class="tk">-</a>1428, <a id="72c19" class="tk">-</a>1713, <a id="72c26" class="tk">-</a>1997, <a id="72c33" class="tk">-</a>2280, <a id="72c40" class="tk">-</a>2563, <a id="72c47" class="tk">-</a>2845, <a id="72c54" class="tk">-</a>3126, <a id="72c61" class="tk">-</a>3406, <a id="72c68" class="tk">-</a>3686, <a id="72c75" class="tk">-</a>3964,</td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td>    <a id="73c5" class="tk">-</a>4240, <a id="73c12" class="tk">-</a>4516, <a id="73c19" class="tk">-</a>4790, <a id="73c26" class="tk">-</a>5063, <a id="73c33" class="tk">-</a>5334, <a id="73c40" class="tk">-</a>5604, <a id="73c47" class="tk">-</a>5872, <a id="73c54" class="tk">-</a>6138, <a id="73c61" class="tk">-</a>6402, <a id="73c68" class="tk">-</a>6664, <a id="73c75" class="tk">-</a>6924,</td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td>    <a id="74c5" class="tk">-</a>7182, <a id="74c12" class="tk">-</a>7438, <a id="74c19" class="tk">-</a>7692, <a id="74c26" class="tk">-</a>7943, <a id="74c33" class="tk">-</a>8192, <a id="74c40" class="tk">-</a>8438, <a id="74c47" class="tk">-</a>8682, <a id="74c54" class="tk">-</a>8923, <a id="74c61" class="tk">-</a>9162, <a id="74c68" class="tk">-</a>9397, <a id="74c75" class="tk">-</a>9630,</td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td>    <a id="75c5" class="tk">-</a>9860, <a id="75c12" class="tk">-</a>10087, <a id="75c20" class="tk">-</a>10311, <a id="75c28" class="tk">-</a>10531, <a id="75c36" class="tk">-</a>10749, <a id="75c44" class="tk">-</a>10963, <a id="75c52" class="tk">-</a>11174, <a id="75c60" class="tk">-</a>11381, <a id="75c68" class="tk">-</a>11585,</td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td>    <a id="76c5" class="tk">-</a>11786, <a id="76c13" class="tk">-</a>11982, <a id="76c21" class="tk">-</a>12176, <a id="76c29" class="tk">-</a>12365, <a id="76c37" class="tk">-</a>12551, <a id="76c45" class="tk">-</a>12733, <a id="76c53" class="tk">-</a>12911, <a id="76c61" class="tk">-</a>13085, <a id="76c69" class="tk">-</a>13255,</td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td>    <a id="77c5" class="tk">-</a>13421, <a id="77c13" class="tk">-</a>13583, <a id="77c21" class="tk">-</a>13741, <a id="77c29" class="tk">-</a>13894, <a id="77c37" class="tk">-</a>14044, <a id="77c45" class="tk">-</a>14189, <a id="77c53" class="tk">-</a>14330, <a id="77c61" class="tk">-</a>14466, <a id="77c69" class="tk">-</a>14598,</td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td>    <a id="78c5" class="tk">-</a>14726, <a id="78c13" class="tk">-</a>14849, <a id="78c21" class="tk">-</a>14968, <a id="78c29" class="tk">-</a>15082, <a id="78c37" class="tk">-</a>15191, <a id="78c45" class="tk">-</a>15296, <a id="78c53" class="tk">-</a>15396, <a id="78c61" class="tk">-</a>15491, <a id="78c69" class="tk">-</a>15582,</td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td>    <a id="79c5" class="tk">-</a>15668, <a id="79c13" class="tk">-</a>15749, <a id="79c21" class="tk">-</a>15826, <a id="79c29" class="tk">-</a>15897, <a id="79c37" class="tk">-</a>15964, <a id="79c45" class="tk">-</a>16026, <a id="79c53" class="tk">-</a>16083, <a id="79c61" class="tk">-</a>16135, <a id="79c69" class="tk">-</a>16182,</td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td>    <a id="80c5" class="tk">-</a>16225, <a id="80c13" class="tk">-</a>16262, <a id="80c21" class="tk">-</a>16294, <a id="80c29" class="tk">-</a>16322, <a id="80c37" class="tk">-</a>16344, <a id="80c45" class="tk">-</a>16362, <a id="80c53" class="tk">-</a>16374, <a id="80c61" class="tk">-</a>16382, <a id="80c69" class="tk">-</a>16384,</td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td>    <a id="81c5" class="tk">-</a>16382, <a id="81c13" class="tk">-</a>16374, <a id="81c21" class="tk">-</a>16362, <a id="81c29" class="tk">-</a>16344, <a id="81c37" class="tk">-</a>16322, <a id="81c45" class="tk">-</a>16294, <a id="81c53" class="tk">-</a>16262, <a id="81c61" class="tk">-</a>16225, <a id="81c69" class="tk">-</a>16182,</td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td>    <a id="82c5" class="tk">-</a>16135, <a id="82c13" class="tk">-</a>16083, <a id="82c21" class="tk">-</a>16026, <a id="82c29" class="tk">-</a>15964, <a id="82c37" class="tk">-</a>15897, <a id="82c45" class="tk">-</a>15826, <a id="82c53" class="tk">-</a>15749, <a id="82c61" class="tk">-</a>15668, <a id="82c69" class="tk">-</a>15582,</td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td>    <a id="83c5" class="tk">-</a>15491, <a id="83c13" class="tk">-</a>15396, <a id="83c21" class="tk">-</a>15296, <a id="83c29" class="tk">-</a>15191, <a id="83c37" class="tk">-</a>15082, <a id="83c45" class="tk">-</a>14968, <a id="83c53" class="tk">-</a>14849, <a id="83c61" class="tk">-</a>14726, <a id="83c69" class="tk">-</a>14598,</td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td>    <a id="84c5" class="tk">-</a>14466, <a id="84c13" class="tk">-</a>14330, <a id="84c21" class="tk">-</a>14189, <a id="84c29" class="tk">-</a>14044, <a id="84c37" class="tk">-</a>13894, <a id="84c45" class="tk">-</a>13741, <a id="84c53" class="tk">-</a>13583, <a id="84c61" class="tk">-</a>13421, <a id="84c69" class="tk">-</a>13255,</td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td>    <a id="85c5" class="tk">-</a>13085, <a id="85c13" class="tk">-</a>12911, <a id="85c21" class="tk">-</a>12733, <a id="85c29" class="tk">-</a>12551, <a id="85c37" class="tk">-</a>12365, <a id="85c45" class="tk">-</a>12176, <a id="85c53" class="tk">-</a>11982, <a id="85c61" class="tk">-</a>11786, <a id="85c69" class="tk">-</a>11585,</td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td>    <a id="86c5" class="tk">-</a>11381, <a id="86c13" class="tk">-</a>11174, <a id="86c21" class="tk">-</a>10963, <a id="86c29" class="tk">-</a>10749, <a id="86c37" class="tk">-</a>10531, <a id="86c45" class="tk">-</a>10311, <a id="86c53" class="tk">-</a>10087, <a id="86c61" class="tk">-</a>9860, <a id="86c68" class="tk">-</a>9630, <a id="86c75" class="tk">-</a>9397,</td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td>    <a id="87c5" class="tk">-</a>9162, <a id="87c12" class="tk">-</a>8923, <a id="87c19" class="tk">-</a>8682, <a id="87c26" class="tk">-</a>8438, <a id="87c33" class="tk">-</a>8192, <a id="87c40" class="tk">-</a>7943, <a id="87c47" class="tk">-</a>7692, <a id="87c54" class="tk">-</a>7438, <a id="87c61" class="tk">-</a>7182, <a id="87c68" class="tk">-</a>6924, <a id="87c75" class="tk">-</a>6664,</td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td>    <a id="88c5" class="tk">-</a>6402, <a id="88c12" class="tk">-</a>6138, <a id="88c19" class="tk">-</a>5872, <a id="88c26" class="tk">-</a>5604, <a id="88c33" class="tk">-</a>5334, <a id="88c40" class="tk">-</a>5063, <a id="88c47" class="tk">-</a>4790, <a id="88c54" class="tk">-</a>4516, <a id="88c61" class="tk">-</a>4240, <a id="88c68" class="tk">-</a>3964, <a id="88c75" class="tk">-</a>3686,</td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td>    <a id="89c5" class="tk">-</a>3406, <a id="89c12" class="tk">-</a>3126, <a id="89c19" class="tk">-</a>2845, <a id="89c26" class="tk">-</a>2563, <a id="89c33" class="tk">-</a>2280, <a id="89c40" class="tk">-</a>1997, <a id="89c47" class="tk">-</a>1713, <a id="89c54" class="tk">-</a>1428, <a id="89c61" class="tk">-</a>1143, <a id="89c68" class="tk">-</a>857, <a id="89c74" class="tk">-</a>572,</td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td>    <a id="90c5" class="tk">-</a>286, 0, 286, 572, 857, 1143, 1428, 1713, 1997, 2280, 2563, 2845, 3126, 3406,</td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td>    3686, 3964, 4240, 4516, 4790, 5063, 5334, 5604, 5872, 6138, 6402, 6664, 6924,</td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td>    7182, 7438, 7692, 7943, 8192, 8438, 8682, 8923, 9162, 9397, 9630, 9860,</td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td>    10087, 10311, 10531, 10749, 10963, 11174, 11381, 11585, 11786, 11982, 12176,</td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td>    12365, 12551, 12733, 12911, 13085, 13255, 13421, 13583, 13741, 13894, 14044,</td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td>    14189, 14330, 14466, 14598, 14726, 14849, 14968, 15082, 15191, 15296, 15396,</td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td>    15491, 15582, 15668, 15749, 15826, 15897, 15964, 16026, 16083, 16135, 16182,</td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td>    16225, 16262, 16294, 16322, 16344, 16362, 16374, 16382, 16384 <span class="br">}</span></td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td><span class="br">}</span>;</td></tr>
-<tr name="99" id="99">
-<td><a id="l99" class='ln'>99</a></td><td></td></tr>
-<tr name="100" id="100">
-<td><a id="l100" class='ln'>100</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="101" id="101">
-<td><a id="l101" class='ln'>101</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="102" id="102">
-<td><a id="l102" class='ln'>102</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="103" id="103">
-<td><a id="l103" class='ln'>103</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="104" id="104">
-<td><a id="l104" class='ln'>104</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="105" id="105">
-<td><a id="l105" class='ln'>105</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 880
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_h.html

@@ -1,880 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: PMSM_Controller.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_PMSM_Controller_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_PMSM_Controller_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="pp">#include &lt;float.h&gt;</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include &lt;math.h&gt;</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#ifndef</span> <a id="22c9" class="tk">PMSM_Controller_COMMON_INCLUDES_</a></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#define</span> <a id="23c9" class="tk">PMSM_Controller_COMMON_INCLUDES_</a></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="pp">#include "rtwtypes.h"</span></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* PMSM_Controller_COMMON_INCLUDES_ */</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="pp">#include "PMSM_Controller_types.h"</span></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td></td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="ct">/* Child system includes */</span></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="pp">#include "Shunt_Three_Sample_Point.h"</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="pp">#include "rt_nonfinite.h"</span></td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="pp">#include "rtGetInf.h"</span></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="pp">#include "rt_defines.h"</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td><span class="ct">/* Macros for accessing real-time model data structure */</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td><span class="pp">#ifndef</span> <a id="36c9" class="tk">rtmGetErrorStatus</a></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td><span class="pp">#define</span> <a id="37c9" class="tk">rtmGetErrorStatus</a>(<a id="37c27" class="tk">rtm</a>)         ((<a id="37c42" class="tk">rtm</a>)-&gt;<a id="37c48" class="tk">errorStatus</a>)</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td></td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td><span class="pp">#ifndef</span> <a id="40c9" class="tk">rtmSetErrorStatus</a></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td><span class="pp">#define</span> <a id="41c9" class="tk">rtmSetErrorStatus</a>(<a id="41c27" class="tk">rtm</a>, <a id="41c32" class="tk">val</a>)    ((<a id="41c42" class="tk">rtm</a>)-&gt;<a id="41c48" class="tk">errorStatus</a> = (<a id="41c63" class="tk">val</a>))</td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td></td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td><span class="ct">/* Block signals and states (default storage) for system '&lt;Root&gt;' */</span></td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td><span class="kw">typedef</span> <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td>  <a id="46c3" class="tk">int32_T</a> <a id="46c11" class="tk">UnitDelay1_DSTATE</a>[2];        <span class="ct">/* '&lt;S21&gt;/UnitDelay1' */</span></td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td>  <a id="47c3" class="tk">int16_T</a> <a id="47c11" class="tk">Integrator_DSTATE</a>;           <span class="ct">/* '&lt;S60&gt;/Integrator' */</span></td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td>  <a id="48c3" class="tk">int16_T</a> <a id="48c11" class="tk">Integrator_DSTATE_i</a>;         <span class="ct">/* '&lt;S160&gt;/Integrator' */</span></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td>  <a id="49c3" class="tk">int16_T</a> <a id="49c11" class="tk">Integrator_DSTATE_p</a>;         <span class="ct">/* '&lt;S110&gt;/Integrator' */</span></td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td><span class="br">}</span> <a id="50c3" class="tk">DW</a>;</td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td></td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><span class="ct">/* Constant parameters (default storage) */</span></td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><span class="kw">typedef</span> <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td>  <span class="ct">/* Computed Parameter: r_sin_M1_Table</span></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td><span class="ct">   * Referenced by: '&lt;S23&gt;/r_sin_M1'</span></td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td>  <a id="57c3" class="tk">int16_T</a> <a id="57c11" class="tk">r_sin_M1_Table</a>[361];</td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td></td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td>  <span class="ct">/* Computed Parameter: r_cos_M1_Table</span></td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td><span class="ct">   * Referenced by: '&lt;S23&gt;/r_cos_M1'</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td>  <a id="62c3" class="tk">int16_T</a> <a id="62c11" class="tk">r_cos_M1_Table</a>[361];</td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><span class="br">}</span> <a id="63c3" class="tk">ConstP</a>;</td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td></td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td><span class="ct">/* Real-time Model Data Structure */</span></td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td><span class="kw">struct</span> <a id="66c8" class="tk">tag_RTM</a> <span class="br">{</span></td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td>  <span class="kw">const</span> <a id="67c9" class="tk">char_T</a> <a id="67c16" class="tk">*</a> <span class="kw">volatile</span> <a id="67c27" class="tk">errorStatus</a>;</td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td>  <a id="68c3" class="tk">DW</a> <a id="68c6" class="tk">*</a><a id="68c7" class="tk">dwork</a>;</td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td></td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td>  <span class="ct">/*</span></td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td><span class="ct">   * Timing:</span></td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td><span class="ct">   * The following substructure contains information regarding</span></td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td><span class="ct">   * the timing information for the model.</span></td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td>  <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td>    <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td>      <a id="77c7" class="tk">uint8_T</a> <a id="77c15" class="tk">TID</a>[2];</td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td>    <span class="br">}</span> <a id="78c7" class="tk">TaskCounters</a>;</td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td>  <span class="br">}</span> <a id="79c5" class="tk">Timing</a>;</td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td><span class="br">}</span>;</td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td></td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td><span class="ct">/* Constant parameters (default storage) */</span></td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td><span class="kw">extern</span> <span class="kw">const</span> <a id="83c14" class="tk">ConstP</a> <a id="83c21" class="tk">rtConstP</a>;</td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td></td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td><span class="ct">/* Model entry point functions */</span></td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="86c13" class="tk">PMSM_Controller_initialize</a>(<a id="86c40" class="tk">RT_MODEL</a> <a id="86c49" class="tk">*</a><span class="kw">const</span> <a id="86c56" class="tk">rtM</a>);</td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="87c13" class="tk">PMSM_Controller_step</a>(<a id="87c34" class="tk">RT_MODEL</a> <a id="87c43" class="tk">*</a><span class="kw">const</span> <a id="87c50" class="tk">rtM</a>, <a id="87c55" class="tk">int16_T</a> <a id="87c63" class="tk">rtU_Vdc</a>, <a id="87c72" class="tk">uint16_T</a></td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td>  <a id="88c3" class="tk">rtU_Ts</a>, <a id="88c11" class="tk">int16_T</a> <a id="88c19" class="tk">rtU_adc_a</a>, <a id="88c30" class="tk">int16_T</a> <a id="88c38" class="tk">rtU_adc_b</a>, <a id="88c49" class="tk">real_T</a> <a id="88c56" class="tk">rtU_rotor_angle</a>, <a id="88c73" class="tk">int16_T</a></td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td>  <a id="89c3" class="tk">rtU_rotor_speed</a>, <a id="89c20" class="tk">int16_T</a> <a id="89c28" class="tk">rtU_input_target</a>, <a id="89c46" class="tk">uint16_T</a> <a id="89c55" class="tk">rtY_pwm_counts</a>[8], <a id="89c74" class="tk">uint8_T</a></td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td>  <a id="90c3" class="tk">*</a><a id="90c4" class="tk">rtY_sector</a>);</td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td></td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td><span class="ct">/*-</span></td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td><span class="ct"> * These blocks were eliminated from the model due to optimizations:</span></td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td><span class="ct"> * Block '&lt;S1&gt;/Abs1' : Unused code path elimination</span></td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Scope' : Unused code path elimination</span></td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Scope' : Unused code path elimination</span></td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td><span class="ct"> * Block '&lt;S3&gt;/Scope' : Unused code path elimination</span></td></tr>
-<tr name="99" id="99">
-<td><a id="l99" class='ln'>99</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Relational Operator9' : Unused code path elimination</span></td></tr>
-<tr name="100" id="100">
-<td><a id="l100" class='ln'>100</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Scope1' : Unused code path elimination</span></td></tr>
-<tr name="101" id="101">
-<td><a id="l101" class='ln'>101</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Scope2' : Unused code path elimination</span></td></tr>
-<tr name="102" id="102">
-<td><a id="l102" class='ln'>102</a></td><td><span class="ct"> * Block '&lt;S10&gt;/n_stdStillDet' : Unused code path elimination</span></td></tr>
-<tr name="103" id="103">
-<td><a id="l103" class='ln'>103</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Abs5' : Unused code path elimination</span></td></tr>
-<tr name="104" id="104">
-<td><a id="l104" class='ln'>104</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Divide1' : Unused code path elimination</span></td></tr>
-<tr name="105" id="105">
-<td><a id="l105" class='ln'>105</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Divide14' : Unused code path elimination</span></td></tr>
-<tr name="106" id="106">
-<td><a id="l106" class='ln'>106</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Divide2' : Unused code path elimination</span></td></tr>
-<tr name="107" id="107">
-<td><a id="l107" class='ln'>107</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Divide3' : Unused code path elimination</span></td></tr>
-<tr name="108" id="108">
-<td><a id="l108" class='ln'>108</a></td><td><span class="ct"> * Block '&lt;S13&gt;/Data Type Duplicate' : Unused code path elimination</span></td></tr>
-<tr name="109" id="109">
-<td><a id="l109" class='ln'>109</a></td><td><span class="ct"> * Block '&lt;S13&gt;/Data Type Propagation' : Unused code path elimination</span></td></tr>
-<tr name="110" id="110">
-<td><a id="l110" class='ln'>110</a></td><td><span class="ct"> * Block '&lt;S13&gt;/LowerRelop1' : Unused code path elimination</span></td></tr>
-<tr name="111" id="111">
-<td><a id="l111" class='ln'>111</a></td><td><span class="ct"> * Block '&lt;S13&gt;/Switch' : Unused code path elimination</span></td></tr>
-<tr name="112" id="112">
-<td><a id="l112" class='ln'>112</a></td><td><span class="ct"> * Block '&lt;S13&gt;/Switch2' : Unused code path elimination</span></td></tr>
-<tr name="113" id="113">
-<td><a id="l113" class='ln'>113</a></td><td><span class="ct"> * Block '&lt;S13&gt;/UpperRelop' : Unused code path elimination</span></td></tr>
-<tr name="114" id="114">
-<td><a id="l114" class='ln'>114</a></td><td><span class="ct"> * Block '&lt;S14&gt;/Data Type Duplicate' : Unused code path elimination</span></td></tr>
-<tr name="115" id="115">
-<td><a id="l115" class='ln'>115</a></td><td><span class="ct"> * Block '&lt;S14&gt;/Data Type Propagation' : Unused code path elimination</span></td></tr>
-<tr name="116" id="116">
-<td><a id="l116" class='ln'>116</a></td><td><span class="ct"> * Block '&lt;S14&gt;/LowerRelop1' : Unused code path elimination</span></td></tr>
-<tr name="117" id="117">
-<td><a id="l117" class='ln'>117</a></td><td><span class="ct"> * Block '&lt;S14&gt;/Switch' : Unused code path elimination</span></td></tr>
-<tr name="118" id="118">
-<td><a id="l118" class='ln'>118</a></td><td><span class="ct"> * Block '&lt;S14&gt;/Switch2' : Unused code path elimination</span></td></tr>
-<tr name="119" id="119">
-<td><a id="l119" class='ln'>119</a></td><td><span class="ct"> * Block '&lt;S14&gt;/UpperRelop' : Unused code path elimination</span></td></tr>
-<tr name="120" id="120">
-<td><a id="l120" class='ln'>120</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Sum1' : Unused code path elimination</span></td></tr>
-<tr name="121" id="121">
-<td><a id="l121" class='ln'>121</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Sum2' : Unused code path elimination</span></td></tr>
-<tr name="122" id="122">
-<td><a id="l122" class='ln'>122</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Sum3' : Unused code path elimination</span></td></tr>
-<tr name="123" id="123">
-<td><a id="l123" class='ln'>123</a></td><td><span class="ct"> * Block '&lt;S12&gt;/Sum4' : Unused code path elimination</span></td></tr>
-<tr name="124" id="124">
-<td><a id="l124" class='ln'>124</a></td><td><span class="ct"> * Block '&lt;S12&gt;/id_fieldWeakMax' : Unused code path elimination</span></td></tr>
-<tr name="125" id="125">
-<td><a id="l125" class='ln'>125</a></td><td><span class="ct"> * Block '&lt;S12&gt;/n_fieldWeakAuthHi' : Unused code path elimination</span></td></tr>
-<tr name="126" id="126">
-<td><a id="l126" class='ln'>126</a></td><td><span class="ct"> * Block '&lt;S12&gt;/n_fieldWeakAuthLo' : Unused code path elimination</span></td></tr>
-<tr name="127" id="127">
-<td><a id="l127" class='ln'>127</a></td><td><span class="ct"> * Block '&lt;S12&gt;/r_fieldWeakHi' : Unused code path elimination</span></td></tr>
-<tr name="128" id="128">
-<td><a id="l128" class='ln'>128</a></td><td><span class="ct"> * Block '&lt;S12&gt;/r_fieldWeakLo' : Unused code path elimination</span></td></tr>
-<tr name="129" id="129">
-<td><a id="l129" class='ln'>129</a></td><td><span class="ct"> * Block '&lt;S1&gt;/Scope' : Unused code path elimination</span></td></tr>
-<tr name="130" id="130">
-<td><a id="l130" class='ln'>130</a></td><td><span class="ct"> * Block '&lt;S1&gt;/Scope1' : Unused code path elimination</span></td></tr>
-<tr name="131" id="131">
-<td><a id="l131" class='ln'>131</a></td><td><span class="ct"> * Block '&lt;S5&gt;/Gain6' : Unused code path elimination</span></td></tr>
-<tr name="132" id="132">
-<td><a id="l132" class='ln'>132</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Abs5' : Unused code path elimination</span></td></tr>
-<tr name="133" id="133">
-<td><a id="l133" class='ln'>133</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Constant' : Unused code path elimination</span></td></tr>
-<tr name="134" id="134">
-<td><a id="l134" class='ln'>134</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Constant1' : Unused code path elimination</span></td></tr>
-<tr name="135" id="135">
-<td><a id="l135" class='ln'>135</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Divide1' : Unused code path elimination</span></td></tr>
-<tr name="136" id="136">
-<td><a id="l136" class='ln'>136</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Divide4' : Unused code path elimination</span></td></tr>
-<tr name="137" id="137">
-<td><a id="l137" class='ln'>137</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Gain1' : Unused code path elimination</span></td></tr>
-<tr name="138" id="138">
-<td><a id="l138" class='ln'>138</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Gain3' : Unused code path elimination</span></td></tr>
-<tr name="139" id="139">
-<td><a id="l139" class='ln'>139</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Gain4' : Unused code path elimination</span></td></tr>
-<tr name="140" id="140">
-<td><a id="l140" class='ln'>140</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Gain5' : Unused code path elimination</span></td></tr>
-<tr name="141" id="141">
-<td><a id="l141" class='ln'>141</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Vd_max1' : Unused code path elimination</span></td></tr>
-<tr name="142" id="142">
-<td><a id="l142" class='ln'>142</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Vq_max_M1' : Unused code path elimination</span></td></tr>
-<tr name="143" id="143">
-<td><a id="l143" class='ln'>143</a></td><td><span class="ct"> * Block '&lt;S17&gt;/Vq_max_XA' : Unused code path elimination</span></td></tr>
-<tr name="144" id="144">
-<td><a id="l144" class='ln'>144</a></td><td><span class="ct"> * Block '&lt;S17&gt;/i_max' : Unused code path elimination</span></td></tr>
-<tr name="145" id="145">
-<td><a id="l145" class='ln'>145</a></td><td><span class="ct"> * Block '&lt;S17&gt;/iq_maxSca_M1' : Unused code path elimination</span></td></tr>
-<tr name="146" id="146">
-<td><a id="l146" class='ln'>146</a></td><td><span class="ct"> * Block '&lt;S17&gt;/iq_maxSca_XA' : Unused code path elimination</span></td></tr>
-<tr name="147" id="147">
-<td><a id="l147" class='ln'>147</a></td><td><span class="ct"> * Block '&lt;S17&gt;/n_max1' : Unused code path elimination</span></td></tr>
-<tr name="148" id="148">
-<td><a id="l148" class='ln'>148</a></td><td><span class="ct"> * Block '&lt;S178&gt;/Scope' : Unused code path elimination</span></td></tr>
-<tr name="149" id="149">
-<td><a id="l149" class='ln'>149</a></td><td><span class="ct"> * Block '&lt;S5&gt;/Scope1' : Unused code path elimination</span></td></tr>
-<tr name="150" id="150">
-<td><a id="l150" class='ln'>150</a></td><td><span class="ct"> * Block '&lt;S5&gt;/Scope12' : Unused code path elimination</span></td></tr>
-<tr name="151" id="151">
-<td><a id="l151" class='ln'>151</a></td><td><span class="ct"> * Block '&lt;S5&gt;/UnitDelay4' : Unused code path elimination</span></td></tr>
-<tr name="152" id="152">
-<td><a id="l152" class='ln'>152</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Signal Conversion2' : Eliminate redundant signal conversion block</span></td></tr>
-<tr name="153" id="153">
-<td><a id="l153" class='ln'>153</a></td><td><span class="ct"> * Block '&lt;S1&gt;/hall_motor_angel_choice' : Eliminated due to constant selection input</span></td></tr>
-<tr name="154" id="154">
-<td><a id="l154" class='ln'>154</a></td><td><span class="ct"> * Block '&lt;S1&gt;/hall_motor_speed_choice' : Eliminated due to constant selection input</span></td></tr>
-<tr name="155" id="155">
-<td><a id="l155" class='ln'>155</a></td><td><span class="ct"> * Block '&lt;S2&gt;/AND' : Unused code path elimination</span></td></tr>
-<tr name="156" id="156">
-<td><a id="l156" class='ln'>156</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Constant1' : Unused code path elimination</span></td></tr>
-<tr name="157" id="157">
-<td><a id="l157" class='ln'>157</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Constant16' : Unused code path elimination</span></td></tr>
-<tr name="158" id="158">
-<td><a id="l158" class='ln'>158</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Constant2' : Unused code path elimination</span></td></tr>
-<tr name="159" id="159">
-<td><a id="l159" class='ln'>159</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Divide1' : Unused code path elimination</span></td></tr>
-<tr name="160" id="160">
-<td><a id="l160" class='ln'>160</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Divide2' : Unused code path elimination</span></td></tr>
-<tr name="161" id="161">
-<td><a id="l161" class='ln'>161</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Divide3' : Unused code path elimination</span></td></tr>
-<tr name="162" id="162">
-<td><a id="l162" class='ln'>162</a></td><td><span class="ct"> * Block '&lt;S2&gt;/MinMax' : Unused code path elimination</span></td></tr>
-<tr name="163" id="163">
-<td><a id="l163" class='ln'>163</a></td><td><span class="ct"> * Block '&lt;S2&gt;/MinMax1' : Unused code path elimination</span></td></tr>
-<tr name="164" id="164">
-<td><a id="l164" class='ln'>164</a></td><td><span class="ct"> * Block '&lt;S2&gt;/NOT' : Unused code path elimination</span></td></tr>
-<tr name="165" id="165">
-<td><a id="l165" class='ln'>165</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Relational Operator7' : Unused code path elimination</span></td></tr>
-<tr name="166" id="166">
-<td><a id="l166" class='ln'>166</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Sum1' : Unused code path elimination</span></td></tr>
-<tr name="167" id="167">
-<td><a id="l167" class='ln'>167</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Sum3' : Unused code path elimination</span></td></tr>
-<tr name="168" id="168">
-<td><a id="l168" class='ln'>168</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Switch2' : Unused code path elimination</span></td></tr>
-<tr name="169" id="169">
-<td><a id="l169" class='ln'>169</a></td><td><span class="ct"> * Block '&lt;S2&gt;/Switch3' : Unused code path elimination</span></td></tr>
-<tr name="170" id="170">
-<td><a id="l170" class='ln'>170</a></td><td><span class="ct"> * Block '&lt;S2&gt;/a_elecAngle1' : Unused code path elimination</span></td></tr>
-<tr name="171" id="171">
-<td><a id="l171" class='ln'>171</a></td><td><span class="ct"> * Block '&lt;S6&gt;/Add2' : Unused code path elimination</span></td></tr>
-<tr name="172" id="172">
-<td><a id="l172" class='ln'>172</a></td><td><span class="ct"> * Block '&lt;S6&gt;/Constant1' : Unused code path elimination</span></td></tr>
-<tr name="173" id="173">
-<td><a id="l173" class='ln'>173</a></td><td><span class="ct"> * Block '&lt;S6&gt;/Constant2' : Unused code path elimination</span></td></tr>
-<tr name="174" id="174">
-<td><a id="l174" class='ln'>174</a></td><td><span class="ct"> * Block '&lt;S6&gt;/Math Function' : Unused code path elimination</span></td></tr>
-<tr name="175" id="175">
-<td><a id="l175" class='ln'>175</a></td><td><span class="ct"> * Block '&lt;S2&gt;/是否方波启动' : Unused code path elimination</span></td></tr>
-<tr name="176" id="176">
-<td><a id="l176" class='ln'>176</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Constant20' : Unused code path elimination</span></td></tr>
-<tr name="177" id="177">
-<td><a id="l177" class='ln'>177</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Constant23' : Unused code path elimination</span></td></tr>
-<tr name="178" id="178">
-<td><a id="l178" class='ln'>178</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Constant24' : Unused code path elimination</span></td></tr>
-<tr name="179" id="179">
-<td><a id="l179" class='ln'>179</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Constant8' : Unused code path elimination</span></td></tr>
-<tr name="180" id="180">
-<td><a id="l180" class='ln'>180</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Logical Operator3' : Unused code path elimination</span></td></tr>
-<tr name="181" id="181">
-<td><a id="l181" class='ln'>181</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Relational Operator1' : Unused code path elimination</span></td></tr>
-<tr name="182" id="182">
-<td><a id="l182" class='ln'>182</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Relational Operator6' : Unused code path elimination</span></td></tr>
-<tr name="183" id="183">
-<td><a id="l183" class='ln'>183</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Sum2' : Unused code path elimination</span></td></tr>
-<tr name="184" id="184">
-<td><a id="l184" class='ln'>184</a></td><td><span class="ct"> * Block '&lt;S7&gt;/Switch2' : Unused code path elimination</span></td></tr>
-<tr name="185" id="185">
-<td><a id="l185" class='ln'>185</a></td><td><span class="ct"> * Block '&lt;S7&gt;/UnitDelay2' : Unused code path elimination</span></td></tr>
-<tr name="186" id="186">
-<td><a id="l186" class='ln'>186</a></td><td><span class="ct"> * Block '&lt;S7&gt;/UnitDelay3' : Unused code path elimination</span></td></tr>
-<tr name="187" id="187">
-<td><a id="l187" class='ln'>187</a></td><td><span class="ct"> * Block '&lt;S9&gt;/Add' : Unused code path elimination</span></td></tr>
-<tr name="188" id="188">
-<td><a id="l188" class='ln'>188</a></td><td><span class="ct"> * Block '&lt;S9&gt;/Gain' : Unused code path elimination</span></td></tr>
-<tr name="189" id="189">
-<td><a id="l189" class='ln'>189</a></td><td><span class="ct"> * Block '&lt;S9&gt;/Gain1' : Unused code path elimination</span></td></tr>
-<tr name="190" id="190">
-<td><a id="l190" class='ln'>190</a></td><td><span class="ct"> * Block '&lt;S9&gt;/Selector' : Unused code path elimination</span></td></tr>
-<tr name="191" id="191">
-<td><a id="l191" class='ln'>191</a></td><td><span class="ct"> * Block '&lt;S9&gt;/vec_hallToPos' : Unused code path elimination</span></td></tr>
-<tr name="192" id="192">
-<td><a id="l192" class='ln'>192</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Abs5' : Unused code path elimination</span></td></tr>
-<tr name="193" id="193">
-<td><a id="l193" class='ln'>193</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Constant4' : Unused code path elimination</span></td></tr>
-<tr name="194" id="194">
-<td><a id="l194" class='ln'>194</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Logical Operator1' : Unused code path elimination</span></td></tr>
-<tr name="195" id="195">
-<td><a id="l195" class='ln'>195</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Logical Operator2' : Unused code path elimination</span></td></tr>
-<tr name="196" id="196">
-<td><a id="l196" class='ln'>196</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Logical Operator3' : Unused code path elimination</span></td></tr>
-<tr name="197" id="197">
-<td><a id="l197" class='ln'>197</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Abs2' : Unused code path elimination</span></td></tr>
-<tr name="198" id="198">
-<td><a id="l198" class='ln'>198</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Constant4' : Unused code path elimination</span></td></tr>
-<tr name="199" id="199">
-<td><a id="l199" class='ln'>199</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Divide11' : Unused code path elimination</span></td></tr>
-<tr name="200" id="200">
-<td><a id="l200" class='ln'>200</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Divide13' : Unused code path elimination</span></td></tr>
-<tr name="201" id="201">
-<td><a id="l201" class='ln'>201</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Divide14' : Unused code path elimination</span></td></tr>
-<tr name="202" id="202">
-<td><a id="l202" class='ln'>202</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Logical Operator1' : Unused code path elimination</span></td></tr>
-<tr name="203" id="203">
-<td><a id="l203" class='ln'>203</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Relational Operator4' : Unused code path elimination</span></td></tr>
-<tr name="204" id="204">
-<td><a id="l204" class='ln'>204</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Sum13' : Unused code path elimination</span></td></tr>
-<tr name="205" id="205">
-<td><a id="l205" class='ln'>205</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Sum7' : Unused code path elimination</span></td></tr>
-<tr name="206" id="206">
-<td><a id="l206" class='ln'>206</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Switch1' : Unused code path elimination</span></td></tr>
-<tr name="207" id="207">
-<td><a id="l207" class='ln'>207</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Switch2' : Unused code path elimination</span></td></tr>
-<tr name="208" id="208">
-<td><a id="l208" class='ln'>208</a></td><td><span class="ct"> * Block '&lt;S11&gt;/Switch3' : Unused code path elimination</span></td></tr>
-<tr name="209" id="209">
-<td><a id="l209" class='ln'>209</a></td><td><span class="ct"> * Block '&lt;S11&gt;/UnitDelay1' : Unused code path elimination</span></td></tr>
-<tr name="210" id="210">
-<td><a id="l210" class='ln'>210</a></td><td><span class="ct"> * Block '&lt;S11&gt;/UnitDelay2' : Unused code path elimination</span></td></tr>
-<tr name="211" id="211">
-<td><a id="l211" class='ln'>211</a></td><td><span class="ct"> * Block '&lt;S11&gt;/UnitDelay3' : Unused code path elimination</span></td></tr>
-<tr name="212" id="212">
-<td><a id="l212" class='ln'>212</a></td><td><span class="ct"> * Block '&lt;S11&gt;/UnitDelay4' : Unused code path elimination</span></td></tr>
-<tr name="213" id="213">
-<td><a id="l213" class='ln'>213</a></td><td><span class="ct"> * Block '&lt;S11&gt;/UnitDelay5' : Unused code path elimination</span></td></tr>
-<tr name="214" id="214">
-<td><a id="l214" class='ln'>214</a></td><td><span class="ct"> * Block '&lt;S11&gt;/cf_speedCoef' : Unused code path elimination</span></td></tr>
-<tr name="215" id="215">
-<td><a id="l215" class='ln'>215</a></td><td><span class="ct"> * Block '&lt;S11&gt;/dz_cntTrnsDet' : Unused code path elimination</span></td></tr>
-<tr name="216" id="216">
-<td><a id="l216" class='ln'>216</a></td><td><span class="ct"> * Block '&lt;S11&gt;/g_Ha' : Unused code path elimination</span></td></tr>
-<tr name="217" id="217">
-<td><a id="l217" class='ln'>217</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Relational Operator2' : Unused code path elimination</span></td></tr>
-<tr name="218" id="218">
-<td><a id="l218" class='ln'>218</a></td><td><span class="ct"> * Block '&lt;S10&gt;/Switch2' : Unused code path elimination</span></td></tr>
-<tr name="219" id="219">
-<td><a id="l219" class='ln'>219</a></td><td><span class="ct"> * Block '&lt;S10&gt;/UnitDelay4' : Unused code path elimination</span></td></tr>
-<tr name="220" id="220">
-<td><a id="l220" class='ln'>220</a></td><td><span class="ct"> * Block '&lt;S10&gt;/b_angleMeasEna' : Unused code path elimination</span></td></tr>
-<tr name="221" id="221">
-<td><a id="l221" class='ln'>221</a></td><td><span class="ct"> * Block '&lt;S10&gt;/n_commDeacv' : Unused code path elimination</span></td></tr>
-<tr name="222" id="222">
-<td><a id="l222" class='ln'>222</a></td><td><span class="ct"> * Block '&lt;S10&gt;/z_maxCntRst' : Unused code path elimination</span></td></tr>
-<tr name="223" id="223">
-<td><a id="l223" class='ln'>223</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="224" id="224">
-<td><a id="l224" class='ln'>224</a></td><td></td></tr>
-<tr name="225" id="225">
-<td><a id="l225" class='ln'>225</a></td><td><span class="ct">/*-</span></td></tr>
-<tr name="226" id="226">
-<td><a id="l226" class='ln'>226</a></td><td><span class="ct"> * The generated code includes comments that allow you to trace directly</span></td></tr>
-<tr name="227" id="227">
-<td><a id="l227" class='ln'>227</a></td><td><span class="ct"> * back to the appropriate location in the model.  The basic format</span></td></tr>
-<tr name="228" id="228">
-<td><a id="l228" class='ln'>228</a></td><td><span class="ct"> * is &lt;system&gt;/block_name, where system is the system number (uniquely</span></td></tr>
-<tr name="229" id="229">
-<td><a id="l229" class='ln'>229</a></td><td><span class="ct"> * assigned by Simulink) and block_name is the name of the block.</span></td></tr>
-<tr name="230" id="230">
-<td><a id="l230" class='ln'>230</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="231" id="231">
-<td><a id="l231" class='ln'>231</a></td><td><span class="ct"> * Note that this particular code originates from a subsystem build,</span></td></tr>
-<tr name="232" id="232">
-<td><a id="l232" class='ln'>232</a></td><td><span class="ct"> * and has its own system numbers different from the parent model.</span></td></tr>
-<tr name="233" id="233">
-<td><a id="l233" class='ln'>233</a></td><td><span class="ct"> * Refer to the system hierarchy for this subsystem below, and use the</span></td></tr>
-<tr name="234" id="234">
-<td><a id="l234" class='ln'>234</a></td><td><span class="ct"> * MATLAB hilite_system command to trace the generated code back</span></td></tr>
-<tr name="235" id="235">
-<td><a id="l235" class='ln'>235</a></td><td><span class="ct"> * to the parent model.  For example,</span></td></tr>
-<tr name="236" id="236">
-<td><a id="l236" class='ln'>236</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="237" id="237">
-<td><a id="l237" class='ln'>237</a></td><td><span class="ct"> * hilite_system('MotorController_FOC/PMSM_Controller')    - opens subsystem MotorController_FOC/PMSM_Controller</span></td></tr>
-<tr name="238" id="238">
-<td><a id="l238" class='ln'>238</a></td><td><span class="ct"> * hilite_system('MotorController_FOC/PMSM_Controller/Kp') - opens and selects block Kp</span></td></tr>
-<tr name="239" id="239">
-<td><a id="l239" class='ln'>239</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="240" id="240">
-<td><a id="l240" class='ln'>240</a></td><td><span class="ct"> * Here is the system hierarchy for this model</span></td></tr>
-<tr name="241" id="241">
-<td><a id="l241" class='ln'>241</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="242" id="242">
-<td><a id="l242" class='ln'>242</a></td><td><span class="ct"> * '&lt;Root&gt;' : 'MotorController_FOC'</span></td></tr>
-<tr name="243" id="243">
-<td><a id="l243" class='ln'>243</a></td><td><span class="ct"> * '&lt;S1&gt;'   : 'MotorController_FOC/PMSM_Controller'</span></td></tr>
-<tr name="244" id="244">
-<td><a id="l244" class='ln'>244</a></td><td><span class="ct"> * '&lt;S2&gt;'   : 'MotorController_FOC/PMSM_Controller/Electrical_Angle_Estimation'</span></td></tr>
-<tr name="245" id="245">
-<td><a id="l245" class='ln'>245</a></td><td><span class="ct"> * '&lt;S3&gt;'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation'</span></td></tr>
-<tr name="246" id="246">
-<td><a id="l246" class='ln'>246</a></td><td><span class="ct"> * '&lt;S4&gt;'   : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled'</span></td></tr>
-<tr name="247" id="247">
-<td><a id="l247" class='ln'>247</a></td><td><span class="ct"> * '&lt;S5&gt;'   : 'MotorController_FOC/PMSM_Controller/controller'</span></td></tr>
-<tr name="248" id="248">
-<td><a id="l248" class='ln'>248</a></td><td><span class="ct"> * '&lt;S6&gt;'   : 'MotorController_FOC/PMSM_Controller/Electrical_Angle_Estimation/degree_rad'</span></td></tr>
-<tr name="249" id="249">
-<td><a id="l249" class='ln'>249</a></td><td><span class="ct"> * '&lt;S7&gt;'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Direction_Detection'</span></td></tr>
-<tr name="250" id="250">
-<td><a id="l250" class='ln'>250</a></td><td><span class="ct"> * '&lt;S8&gt;'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Edge_Detect'</span></td></tr>
-<tr name="251" id="251">
-<td><a id="l251" class='ln'>251</a></td><td><span class="ct"> * '&lt;S9&gt;'   : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Hall_Angle_Raw'</span></td></tr>
-<tr name="252" id="252">
-<td><a id="l252" class='ln'>252</a></td><td><span class="ct"> * '&lt;S10&gt;'  : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Speed_Estimation'</span></td></tr>
-<tr name="253" id="253">
-<td><a id="l253" class='ln'>253</a></td><td><span class="ct"> * '&lt;S11&gt;'  : 'MotorController_FOC/PMSM_Controller/Electrical_Speed_Estimation/Speed_Estimation/Raw_Motor_Speed_Estimation'</span></td></tr>
-<tr name="254" id="254">
-<td><a id="l254" class='ln'>254</a></td><td><span class="ct"> * '&lt;S12&gt;'  : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled/Field_Weakening'</span></td></tr>
-<tr name="255" id="255">
-<td><a id="l255" class='ln'>255</a></td><td><span class="ct"> * '&lt;S13&gt;'  : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled/Field_Weakening/Saturation Dynamic'</span></td></tr>
-<tr name="256" id="256">
-<td><a id="l256" class='ln'>256</a></td><td><span class="ct"> * '&lt;S14&gt;'  : 'MotorController_FOC/PMSM_Controller/Field_Weakening_Enabled/Field_Weakening/Saturation Dynamic1'</span></td></tr>
-<tr name="257" id="257">
-<td><a id="l257" class='ln'>257</a></td><td><span class="ct"> * '&lt;S15&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward'</span></td></tr>
-<tr name="258" id="258">
-<td><a id="l258" class='ln'>258</a></td><td><span class="ct"> * '&lt;S16&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC'</span></td></tr>
-<tr name="259" id="259">
-<td><a id="l259" class='ln'>259</a></td><td><span class="ct"> * '&lt;S17&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/Motor_Limitations_Enabled'</span></td></tr>
-<tr name="260" id="260">
-<td><a id="l260" class='ln'>260</a></td><td><span class="ct"> * '&lt;S18&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/Park_Transform_Inverse'</span></td></tr>
-<tr name="261" id="261">
-<td><a id="l261" class='ln'>261</a></td><td><span class="ct"> * '&lt;S19&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/SVM'</span></td></tr>
-<tr name="262" id="262">
-<td><a id="l262" class='ln'>262</a></td><td><span class="ct"> * '&lt;S20&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/Clarke'</span></td></tr>
-<tr name="263" id="263">
-<td><a id="l263" class='ln'>263</a></td><td><span class="ct"> * '&lt;S21&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/LowPassFilter'</span></td></tr>
-<tr name="264" id="264">
-<td><a id="l264" class='ln'>264</a></td><td><span class="ct"> * '&lt;S22&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/Park'</span></td></tr>
-<tr name="265" id="265">
-<td><a id="l265" class='ln'>265</a></td><td><span class="ct"> * '&lt;S23&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/Clarke_Park_Transform_Forward/Sine_Cosine_Approximation'</span></td></tr>
-<tr name="266" id="266">
-<td><a id="l266" class='ln'>266</a></td><td><span class="ct"> * '&lt;S24&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id'</span></td></tr>
-<tr name="267" id="267">
-<td><a id="l267" class='ln'>267</a></td><td><span class="ct"> * '&lt;S25&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq'</span></td></tr>
-<tr name="268" id="268">
-<td><a id="l268" class='ln'>268</a></td><td><span class="ct"> * '&lt;S26&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed'</span></td></tr>
-<tr name="269" id="269">
-<td><a id="l269" class='ln'>269</a></td><td><span class="ct"> * '&lt;S27&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup'</span></td></tr>
-<tr name="270" id="270">
-<td><a id="l270" class='ln'>270</a></td><td><span class="ct"> * '&lt;S28&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/D Gain'</span></td></tr>
-<tr name="271" id="271">
-<td><a id="l271" class='ln'>271</a></td><td><span class="ct"> * '&lt;S29&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter'</span></td></tr>
-<tr name="272" id="272">
-<td><a id="l272" class='ln'>272</a></td><td><span class="ct"> * '&lt;S30&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter ICs'</span></td></tr>
-<tr name="273" id="273">
-<td><a id="l273" class='ln'>273</a></td><td><span class="ct"> * '&lt;S31&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/I Gain'</span></td></tr>
-<tr name="274" id="274">
-<td><a id="l274" class='ln'>274</a></td><td><span class="ct"> * '&lt;S32&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain'</span></td></tr>
-<tr name="275" id="275">
-<td><a id="l275" class='ln'>275</a></td><td><span class="ct"> * '&lt;S33&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain Fdbk'</span></td></tr>
-<tr name="276" id="276">
-<td><a id="l276" class='ln'>276</a></td><td><span class="ct"> * '&lt;S34&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator'</span></td></tr>
-<tr name="277" id="277">
-<td><a id="l277" class='ln'>277</a></td><td><span class="ct"> * '&lt;S35&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator ICs'</span></td></tr>
-<tr name="278" id="278">
-<td><a id="l278" class='ln'>278</a></td><td><span class="ct"> * '&lt;S36&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Copy'</span></td></tr>
-<tr name="279" id="279">
-<td><a id="l279" class='ln'>279</a></td><td><span class="ct"> * '&lt;S37&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Gain'</span></td></tr>
-<tr name="280" id="280">
-<td><a id="l280" class='ln'>280</a></td><td><span class="ct"> * '&lt;S38&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/P Copy'</span></td></tr>
-<tr name="281" id="281">
-<td><a id="l281" class='ln'>281</a></td><td><span class="ct"> * '&lt;S39&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Parallel P Gain'</span></td></tr>
-<tr name="282" id="282">
-<td><a id="l282" class='ln'>282</a></td><td><span class="ct"> * '&lt;S40&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Reset Signal'</span></td></tr>
-<tr name="283" id="283">
-<td><a id="l283" class='ln'>283</a></td><td><span class="ct"> * '&lt;S41&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation'</span></td></tr>
-<tr name="284" id="284">
-<td><a id="l284" class='ln'>284</a></td><td><span class="ct"> * '&lt;S42&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation Fdbk'</span></td></tr>
-<tr name="285" id="285">
-<td><a id="l285" class='ln'>285</a></td><td><span class="ct"> * '&lt;S43&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum'</span></td></tr>
-<tr name="286" id="286">
-<td><a id="l286" class='ln'>286</a></td><td><span class="ct"> * '&lt;S44&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum Fdbk'</span></td></tr>
-<tr name="287" id="287">
-<td><a id="l287" class='ln'>287</a></td><td><span class="ct"> * '&lt;S45&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode'</span></td></tr>
-<tr name="288" id="288">
-<td><a id="l288" class='ln'>288</a></td><td><span class="ct"> * '&lt;S46&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode Sum'</span></td></tr>
-<tr name="289" id="289">
-<td><a id="l289" class='ln'>289</a></td><td><span class="ct"> * '&lt;S47&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Integral'</span></td></tr>
-<tr name="290" id="290">
-<td><a id="l290" class='ln'>290</a></td><td><span class="ct"> * '&lt;S48&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Ngain'</span></td></tr>
-<tr name="291" id="291">
-<td><a id="l291" class='ln'>291</a></td><td><span class="ct"> * '&lt;S49&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/postSat Signal'</span></td></tr>
-<tr name="292" id="292">
-<td><a id="l292" class='ln'>292</a></td><td><span class="ct"> * '&lt;S50&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/preSat Signal'</span></td></tr>
-<tr name="293" id="293">
-<td><a id="l293" class='ln'>293</a></td><td><span class="ct"> * '&lt;S51&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup/Disc. Clamping Parallel'</span></td></tr>
-<tr name="294" id="294">
-<td><a id="l294" class='ln'>294</a></td><td><span class="ct"> * '&lt;S52&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup/Disc. Clamping Parallel/Dead Zone'</span></td></tr>
-<tr name="295" id="295">
-<td><a id="l295" class='ln'>295</a></td><td><span class="ct"> * '&lt;S53&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Anti-windup/Disc. Clamping Parallel/Dead Zone/Enabled'</span></td></tr>
-<tr name="296" id="296">
-<td><a id="l296" class='ln'>296</a></td><td><span class="ct"> * '&lt;S54&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/D Gain/Disabled'</span></td></tr>
-<tr name="297" id="297">
-<td><a id="l297" class='ln'>297</a></td><td><span class="ct"> * '&lt;S55&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter/Disabled'</span></td></tr>
-<tr name="298" id="298">
-<td><a id="l298" class='ln'>298</a></td><td><span class="ct"> * '&lt;S56&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Filter ICs/Disabled'</span></td></tr>
-<tr name="299" id="299">
-<td><a id="l299" class='ln'>299</a></td><td><span class="ct"> * '&lt;S57&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/I Gain/Internal Parameters'</span></td></tr>
-<tr name="300" id="300">
-<td><a id="l300" class='ln'>300</a></td><td><span class="ct"> * '&lt;S58&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain/Passthrough'</span></td></tr>
-<tr name="301" id="301">
-<td><a id="l301" class='ln'>301</a></td><td><span class="ct"> * '&lt;S59&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Ideal P Gain Fdbk/Disabled'</span></td></tr>
-<tr name="302" id="302">
-<td><a id="l302" class='ln'>302</a></td><td><span class="ct"> * '&lt;S60&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator/Discrete'</span></td></tr>
-<tr name="303" id="303">
-<td><a id="l303" class='ln'>303</a></td><td><span class="ct"> * '&lt;S61&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Integrator ICs/Internal IC'</span></td></tr>
-<tr name="304" id="304">
-<td><a id="l304" class='ln'>304</a></td><td><span class="ct"> * '&lt;S62&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Copy/Disabled wSignal Specification'</span></td></tr>
-<tr name="305" id="305">
-<td><a id="l305" class='ln'>305</a></td><td><span class="ct"> * '&lt;S63&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/N Gain/Disabled'</span></td></tr>
-<tr name="306" id="306">
-<td><a id="l306" class='ln'>306</a></td><td><span class="ct"> * '&lt;S64&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/P Copy/Disabled'</span></td></tr>
-<tr name="307" id="307">
-<td><a id="l307" class='ln'>307</a></td><td><span class="ct"> * '&lt;S65&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Parallel P Gain/Internal Parameters'</span></td></tr>
-<tr name="308" id="308">
-<td><a id="l308" class='ln'>308</a></td><td><span class="ct"> * '&lt;S66&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Reset Signal/Disabled'</span></td></tr>
-<tr name="309" id="309">
-<td><a id="l309" class='ln'>309</a></td><td><span class="ct"> * '&lt;S67&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation/Enabled'</span></td></tr>
-<tr name="310" id="310">
-<td><a id="l310" class='ln'>310</a></td><td><span class="ct"> * '&lt;S68&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Saturation Fdbk/Disabled'</span></td></tr>
-<tr name="311" id="311">
-<td><a id="l311" class='ln'>311</a></td><td><span class="ct"> * '&lt;S69&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum/Sum_PI'</span></td></tr>
-<tr name="312" id="312">
-<td><a id="l312" class='ln'>312</a></td><td><span class="ct"> * '&lt;S70&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Sum Fdbk/Disabled'</span></td></tr>
-<tr name="313" id="313">
-<td><a id="l313" class='ln'>313</a></td><td><span class="ct"> * '&lt;S71&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode/Disabled'</span></td></tr>
-<tr name="314" id="314">
-<td><a id="l314" class='ln'>314</a></td><td><span class="ct"> * '&lt;S72&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tracking Mode Sum/Passthrough'</span></td></tr>
-<tr name="315" id="315">
-<td><a id="l315" class='ln'>315</a></td><td><span class="ct"> * '&lt;S73&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Integral/Passthrough'</span></td></tr>
-<tr name="316" id="316">
-<td><a id="l316" class='ln'>316</a></td><td><span class="ct"> * '&lt;S74&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/Tsamp - Ngain/Passthrough'</span></td></tr>
-<tr name="317" id="317">
-<td><a id="l317" class='ln'>317</a></td><td><span class="ct"> * '&lt;S75&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/postSat Signal/Forward_Path'</span></td></tr>
-<tr name="318" id="318">
-<td><a id="l318" class='ln'>318</a></td><td><span class="ct"> * '&lt;S76&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Id/preSat Signal/Forward_Path'</span></td></tr>
-<tr name="319" id="319">
-<td><a id="l319" class='ln'>319</a></td><td><span class="ct"> * '&lt;S77&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup'</span></td></tr>
-<tr name="320" id="320">
-<td><a id="l320" class='ln'>320</a></td><td><span class="ct"> * '&lt;S78&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/D Gain'</span></td></tr>
-<tr name="321" id="321">
-<td><a id="l321" class='ln'>321</a></td><td><span class="ct"> * '&lt;S79&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter'</span></td></tr>
-<tr name="322" id="322">
-<td><a id="l322" class='ln'>322</a></td><td><span class="ct"> * '&lt;S80&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter ICs'</span></td></tr>
-<tr name="323" id="323">
-<td><a id="l323" class='ln'>323</a></td><td><span class="ct"> * '&lt;S81&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/I Gain'</span></td></tr>
-<tr name="324" id="324">
-<td><a id="l324" class='ln'>324</a></td><td><span class="ct"> * '&lt;S82&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain'</span></td></tr>
-<tr name="325" id="325">
-<td><a id="l325" class='ln'>325</a></td><td><span class="ct"> * '&lt;S83&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain Fdbk'</span></td></tr>
-<tr name="326" id="326">
-<td><a id="l326" class='ln'>326</a></td><td><span class="ct"> * '&lt;S84&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator'</span></td></tr>
-<tr name="327" id="327">
-<td><a id="l327" class='ln'>327</a></td><td><span class="ct"> * '&lt;S85&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator ICs'</span></td></tr>
-<tr name="328" id="328">
-<td><a id="l328" class='ln'>328</a></td><td><span class="ct"> * '&lt;S86&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Copy'</span></td></tr>
-<tr name="329" id="329">
-<td><a id="l329" class='ln'>329</a></td><td><span class="ct"> * '&lt;S87&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Gain'</span></td></tr>
-<tr name="330" id="330">
-<td><a id="l330" class='ln'>330</a></td><td><span class="ct"> * '&lt;S88&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/P Copy'</span></td></tr>
-<tr name="331" id="331">
-<td><a id="l331" class='ln'>331</a></td><td><span class="ct"> * '&lt;S89&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Parallel P Gain'</span></td></tr>
-<tr name="332" id="332">
-<td><a id="l332" class='ln'>332</a></td><td><span class="ct"> * '&lt;S90&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Reset Signal'</span></td></tr>
-<tr name="333" id="333">
-<td><a id="l333" class='ln'>333</a></td><td><span class="ct"> * '&lt;S91&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation'</span></td></tr>
-<tr name="334" id="334">
-<td><a id="l334" class='ln'>334</a></td><td><span class="ct"> * '&lt;S92&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation Fdbk'</span></td></tr>
-<tr name="335" id="335">
-<td><a id="l335" class='ln'>335</a></td><td><span class="ct"> * '&lt;S93&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum'</span></td></tr>
-<tr name="336" id="336">
-<td><a id="l336" class='ln'>336</a></td><td><span class="ct"> * '&lt;S94&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum Fdbk'</span></td></tr>
-<tr name="337" id="337">
-<td><a id="l337" class='ln'>337</a></td><td><span class="ct"> * '&lt;S95&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode'</span></td></tr>
-<tr name="338" id="338">
-<td><a id="l338" class='ln'>338</a></td><td><span class="ct"> * '&lt;S96&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode Sum'</span></td></tr>
-<tr name="339" id="339">
-<td><a id="l339" class='ln'>339</a></td><td><span class="ct"> * '&lt;S97&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Integral'</span></td></tr>
-<tr name="340" id="340">
-<td><a id="l340" class='ln'>340</a></td><td><span class="ct"> * '&lt;S98&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Ngain'</span></td></tr>
-<tr name="341" id="341">
-<td><a id="l341" class='ln'>341</a></td><td><span class="ct"> * '&lt;S99&gt;'  : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/postSat Signal'</span></td></tr>
-<tr name="342" id="342">
-<td><a id="l342" class='ln'>342</a></td><td><span class="ct"> * '&lt;S100&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/preSat Signal'</span></td></tr>
-<tr name="343" id="343">
-<td><a id="l343" class='ln'>343</a></td><td><span class="ct"> * '&lt;S101&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup/Disc. Clamping Parallel'</span></td></tr>
-<tr name="344" id="344">
-<td><a id="l344" class='ln'>344</a></td><td><span class="ct"> * '&lt;S102&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup/Disc. Clamping Parallel/Dead Zone'</span></td></tr>
-<tr name="345" id="345">
-<td><a id="l345" class='ln'>345</a></td><td><span class="ct"> * '&lt;S103&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Anti-windup/Disc. Clamping Parallel/Dead Zone/Enabled'</span></td></tr>
-<tr name="346" id="346">
-<td><a id="l346" class='ln'>346</a></td><td><span class="ct"> * '&lt;S104&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/D Gain/Disabled'</span></td></tr>
-<tr name="347" id="347">
-<td><a id="l347" class='ln'>347</a></td><td><span class="ct"> * '&lt;S105&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter/Disabled'</span></td></tr>
-<tr name="348" id="348">
-<td><a id="l348" class='ln'>348</a></td><td><span class="ct"> * '&lt;S106&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Filter ICs/Disabled'</span></td></tr>
-<tr name="349" id="349">
-<td><a id="l349" class='ln'>349</a></td><td><span class="ct"> * '&lt;S107&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/I Gain/Internal Parameters'</span></td></tr>
-<tr name="350" id="350">
-<td><a id="l350" class='ln'>350</a></td><td><span class="ct"> * '&lt;S108&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain/Passthrough'</span></td></tr>
-<tr name="351" id="351">
-<td><a id="l351" class='ln'>351</a></td><td><span class="ct"> * '&lt;S109&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Ideal P Gain Fdbk/Disabled'</span></td></tr>
-<tr name="352" id="352">
-<td><a id="l352" class='ln'>352</a></td><td><span class="ct"> * '&lt;S110&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator/Discrete'</span></td></tr>
-<tr name="353" id="353">
-<td><a id="l353" class='ln'>353</a></td><td><span class="ct"> * '&lt;S111&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Integrator ICs/Internal IC'</span></td></tr>
-<tr name="354" id="354">
-<td><a id="l354" class='ln'>354</a></td><td><span class="ct"> * '&lt;S112&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Copy/Disabled wSignal Specification'</span></td></tr>
-<tr name="355" id="355">
-<td><a id="l355" class='ln'>355</a></td><td><span class="ct"> * '&lt;S113&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/N Gain/Disabled'</span></td></tr>
-<tr name="356" id="356">
-<td><a id="l356" class='ln'>356</a></td><td><span class="ct"> * '&lt;S114&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/P Copy/Disabled'</span></td></tr>
-<tr name="357" id="357">
-<td><a id="l357" class='ln'>357</a></td><td><span class="ct"> * '&lt;S115&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Parallel P Gain/Internal Parameters'</span></td></tr>
-<tr name="358" id="358">
-<td><a id="l358" class='ln'>358</a></td><td><span class="ct"> * '&lt;S116&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Reset Signal/Disabled'</span></td></tr>
-<tr name="359" id="359">
-<td><a id="l359" class='ln'>359</a></td><td><span class="ct"> * '&lt;S117&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation/Enabled'</span></td></tr>
-<tr name="360" id="360">
-<td><a id="l360" class='ln'>360</a></td><td><span class="ct"> * '&lt;S118&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Saturation Fdbk/Disabled'</span></td></tr>
-<tr name="361" id="361">
-<td><a id="l361" class='ln'>361</a></td><td><span class="ct"> * '&lt;S119&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum/Sum_PI'</span></td></tr>
-<tr name="362" id="362">
-<td><a id="l362" class='ln'>362</a></td><td><span class="ct"> * '&lt;S120&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Sum Fdbk/Disabled'</span></td></tr>
-<tr name="363" id="363">
-<td><a id="l363" class='ln'>363</a></td><td><span class="ct"> * '&lt;S121&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode/Disabled'</span></td></tr>
-<tr name="364" id="364">
-<td><a id="l364" class='ln'>364</a></td><td><span class="ct"> * '&lt;S122&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tracking Mode Sum/Passthrough'</span></td></tr>
-<tr name="365" id="365">
-<td><a id="l365" class='ln'>365</a></td><td><span class="ct"> * '&lt;S123&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Integral/Passthrough'</span></td></tr>
-<tr name="366" id="366">
-<td><a id="l366" class='ln'>366</a></td><td><span class="ct"> * '&lt;S124&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/Tsamp - Ngain/Passthrough'</span></td></tr>
-<tr name="367" id="367">
-<td><a id="l367" class='ln'>367</a></td><td><span class="ct"> * '&lt;S125&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/postSat Signal/Forward_Path'</span></td></tr>
-<tr name="368" id="368">
-<td><a id="l368" class='ln'>368</a></td><td><span class="ct"> * '&lt;S126&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Iq/preSat Signal/Forward_Path'</span></td></tr>
-<tr name="369" id="369">
-<td><a id="l369" class='ln'>369</a></td><td><span class="ct"> * '&lt;S127&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup'</span></td></tr>
-<tr name="370" id="370">
-<td><a id="l370" class='ln'>370</a></td><td><span class="ct"> * '&lt;S128&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/D Gain'</span></td></tr>
-<tr name="371" id="371">
-<td><a id="l371" class='ln'>371</a></td><td><span class="ct"> * '&lt;S129&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter'</span></td></tr>
-<tr name="372" id="372">
-<td><a id="l372" class='ln'>372</a></td><td><span class="ct"> * '&lt;S130&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter ICs'</span></td></tr>
-<tr name="373" id="373">
-<td><a id="l373" class='ln'>373</a></td><td><span class="ct"> * '&lt;S131&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/I Gain'</span></td></tr>
-<tr name="374" id="374">
-<td><a id="l374" class='ln'>374</a></td><td><span class="ct"> * '&lt;S132&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain'</span></td></tr>
-<tr name="375" id="375">
-<td><a id="l375" class='ln'>375</a></td><td><span class="ct"> * '&lt;S133&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain Fdbk'</span></td></tr>
-<tr name="376" id="376">
-<td><a id="l376" class='ln'>376</a></td><td><span class="ct"> * '&lt;S134&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator'</span></td></tr>
-<tr name="377" id="377">
-<td><a id="l377" class='ln'>377</a></td><td><span class="ct"> * '&lt;S135&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator ICs'</span></td></tr>
-<tr name="378" id="378">
-<td><a id="l378" class='ln'>378</a></td><td><span class="ct"> * '&lt;S136&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Copy'</span></td></tr>
-<tr name="379" id="379">
-<td><a id="l379" class='ln'>379</a></td><td><span class="ct"> * '&lt;S137&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Gain'</span></td></tr>
-<tr name="380" id="380">
-<td><a id="l380" class='ln'>380</a></td><td><span class="ct"> * '&lt;S138&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/P Copy'</span></td></tr>
-<tr name="381" id="381">
-<td><a id="l381" class='ln'>381</a></td><td><span class="ct"> * '&lt;S139&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Parallel P Gain'</span></td></tr>
-<tr name="382" id="382">
-<td><a id="l382" class='ln'>382</a></td><td><span class="ct"> * '&lt;S140&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Reset Signal'</span></td></tr>
-<tr name="383" id="383">
-<td><a id="l383" class='ln'>383</a></td><td><span class="ct"> * '&lt;S141&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation'</span></td></tr>
-<tr name="384" id="384">
-<td><a id="l384" class='ln'>384</a></td><td><span class="ct"> * '&lt;S142&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation Fdbk'</span></td></tr>
-<tr name="385" id="385">
-<td><a id="l385" class='ln'>385</a></td><td><span class="ct"> * '&lt;S143&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum'</span></td></tr>
-<tr name="386" id="386">
-<td><a id="l386" class='ln'>386</a></td><td><span class="ct"> * '&lt;S144&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum Fdbk'</span></td></tr>
-<tr name="387" id="387">
-<td><a id="l387" class='ln'>387</a></td><td><span class="ct"> * '&lt;S145&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode'</span></td></tr>
-<tr name="388" id="388">
-<td><a id="l388" class='ln'>388</a></td><td><span class="ct"> * '&lt;S146&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode Sum'</span></td></tr>
-<tr name="389" id="389">
-<td><a id="l389" class='ln'>389</a></td><td><span class="ct"> * '&lt;S147&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Integral'</span></td></tr>
-<tr name="390" id="390">
-<td><a id="l390" class='ln'>390</a></td><td><span class="ct"> * '&lt;S148&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Ngain'</span></td></tr>
-<tr name="391" id="391">
-<td><a id="l391" class='ln'>391</a></td><td><span class="ct"> * '&lt;S149&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/postSat Signal'</span></td></tr>
-<tr name="392" id="392">
-<td><a id="l392" class='ln'>392</a></td><td><span class="ct"> * '&lt;S150&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/preSat Signal'</span></td></tr>
-<tr name="393" id="393">
-<td><a id="l393" class='ln'>393</a></td><td><span class="ct"> * '&lt;S151&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup/Disc. Clamping Parallel'</span></td></tr>
-<tr name="394" id="394">
-<td><a id="l394" class='ln'>394</a></td><td><span class="ct"> * '&lt;S152&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup/Disc. Clamping Parallel/Dead Zone'</span></td></tr>
-<tr name="395" id="395">
-<td><a id="l395" class='ln'>395</a></td><td><span class="ct"> * '&lt;S153&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Anti-windup/Disc. Clamping Parallel/Dead Zone/Enabled'</span></td></tr>
-<tr name="396" id="396">
-<td><a id="l396" class='ln'>396</a></td><td><span class="ct"> * '&lt;S154&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/D Gain/Disabled'</span></td></tr>
-<tr name="397" id="397">
-<td><a id="l397" class='ln'>397</a></td><td><span class="ct"> * '&lt;S155&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter/Disabled'</span></td></tr>
-<tr name="398" id="398">
-<td><a id="l398" class='ln'>398</a></td><td><span class="ct"> * '&lt;S156&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Filter ICs/Disabled'</span></td></tr>
-<tr name="399" id="399">
-<td><a id="l399" class='ln'>399</a></td><td><span class="ct"> * '&lt;S157&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/I Gain/Internal Parameters'</span></td></tr>
-<tr name="400" id="400">
-<td><a id="l400" class='ln'>400</a></td><td><span class="ct"> * '&lt;S158&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain/Passthrough'</span></td></tr>
-<tr name="401" id="401">
-<td><a id="l401" class='ln'>401</a></td><td><span class="ct"> * '&lt;S159&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Ideal P Gain Fdbk/Disabled'</span></td></tr>
-<tr name="402" id="402">
-<td><a id="l402" class='ln'>402</a></td><td><span class="ct"> * '&lt;S160&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator/Discrete'</span></td></tr>
-<tr name="403" id="403">
-<td><a id="l403" class='ln'>403</a></td><td><span class="ct"> * '&lt;S161&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Integrator ICs/Internal IC'</span></td></tr>
-<tr name="404" id="404">
-<td><a id="l404" class='ln'>404</a></td><td><span class="ct"> * '&lt;S162&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Copy/Disabled wSignal Specification'</span></td></tr>
-<tr name="405" id="405">
-<td><a id="l405" class='ln'>405</a></td><td><span class="ct"> * '&lt;S163&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/N Gain/Disabled'</span></td></tr>
-<tr name="406" id="406">
-<td><a id="l406" class='ln'>406</a></td><td><span class="ct"> * '&lt;S164&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/P Copy/Disabled'</span></td></tr>
-<tr name="407" id="407">
-<td><a id="l407" class='ln'>407</a></td><td><span class="ct"> * '&lt;S165&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Parallel P Gain/Internal Parameters'</span></td></tr>
-<tr name="408" id="408">
-<td><a id="l408" class='ln'>408</a></td><td><span class="ct"> * '&lt;S166&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Reset Signal/Disabled'</span></td></tr>
-<tr name="409" id="409">
-<td><a id="l409" class='ln'>409</a></td><td><span class="ct"> * '&lt;S167&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation/Enabled'</span></td></tr>
-<tr name="410" id="410">
-<td><a id="l410" class='ln'>410</a></td><td><span class="ct"> * '&lt;S168&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Saturation Fdbk/Disabled'</span></td></tr>
-<tr name="411" id="411">
-<td><a id="l411" class='ln'>411</a></td><td><span class="ct"> * '&lt;S169&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum/Sum_PI'</span></td></tr>
-<tr name="412" id="412">
-<td><a id="l412" class='ln'>412</a></td><td><span class="ct"> * '&lt;S170&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Sum Fdbk/Disabled'</span></td></tr>
-<tr name="413" id="413">
-<td><a id="l413" class='ln'>413</a></td><td><span class="ct"> * '&lt;S171&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode/Disabled'</span></td></tr>
-<tr name="414" id="414">
-<td><a id="l414" class='ln'>414</a></td><td><span class="ct"> * '&lt;S172&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tracking Mode Sum/Passthrough'</span></td></tr>
-<tr name="415" id="415">
-<td><a id="l415" class='ln'>415</a></td><td><span class="ct"> * '&lt;S173&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Integral/Passthrough'</span></td></tr>
-<tr name="416" id="416">
-<td><a id="l416" class='ln'>416</a></td><td><span class="ct"> * '&lt;S174&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/Tsamp - Ngain/Passthrough'</span></td></tr>
-<tr name="417" id="417">
-<td><a id="l417" class='ln'>417</a></td><td><span class="ct"> * '&lt;S175&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/postSat Signal/Forward_Path'</span></td></tr>
-<tr name="418" id="418">
-<td><a id="l418" class='ln'>418</a></td><td><span class="ct"> * '&lt;S176&gt;' : 'MotorController_FOC/PMSM_Controller/controller/FOC/PI_Speed/preSat Signal/Forward_Path'</span></td></tr>
-<tr name="419" id="419">
-<td><a id="l419" class='ln'>419</a></td><td><span class="ct"> * '&lt;S177&gt;' : 'MotorController_FOC/PMSM_Controller/controller/SVM/SVPWM'</span></td></tr>
-<tr name="420" id="420">
-<td><a id="l420" class='ln'>420</a></td><td><span class="ct"> * '&lt;S178&gt;' : 'MotorController_FOC/PMSM_Controller/controller/SVM/Sample_Control'</span></td></tr>
-<tr name="421" id="421">
-<td><a id="l421" class='ln'>421</a></td><td><span class="ct"> * '&lt;S179&gt;' : 'MotorController_FOC/PMSM_Controller/controller/SVM/SVPWM/phase_time'</span></td></tr>
-<tr name="422" id="422">
-<td><a id="l422" class='ln'>422</a></td><td><span class="ct"> * '&lt;S180&gt;' : 'MotorController_FOC/PMSM_Controller/controller/SVM/SVPWM/sector_select'</span></td></tr>
-<tr name="423" id="423">
-<td><a id="l423" class='ln'>423</a></td><td><span class="ct"> * '&lt;S181&gt;' : 'MotorController_FOC/PMSM_Controller/controller/SVM/Sample_Control/Shunt_Three_Sample_Point'</span></td></tr>
-<tr name="424" id="424">
-<td><a id="l424" class='ln'>424</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="425" id="425">
-<td><a id="l425" class='ln'>425</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* RTW_HEADER_PMSM_Controller_h_ */</span></td></tr>
-<tr name="426" id="426">
-<td><a id="l426" class='ln'>426</a></td><td></td></tr>
-<tr name="427" id="427">
-<td><a id="l427" class='ln'>427</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="428" id="428">
-<td><a id="l428" class='ln'>428</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="429" id="429">
-<td><a id="l429" class='ln'>429</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="430" id="430">
-<td><a id="l430" class='ln'>430</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="431" id="431">
-<td><a id="l431" class='ln'>431</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="432" id="432">
-<td><a id="l432" class='ln'>432</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 878
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_interface.html

@@ -1,878 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><script language="JavaScript" type="text/javascript">function rtwTableShrink(o) {var t = o.nextSibling;if (t.nodeType != 1) {t = t.nextSibling;}if (t.style.display == "none") {t.style.display = "";o.innerHTML = "[-]"} else {t.style.display = "none";o.innerHTML = "[+] ... "}}</script><script language="JavaScript" type="text/javascript" src="rtwreport_utils.js"></script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>
-Code Interface Report for PMSM_Controller
-</title>
-
-</head>
-<body ONLOAD="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdCodeInterface'); else local_onload();}} catch(err) {};">
-<h1>
-Code Interface Report for PMSM_Controller
-</h1>
-<h3>
-Table of Contents
-</h3>
-<ul>
-<li>
-<a href="#sec_Entry-Point_Functions">
-Entry-Point Functions
-</a>
-
-</li>
-<li>
-<a href="#sec_Inports">
-Inports
-</a>
-
-</li>
-<li>
-<a href="#sec_Outports">
-Outports
-</a>
-
-</li>
-<li>
-<a href="#sec_Interface_Parameters">
-Interface Parameters
-</a>
-
-</li>
-<li>
-<a href="#sec_Data_Stores">
-Data Stores
-</a>
-
-</li>
-
-</ul>
-<h3>
-<a name="sec_Entry-Point_Functions">
-Entry-Point Functions
-</a>
-
-</h3>
-<p>
-Function: <a href="PMSM_Controller_c.html#fcn_PMSM_Controller_initialize">PMSM_Controller_initialize</a>
-</p>
-<table width="100%" class="AltRow" cellspacing="0">
-<tr class="even">
-<td width="25%" align="left" valign="top">
-Prototype
-</td>
-<td width="75%" align="left" valign="top">
-<b>
-void PMSM_Controller_initialize(RT_MODEL&nbsp;*const&nbsp;rtM)
-</b>
-
-</td>
-
-</tr>
-<tr class="odd">
-<td width="25%" align="left" valign="top">
-Description
-</td>
-<td width="75%" align="left" valign="top">
-Initialization entry point of generated code
-</td>
-
-</tr>
-<tr class="even">
-<td width="25%" align="left" valign="top">
-Timing
-</td>
-<td width="75%" align="left" valign="top">
-Must be called exactly once
-</td>
-
-</tr>
-<tr class="odd">
-<td width="25%" align="left" valign="top">
-Arguments
-</td>
-<td width="75%" align="left" valign="top">
-<table class="AltRow FirstColumn" cellspacing="0">
-<tr class="heading">
-<th align="left" valign="top">
-<b>
-#
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Name
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Data Type
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Description
-</b>
-
-</th>
-
-</tr>
-<tr class="even">
-<td align="right" valign="top">
-1
-</td>
-<td align="left" valign="top">
-rtM
-</td>
-<td align="left" valign="top">
-RT_MODEL&nbsp;*const
-</td>
-<td align="left" valign="top">
-RTModel
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-<tr class="even">
-<td width="25%" align="left" valign="top">
-Return value
-</td>
-<td width="75%" align="left" valign="top">
-None
-</td>
-
-</tr>
-<tr class="odd">
-<td width="25%" align="left" valign="top">
-Header file
-</td>
-<td width="75%" align="left" valign="top">
-<a href="PMSM_Controller_h.html">PMSM_Controller.h</a>
-</td>
-
-</tr>
-
-</table>
-<p>
-Function: <a href="PMSM_Controller_c.html#fcn_PMSM_Controller_step">PMSM_Controller_step</a>
-</p>
-<table width="100%" class="AltRow" cellspacing="0">
-<tr class="even">
-<td width="25%" align="left" valign="top">
-Prototype
-</td>
-<td width="75%" align="left" valign="top">
-<b>
-void PMSM_Controller_step(RT_MODEL&nbsp;*const&nbsp;rtM, int16_T rtU_Vdc, uint16_T rtU_Ts, int16_T rtU_adc_a, int16_T rtU_adc_b, real_T rtU_rotor_angle, int16_T rtU_rotor_speed, int16_T rtU_input_target, uint16_T rtY_pwm_counts[8], uint8_T&nbsp;*rtY_sector)
-</b>
-
-</td>
-
-</tr>
-<tr class="odd">
-<td width="25%" align="left" valign="top">
-Description
-</td>
-<td width="75%" align="left" valign="top">
-Output entry point of generated code
-</td>
-
-</tr>
-<tr class="even">
-<td width="25%" align="left" valign="top">
-Timing
-</td>
-<td width="75%" align="left" valign="top">
-Must be called periodically, every 6.2e-06 seconds
-</td>
-
-</tr>
-<tr class="odd">
-<td width="25%" align="left" valign="top">
-Arguments
-</td>
-<td width="75%" align="left" valign="top">
-<span title="Click to shrink or expand table" onclick="rtwTableShrink(this)">[-]</span><table class="AltRow FirstColumn" cellspacing="0">
-<tr class="heading">
-<th align="left" valign="top">
-<b>
-#
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Name
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Data Type
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Scaling
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Description
-</b>
-
-</th>
-
-</tr>
-<tr class="even">
-<td align="right" valign="top">
-1
-</td>
-<td align="left" valign="top">
-rtM
-</td>
-<td align="left" valign="top">
-RT_MODEL&nbsp;*const
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-RTModel
-</td>
-
-</tr>
-<tr class="odd">
-<td align="right" valign="top">
-2
-</td>
-<td align="left" valign="top">
-rtU_Vdc
-</td>
-<td align="left" valign="top">
-int16_T
-</td>
-<td align="left" valign="top">
-<span title="  DataTypeMode: Fixed-point: binary point scaling
-    Signedness: Signed
-    WordLength: 16
-FractionLength: 4
-">sfix16_En4</span>
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/Vdc
-</td>
-
-</tr>
-<tr class="even">
-<td align="right" valign="top">
-3
-</td>
-<td align="left" valign="top">
-rtU_Ts
-</td>
-<td align="left" valign="top">
-uint16_T
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/Ts
-</td>
-
-</tr>
-<tr class="odd">
-<td align="right" valign="top">
-4
-</td>
-<td align="left" valign="top">
-rtU_adc_a
-</td>
-<td align="left" valign="top">
-int16_T
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/adc_a
-</td>
-
-</tr>
-<tr class="even">
-<td align="right" valign="top">
-5
-</td>
-<td align="left" valign="top">
-rtU_adc_b
-</td>
-<td align="left" valign="top">
-int16_T
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/adc_b
-</td>
-
-</tr>
-<tr class="odd">
-<td align="right" valign="top">
-6
-</td>
-<td align="left" valign="top">
-rtU_rotor_angle
-</td>
-<td align="left" valign="top">
-real_T
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/rotor_angle
-</td>
-
-</tr>
-<tr class="even">
-<td align="right" valign="top">
-7
-</td>
-<td align="left" valign="top">
-rtU_rotor_speed
-</td>
-<td align="left" valign="top">
-int16_T
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/rotor_speed
-</td>
-
-</tr>
-<tr class="odd">
-<td align="right" valign="top">
-8
-</td>
-<td align="left" valign="top">
-rtU_input_target
-</td>
-<td align="left" valign="top">
-int16_T
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/input_target
-</td>
-
-</tr>
-<tr class="even">
-<td align="right" valign="top">
-9
-</td>
-<td align="left" valign="top">
-rtY_pwm_counts
-</td>
-<td align="left" valign="top">
-uint16_T
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/pwm_counts
-</td>
-
-</tr>
-<tr class="odd">
-<td align="right" valign="top">
-10
-</td>
-<td align="left" valign="top">
-rtY_sector
-</td>
-<td align="left" valign="top">
-uint8_T&nbsp;*
-</td>
-<td align="left" valign="top">
-&#160;
-</td>
-<td align="left" valign="top">
-&lt;S4&gt;/sector
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-<tr class="even">
-<td width="25%" align="left" valign="top">
-Return value
-</td>
-<td width="75%" align="left" valign="top">
-None
-</td>
-
-</tr>
-<tr class="odd">
-<td width="25%" align="left" valign="top">
-Header file
-</td>
-<td width="75%" align="left" valign="top">
-<a href="PMSM_Controller_h.html">PMSM_Controller.h</a>
-</td>
-
-</tr>
-
-</table>
-<h3>
-<a name="sec_Inports">
-Inports
-</a>
-
-</h3>
-<span title="Click to shrink or expand table" onclick="rtwTableShrink(this)">[-]</span><table width="100%" class="AltRow FirstColumn" cellspacing="0">
-<tr class="heading">
-<th width="38%" align="left" valign="top">
-<b>
-Block Name
-</b>
-
-</th>
-<th width="23%" align="left" valign="top">
-<b>
-Code Identifier
-</b>
-
-</th>
-<th width="19%" align="left" valign="top">
-<b>
-Data Type
-</b>
-
-</th>
-<th width="9%" align="left" valign="top">
-<b>
-Scaling
-</b>
-
-</th>
-<th width="9%" align="right" valign="top">
-<b>
-Dimension
-</b>
-
-</th>
-
-</tr>
-<tr class="even">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/Vdc
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-int16_T
-</td>
-<td width="9%" align="left" valign="top">
-<span title="  DataTypeMode: Fixed-point: binary point scaling
-    Signedness: Signed
-    WordLength: 16
-FractionLength: 4
-">sfix16_En4</span>
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="odd">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/Ts
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-uint16_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="even">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/adc_a
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-int16_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="odd">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/adc_b
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-int16_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="even">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/rotor_angle
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-real_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="odd">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/rotor_speed
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-int16_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="even">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/input_target
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-int16_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="odd">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/hall_a
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-uint8_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="even">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/hall_b
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-uint8_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="odd">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/hall_c
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-uint8_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="even">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/hw_count
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-uint32_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="odd">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/b_motor_enable
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-boolean_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="even">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/b_cruise_enable
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-boolean_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-<tr class="odd">
-<td width="38%" align="left" valign="top">
-&lt;S4&gt;/n_ctrl_type
-</td>
-<td width="23%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="19%" align="left" valign="top">
-uint8_T
-</td>
-<td width="9%" align="left" valign="top">
-&#160;
-</td>
-<td width="9%" align="right" valign="top">
-1
-</td>
-
-</tr>
-
-</table>
-<h3>
-<a name="sec_Outports">
-Outports
-</a>
-
-</h3>
-<table width="100%" class="AltRow FirstColumn" cellspacing="0">
-<tr class="heading">
-<th width="42%" align="left" valign="top">
-<b>
-Block Name
-</b>
-
-</th>
-<th width="26%" align="left" valign="top">
-<b>
-Code Identifier
-</b>
-
-</th>
-<th width="21%" align="left" valign="top">
-<b>
-Data Type
-</b>
-
-</th>
-<th width="10%" align="right" valign="top">
-<b>
-Dimension
-</b>
-
-</th>
-
-</tr>
-<tr class="even">
-<td width="42%" align="left" valign="top">
-&lt;S4&gt;/pwm_counts
-</td>
-<td width="26%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="21%" align="left" valign="top">
-uint16_T
-</td>
-<td width="10%" align="right" valign="top">
-[8]
-</td>
-
-</tr>
-<tr class="odd">
-<td width="42%" align="left" valign="top">
-&lt;S4&gt;/sector
-</td>
-<td width="26%" align="left" valign="top">
-<i>
-Defined externally
-</i>
-
-</td>
-<td width="21%" align="left" valign="top">
-uint8_T
-</td>
-<td width="10%" align="right" valign="top">
-1
-</td>
-
-</tr>
-
-</table>
-<h3>
-<a name="sec_Interface_Parameters">
-Interface Parameters
-</a>
-
-</h3>
-<p>
-No interface/tunable parameters in model.
-</p>
-<h3>
-<a name="sec_Data_Stores">
-Data Stores
-</a>
-
-</h3>
-<p>
-No data stores in the model; note that this report lists only data stores with non-auto storage class and global data stores
-</p>
-
-</body>
-
-</html>

+ 0 - 18
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_metrics.html

@@ -1,18 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><title>
-Static Code Metrics Report
-</title>
-
-</head>
-<body onload="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdCodeMetrics'); else local_onload();}} catch(err) {};">
-<h1>
-Static Code Metrics Report
-</h1>
-<div>
-
-</div>
-<img src="hilite_warning.png" />Static Code Metrics report is not generated. On the <b>Configuration Parameters &gt; Code Generation &gt; Report</b> pane, select <b>Generate static code metrics</b>.  On the model diagram window, select <b>Code &gt; C/C++ Code &gt; Code Generation Report &gt; Open Model Report</b> or rebuild the model.
-</body>
-
-</html>

+ 0 - 182
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_private_h.html

@@ -1,182 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: PMSM_Controller_private.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_PMSM_Controller_private_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_PMSM_Controller_private_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="pp">#include "rtwtypes.h"</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#ifndef</span> <a id="21c9" class="tk">UCHAR_MAX</a></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include &lt;limits.h&gt;</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="pp">#if</span> ( <a id="25c7" class="tk">UCHAR_MAX</a> <a id="25c17" class="tk">!=</a> (0xFFU) ) <a id="25c30" class="tk">||</a> ( <a id="25c35" class="tk">SCHAR_MAX</a> <a id="25c45" class="tk">!=</a> (0x7F) )</td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="pp">#error</span> <a id="26c8" class="tk">Code</a> <a id="26c13" class="tk">was</a> <a id="26c17" class="tk">generated</a> <span class="kw">for</span> <a id="26c31" class="tk">compiler</a> <a id="26c40" class="tk">with</a> <a id="26c45" class="tk">different</a> <a id="26c55" class="tk">sized</a> <a id="26c61" class="tk">uchar</a><a id="26c66" class="tk">/</a><span class="kw">char</span>. \</td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><a id="27c73" class="tk">Consider</a> <a id="27c82" class="tk">adjusting</a> <a id="27c92" class="tk">Test</a> <a id="27c97" class="tk">hardware</a> <a id="27c106" class="tk">word</a> <a id="27c111" class="tk">size</a> <a id="27c116" class="tk">settings</a> <a id="27c125" class="tk">on</a> <a id="27c128" class="tk">the</a> \</td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><a id="28c132" class="tk">Hardware</a> <a id="28c141" class="tk">Implementation</a> <a id="28c156" class="tk">pane</a> <a id="28c161" class="tk">to</a> <a id="28c164" class="tk">match</a> <a id="28c170" class="tk">your</a> <a id="28c175" class="tk">compiler</a> <a id="28c184" class="tk">word</a> <a id="28c189" class="tk">sizes</a> <a id="28c195" class="tk">as</a> \</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><a id="29c198" class="tk">defined</a> <a id="29c206" class="tk">in</a> <a id="29c209" class="tk">limits</a>.<a id="29c216" class="tk">h</a> <a id="29c218" class="tk">of</a> <a id="29c221" class="tk">the</a> <a id="29c225" class="tk">compiler</a>. <a id="29c235" class="tk">Alternatively</a>, <a id="29c250" class="tk">you</a> <a id="29c254" class="tk">can</a> \</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><a id="30c258" class="tk">select</a> <a id="30c265" class="tk">the</a> <a id="30c269" class="tk">Test</a> <a id="30c274" class="tk">hardware</a> <a id="30c283" class="tk">is</a> <a id="30c286" class="tk">the</a> <a id="30c290" class="tk">same</a> <a id="30c295" class="tk">as</a> <a id="30c298" class="tk">production</a> <a id="30c309" class="tk">hardware</a> <a id="30c318" class="tk">option</a> <a id="30c325" class="tk">and</a> \</td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><a id="31c329" class="tk">select</a> <a id="31c336" class="tk">the</a> <a id="31c340" class="tk">Enable</a> <a id="31c347" class="tk">portable</a> <a id="31c356" class="tk">word</a> <a id="31c361" class="tk">sizes</a> <a id="31c367" class="tk">option</a> <a id="31c374" class="tk">on</a> <a id="31c377" class="tk">the</a> <a id="31c381" class="tk">Code</a> <a id="31c386" class="tk">Generation</a> <a id="31c397" class="tk">&gt;</a> \</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><a id="32c399" class="tk">Verification</a> <a id="32c412" class="tk">pane</a> <span class="kw">for</span> <a id="32c421" class="tk">ERT</a> <a id="32c425" class="tk">based</a> <a id="32c431" class="tk">targets</a>, <a id="32c440" class="tk">which</a> <a id="32c446" class="tk">will</a> <a id="32c451" class="tk">disable</a> <a id="32c459" class="tk">the</a> \</td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><a id="33c463" class="tk">preprocessor</a> <a id="33c476" class="tk">word</a> <a id="33c481" class="tk">size</a> <a id="33c486" class="tk">checks</a>.</td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td><span class="pp">#if</span> ( <a id="36c7" class="tk">USHRT_MAX</a> <a id="36c17" class="tk">!=</a> (0xFFFFU) ) <a id="36c32" class="tk">||</a> ( <a id="36c37" class="tk">SHRT_MAX</a> <a id="36c46" class="tk">!=</a> (0x7FFF) )</td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td><span class="pp">#error</span> <a id="37c8" class="tk">Code</a> <a id="37c13" class="tk">was</a> <a id="37c17" class="tk">generated</a> <span class="kw">for</span> <a id="37c31" class="tk">compiler</a> <a id="37c40" class="tk">with</a> <a id="37c45" class="tk">different</a> <a id="37c55" class="tk">sized</a> <a id="37c61" class="tk">ushort</a><a id="37c67" class="tk">/</a><span class="kw">short</span>. \</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td><a id="38c75" class="tk">Consider</a> <a id="38c84" class="tk">adjusting</a> <a id="38c94" class="tk">Test</a> <a id="38c99" class="tk">hardware</a> <a id="38c108" class="tk">word</a> <a id="38c113" class="tk">size</a> <a id="38c118" class="tk">settings</a> <a id="38c127" class="tk">on</a> <a id="38c130" class="tk">the</a> \</td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td><a id="39c134" class="tk">Hardware</a> <a id="39c143" class="tk">Implementation</a> <a id="39c158" class="tk">pane</a> <a id="39c163" class="tk">to</a> <a id="39c166" class="tk">match</a> <a id="39c172" class="tk">your</a> <a id="39c177" class="tk">compiler</a> <a id="39c186" class="tk">word</a> <a id="39c191" class="tk">sizes</a> <a id="39c197" class="tk">as</a> \</td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td><a id="40c200" class="tk">defined</a> <a id="40c208" class="tk">in</a> <a id="40c211" class="tk">limits</a>.<a id="40c218" class="tk">h</a> <a id="40c220" class="tk">of</a> <a id="40c223" class="tk">the</a> <a id="40c227" class="tk">compiler</a>. <a id="40c237" class="tk">Alternatively</a>, <a id="40c252" class="tk">you</a> <a id="40c256" class="tk">can</a> \</td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td><a id="41c260" class="tk">select</a> <a id="41c267" class="tk">the</a> <a id="41c271" class="tk">Test</a> <a id="41c276" class="tk">hardware</a> <a id="41c285" class="tk">is</a> <a id="41c288" class="tk">the</a> <a id="41c292" class="tk">same</a> <a id="41c297" class="tk">as</a> <a id="41c300" class="tk">production</a> <a id="41c311" class="tk">hardware</a> <a id="41c320" class="tk">option</a> <a id="41c327" class="tk">and</a> \</td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td><a id="42c331" class="tk">select</a> <a id="42c338" class="tk">the</a> <a id="42c342" class="tk">Enable</a> <a id="42c349" class="tk">portable</a> <a id="42c358" class="tk">word</a> <a id="42c363" class="tk">sizes</a> <a id="42c369" class="tk">option</a> <a id="42c376" class="tk">on</a> <a id="42c379" class="tk">the</a> <a id="42c383" class="tk">Code</a> <a id="42c388" class="tk">Generation</a> <a id="42c399" class="tk">&gt;</a> \</td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td><a id="43c401" class="tk">Verification</a> <a id="43c414" class="tk">pane</a> <span class="kw">for</span> <a id="43c423" class="tk">ERT</a> <a id="43c427" class="tk">based</a> <a id="43c433" class="tk">targets</a>, <a id="43c442" class="tk">which</a> <a id="43c448" class="tk">will</a> <a id="43c453" class="tk">disable</a> <a id="43c461" class="tk">the</a> \</td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td><a id="44c465" class="tk">preprocessor</a> <a id="44c478" class="tk">word</a> <a id="44c483" class="tk">size</a> <a id="44c488" class="tk">checks</a>.</td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td></td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td><span class="pp">#if</span> ( <a id="47c7" class="tk">UINT_MAX</a> <a id="47c16" class="tk">!=</a> (0xFFFFFFFFU) ) <a id="47c35" class="tk">||</a> ( <a id="47c40" class="tk">INT_MAX</a> <a id="47c48" class="tk">!=</a> (0x7FFFFFFF) )</td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td><span class="pp">#error</span> <a id="48c8" class="tk">Code</a> <a id="48c13" class="tk">was</a> <a id="48c17" class="tk">generated</a> <span class="kw">for</span> <a id="48c31" class="tk">compiler</a> <a id="48c40" class="tk">with</a> <a id="48c45" class="tk">different</a> <a id="48c55" class="tk">sized</a> <a id="48c61" class="tk">uint</a><a id="48c65" class="tk">/</a><span class="kw">int</span>. \</td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td><a id="49c71" class="tk">Consider</a> <a id="49c80" class="tk">adjusting</a> <a id="49c90" class="tk">Test</a> <a id="49c95" class="tk">hardware</a> <a id="49c104" class="tk">word</a> <a id="49c109" class="tk">size</a> <a id="49c114" class="tk">settings</a> <a id="49c123" class="tk">on</a> <a id="49c126" class="tk">the</a> \</td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td><a id="50c130" class="tk">Hardware</a> <a id="50c139" class="tk">Implementation</a> <a id="50c154" class="tk">pane</a> <a id="50c159" class="tk">to</a> <a id="50c162" class="tk">match</a> <a id="50c168" class="tk">your</a> <a id="50c173" class="tk">compiler</a> <a id="50c182" class="tk">word</a> <a id="50c187" class="tk">sizes</a> <a id="50c193" class="tk">as</a> \</td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td><a id="51c196" class="tk">defined</a> <a id="51c204" class="tk">in</a> <a id="51c207" class="tk">limits</a>.<a id="51c214" class="tk">h</a> <a id="51c216" class="tk">of</a> <a id="51c219" class="tk">the</a> <a id="51c223" class="tk">compiler</a>. <a id="51c233" class="tk">Alternatively</a>, <a id="51c248" class="tk">you</a> <a id="51c252" class="tk">can</a> \</td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><a id="52c256" class="tk">select</a> <a id="52c263" class="tk">the</a> <a id="52c267" class="tk">Test</a> <a id="52c272" class="tk">hardware</a> <a id="52c281" class="tk">is</a> <a id="52c284" class="tk">the</a> <a id="52c288" class="tk">same</a> <a id="52c293" class="tk">as</a> <a id="52c296" class="tk">production</a> <a id="52c307" class="tk">hardware</a> <a id="52c316" class="tk">option</a> <a id="52c323" class="tk">and</a> \</td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><a id="53c327" class="tk">select</a> <a id="53c334" class="tk">the</a> <a id="53c338" class="tk">Enable</a> <a id="53c345" class="tk">portable</a> <a id="53c354" class="tk">word</a> <a id="53c359" class="tk">sizes</a> <a id="53c365" class="tk">option</a> <a id="53c372" class="tk">on</a> <a id="53c375" class="tk">the</a> <a id="53c379" class="tk">Code</a> <a id="53c384" class="tk">Generation</a> <a id="53c395" class="tk">&gt;</a> \</td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><a id="54c397" class="tk">Verification</a> <a id="54c410" class="tk">pane</a> <span class="kw">for</span> <a id="54c419" class="tk">ERT</a> <a id="54c423" class="tk">based</a> <a id="54c429" class="tk">targets</a>, <a id="54c438" class="tk">which</a> <a id="54c444" class="tk">will</a> <a id="54c449" class="tk">disable</a> <a id="54c457" class="tk">the</a> \</td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td><a id="55c461" class="tk">preprocessor</a> <a id="55c474" class="tk">word</a> <a id="55c479" class="tk">size</a> <a id="55c484" class="tk">checks</a>.</td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td></td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td><span class="pp">#if</span> ( <a id="58c7" class="tk">ULONG_MAX</a> <a id="58c17" class="tk">!=</a> (0xFFFFFFFFU) ) <a id="58c36" class="tk">||</a> ( <a id="58c41" class="tk">LONG_MAX</a> <a id="58c50" class="tk">!=</a> (0x7FFFFFFF) )</td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td><span class="pp">#error</span> <a id="59c8" class="tk">Code</a> <a id="59c13" class="tk">was</a> <a id="59c17" class="tk">generated</a> <span class="kw">for</span> <a id="59c31" class="tk">compiler</a> <a id="59c40" class="tk">with</a> <a id="59c45" class="tk">different</a> <a id="59c55" class="tk">sized</a> <a id="59c61" class="tk">ulong</a><a id="59c66" class="tk">/</a><span class="kw">long</span>. \</td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td><a id="60c73" class="tk">Consider</a> <a id="60c82" class="tk">adjusting</a> <a id="60c92" class="tk">Test</a> <a id="60c97" class="tk">hardware</a> <a id="60c106" class="tk">word</a> <a id="60c111" class="tk">size</a> <a id="60c116" class="tk">settings</a> <a id="60c125" class="tk">on</a> <a id="60c128" class="tk">the</a> \</td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><a id="61c132" class="tk">Hardware</a> <a id="61c141" class="tk">Implementation</a> <a id="61c156" class="tk">pane</a> <a id="61c161" class="tk">to</a> <a id="61c164" class="tk">match</a> <a id="61c170" class="tk">your</a> <a id="61c175" class="tk">compiler</a> <a id="61c184" class="tk">word</a> <a id="61c189" class="tk">sizes</a> <a id="61c195" class="tk">as</a> \</td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td><a id="62c198" class="tk">defined</a> <a id="62c206" class="tk">in</a> <a id="62c209" class="tk">limits</a>.<a id="62c216" class="tk">h</a> <a id="62c218" class="tk">of</a> <a id="62c221" class="tk">the</a> <a id="62c225" class="tk">compiler</a>. <a id="62c235" class="tk">Alternatively</a>, <a id="62c250" class="tk">you</a> <a id="62c254" class="tk">can</a> \</td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><a id="63c258" class="tk">select</a> <a id="63c265" class="tk">the</a> <a id="63c269" class="tk">Test</a> <a id="63c274" class="tk">hardware</a> <a id="63c283" class="tk">is</a> <a id="63c286" class="tk">the</a> <a id="63c290" class="tk">same</a> <a id="63c295" class="tk">as</a> <a id="63c298" class="tk">production</a> <a id="63c309" class="tk">hardware</a> <a id="63c318" class="tk">option</a> <a id="63c325" class="tk">and</a> \</td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td><a id="64c329" class="tk">select</a> <a id="64c336" class="tk">the</a> <a id="64c340" class="tk">Enable</a> <a id="64c347" class="tk">portable</a> <a id="64c356" class="tk">word</a> <a id="64c361" class="tk">sizes</a> <a id="64c367" class="tk">option</a> <a id="64c374" class="tk">on</a> <a id="64c377" class="tk">the</a> <a id="64c381" class="tk">Code</a> <a id="64c386" class="tk">Generation</a> <a id="64c397" class="tk">&gt;</a> \</td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td><a id="65c399" class="tk">Verification</a> <a id="65c412" class="tk">pane</a> <span class="kw">for</span> <a id="65c421" class="tk">ERT</a> <a id="65c425" class="tk">based</a> <a id="65c431" class="tk">targets</a>, <a id="65c440" class="tk">which</a> <a id="65c446" class="tk">will</a> <a id="65c451" class="tk">disable</a> <a id="65c459" class="tk">the</a> \</td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td><a id="66c463" class="tk">preprocessor</a> <a id="66c476" class="tk">word</a> <a id="66c481" class="tk">size</a> <a id="66c486" class="tk">checks</a>.</td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td></td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td><span class="ct">/* Skipping ulong_long/long_long check: insufficient preprocessor integer range. */</span></td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td><span class="kw">extern</span> <a id="70c8" class="tk">real_T</a> <a id="70c15" class="tk">rt_modd_snf</a>(<a id="70c27" class="tk">real_T</a> <a id="70c34" class="tk">u0</a>, <a id="70c38" class="tk">real_T</a> <a id="70c45" class="tk">u1</a>);</td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td><span class="kw">extern</span> <a id="71c8" class="tk">real_T</a> <a id="71c15" class="tk">rt_roundd_snf</a>(<a id="71c29" class="tk">real_T</a> <a id="71c36" class="tk">u</a>);</td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td><span class="kw">extern</span> <a id="72c8" class="tk">uint16_T</a> <a id="72c17" class="tk">plook_u16u16_evencka</a>(<a id="72c38" class="tk">uint16_T</a> <a id="72c47" class="tk">u</a>, <a id="72c50" class="tk">uint16_T</a> <a id="72c59" class="tk">bp0</a>, <a id="72c64" class="tk">uint16_T</a> <a id="72c73" class="tk">bpSpace</a>,</td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td>  <a id="73c3" class="tk">uint32_T</a> <a id="73c12" class="tk">maxIndex</a>);</td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td><span class="kw">extern</span> <a id="74c8" class="tk">int32_T</a> <a id="74c16" class="tk">div_nde_s32_floor</a>(<a id="74c34" class="tk">int32_T</a> <a id="74c42" class="tk">numerator</a>, <a id="74c53" class="tk">int32_T</a> <a id="74c61" class="tk">denominator</a>);</td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td></td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td><span class="pp">#endif</span>                               <span class="ct">/* RTW_HEADER_PMSM_Controller_private_h_ */</span></td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td></td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 1191
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_reducedblocks.html

@@ -1,1191 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><title>
-Eliminated blocks in PMSM_Controller
-</title>
-
-</head>
-<body onload="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdReducedBlocks'); else local_onload();}} catch(err) {};">
-<h1>
-Eliminated blocks in PMSM_Controller
-</h1>
-<div>
-
-</div>
-<div>
-
-</div>
-List of blocks eliminated as a result of block reduction optimization.<table class="AltRow FirstColumn" cellspacing="0">
-<tr class="heading">
-<th align="left" valign="top">
-<b>
-Block
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Description
-</b>
-
-</th>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S1&gt;/Abs1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/Scope
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S7&gt;/Scope
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S3&gt;/Scope
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S10&gt;/Relational Operator9
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/Scope1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S10&gt;/Scope2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/n_stdStillDet
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S12&gt;/Abs5
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;/Divide1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S12&gt;/Divide14
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;/Divide2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S12&gt;/Divide3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S13&gt;/Data Type Duplicate
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S13&gt;/Data Type Propagation
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S13&gt;/LowerRelop1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S13&gt;/Switch
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S13&gt;/Switch2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S13&gt;/UpperRelop
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S14&gt;/Data Type Duplicate
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S14&gt;/Data Type Propagation
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S14&gt;/LowerRelop1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S14&gt;/Switch
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S14&gt;/Switch2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S14&gt;/UpperRelop
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;/Sum1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S12&gt;/Sum2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;/Sum3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S12&gt;/Sum4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;/id_fieldWeakMax
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S12&gt;/n_fieldWeakAuthHi
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;/n_fieldWeakAuthLo
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S12&gt;/r_fieldWeakHi
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;/r_fieldWeakLo
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S1&gt;/Scope
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S1&gt;/Scope1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S5&gt;/Gain6
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/Abs5
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/Constant
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/Constant1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/Divide1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/Divide4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/Gain1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/Gain3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/Gain4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/Gain5
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/Vd_max1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/Vq_max_M1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/Vq_max_XA
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/i_max
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/iq_maxSca_M1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S17&gt;/iq_maxSca_XA
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S17&gt;/n_max1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S178&gt;/Scope
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S5&gt;/Scope1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S5&gt;/Scope12
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S5&gt;/UnitDelay4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/Signal Conversion2
-</td>
-<td align="left" valign="top">
-Eliminate redundant signal conversion block
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S1&gt;/hall_motor_angel_choice
-</td>
-<td align="left" valign="top">
-Eliminated due to constant selection input
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S1&gt;/hall_motor_speed_choice
-</td>
-<td align="left" valign="top">
-Eliminated due to constant selection input
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/AND
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/Constant1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/Constant16
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/Constant2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/Divide1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/Divide2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/Divide3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/MinMax
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/MinMax1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/NOT
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/Relational Operator7
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/Sum1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/Sum3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/Switch2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/Switch3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;/a_elecAngle1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S6&gt;/Add2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S6&gt;/Constant1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S6&gt;/Constant2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S6&gt;/Math Function
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S2&gt;/是否方波启动
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S7&gt;/Constant20
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S7&gt;/Constant23
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S7&gt;/Constant24
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S7&gt;/Constant8
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S7&gt;/Logical Operator3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S7&gt;/Relational Operator1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S7&gt;/Relational Operator6
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S7&gt;/Sum2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S7&gt;/Switch2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S7&gt;/UnitDelay2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S7&gt;/UnitDelay3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S9&gt;/Add
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S9&gt;/Gain
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S9&gt;/Gain1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S9&gt;/Selector
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S9&gt;/vec_hallToPos
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/Abs5
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S10&gt;/Constant4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/Logical Operator1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S10&gt;/Logical Operator2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/Logical Operator3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/Abs2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/Constant4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/Divide11
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/Divide13
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/Divide14
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/Logical Operator1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/Relational Operator4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/Sum13
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/Sum7
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/Switch1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/Switch2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/Switch3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/UnitDelay1
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/UnitDelay2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/UnitDelay3
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/UnitDelay4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/UnitDelay5
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/cf_speedCoef
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S11&gt;/dz_cntTrnsDet
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;/g_Ha
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S10&gt;/Relational Operator2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/Switch2
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S10&gt;/UnitDelay4
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/b_angleMeasEna
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S10&gt;/n_commDeacv
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S10&gt;/z_maxCntRst
-</td>
-<td align="left" valign="top">
-Unused code path elimination
-</td>
-
-</tr>
-
-</table>
-
-</body>
-
-</html>

+ 0 - 18
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_replacements.html

@@ -1,18 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><title>
-Code replacements in PMSM_Controller
-</title>
-
-</head>
-<body onload="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdCodeReplacements'); else local_onload();}} catch(err) {};">
-<h1>
-Code replacements in PMSM_Controller
-</h1>
-<div>
-
-</div>
-<img src="hilite_warning.png" />Code replacements report not generated. Select <a href="matlab:configset.highlightParameter('MotorController_FOC', 'GenerateCodeReplacementReport')">'Summarize which blocks triggered code replacements'</a>.
-</body>
-
-</html>

+ 0 - 249
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_subsystems.html

@@ -1,249 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><script language="JavaScript" type="text/javascript" src="rtwshrink.js"></script><title>
-Non-virtual subsystems in PMSM_Controller
-</title>
-
-</head>
-<body onload="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdSubsystem'); else local_onload();}} catch(err) {};">
-<h1>
-Non-virtual subsystems in PMSM_Controller
-</h1>
-<div>
-
-</div>
-<div>
-
-</div>
-<h3 name="sec_Code_Mapping" id="sec_code_mapping">
-1. Code Mapping <span title="Click to shrink or expand section" style="cursor:pointer;font-weight:normal;" id="rtwIdSubsystem_table_001_control" onclick ="if (rtwTableShrink) rtwTableShrink(window.document, this, 'rtwIdSubsystem_table_001', false)"><span class="shrink-button">[<u>hide</u>]</span></span>
-</h3>
-<table width="100%" name="rtwIdSubsystem_table_001" id="rtwIdSubsystem_table_001" border="0">
-<tr>
-<td align="left" valign="top">
-<p>
-The following table: <br /><ul>
-<li>
-provides a mapping from the non-virtual subsystems in the model to functions or reusable functions in the generated code and
-</li>
-<li>
-notes exceptions that caused some non-virtual subsystems to not reuse code even though they were assigned a function packaging setting ('Function packaging' entry on the Subsystem Block Dialog) of 'Auto' or 'Reusable function'.
-</li>
-
-</ul>
-
-</p>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<table class="AltRow FirstColumn" cellspacing="0">
-<tr class="heading">
-<th align="left" valign="top">
-<b>
-Subsystem
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Reuse Setting
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Reuse Outcome
-</b>
-
-</th>
-<th align="left" valign="top">
-<b>
-Outcome Diagnostic
-</b>
-
-</th>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S181&gt;
-</td>
-<td align="left" valign="top">
-Reusable Function
-</td>
-<td align="left" valign="top">
-<A HREF="Shunt_Three_Sample_Point_c.html#fcn_Shunt_Three_Sample_Point" TARGET="rtwreport_document_frame">Reusable Function(S181)</A>
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S2&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S7&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S11&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S3&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S12&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S179&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-&lt;S180&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-&lt;S5&gt;
-</td>
-<td align="left" valign="top">
-Auto
-</td>
-<td align="left" valign="top">
-Inline
-</td>
-<td align="left" valign="top">
-<FONT COLOR="green">normal</FONT>
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-<h3 name="sec_Code_Reuse_Exceptions" id="sec_reuse_exception">
-2. Code Reuse Exceptions <span title="Click to shrink or expand section" style="cursor:pointer;font-weight:normal;" id="rtwIdSubsystem_table_002_control" onclick ="if (rtwTableShrink) rtwTableShrink(window.document, this, 'rtwIdSubsystem_table_002', false)"><span class="shrink-button">[<u>hide</u>]</span></span>
-</h3>
-<table width="100%" name="rtwIdSubsystem_table_002" id="rtwIdSubsystem_table_002" border="0">
-<tr>
-<td align="left" valign="top">
-<p>
-The following section provides details on each exception that caused a non-virtual subsystem with a function packaging setting of<br /><ul>
-<li>
-'Auto' to become an inlined code segment,
-</li>
-<li>
-'Auto' to become a non-reusable function without arguments, or
-</li>
-<li>
-'Reusable function' to become a non-reusable function without arguments.
-</li>
-
-</ul>
-<b>Note:</b>This section does not report graphically identical non-virtual subsystems marked as 'Auto' that were not reused due to differences in their functional properties (such as dimensions, datatypes, work vectors, parameters, etc.).  You may identify reasons for non-reuse in such cases by inspecting the differences in the functional attributes of the subsystems in the model or in the inlined generated code.
-</p>
-
-</td>
-
-</tr>
-<tr>
-<td align="left" valign="top">
-<br /><b>No reuse exception in model</b>
-</td>
-
-</tr>
-
-</table>
-
-</body>
-
-</html>

+ 0 - 177
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_survey.html

@@ -1,177 +0,0 @@
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="rtwreport.css" /><title>
-Code Generation Report for 'PMSM_Controller'
-</title>
-
-</head>
-<body onload="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdSummaryPage'); else local_onload();}} catch(err) {};">
-<h1>
-Code Generation Report for 'PMSM_Controller'
-</h1>
-<div>
-
-</div>
-<div>
-
-</div>
-<h3 name="sec_Model_Information" id="sec_model_info">
-Model Information
-</h3>
-<table width="100%" border="0">
-<tr>
-<td align="left" valign="top">
-<p>
-<table class="AltRow" cellspacing="0">
-<tr class="even">
-<td align="left" valign="top">
-Author
-</td>
-<td align="left" valign="top">
-kevin
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-Model Version
-</td>
-<td align="left" valign="top">
-1.885
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-Tasking Mode
-</td>
-<td align="left" valign="top">
-SingleTasking
-</td>
-
-</tr>
-
-</table>
-<br /><a href="../../slprj/ert/PMSM_Controller/tmwinternal/binfo.mat?PMSM_Controller" id="linkToCS" style="display:none">
-Configuration settings at time of code generation
-</a>
-<span style="" id="linkToCS_disabled" title="Link to configuration set is only available in MATLAB browser">
-Configuration settings at time of code generation
-</span>
-
-</p>
-
-</td>
-
-</tr>
-
-</table>
-<h3 name="sec_Code_Information" id="sec_code_info">
-Code Information
-</h3>
-<table width="100%" border="0">
-<tr>
-<td align="left" valign="top">
-<p>
-<table class="AltRow" cellspacing="0">
-<tr class="even">
-<td align="left" valign="top">
-System Target File
-</td>
-<td align="left" valign="top">
-ert.tlc
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-Hardware Device Type
-</td>
-<td align="left" valign="top">
-ARM Compatible->ARM Cortex-M
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-Simulink Coder Version
-</td>
-<td align="left" valign="top">
-9.4 (R2020b) 29-Jul-2020
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-Timestamp of Generated Source Code
-</td>
-<td align="left" valign="top">
-Sat Jan  8 15:44:11 2022
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-<span id="sourceLocationTitle">Location of Generated Source Code</span>
-</td>
-<td align="left" valign="top">
-<span id="sourceLocation" style="display:none"><script>document.write(top.getCodeLocation())</script></span>
-</td>
-
-</tr>
-<tr class="odd">
-<td align="left" valign="top">
-Type of Build
-</td>
-<td align="left" valign="top">
-Subsystem
-</td>
-
-</tr>
-<tr class="even">
-<td align="left" valign="top">
-Objectives Specified
-</td>
-<td align="left" valign="top">
-<span style="color:black">Execution efficiency, RAM efficiency</span>
-</td>
-
-</tr>
-
-</table>
-
-</p>
-
-</td>
-
-</tr>
-
-</table>
-<h3 name="sec_Additional_Information" id="sec_additional_info">
-Additional Information
-</h3>
-<table width="100%" border="0">
-<tr>
-<td align="left" valign="top">
-<table class="AltRow" cellspacing="0">
-<tr class="even">
-<td align="left" valign="top">
-Code Generation Advisor
-</td>
-<td align="left" valign="top">
-Not run
-</td>
-
-</tr>
-
-</table>
-
-</td>
-
-</tr>
-
-</table>
-
-</body>
-
-</html>

+ 0 - 7
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_trace.html

@@ -1,7 +0,0 @@
-<HTML><HEAD><TITLE>Traceability Report for PMSM_Controller</TITLE>
-<LINK rel="stylesheet" type="text/css" href="rtwreport.css" />
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-</HEAD><BODY ONLOAD="try {if (top) {if (top.rtwPageOnLoad) top.rtwPageOnLoad('rtwIdTraceability'); else local_onload();}} catch(err) {};">
-<H1>Traceability Report for PMSM_Controller</H1>
-<P><IMG src="hilite_warning.png" />Traceability report is not generated. On the <b>Configuration Parameters &gt; Code Generation &gt; Comments</b> pane, select the <b>Include comments</b> parameter. On the <b>Configuration Parameters dialog box</b>, enter search keyword "GenerateTraceReport" and select the <b>Traceability Report Contents</b> parameters. Then, rebuild the model.</P>
-</BODY></HTML>

+ 0 - 82
Simulink/PMSM_Controller_ert_rtw/html/PMSM_Controller_types_h.html

@@ -1,82 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: PMSM_Controller_types.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_PMSM_Controller_types_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_PMSM_Controller_types_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="ct">/* Model Code Variants */</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="ct">/* Forward declaration for rtModel */</span></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="kw">typedef</span> <span class="kw">struct</span> <a id="24c16" class="tk">tag_RTM</a> <a id="24c24" class="tk">RT_MODEL</a>;</td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* RTW_HEADER_PMSM_Controller_types_h_ */</span></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 360
Simulink/PMSM_Controller_ert_rtw/html/Shunt_Three_Sample_Point_c.html

@@ -1,360 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: Shunt_Three_Sample_Point.c</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#include "Shunt_Three_Sample_Point.h"</span></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="ct">/* Include model header file for global data */</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include "PMSM_Controller.h"</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "PMSM_Controller_private.h"</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="ct">/* Output and update for atomic system: '&lt;S178&gt;/Shunt_Three_Sample_Point' */</span></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="kw">void</span> <a id="25c6" class="tk">Shunt_Three_Sample_Point</a>(<a id="25c31" class="tk">uint16_T</a> <a id="25c40" class="tk">rtu_low</a>, <a id="25c49" class="tk">uint16_T</a> <a id="25c58" class="tk">rtu_midle</a>, <a id="25c69" class="tk">uint8_T</a></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td>  <a id="26c3" class="tk">rtu_i_sector</a>, <a id="26c17" class="tk">uint16_T</a> <a id="26c26" class="tk">rtu_half_pwm_count</a>, <a id="26c46" class="tk">uint16_T</a> <a id="26c55" class="tk">rtu_t_adc</a>, <a id="26c66" class="tk">uint16_T</a></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td>  <a id="27c3" class="tk">rtu_t_dead</a>, <a id="27c15" class="tk">uint16_T</a> <a id="27c24" class="tk">rtu_t_samp_before</a>, <a id="27c43" class="tk">uint16_T</a> <a id="27c52" class="tk">*</a><a id="27c53" class="tk">rty_o_samp_p1</a>, <a id="27c68" class="tk">uint16_T</a></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td>  <a id="28c3" class="tk">*</a><a id="28c4" class="tk">rty_o_samp_p2</a>, <a id="28c19" class="tk">uint8_T</a> <a id="28c27" class="tk">*</a><a id="28c28" class="tk">rty_o_sector</a>)</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="br">{</span></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td>  <a id="30c3" class="tk">uint32_T</a> <a id="30c12" class="tk">qY</a>;</td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td>  <a id="31c3" class="tk">uint32_T</a> <a id="31c12" class="tk">qY_0</a>;</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td>  <a id="32c3" class="tk">uint32_T</a> <a id="32c12" class="tk">tmp</a>;</td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td>  <a id="33c3" class="tk">uint32_T</a> <a id="33c12" class="tk">tmp_0</a>;</td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td>  <a id="34c3" class="tk">uint16_T</a> <a id="34c12" class="tk">qY_1</a>;</td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td>  <a id="35c3" class="tk">*</a><a id="35c4" class="tk">rty_o_sector</a> = <a id="35c19" class="tk">rtu_i_sector</a>;</td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td>  <a id="36c3" class="tk">tmp_0</a> = <a id="36c11" class="tk">rtu_half_pwm_count</a> <a id="36c30" class="tk">+</a> 1U;</td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td>  <span class="kw">if</span> (<a id="37c7" class="tk">rtu_half_pwm_count</a> <a id="37c26" class="tk">+</a> 1U <a id="37c31" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td>    <a id="38c5" class="tk">tmp_0</a> = 65535U;</td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td>  <a id="41c3" class="tk">*</a><a id="41c4" class="tk">rty_o_samp_p1</a> = (<a id="41c21" class="tk">uint16_T</a>)<a id="41c30" class="tk">tmp_0</a>;</td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td>  <a id="42c3" class="tk">tmp_0</a> = <a id="42c11" class="tk">rtu_half_pwm_count</a> <a id="42c30" class="tk">+</a> 1U;</td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td>  <span class="kw">if</span> (<a id="43c7" class="tk">rtu_half_pwm_count</a> <a id="43c26" class="tk">+</a> 1U <a id="43c31" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td>    <a id="44c5" class="tk">tmp_0</a> = 65535U;</td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td></td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td>  <a id="47c3" class="tk">*</a><a id="47c4" class="tk">rty_o_samp_p2</a> = (<a id="47c21" class="tk">uint16_T</a>)<a id="47c30" class="tk">tmp_0</a>;</td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td>  <a id="48c3" class="tk">tmp_0</a> = (<a id="48c12" class="tk">uint32_T</a>)<a id="48c21" class="tk">rtu_t_adc</a> <a id="48c31" class="tk">+</a> <a id="48c33" class="tk">rtu_t_dead</a>;</td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td>  <a id="49c3" class="tk">tmp</a> = <a id="49c9" class="tk">tmp_0</a>;</td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td>  <span class="kw">if</span> (<a id="50c7" class="tk">tmp_0</a> <a id="50c13" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td>    <a id="51c5" class="tk">tmp</a> = 65535U;</td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td></td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td>  <a id="54c3" class="tk">tmp</a> <a id="54c7" class="tk">+=</a> <a id="54c10" class="tk">rtu_t_samp_before</a>;</td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td>  <span class="kw">if</span> (<a id="55c7" class="tk">tmp</a> <a id="55c11" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td>    <a id="56c5" class="tk">tmp</a> = 65535U;</td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td></td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td>  <a id="59c3" class="tk">qY_0</a> = (<a id="59c11" class="tk">uint32_T</a>)<a id="59c20" class="tk">rtu_half_pwm_count</a> <a id="59c39" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> <a id="59c56" class="tk">rtu_low</a>;</td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td>  <span class="kw">if</span> (<a id="60c7" class="tk">qY_0</a> <a id="60c12" class="tk">&gt;</a> <a id="60c14" class="tk">rtu_half_pwm_count</a>) <span class="br">{</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td>    <a id="61c5" class="tk">qY_0</a> = 0U;</td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td></td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td>  <a id="64c3" class="tk">qY</a> = (<a id="64c9" class="tk">uint32_T</a>)<a id="64c18" class="tk">rtu_half_pwm_count</a> <a id="64c37" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> <a id="64c54" class="tk">rtu_midle</a>;</td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td>  <span class="kw">if</span> (<a id="65c7" class="tk">qY</a> <a id="65c10" class="tk">&gt;</a> <a id="65c12" class="tk">rtu_half_pwm_count</a>) <span class="br">{</span></td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td>    <a id="66c5" class="tk">qY</a> = 0U;</td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td></td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td>  <span class="kw">if</span> ((<a id="69c8" class="tk">uint16_T</a>)<a id="69c17" class="tk">qY_0</a> <a id="69c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td>    <a id="70c5" class="tk">qY_1</a> = <a id="70c12" class="tk">MAX_uint16_T</a>;</td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td>    <a id="72c5" class="tk">qY_1</a> = (<a id="72c13" class="tk">uint16_T</a>)((<a id="72c24" class="tk">uint16_T</a>)<a id="72c33" class="tk">qY_0</a> <a id="72c38" class="tk">&lt;&lt;</a> 1);</td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td></td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td>  <span class="kw">if</span> (<a id="75c7" class="tk">qY_1</a> <a id="75c12" class="tk">&gt;=</a> (<a id="75c16" class="tk">uint16_T</a>)<a id="75c25" class="tk">tmp</a>) <span class="br">{</span></td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td>    <span class="kw">if</span> (<a id="76c9" class="tk">tmp_0</a> <a id="76c15" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td>      <a id="77c7" class="tk">tmp_0</a> = 65535U;</td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td></td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td>    <span class="kw">if</span> ((<a id="80c10" class="tk">uint16_T</a>)<a id="80c19" class="tk">qY_0</a> <a id="80c24" class="tk">&gt;=</a> (<a id="80c28" class="tk">int32_T</a>)<a id="80c36" class="tk">tmp_0</a>) <span class="br">{</span></td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td>      <a id="81c7" class="tk">qY_0</a> = <a id="81c14" class="tk">rtu_half_pwm_count</a> <a id="81c33" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> 1U;</td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td>      <span class="kw">if</span> (<a id="82c11" class="tk">rtu_half_pwm_count</a> <a id="82c30" class="tk">-</a> 1U <a id="82c35" class="tk">&gt;</a> <a id="82c37" class="tk">rtu_half_pwm_count</a>) <span class="br">{</span></td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td>        <a id="83c9" class="tk">qY_0</a> = 0U;</td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td></td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td>      <a id="86c7" class="tk">*</a><a id="86c8" class="tk">rty_o_samp_p1</a> = (<a id="86c25" class="tk">uint16_T</a>)<a id="86c34" class="tk">qY_0</a>;</td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td>      <a id="87c7" class="tk">*</a><a id="87c8" class="tk">rty_o_sector</a> = 1U;</td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td>      <a id="89c7" class="tk">tmp_0</a> = (<a id="89c16" class="tk">uint32_T</a>)<a id="89c25" class="tk">rtu_low</a> <a id="89c33" class="tk">+</a> <a id="89c35" class="tk">rtu_t_samp_before</a>;</td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td>      <span class="kw">if</span> (<a id="90c11" class="tk">tmp_0</a> <a id="90c17" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td>        <a id="91c9" class="tk">tmp_0</a> = 65535U;</td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td></td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td>      <span class="kw">if</span> ((<a id="94c12" class="tk">uint16_T</a>)<a id="94c21" class="tk">tmp_0</a> <a id="94c27" class="tk">&gt;=</a> <a id="94c30" class="tk">rtu_half_pwm_count</a>) <span class="br">{</span></td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td>        <span class="kw">if</span> (<a id="95c13" class="tk">rtu_half_pwm_count</a> <a id="95c32" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td>          <a id="96c11" class="tk">qY_1</a> = <a id="96c18" class="tk">MAX_uint16_T</a>;</td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td>        <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td>          <a id="98c11" class="tk">qY_1</a> = (<a id="98c19" class="tk">uint16_T</a>)(<a id="98c29" class="tk">rtu_half_pwm_count</a> <a id="98c48" class="tk">&lt;&lt;</a> 1);</td></tr>
-<tr name="99" id="99">
-<td><a id="l99" class='ln'>99</a></td><td>        <span class="br">}</span></td></tr>
-<tr name="100" id="100">
-<td><a id="l100" class='ln'>100</a></td><td></td></tr>
-<tr name="101" id="101">
-<td><a id="l101" class='ln'>101</a></td><td>        <a id="101c9" class="tk">qY_0</a> = (<a id="101c17" class="tk">uint32_T</a>)<a id="101c26" class="tk">qY_1</a> <a id="101c31" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> (<a id="101c49" class="tk">uint16_T</a>)<a id="101c58" class="tk">tmp_0</a>;</td></tr>
-<tr name="102" id="102">
-<td><a id="l102" class='ln'>102</a></td><td>        <span class="kw">if</span> (<a id="102c13" class="tk">qY_0</a> <a id="102c18" class="tk">&gt;</a> <a id="102c20" class="tk">qY_1</a>) <span class="br">{</span></td></tr>
-<tr name="103" id="103">
-<td><a id="l103" class='ln'>103</a></td><td>          <a id="103c11" class="tk">qY_0</a> = 0U;</td></tr>
-<tr name="104" id="104">
-<td><a id="l104" class='ln'>104</a></td><td>        <span class="br">}</span></td></tr>
-<tr name="105" id="105">
-<td><a id="l105" class='ln'>105</a></td><td></td></tr>
-<tr name="106" id="106">
-<td><a id="l106" class='ln'>106</a></td><td>        <a id="106c9" class="tk">qY</a> = <a id="106c14" class="tk">qY_0</a> <a id="106c19" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> 1U;</td></tr>
-<tr name="107" id="107">
-<td><a id="l107" class='ln'>107</a></td><td>        <span class="kw">if</span> (<a id="107c13" class="tk">qY_0</a> <a id="107c18" class="tk">-</a> 1U <a id="107c23" class="tk">&gt;</a> <a id="107c25" class="tk">qY_0</a>) <span class="br">{</span></td></tr>
-<tr name="108" id="108">
-<td><a id="l108" class='ln'>108</a></td><td>          <a id="108c11" class="tk">qY</a> = 0U;</td></tr>
-<tr name="109" id="109">
-<td><a id="l109" class='ln'>109</a></td><td>        <span class="br">}</span></td></tr>
-<tr name="110" id="110">
-<td><a id="l110" class='ln'>110</a></td><td></td></tr>
-<tr name="111" id="111">
-<td><a id="l111" class='ln'>111</a></td><td>        <a id="111c9" class="tk">*</a><a id="111c10" class="tk">rty_o_samp_p2</a> = (<a id="111c27" class="tk">uint16_T</a>)<a id="111c36" class="tk">qY</a>;</td></tr>
-<tr name="112" id="112">
-<td><a id="l112" class='ln'>112</a></td><td>      <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="113" id="113">
-<td><a id="l113" class='ln'>113</a></td><td>        <a id="113c9" class="tk">*</a><a id="113c10" class="tk">rty_o_samp_p1</a> = (<a id="113c27" class="tk">uint16_T</a>)<a id="113c36" class="tk">tmp_0</a>;</td></tr>
-<tr name="114" id="114">
-<td><a id="l114" class='ln'>114</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="115" id="115">
-<td><a id="l115" class='ln'>115</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="116" id="116">
-<td><a id="l116" class='ln'>116</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="117" id="117">
-<td><a id="l117" class='ln'>117</a></td><td>    <span class="kw">if</span> ((<a id="117c10" class="tk">uint16_T</a>)<a id="117c19" class="tk">qY</a> <a id="117c22" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="118" id="118">
-<td><a id="l118" class='ln'>118</a></td><td>      <a id="118c7" class="tk">qY_1</a> = <a id="118c14" class="tk">MAX_uint16_T</a>;</td></tr>
-<tr name="119" id="119">
-<td><a id="l119" class='ln'>119</a></td><td>    <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="120" id="120">
-<td><a id="l120" class='ln'>120</a></td><td>      <a id="120c7" class="tk">qY_1</a> = (<a id="120c15" class="tk">uint16_T</a>)((<a id="120c26" class="tk">uint16_T</a>)<a id="120c35" class="tk">qY</a> <a id="120c38" class="tk">&lt;&lt;</a> 1);</td></tr>
-<tr name="121" id="121">
-<td><a id="l121" class='ln'>121</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="122" id="122">
-<td><a id="l122" class='ln'>122</a></td><td></td></tr>
-<tr name="123" id="123">
-<td><a id="l123" class='ln'>123</a></td><td>    <span class="kw">if</span> (<a id="123c9" class="tk">qY_1</a> <a id="123c14" class="tk">&gt;=</a> (<a id="123c18" class="tk">uint16_T</a>)<a id="123c27" class="tk">tmp</a>) <span class="br">{</span></td></tr>
-<tr name="124" id="124">
-<td><a id="l124" class='ln'>124</a></td><td>      <span class="kw">if</span> (<a id="124c11" class="tk">tmp_0</a> <a id="124c17" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="125" id="125">
-<td><a id="l125" class='ln'>125</a></td><td>        <a id="125c9" class="tk">tmp_0</a> = 65535U;</td></tr>
-<tr name="126" id="126">
-<td><a id="l126" class='ln'>126</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="127" id="127">
-<td><a id="l127" class='ln'>127</a></td><td></td></tr>
-<tr name="128" id="128">
-<td><a id="l128" class='ln'>128</a></td><td>      <span class="kw">if</span> ((<a id="128c12" class="tk">uint16_T</a>)<a id="128c21" class="tk">qY</a> <a id="128c24" class="tk">&gt;=</a> (<a id="128c28" class="tk">int32_T</a>)<a id="128c36" class="tk">tmp_0</a>) <span class="br">{</span></td></tr>
-<tr name="129" id="129">
-<td><a id="l129" class='ln'>129</a></td><td>        <a id="129c9" class="tk">qY_0</a> = <a id="129c16" class="tk">rtu_half_pwm_count</a> <a id="129c35" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> 1U;</td></tr>
-<tr name="130" id="130">
-<td><a id="l130" class='ln'>130</a></td><td>        <span class="kw">if</span> (<a id="130c13" class="tk">rtu_half_pwm_count</a> <a id="130c32" class="tk">-</a> 1U <a id="130c37" class="tk">&gt;</a> <a id="130c39" class="tk">rtu_half_pwm_count</a>) <span class="br">{</span></td></tr>
-<tr name="131" id="131">
-<td><a id="l131" class='ln'>131</a></td><td>          <a id="131c11" class="tk">qY_0</a> = 0U;</td></tr>
-<tr name="132" id="132">
-<td><a id="l132" class='ln'>132</a></td><td>        <span class="br">}</span></td></tr>
-<tr name="133" id="133">
-<td><a id="l133" class='ln'>133</a></td><td></td></tr>
-<tr name="134" id="134">
-<td><a id="l134" class='ln'>134</a></td><td>        <a id="134c9" class="tk">*</a><a id="134c10" class="tk">rty_o_samp_p1</a> = (<a id="134c27" class="tk">uint16_T</a>)<a id="134c36" class="tk">qY_0</a>;</td></tr>
-<tr name="135" id="135">
-<td><a id="l135" class='ln'>135</a></td><td>      <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="136" id="136">
-<td><a id="l136" class='ln'>136</a></td><td>        <a id="136c9" class="tk">tmp_0</a> = (<a id="136c18" class="tk">uint32_T</a>)<a id="136c27" class="tk">rtu_midle</a> <a id="136c37" class="tk">+</a> <a id="136c39" class="tk">rtu_t_samp_before</a>;</td></tr>
-<tr name="137" id="137">
-<td><a id="l137" class='ln'>137</a></td><td>        <span class="kw">if</span> (<a id="137c13" class="tk">tmp_0</a> <a id="137c19" class="tk">&gt;</a> 65535U) <span class="br">{</span></td></tr>
-<tr name="138" id="138">
-<td><a id="l138" class='ln'>138</a></td><td>          <a id="138c11" class="tk">tmp_0</a> = 65535U;</td></tr>
-<tr name="139" id="139">
-<td><a id="l139" class='ln'>139</a></td><td>        <span class="br">}</span></td></tr>
-<tr name="140" id="140">
-<td><a id="l140" class='ln'>140</a></td><td></td></tr>
-<tr name="141" id="141">
-<td><a id="l141" class='ln'>141</a></td><td>        <span class="kw">if</span> ((<a id="141c14" class="tk">uint16_T</a>)<a id="141c23" class="tk">tmp_0</a> <a id="141c29" class="tk">&gt;=</a> <a id="141c32" class="tk">rtu_half_pwm_count</a>) <span class="br">{</span></td></tr>
-<tr name="142" id="142">
-<td><a id="l142" class='ln'>142</a></td><td>          <span class="kw">if</span> (<a id="142c15" class="tk">rtu_half_pwm_count</a> <a id="142c34" class="tk">&gt;</a> 32767) <span class="br">{</span></td></tr>
-<tr name="143" id="143">
-<td><a id="l143" class='ln'>143</a></td><td>            <a id="143c13" class="tk">qY_1</a> = <a id="143c20" class="tk">MAX_uint16_T</a>;</td></tr>
-<tr name="144" id="144">
-<td><a id="l144" class='ln'>144</a></td><td>          <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="145" id="145">
-<td><a id="l145" class='ln'>145</a></td><td>            <a id="145c13" class="tk">qY_1</a> = (<a id="145c21" class="tk">uint16_T</a>)(<a id="145c31" class="tk">rtu_half_pwm_count</a> <a id="145c50" class="tk">&lt;&lt;</a> 1);</td></tr>
-<tr name="146" id="146">
-<td><a id="l146" class='ln'>146</a></td><td>          <span class="br">}</span></td></tr>
-<tr name="147" id="147">
-<td><a id="l147" class='ln'>147</a></td><td></td></tr>
-<tr name="148" id="148">
-<td><a id="l148" class='ln'>148</a></td><td>          <a id="148c11" class="tk">qY_0</a> = (<a id="148c19" class="tk">uint32_T</a>)<a id="148c28" class="tk">qY_1</a> <a id="148c33" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> (<a id="148c51" class="tk">uint16_T</a>)<a id="148c60" class="tk">tmp_0</a>;</td></tr>
-<tr name="149" id="149">
-<td><a id="l149" class='ln'>149</a></td><td>          <span class="kw">if</span> (<a id="149c15" class="tk">qY_0</a> <a id="149c20" class="tk">&gt;</a> <a id="149c22" class="tk">qY_1</a>) <span class="br">{</span></td></tr>
-<tr name="150" id="150">
-<td><a id="l150" class='ln'>150</a></td><td>            <a id="150c13" class="tk">qY_0</a> = 0U;</td></tr>
-<tr name="151" id="151">
-<td><a id="l151" class='ln'>151</a></td><td>          <span class="br">}</span></td></tr>
-<tr name="152" id="152">
-<td><a id="l152" class='ln'>152</a></td><td></td></tr>
-<tr name="153" id="153">
-<td><a id="l153" class='ln'>153</a></td><td>          <a id="153c11" class="tk">qY</a> = <a id="153c16" class="tk">qY_0</a> <a id="153c21" class="tk">-</a> <span class="ct">/*MW:OvSatOk*/</span> 1U;</td></tr>
-<tr name="154" id="154">
-<td><a id="l154" class='ln'>154</a></td><td>          <span class="kw">if</span> (<a id="154c15" class="tk">qY_0</a> <a id="154c20" class="tk">-</a> 1U <a id="154c25" class="tk">&gt;</a> <a id="154c27" class="tk">qY_0</a>) <span class="br">{</span></td></tr>
-<tr name="155" id="155">
-<td><a id="l155" class='ln'>155</a></td><td>            <a id="155c13" class="tk">qY</a> = 0U;</td></tr>
-<tr name="156" id="156">
-<td><a id="l156" class='ln'>156</a></td><td>          <span class="br">}</span></td></tr>
-<tr name="157" id="157">
-<td><a id="l157" class='ln'>157</a></td><td></td></tr>
-<tr name="158" id="158">
-<td><a id="l158" class='ln'>158</a></td><td>          <a id="158c11" class="tk">*</a><a id="158c12" class="tk">rty_o_samp_p2</a> = (<a id="158c29" class="tk">uint16_T</a>)<a id="158c38" class="tk">qY</a>;</td></tr>
-<tr name="159" id="159">
-<td><a id="l159" class='ln'>159</a></td><td>        <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="160" id="160">
-<td><a id="l160" class='ln'>160</a></td><td>          <a id="160c11" class="tk">*</a><a id="160c12" class="tk">rty_o_samp_p1</a> = (<a id="160c29" class="tk">uint16_T</a>)<a id="160c38" class="tk">tmp_0</a>;</td></tr>
-<tr name="161" id="161">
-<td><a id="l161" class='ln'>161</a></td><td>        <span class="br">}</span></td></tr>
-<tr name="162" id="162">
-<td><a id="l162" class='ln'>162</a></td><td>      <span class="br">}</span></td></tr>
-<tr name="163" id="163">
-<td><a id="l163" class='ln'>163</a></td><td>    <span class="br">}</span></td></tr>
-<tr name="164" id="164">
-<td><a id="l164" class='ln'>164</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="165" id="165">
-<td><a id="l165" class='ln'>165</a></td><td><span class="br">}</span></td></tr>
-<tr name="166" id="166">
-<td><a id="l166" class='ln'>166</a></td><td></td></tr>
-<tr name="167" id="167">
-<td><a id="l167" class='ln'>167</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="168" id="168">
-<td><a id="l168" class='ln'>168</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="169" id="169">
-<td><a id="l169" class='ln'>169</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="170" id="170">
-<td><a id="l170" class='ln'>170</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="171" id="171">
-<td><a id="l171" class='ln'>171</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="172" id="172">
-<td><a id="l172" class='ln'>172</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 94
Simulink/PMSM_Controller_ert_rtw/html/Shunt_Three_Sample_Point_h.html

@@ -1,94 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: Shunt_Three_Sample_Point.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_Shunt_Three_Sample_Point_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_Shunt_Three_Sample_Point_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="pp">#ifndef</span> <a id="20c9" class="tk">PMSM_Controller_COMMON_INCLUDES_</a></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#define</span> <a id="21c9" class="tk">PMSM_Controller_COMMON_INCLUDES_</a></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "rtwtypes.h"</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* PMSM_Controller_COMMON_INCLUDES_ */</span></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="pp">#include "PMSM_Controller_types.h"</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="27c13" class="tk">Shunt_Three_Sample_Point</a>(<a id="27c38" class="tk">uint16_T</a> <a id="27c47" class="tk">rtu_low</a>, <a id="27c56" class="tk">uint16_T</a> <a id="27c65" class="tk">rtu_midle</a>,</td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td>  <a id="28c3" class="tk">uint8_T</a> <a id="28c11" class="tk">rtu_i_sector</a>, <a id="28c25" class="tk">uint16_T</a> <a id="28c34" class="tk">rtu_half_pwm_count</a>, <a id="28c54" class="tk">uint16_T</a> <a id="28c63" class="tk">rtu_t_adc</a>,</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td>  <a id="29c3" class="tk">uint16_T</a> <a id="29c12" class="tk">rtu_t_dead</a>, <a id="29c24" class="tk">uint16_T</a> <a id="29c33" class="tk">rtu_t_samp_before</a>, <a id="29c52" class="tk">uint16_T</a> <a id="29c61" class="tk">*</a><a id="29c62" class="tk">rty_o_samp_p1</a>,</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td>  <a id="30c3" class="tk">uint16_T</a> <a id="30c12" class="tk">*</a><a id="30c13" class="tk">rty_o_samp_p2</a>, <a id="30c28" class="tk">uint8_T</a> <a id="30c36" class="tk">*</a><a id="30c37" class="tk">rty_o_sector</a>);</td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td></td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="pp">#endif</span>                              <span class="ct">/* RTW_HEADER_Shunt_Three_Sample_Point_h_ */</span></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 184
Simulink/PMSM_Controller_ert_rtw/html/css/coder_app.css

@@ -1,184 +0,0 @@
-/* Copyright 2013-2018 The MathWorks, Inc. */
-pre#code {    
-    font-family: Consolas, Courier;
-    font-size: small;
-}
-
-.ct { 
-    font-style: italic; 
-    color: #117755 
-} /* comment */
-.pp { 
-    font-weight:bold;   
-    color: #992211 
-} /* preprocessor */
-.kw, .br { 
-    font-weight:bold;   
-    color: #112266
-} /* keyword or brace */
-.dt { 
-    font-weight:bold;   
-    color: #112266 
-} /* data type */
-.tk { 
-    font-style: normal;   
-    color: #112266
-} /* regular token */
-pre#code a.req {
-    text-decoration: none;
-    color: #112266
-}
-pre#code a.req_active {
-    cursor: pointer;  
-    text-decoration: underline;
-}
-pre#code a.req_active:hover { 
-    cursor: pointer;  
-    color: blue; 
-    text-decoration: underline
-}
-pre#code a.blk {
-    text-decoration: none;
-}
-pre#code a.blk_active {
-    cursor: pointer;  
-    text-decoration: underline;
-}
-pre#code a.blk_active:hover { 
-    cursor: pointer;  
-    color: blue; 
-    text-decoration: underline
-}
-a.hilite { 
-    font-style: normal;   
-    color: black;
-    background-color: rgba(150, 12, 116, 0.1);
-} /* highlight token */
-tr.hilite { 
-    font-style: normal;   
-    color: black;
-    background-color: rgba(150, 12, 116, 0.1);
-} /* highlight row */
-a.hiliteToken, tr.hiliteToken, td.hiliteToken {
-    background-color: #ffff99;
-}
-.hiliteCurrentLine, tr.hiliteCurrentLine > td {
-    font-style: normal;   
-    color: black;   
-    background-color: rgba(150, 12, 116, 0.1);
-    box-shadow:  inset 0 1px 0 0 rgba(150, 12, 116, 0.25), inset 0 -1px 0 0 rgba(150, 12, 116, 0.25);
-}
-span.hiliteTotalLine {
-    font-style: normal;   
-    color: #aff;
-} 
-a.tk {
-    text-decoration: none;
-}
-a.tk:hover {
-    text-decoration: none;
-}
-a.active {
-    text-decoration: underline;
-}
-a.active:hover { 
-    cursor: pointer;  
-    color: blue; 
-    text-decoration: underline
-} /* hyperlink */
-table.code {
-    border: 0px    
-}
-table.code td {
-    vertical-align: top;
-}
-table.code td.highlightedCurrent {
-    background-color: rgba(150, 12, 116, 0.1);
-}
-table.code > tr:first {
-    text-align: right;
-} /* hyperlink */
-
-ul.popup_attrib_list {	
-    list-style-type:none; 
-    display: block;		
-    margin: 0;
-    padding: 0;	
-}
-ul.popup_attrib_list li {
-    list-style-type:none; 
-    display: inline;
-    margin: 0 18px 0 0;
-    padding: 0;	
-}
-.highlighted {
-    background-color:yellow;
-}
-a:class1 {
-    color: -webkit-link;
-    text-decoration: underline;
-    cursor: hand;
-}
-.scroll
-{
-    height:80px;
-    overflow:scroll;
-    overflow-x:hidden;
-}
-div#popup_window {
-    position: absolute;
-    background-color: rgb(203,203,255);
-    border: solid 3px #ECECEC;		
-    border-radius: 5px;
-    /* shadow box around the window*/
-    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.4), inset 0 1px #FFF;
-    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.4), inset 0 1px #FFF;
-    box-shadow: 0 3px 3px rgba(0,0,0,0.4), inset 0 1px #FFF;	
-    padding: 2px;
-}
-div#popup_window a {
-    text-decoration: none;
-    color: green;
-}
-div#popup_window a:hover {
-    cursor: pointer;
-    text-decoration: underline;
-    color: blue;
-}
-div#popup_window tr.selected {
-    background-color: #ffff99;
-}
-div#token_usage_nav {
-    border-bottom: 1px solid gray;
-}
-table#token_usage_details {
-    cellpadding: 100px;
-    table-layout:fixed;
-    border: 0px;		
-}
-.token_usage_details_tabrow {
-    width: 40px;
-}
-table#token_usage_details td {
-    padding-right: 5em;	
-    padding-left: 1em;	
-}
-.token_usage_details_tabrow:hover {
-    background-color: gray;
-}
-.nav_table td.hidden {
-    display: none;
-}
-table#codeTbl tr td {
-    color: #112266
-}
-table#codeTbl tr td {
-    padding-left: 10px;
-}
-table#codeTbl tr td:first-child {
-    font-style: italic; 
-    color: #888888;
-    text-align: right;
-    padding-left:0px;
-}
-

+ 0 - 133
Simulink/PMSM_Controller_ert_rtw/html/define.js

@@ -1,133 +0,0 @@
-function CodeDefine() { 
-this.def = new Array();
-this.def["ert_main.c:rtM_"] = {file: "ert_main_c.html",line:23,type:"var"};
-this.def["ert_main.c:rtMPtr"] = {file: "ert_main_c.html",line:24,type:"var"};
-this.def["ert_main.c:rtDW"] = {file: "ert_main_c.html",line:25,type:"var"};
-this.def["ert_main.c:rtU_Vdc"] = {file: "ert_main_c.html",line:28,type:"var"};
-this.def["ert_main.c:rtU_Ts"] = {file: "ert_main_c.html",line:31,type:"var"};
-this.def["ert_main.c:rtU_adc_a"] = {file: "ert_main_c.html",line:34,type:"var"};
-this.def["ert_main.c:rtU_adc_b"] = {file: "ert_main_c.html",line:37,type:"var"};
-this.def["ert_main.c:rtU_rotor_angle"] = {file: "ert_main_c.html",line:40,type:"var"};
-this.def["ert_main.c:rtU_rotor_speed"] = {file: "ert_main_c.html",line:43,type:"var"};
-this.def["ert_main.c:rtU_input_target"] = {file: "ert_main_c.html",line:46,type:"var"};
-this.def["ert_main.c:rtU_hall_a"] = {file: "ert_main_c.html",line:49,type:"var"};
-this.def["ert_main.c:rtU_hall_b"] = {file: "ert_main_c.html",line:52,type:"var"};
-this.def["ert_main.c:rtU_hall_c"] = {file: "ert_main_c.html",line:55,type:"var"};
-this.def["ert_main.c:rtU_hw_count"] = {file: "ert_main_c.html",line:58,type:"var"};
-this.def["ert_main.c:rtU_b_motor_enable"] = {file: "ert_main_c.html",line:61,type:"var"};
-this.def["ert_main.c:rtU_b_cruise_enable"] = {file: "ert_main_c.html",line:64,type:"var"};
-this.def["ert_main.c:rtU_n_ctrl_type"] = {file: "ert_main_c.html",line:67,type:"var"};
-this.def["ert_main.c:rtY_pwm_counts"] = {file: "ert_main_c.html",line:70,type:"var"};
-this.def["ert_main.c:rtY_sector"] = {file: "ert_main_c.html",line:73,type:"var"};
-this.def["rt_OneStep"] = {file: "ert_main_c.html",line:87,type:"fcn"};
-this.def["main"] = {file: "ert_main_c.html",line:126,type:"fcn"};
-this.def["plook_u16u16_evencka"] = {file: "PMSM_Controller_c.html",line:22,type:"fcn"};
-this.def["div_nde_s32_floor"] = {file: "PMSM_Controller_c.html",line:47,type:"fcn"};
-this.def["PMSM_Controller.c:rate_scheduler"] = {file: "PMSM_Controller_c.html",line:58,type:"fcn"};
-this.def["rt_modd_snf"] = {file: "PMSM_Controller_c.html",line:70,type:"fcn"};
-this.def["rt_roundd_snf"] = {file: "PMSM_Controller_c.html",line:108,type:"fcn"};
-this.def["PMSM_Controller_step"] = {file: "PMSM_Controller_c.html",line:127,type:"fcn"};
-this.def["PMSM_Controller_initialize"] = {file: "PMSM_Controller_c.html",line:1025,type:"fcn"};
-this.def["DW"] = {file: "PMSM_Controller_h.html",line:50,type:"type"};
-this.def["ConstP"] = {file: "PMSM_Controller_h.html",line:63,type:"type"};
-this.def["RT_MODEL"] = {file: "PMSM_Controller_types_h.html",line:24,type:"type"};
-this.def["Shunt_Three_Sample_Point"] = {file: "Shunt_Three_Sample_Point_c.html",line:25,type:"fcn"};
-this.def["rtConstP"] = {file: "PMSM_Controller_data_c.html",line:22,type:"var"};
-this.def["rtGetInf"] = {file: "rtGetInf_c.html",line:29,type:"fcn"};
-this.def["rtGetInfF"] = {file: "rtGetInf_c.html",line:53,type:"fcn"};
-this.def["rtGetMinusInf"] = {file: "rtGetInf_c.html",line:64,type:"fcn"};
-this.def["rtGetMinusInfF"] = {file: "rtGetInf_c.html",line:88,type:"fcn"};
-this.def["rtGetNaN"] = {file: "rtGetNaN_c.html",line:29,type:"fcn"};
-this.def["rtGetNaNF"] = {file: "rtGetNaN_c.html",line:53,type:"fcn"};
-this.def["rtInf"] = {file: "rt_nonfinite_c.html",line:28,type:"var"};
-this.def["rtMinusInf"] = {file: "rt_nonfinite_c.html",line:29,type:"var"};
-this.def["rtNaN"] = {file: "rt_nonfinite_c.html",line:30,type:"var"};
-this.def["rtInfF"] = {file: "rt_nonfinite_c.html",line:31,type:"var"};
-this.def["rtMinusInfF"] = {file: "rt_nonfinite_c.html",line:32,type:"var"};
-this.def["rtNaNF"] = {file: "rt_nonfinite_c.html",line:33,type:"var"};
-this.def["rt_InitInfAndNaN"] = {file: "rt_nonfinite_c.html",line:39,type:"fcn"};
-this.def["rtIsInf"] = {file: "rt_nonfinite_c.html",line:51,type:"fcn"};
-this.def["rtIsInfF"] = {file: "rt_nonfinite_c.html",line:57,type:"fcn"};
-this.def["rtIsNaN"] = {file: "rt_nonfinite_c.html",line:63,type:"fcn"};
-this.def["rtIsNaNF"] = {file: "rt_nonfinite_c.html",line:85,type:"fcn"};
-this.def["BigEndianIEEEDouble"] = {file: "rt_nonfinite_h.html",line:39,type:"type"};
-this.def["LittleEndianIEEEDouble"] = {file: "rt_nonfinite_h.html",line:46,type:"type"};
-this.def["IEEESingle"] = {file: "rt_nonfinite_h.html",line:53,type:"type"};
-this.def["int8_T"] = {file: "rtwtypes_h.html",line:49,type:"type"};
-this.def["uint8_T"] = {file: "rtwtypes_h.html",line:50,type:"type"};
-this.def["int16_T"] = {file: "rtwtypes_h.html",line:51,type:"type"};
-this.def["uint16_T"] = {file: "rtwtypes_h.html",line:52,type:"type"};
-this.def["int32_T"] = {file: "rtwtypes_h.html",line:53,type:"type"};
-this.def["uint32_T"] = {file: "rtwtypes_h.html",line:54,type:"type"};
-this.def["int64_T"] = {file: "rtwtypes_h.html",line:55,type:"type"};
-this.def["uint64_T"] = {file: "rtwtypes_h.html",line:56,type:"type"};
-this.def["real32_T"] = {file: "rtwtypes_h.html",line:57,type:"type"};
-this.def["real64_T"] = {file: "rtwtypes_h.html",line:58,type:"type"};
-this.def["real_T"] = {file: "rtwtypes_h.html",line:64,type:"type"};
-this.def["time_T"] = {file: "rtwtypes_h.html",line:65,type:"type"};
-this.def["boolean_T"] = {file: "rtwtypes_h.html",line:66,type:"type"};
-this.def["int_T"] = {file: "rtwtypes_h.html",line:67,type:"type"};
-this.def["uint_T"] = {file: "rtwtypes_h.html",line:68,type:"type"};
-this.def["ulong_T"] = {file: "rtwtypes_h.html",line:69,type:"type"};
-this.def["ulonglong_T"] = {file: "rtwtypes_h.html",line:70,type:"type"};
-this.def["char_T"] = {file: "rtwtypes_h.html",line:71,type:"type"};
-this.def["uchar_T"] = {file: "rtwtypes_h.html",line:72,type:"type"};
-this.def["byte_T"] = {file: "rtwtypes_h.html",line:73,type:"type"};
-this.def["pointer_T"] = {file: "rtwtypes_h.html",line:94,type:"type"};
-}
-CodeDefine.instance = new CodeDefine();
-var testHarnessInfo = {OwnerFileName: "", HarnessOwner: "", HarnessName: "", IsTestHarness: "0"};
-var relPathToBuildDir = "../ert_main.c";
-var fileSep = "\\";
-var isPC = true;
-function Html2SrcLink() {
-	this.html2SrcPath = new Array;
-	this.html2Root = new Array;
-	this.html2SrcPath["ert_main_c.html"] = "../ert_main.c";
-	this.html2Root["ert_main_c.html"] = "ert_main_c.html";
-	this.html2SrcPath["PMSM_Controller_c.html"] = "../PMSM_Controller.c";
-	this.html2Root["PMSM_Controller_c.html"] = "PMSM_Controller_c.html";
-	this.html2SrcPath["PMSM_Controller_h.html"] = "../PMSM_Controller.h";
-	this.html2Root["PMSM_Controller_h.html"] = "PMSM_Controller_h.html";
-	this.html2SrcPath["PMSM_Controller_private_h.html"] = "../PMSM_Controller_private.h";
-	this.html2Root["PMSM_Controller_private_h.html"] = "PMSM_Controller_private_h.html";
-	this.html2SrcPath["PMSM_Controller_types_h.html"] = "../PMSM_Controller_types.h";
-	this.html2Root["PMSM_Controller_types_h.html"] = "PMSM_Controller_types_h.html";
-	this.html2SrcPath["Shunt_Three_Sample_Point_c.html"] = "../Shunt_Three_Sample_Point.c";
-	this.html2Root["Shunt_Three_Sample_Point_c.html"] = "Shunt_Three_Sample_Point_c.html";
-	this.html2SrcPath["Shunt_Three_Sample_Point_h.html"] = "../Shunt_Three_Sample_Point.h";
-	this.html2Root["Shunt_Three_Sample_Point_h.html"] = "Shunt_Three_Sample_Point_h.html";
-	this.html2SrcPath["PMSM_Controller_data_c.html"] = "../PMSM_Controller_data.c";
-	this.html2Root["PMSM_Controller_data_c.html"] = "PMSM_Controller_data_c.html";
-	this.html2SrcPath["rtGetInf_c.html"] = "../rtGetInf.c";
-	this.html2Root["rtGetInf_c.html"] = "rtGetInf_c.html";
-	this.html2SrcPath["rtGetInf_h.html"] = "../rtGetInf.h";
-	this.html2Root["rtGetInf_h.html"] = "rtGetInf_h.html";
-	this.html2SrcPath["rtGetNaN_c.html"] = "../rtGetNaN.c";
-	this.html2Root["rtGetNaN_c.html"] = "rtGetNaN_c.html";
-	this.html2SrcPath["rtGetNaN_h.html"] = "../rtGetNaN.h";
-	this.html2Root["rtGetNaN_h.html"] = "rtGetNaN_h.html";
-	this.html2SrcPath["rt_defines_h.html"] = "../rt_defines.h";
-	this.html2Root["rt_defines_h.html"] = "rt_defines_h.html";
-	this.html2SrcPath["rt_nonfinite_c.html"] = "../rt_nonfinite.c";
-	this.html2Root["rt_nonfinite_c.html"] = "rt_nonfinite_c.html";
-	this.html2SrcPath["rt_nonfinite_h.html"] = "../rt_nonfinite.h";
-	this.html2Root["rt_nonfinite_h.html"] = "rt_nonfinite_h.html";
-	this.html2SrcPath["rtwtypes_h.html"] = "../rtwtypes.h";
-	this.html2Root["rtwtypes_h.html"] = "rtwtypes_h.html";
-	this.getLink2Src = function (htmlFileName) {
-		 if (this.html2SrcPath[htmlFileName])
-			 return this.html2SrcPath[htmlFileName];
-		 else
-			 return null;
-	}
-	this.getLinkFromRoot = function (htmlFileName) {
-		 if (this.html2Root[htmlFileName])
-			 return this.html2Root[htmlFileName];
-		 else
-			 return null;
-	}
-}
-Html2SrcLink.instance = new Html2SrcLink();
-var fileList = [
-"ert_main_c.html","PMSM_Controller_c.html","PMSM_Controller_h.html","PMSM_Controller_private_h.html","PMSM_Controller_types_h.html","Shunt_Three_Sample_Point_c.html","Shunt_Three_Sample_Point_h.html","PMSM_Controller_data_c.html","rtGetInf_c.html","rtGetInf_h.html","rtGetNaN_c.html","rtGetNaN_h.html","rt_defines_h.html","rt_nonfinite_c.html","rt_nonfinite_h.html","rtwtypes_h.html"];

+ 0 - 342
Simulink/PMSM_Controller_ert_rtw/html/ert_main_c.html

@@ -1,342 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: ert_main.c</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#include &lt;stddef.h&gt;</span></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#include &lt;stdio.h&gt;</span>              <span class="ct">/* This ert_main.c example uses printf/fflush */</span></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="pp">#include "PMSM_Controller.h"</span>           <span class="ct">/* Model's header file */</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include "rtwtypes.h"</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="kw">static</span> <a id="23c8" class="tk">RT_MODEL</a> <a id="23c17" class="tk">rtM_</a>;</td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="kw">static</span> <a id="24c8" class="tk">RT_MODEL</a> <a id="24c17" class="tk">*</a><span class="kw">const</span> <a id="24c24" class="tk">rtMPtr</a> = <a id="24c33" class="tk">&amp;</a><a id="24c34" class="tk">rtM_</a>; <span class="ct">/* Real-time model */</span></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="kw">static</span> <a id="25c8" class="tk">DW</a> <a id="25c11" class="tk">rtDW</a>;                        <span class="ct">/* Observable states */</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="ct">/* '&lt;Root&gt;/Vdc' */</span></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="kw">static</span> <a id="28c8" class="tk">int16_T</a> <a id="28c16" class="tk">rtU_Vdc</a>;</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="ct">/* '&lt;Root&gt;/Ts' */</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="kw">static</span> <a id="31c8" class="tk">uint16_T</a> <a id="31c17" class="tk">rtU_Ts</a>;</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="ct">/* '&lt;Root&gt;/adc_a' */</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td><span class="kw">static</span> <a id="34c8" class="tk">int16_T</a> <a id="34c16" class="tk">rtU_adc_a</a>;</td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td><span class="ct">/* '&lt;Root&gt;/adc_b' */</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td><span class="kw">static</span> <a id="37c8" class="tk">int16_T</a> <a id="37c16" class="tk">rtU_adc_b</a>;</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td></td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td><span class="ct">/* '&lt;Root&gt;/rotor_angle' */</span></td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td><span class="kw">static</span> <a id="40c8" class="tk">real_T</a> <a id="40c15" class="tk">rtU_rotor_angle</a>;</td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td></td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td><span class="ct">/* '&lt;Root&gt;/rotor_speed' */</span></td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td><span class="kw">static</span> <a id="43c8" class="tk">int16_T</a> <a id="43c16" class="tk">rtU_rotor_speed</a>;</td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td></td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td><span class="ct">/* '&lt;Root&gt;/input_target' */</span></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td><span class="kw">static</span> <a id="46c8" class="tk">int16_T</a> <a id="46c16" class="tk">rtU_input_target</a>;</td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td></td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td><span class="ct">/* '&lt;Root&gt;/hall_a' */</span></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td><span class="kw">static</span> <a id="49c8" class="tk">uint8_T</a> <a id="49c16" class="tk">rtU_hall_a</a>;</td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td></td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td><span class="ct">/* '&lt;Root&gt;/hall_b' */</span></td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><span class="kw">static</span> <a id="52c8" class="tk">uint8_T</a> <a id="52c16" class="tk">rtU_hall_b</a>;</td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td></td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><span class="ct">/* '&lt;Root&gt;/hall_c' */</span></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td><span class="kw">static</span> <a id="55c8" class="tk">uint8_T</a> <a id="55c16" class="tk">rtU_hall_c</a>;</td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td><span class="ct">/* '&lt;Root&gt;/hw_count' */</span></td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td><span class="kw">static</span> <a id="58c8" class="tk">uint32_T</a> <a id="58c17" class="tk">rtU_hw_count</a>;</td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td></td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td><span class="ct">/* '&lt;Root&gt;/b_motor_enable' */</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><span class="kw">static</span> <a id="61c8" class="tk">boolean_T</a> <a id="61c18" class="tk">rtU_b_motor_enable</a>;</td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><span class="ct">/* '&lt;Root&gt;/b_cruise_enable' */</span></td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td><span class="kw">static</span> <a id="64c8" class="tk">boolean_T</a> <a id="64c18" class="tk">rtU_b_cruise_enable</a>;</td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td></td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td><span class="ct">/* '&lt;Root&gt;/n_ctrl_type' */</span></td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td><span class="kw">static</span> <a id="67c8" class="tk">uint8_T</a> <a id="67c16" class="tk">rtU_n_ctrl_type</a>;</td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td></td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td><span class="ct">/* '&lt;Root&gt;/pwm_counts' */</span></td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td><span class="kw">static</span> <a id="70c8" class="tk">uint16_T</a> <a id="70c17" class="tk">rtY_pwm_counts</a>[8];</td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td></td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td><span class="ct">/* '&lt;Root&gt;/sector' */</span></td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td><span class="kw">static</span> <a id="73c8" class="tk">uint8_T</a> <a id="73c16" class="tk">rtY_sector</a>;</td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td></td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td><span class="ct"> * Associating rt_OneStep with a real-time clock or interrupt service routine</span></td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td><span class="ct"> * is what makes the generated code "real-time".  The function rt_OneStep is</span></td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td><span class="ct"> * always associated with the base rate of the model.  Subrates are managed</span></td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td><span class="ct"> * by the base rate from inside the generated code.  Enabling/disabling</span></td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td><span class="ct"> * interrupts and floating point context switches are target specific.  This</span></td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td><span class="ct"> * example code indicates where these should take place relative to executing</span></td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td><span class="ct"> * the generated code step function.  Overrun behavior should be tailored to</span></td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td><span class="ct"> * your application needs.  This example simply sets an error status in the</span></td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td><span class="ct"> * real-time model and returns from rt_OneStep.</span></td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td><span class="kw">void</span> <a id="86c6" class="tk">rt_OneStep</a>(<a id="86c17" class="tk">RT_MODEL</a> <a id="86c26" class="tk">*</a><span class="kw">const</span> <a id="86c33" class="tk">rtM</a>);</td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td><span class="kw">void</span> <a id="87c6" class="tk">rt_OneStep</a>(<a id="87c17" class="tk">RT_MODEL</a> <a id="87c26" class="tk">*</a><span class="kw">const</span> <a id="87c33" class="tk">rtM</a>)</td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td><span class="br">{</span></td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td>  <span class="kw">static</span> <a id="89c10" class="tk">boolean_T</a> <a id="89c20" class="tk">OverrunFlag</a> = false;</td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td></td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td>  <span class="ct">/* Disable interrupts here */</span></td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td></td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td>  <span class="ct">/* Check for overrun */</span></td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td>  <span class="kw">if</span> (<a id="94c7" class="tk">OverrunFlag</a>) <span class="br">{</span></td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td>    <a id="95c5" class="tk">rtmSetErrorStatus</a>(<a id="95c23" class="tk">rtM</a>, "Overrun");</td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td>    <span class="kw">return</span>;</td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td></td></tr>
-<tr name="99" id="99">
-<td><a id="l99" class='ln'>99</a></td><td>  <a id="99c3" class="tk">OverrunFlag</a> = true;</td></tr>
-<tr name="100" id="100">
-<td><a id="l100" class='ln'>100</a></td><td></td></tr>
-<tr name="101" id="101">
-<td><a id="l101" class='ln'>101</a></td><td>  <span class="ct">/* Save FPU context here (if necessary) */</span></td></tr>
-<tr name="102" id="102">
-<td><a id="l102" class='ln'>102</a></td><td>  <span class="ct">/* Re-enable timer or interrupt here */</span></td></tr>
-<tr name="103" id="103">
-<td><a id="l103" class='ln'>103</a></td><td>  <span class="ct">/* Set model inputs here */</span></td></tr>
-<tr name="104" id="104">
-<td><a id="l104" class='ln'>104</a></td><td></td></tr>
-<tr name="105" id="105">
-<td><a id="l105" class='ln'>105</a></td><td>  <span class="ct">/* Step the model for base rate */</span></td></tr>
-<tr name="106" id="106">
-<td><a id="l106" class='ln'>106</a></td><td>  <a id="106c3" class="tk">PMSM_Controller_step</a>(<a id="106c24" class="tk">rtM</a>, <a id="106c29" class="tk">rtU_Vdc</a>, <a id="106c38" class="tk">rtU_Ts</a>, <a id="106c46" class="tk">rtU_adc_a</a>, <a id="106c57" class="tk">rtU_adc_b</a>,</td></tr>
-<tr name="107" id="107">
-<td><a id="l107" class='ln'>107</a></td><td>                       <a id="107c24" class="tk">rtU_rotor_angle</a>, <a id="107c41" class="tk">rtU_rotor_speed</a>, <a id="107c58" class="tk">rtU_input_target</a>,</td></tr>
-<tr name="108" id="108">
-<td><a id="l108" class='ln'>108</a></td><td>                       <a id="108c24" class="tk">rtY_pwm_counts</a>, <a id="108c40" class="tk">&amp;</a><a id="108c41" class="tk">rtY_sector</a>);</td></tr>
-<tr name="109" id="109">
-<td><a id="l109" class='ln'>109</a></td><td></td></tr>
-<tr name="110" id="110">
-<td><a id="l110" class='ln'>110</a></td><td>  <span class="ct">/* Get model outputs here */</span></td></tr>
-<tr name="111" id="111">
-<td><a id="l111" class='ln'>111</a></td><td></td></tr>
-<tr name="112" id="112">
-<td><a id="l112" class='ln'>112</a></td><td>  <span class="ct">/* Indicate task complete */</span></td></tr>
-<tr name="113" id="113">
-<td><a id="l113" class='ln'>113</a></td><td>  <a id="113c3" class="tk">OverrunFlag</a> = false;</td></tr>
-<tr name="114" id="114">
-<td><a id="l114" class='ln'>114</a></td><td></td></tr>
-<tr name="115" id="115">
-<td><a id="l115" class='ln'>115</a></td><td>  <span class="ct">/* Disable interrupts here */</span></td></tr>
-<tr name="116" id="116">
-<td><a id="l116" class='ln'>116</a></td><td>  <span class="ct">/* Restore FPU context here (if necessary) */</span></td></tr>
-<tr name="117" id="117">
-<td><a id="l117" class='ln'>117</a></td><td>  <span class="ct">/* Enable interrupts here */</span></td></tr>
-<tr name="118" id="118">
-<td><a id="l118" class='ln'>118</a></td><td><span class="br">}</span></td></tr>
-<tr name="119" id="119">
-<td><a id="l119" class='ln'>119</a></td><td></td></tr>
-<tr name="120" id="120">
-<td><a id="l120" class='ln'>120</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="121" id="121">
-<td><a id="l121" class='ln'>121</a></td><td><span class="ct"> * The example "main" function illustrates what is required by your</span></td></tr>
-<tr name="122" id="122">
-<td><a id="l122" class='ln'>122</a></td><td><span class="ct"> * application code to initialize, execute, and terminate the generated code.</span></td></tr>
-<tr name="123" id="123">
-<td><a id="l123" class='ln'>123</a></td><td><span class="ct"> * Attaching rt_OneStep to a real-time clock is target specific.  This example</span></td></tr>
-<tr name="124" id="124">
-<td><a id="l124" class='ln'>124</a></td><td><span class="ct"> * illustrates how you do this relative to initializing the model.</span></td></tr>
-<tr name="125" id="125">
-<td><a id="l125" class='ln'>125</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="126" id="126">
-<td><a id="l126" class='ln'>126</a></td><td><a id="126c1" class="tk">int_T</a> <a id="126c7" class="tk">main</a>(<a id="126c12" class="tk">int_T</a> <a id="126c18" class="tk">argc</a>, <span class="kw">const</span> <span class="kw">char</span> <a id="126c35" class="tk">*</a><a id="126c36" class="tk">argv</a>[])</td></tr>
-<tr name="127" id="127">
-<td><a id="l127" class='ln'>127</a></td><td><span class="br">{</span></td></tr>
-<tr name="128" id="128">
-<td><a id="l128" class='ln'>128</a></td><td>  <a id="128c3" class="tk">RT_MODEL</a> <a id="128c12" class="tk">*</a><span class="kw">const</span> <a id="128c19" class="tk">rtM</a> = <a id="128c25" class="tk">rtMPtr</a>;</td></tr>
-<tr name="129" id="129">
-<td><a id="l129" class='ln'>129</a></td><td></td></tr>
-<tr name="130" id="130">
-<td><a id="l130" class='ln'>130</a></td><td>  <span class="ct">/* Unused arguments */</span></td></tr>
-<tr name="131" id="131">
-<td><a id="l131" class='ln'>131</a></td><td>  (<span class="kw">void</span>)(<a id="131c10" class="tk">argc</a>);</td></tr>
-<tr name="132" id="132">
-<td><a id="l132" class='ln'>132</a></td><td>  (<span class="kw">void</span>)(<a id="132c10" class="tk">argv</a>);</td></tr>
-<tr name="133" id="133">
-<td><a id="l133" class='ln'>133</a></td><td></td></tr>
-<tr name="134" id="134">
-<td><a id="l134" class='ln'>134</a></td><td>  <span class="ct">/* Pack model data into RTM */</span></td></tr>
-<tr name="135" id="135">
-<td><a id="l135" class='ln'>135</a></td><td>  <a id="135c3" class="tk">rtM</a>-&gt;<a id="135c8" class="tk">dwork</a> = <a id="135c16" class="tk">&amp;</a><a id="135c17" class="tk">rtDW</a>;</td></tr>
-<tr name="136" id="136">
-<td><a id="l136" class='ln'>136</a></td><td></td></tr>
-<tr name="137" id="137">
-<td><a id="l137" class='ln'>137</a></td><td>  <span class="ct">/* Initialize model */</span></td></tr>
-<tr name="138" id="138">
-<td><a id="l138" class='ln'>138</a></td><td>  <a id="138c3" class="tk">PMSM_Controller_initialize</a>(<a id="138c30" class="tk">rtM</a>);</td></tr>
-<tr name="139" id="139">
-<td><a id="l139" class='ln'>139</a></td><td></td></tr>
-<tr name="140" id="140">
-<td><a id="l140" class='ln'>140</a></td><td>  <span class="ct">/* Attach rt_OneStep to a timer or interrupt service routine with</span></td></tr>
-<tr name="141" id="141">
-<td><a id="l141" class='ln'>141</a></td><td><span class="ct">   * period 6.2E-6 seconds (the model's base sample time) here.  The</span></td></tr>
-<tr name="142" id="142">
-<td><a id="l142" class='ln'>142</a></td><td><span class="ct">   * call syntax for rt_OneStep is</span></td></tr>
-<tr name="143" id="143">
-<td><a id="l143" class='ln'>143</a></td><td><span class="ct">   *</span></td></tr>
-<tr name="144" id="144">
-<td><a id="l144" class='ln'>144</a></td><td><span class="ct">   *  rt_OneStep(rtM);</span></td></tr>
-<tr name="145" id="145">
-<td><a id="l145" class='ln'>145</a></td><td><span class="ct">   */</span></td></tr>
-<tr name="146" id="146">
-<td><a id="l146" class='ln'>146</a></td><td>  <a id="146c3" class="tk">printf</a>("Warning: The simulation will run forever. "</td></tr>
-<tr name="147" id="147">
-<td><a id="l147" class='ln'>147</a></td><td>         "Generated ERT main won't simulate model step behavior. "</td></tr>
-<tr name="148" id="148">
-<td><a id="l148" class='ln'>148</a></td><td>         "To change this behavior select the 'MAT-file logging' option.\n");</td></tr>
-<tr name="149" id="149">
-<td><a id="l149" class='ln'>149</a></td><td>  <a id="149c3" class="tk">fflush</a>((<a id="149c11" class="tk">NULL</a>));</td></tr>
-<tr name="150" id="150">
-<td><a id="l150" class='ln'>150</a></td><td>  <span class="kw">while</span> (<a id="150c10" class="tk">rtmGetErrorStatus</a>(<a id="150c28" class="tk">rtM</a>) <a id="150c33" class="tk">==</a> (<a id="150c37" class="tk">NULL</a>)) <span class="br">{</span></td></tr>
-<tr name="151" id="151">
-<td><a id="l151" class='ln'>151</a></td><td>    <span class="ct">/*  Perform other application tasks here */</span></td></tr>
-<tr name="152" id="152">
-<td><a id="l152" class='ln'>152</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="153" id="153">
-<td><a id="l153" class='ln'>153</a></td><td></td></tr>
-<tr name="154" id="154">
-<td><a id="l154" class='ln'>154</a></td><td>  <span class="ct">/* Disable rt_OneStep() here */</span></td></tr>
-<tr name="155" id="155">
-<td><a id="l155" class='ln'>155</a></td><td>  <span class="kw">return</span> 0;</td></tr>
-<tr name="156" id="156">
-<td><a id="l156" class='ln'>156</a></td><td><span class="br">}</span></td></tr>
-<tr name="157" id="157">
-<td><a id="l157" class='ln'>157</a></td><td></td></tr>
-<tr name="158" id="158">
-<td><a id="l158" class='ln'>158</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="159" id="159">
-<td><a id="l159" class='ln'>159</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="160" id="160">
-<td><a id="l160" class='ln'>160</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="161" id="161">
-<td><a id="l161" class='ln'>161</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="162" id="162">
-<td><a id="l162" class='ln'>162</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="163" id="163">
-<td><a id="l163" class='ln'>163</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

BIN
Simulink/PMSM_Controller_ert_rtw/html/hilite_warning.png


+ 0 - 33
Simulink/PMSM_Controller_ert_rtw/html/inspect.html

@@ -1,33 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <link rel="stylesheet" type="text/css" href="rtwreport.css" />    
- <link rel="stylesheet" type="text/css" href="css/coder_app.css" />    
- <style type="text/css">
-   div#popup_window {
-       position: relative;
-       background-color: ghostwhite;
-       border-radius: 0px;
-       -moz-box-shadow: none;
-       -webkit-box-shadow: none;
-       box-shadow: none;
-   }
-   div#popup_window a {
-       text-decoration: underline;
-       color: blue;
-   }
-   div#token_usage_nav {
-       border-bottom: none;
-   }
- </style>
-</head>
-<body class="inspect_body">
-<table width="100%">
-  <col style="width: 95%;"><col style="width: 5%">
-  <tr><td><div id="popup_window"></div></td>
-    <td align="right"><div><a onclick="top.closeInspectWindow();" class="closeButton">x</a></div></td>
-  </tr>
-</table></body></html>
-
-<!-- LocalWords:  ghostwhite
--->

+ 0 - 525
Simulink/PMSM_Controller_ert_rtw/html/js/coder_app.js

@@ -1,525 +0,0 @@
-/* Copyright 2013-2018 The MathWorks, Inc. */
-function queryByClassName(className, elem) {
-    if (!elem) elem = document.body;
-    if (typeof elem.querySelectorAll === "function") {
-        return elem.querySelectorAll("."+className);
-    } else {
-        return elem.getElementsByClass(className);
-    }
-}
-
-function nav_token_usage_details(direction) {
-    var els = queryByClassName("token_usage_details_tabrow");
-    var selectedIdx = 0;
-    var selectedClassName = "selected";
-    for (selectedIdx; selectedIdx < els.length; selectedIdx++) {
-        if (els[selectedIdx].classList.contains(selectedClassName)) {
-            break;
-        }
-    }
-    var nextIdx = selectedIdx;
-    if (direction === -1 && selectedIdx > 0) {
-        nextIdx = selectedIdx-1;                
-    } else if (direction === 1 && selectedIdx < els.length - 1) {
-        nextIdx = selectedIdx + 1;
-    }   
-    if (nextIdx !== selectedIdx) {
-        els[selectedIdx].classList.remove(selectedClassName);
-        els[nextIdx].classList.add(selectedClassName);
-        els[nextIdx].scrollIntoView(alignWithTop=false);
-    }
-    return false;
-}
-
-function tabrowClicked(event) { 
-}
-
-function popupOnload() {
-    var els = queryByClassName("token_usage_details_tabrow");   
-    for (var i=0; i<els.length; i++) {
-        els[i].onclick= tabrowClicked;
-    }
-};
-
-function tokenOnRightclick(event) {
-    var filename = location.pathname.split(/\//);
-    filename = filename[filename.length-1];
-    top.inspectToken(filename, location.pathname, event);
-    top.hiliteClickedToken(event.currentTarget);
-    return false;
-}
-
-function tokenOnclick(event) {
-    tokenOnRightclick(event);
-    if (event.currentTarget.href.length !== 0 && event.currentTarget.href.protocol !== "matlab:") {
-        top.tokenLinkOnClick(event);
-        return true;
-    }
-    return false;
-};
-
-function tokenOnMouseOver(event) {    
-    var filename = location.pathname.split(/\//);
-    filename = filename[filename.length-1];
-    createPopup(filename, event);
-};
-function tokenOnMouseOut(event) {
-    destroyPopup(event.currentTarget);
-};
-
-function blkLinkOnClick(event) {
-    top.hiliteClickedToken(event.currentTarget);
-    return true;
-}
-function clearTokenLink(id) {    
-    var codeElement = document.getElementById(id);
-    var els = queryByClassName("tk", codeElement);
-    var elem; 
-    if (top.CodeDefine && top.CodeDefine.instance)  {
-        for (var i=0; i<els.length; i++) {
-            var re = new RegExp('active', 'g');
-            els[i].className = els[i].className.replace(re, '');
-            re = new RegExp('traceable_token', 'g');
-            els[i].className = els[i].className.replace(re, '');            
-        }
-    }
-}
-function updateTokenLink(id) {
-    var codeElement = document.getElementById(id);
-    var filename = location.pathname.split(/\//);
-    filename = filename[filename.length-1];  
-    var srcFilename;
-    if (top.RTW_TraceInfo) {
-        srcFilename = top.RTW_TraceInfo.toSrcFileName(filename);
-    }
-    var els = queryByClassName("tk", codeElement);
-    var elem; 
-    var hasTraceFlag = null;
-    if (top.TraceInfoFlag && top.TraceInfoFlag.instance)
-        hasTraceFlag =  top.TraceInfoFlag.instance.traceFlag;
-    else 
-        hasTraceFlag = false;
-    var defObj;
-    var traceObj;
-    var codeDef = (top.CodeDefine &&  top.CodeDefine.instance) ? top.CodeDefine.instance : null;
-    var aLink = top.document.createElement("a");
-    if (hasTraceFlag || (top.CodeDefine && top.CodeDefine.instance))  {
-        for (var i=0; i<els.length; i++) {
-            defObj = null;
-            if (codeDef) {
-                if (codeDef.def.hasOwnProperty(srcFilename + ":" + els[i].text)) {
-                    defObj = codeDef.def[srcFilename + ":" + els[i].text];
-                } else if (codeDef.def.hasOwnProperty(els[i].text)) {
-                    defObj = codeDef.def[els[i].text];
-                }
-            } 
-            traceObj = hasTraceFlag && hasTraceFlag[srcFilename+":"+els[i].id];
-            if (traceObj || defObj) {
-                els[i].onclick= tokenOnclick;
-                els[i].oncontextmenu= tokenOnRightclick;
-                els[i].onmouseover = tokenOnMouseOver;    
-                els[i].onmouseout = tokenOnMouseOut;
-                els[i].className += " active";
-                els[i].target = "rtwreport_document_frame";
-                if (traceObj && top.reportModel) {    
-                    if (top.testHarnessInfo && top.testHarnessInfo.IsTestHarness==="1") {
-                        els[i].href = "matlab:rtw.report.code2model('" + top.reportModel 
-                            + "','" + location.pathname + "','" + els[i].id 
-                            + "','" + top.testHarnessInfo.HarnessName 
-                            + "','" + top.testHarnessInfo.HarnessOwner
-                            + "','" + top.testHarnessInfo.OwnerFileName + "')";
-                    } else {
-                        els[i].href = "matlab:rtw.report.code2model(\'" + top.reportModel 
-                            + "\',\'" + location.pathname + "\',\'" + els[i].id + "')";
-                    }
-                } else {
-                    aLink.href = defObj.file;
-                    els[i].href = aLink.pathname + "#" + defObj.line;
-                }
-            }
-        }
-    }
-}
-// remove the code table; insert back
-function updateToken(codeElement) {
-    var filename = location.pathname.split(/\//);
-    filename = filename[filename.length-1];  
-    var srcFilename;
-    if (top.RTW_TraceInfo) {
-        srcFilename = top.RTW_TraceInfo.toSrcFileName(filename);
-    }
-    // update block path link in comments
-    els = queryByClassName("blk", codeElement);
-    var lineSid = null;
-    if (top.RTW_rtwnameSIDMap && top.RTW_rtwnameSIDMap.instance) {
-        for (var i=0; i<els.length; i++) {
-            lineSid = top.RTW_rtwnameSIDMap.instance.getSID(els[i].text);
-            if (lineSid) {
-                if (top.testHarnessInfo && top.testHarnessInfo.IsTestHarness==="1") {
-                    els[i].href = "matlab:coder.internal.code2model('" + lineSid.sid + "','" +
-                        top.testHarnessInfo.HarnessName+ "','" +
-                        top.testHarnessInfo.HarnessOwner+ "','" + 
-                        top.testHarnessInfo.OwnerFileName + "');";
-                } else {
-                    els[i].href = "matlab:coder.internal.code2model('" + lineSid.sid + "');";
-                }
-                els[i].id = "blkLink_" + i;
-                els[i].onclick = blkLinkOnClick;
-                els[i].className += " blk_active";
-            }
-        }
-    }   
-    // update lib block path link in comments
-    els = queryByClassName("libblk", codeElement);
-    var lineSid = null;    
-    for (var i=0; i<els.length; i++) {
-        lineSid = els[i].text;
-        if (lineSid) {
-            if (top.testHarnessInfo && top.testHarnessInfo.IsTestHarness==="1") {
-                els[i].href = "matlab:coder.internal.code2model('" + lineSid + "','" +
-                    top.testHarnessInfo.HarnessName+ "','" +
-                    top.testHarnessInfo.HarnessOwner+ "','" + 
-                    top.testHarnessInfo.OwnerFileName + "');";
-            } else {
-                els[i].href = "matlab:coder.internal.code2model('" + lineSid + "');";
-            }
-            els[i].id = "blkLink_" + i;
-            els[i].onclick = blkLinkOnClick;
-            els[i].className += " blk_active";
-        }
-    }
-    // update requirement link in comments
-    els = queryByClassName("req", codeElement);
-    var req_block;
-    if (top.RTW_rtwnameSIDMap && top.RTW_rtwnameSIDMap.instance) {
-        for (var i=0; i<els.length; i++) {
-            lineSid = top.RTW_rtwnameSIDMap.instance.getSID(els[i].getAttribute("blockpath"));
-            if (lineSid) {
-                req_block = lineSid.sid;
-            } else {
-                req_block = els[i].getAttribute("blockpath");
-            }
-            var req_id = els[i].getAttribute("req_id");
-            els[i].href = "matlab:rtw.report.code2req('" + req_block + "'," + req_id + ");";
-            els[i].id = "req_" + i;
-            els[i].onclick = top.reqOnClick;
-            els[i].className += " req_active";
-        }
-    }
-    
-    // add link to source file
-    if (top.Html2SrcLink && top.Html2SrcLink.instance) {
-        filename = top.rtwGetFileName(location.href);
-        var link2Src = top.Html2SrcLink.instance.getLink2Src(filename);
-        var link = document.createElement("h4");
-        link.innerHTML = "File: <a href=\"" + link2Src + 
-            "\" target = \"rtwreport_document_frame\" id=\"linkToText_plain\">" + 
-            top.rtwGetFileName(link2Src) + "</a>";
-        var bodyNode = document.body;
-        bodyNode.insertBefore(link, bodyNode.firstElementChild);
-    }
-    top.updateHyperlinks();
-    // update fileSelector frame
-    if (top.fileSelector) {
-        var o = top.fileSelector.document.getElementById('fileSelector');
-        if (o) {
-            o.value = filename;
-        }
-    }
-   //  add links to line numbers
-    var hasLineFlag = null;
-    if (top.TraceInfoLineFlag && top.TraceInfoLineFlag.instance) {
-        hasLineFlag =  true;
-    } else {
-        hasLineFlag = false;
-    }
-
-    if(hasLineFlag) {
-        var lines = queryByClassName("ln", codeElement);
-        var lineTraceFlag = top.TraceInfoLineFlag.instance.lineTraceFlag;
-        var lineNo = null;
-        for (var i=0; i<lines.length; i++) {
-            lineNo = lines[i].id.substring(1)
-            if(lineTraceFlag[srcFilename+":"+ lineNo]) {
-                lines[i].className += " active";
-                if (top.testHarnessInfo && top.testHarnessInfo.IsTestHarness==="1") {
-                    lines[i].href = "matlab:rtw.report.code2model('" + top.reportModel 
-                        + "','" + srcFilename
-                        + "','" + lineNo
-                        + "','" + top.testHarnessInfo.HarnessName 
-                        + "','" + top.testHarnessInfo.HarnessOwner
-                        + "','" + top.testHarnessInfo.OwnerFileName + "')";
-                } else {
-                    lines[i].href = "matlab:rtw.report.code2model('" + top.reportModel 
-                        + "','" + srcFilename + "','" + lineNo + "')";
-                }
-            }
-        }
-    }
-}
-function getInsertFunction(element) {
-    var parentNode = element.parentNode;
-    var nextSibling = element.nextSibling;
-    parentNode.removeChild(element);
-    var spinner = document.createElement("img");
-    spinner.src = "spinner.gif";
-    parentNode.appendChild(spinner);
-    return function() {
-        if (spinner) {
-            parentNode.removeChild(spinner);
-        }
-        if (nextSibling) {
-            parentNode.insertBefore(element, nextSibling);
-        } else {
-            parentNode.appendChild(element);
-        }
-    };
-}
-
-var hovered_line = '';
-var lineOnMouseIn = function (id) {
-    if (hovered_line !== id) {
-        hovered_line = id;      
-        updateTokenLink(id);            
-    }
-}
-var lineOnMouseOut = function (id) {    
-    clearTokenLink(id);
-    hovered_line = '';
-}
-function registerDelayedOnMouseOver(elm, onMouseIn, onMouseOut) {
-    var delay = function (elem, onMouseIn, onMouseOut) {                
-        var timeout = null;
-        elem.onmouseover = function(e) {                                
-            timeout = setTimeout(onMouseIn, 200, e.currentTarget.id);
-        };
-        elem.onmouseout = function(e) {                 
-            clearTimeout(timeout);
-            if (hovered_line !== '') {
-                onMouseOut(e.currentTarget.id);
-            }
-        }               
-    };
-    delay(elm, onMouseIn, onMouseOut);
-}
-
-// Returns true if obj has all the fields in criteria and obj's values (as strings)
-// are present in criteria's values
-function matchCriteria(obj, criteria) {
-    for (var prop in criteria) {
-        if (!obj.hasOwnProperty(prop) || String(obj[prop]).toUpperCase().indexOf(String(criteria[prop]).toUpperCase()) === -1) {
-            return false;
-        }
-    }
-    return true;
-}
-
-function findParent(node, criteria) {
-    if (!node) {
-        return null;
-    }
-    else if (matchCriteria(node, criteria)) {
-        return node;
-    }
-    else {
-        return findParent(node.parentNode, criteria);
-    }
-}
-
-function getLastTableCellContents(trNode) {
-    for (var i = trNode.childNodes.length - 1; i >= 0; --i) {
-        var childNode = trNode.childNodes[i];
-        if (childNode.tagName.toUpperCase() === "TD") {
-            return childNode.childNodes;
-        }
-    }
-    return null;
-}
-
-// see g1225075
-function fixBoxStyleFnHeaderLineWidths() {
-    // Match strings like "/**********/" which is the top line of
-    // a box-style function comment header
-    var reBoxHeader = /\/\*+\//;
-
-    // Match strings like "'     */" which is the contents of the text
-    // element originally generated in the report to pad the width of
-    // the line.
-    var rePadding = /'\s*\*\//;
-
-    // All block identifier elements in the report page
-    blkLineElts = queryByClassName("blk");
-    for (var i = 0; i < blkLineElts.length; ++i) {
-        var origPadding = blkLineElts[i].nextSibling;
-        if (origPadding.textContent.match(rePadding)) {
-            var spanElt = findParent(blkLineElts[i], { tagName: "span", className: "ct" });
-            if (!spanElt) {
-                continue;
-            }
-
-            // The numbered line in the report containing block identifier "i"
-            var tableRowElt = findParent(spanElt, { tagName: "tr" });
-            if (!tableRowElt) {
-                continue;
-            }
-
-            // Loop backward through table rows (i.e., report lines) looking
-            // for the "/***************/" start of the header. When found save
-            // its pixel width. Not actually the width of the <tr> itself but
-            // the span inside its last <td>. This is will determine the real
-            // padding that is needed for proper alignment regardless of font
-            // or CKJ characters.
-            var targetWidth = 0;
-            var sanity = Number.MAX_VALUE;
-            var node = tableRowElt.previousSibling;
-            while (node && (sanity-- > 0)) {
-                var lastCellContents = getLastTableCellContents(node);
-                if (lastCellContents) {
-                    if (lastCellContents.length === 0) {
-                        break;
-                    }
-                    if (lastCellContents[0].textContent.match(reBoxHeader)) {
-                        targetWidth = lastCellContents[0].offsetWidth;
-                        break;
-                    }
-                }
-                node = node.previousSibling;
-            }
-
-            // If applying a new padding (i.e., targetWidth > 0), replace
-            // the original padding "'   */' (a single text element) with
-            // two text elements and a span in between. The span will be the
-            // new pixel-accurate padding.
-            if (targetWidth > 0) {
-                var singleQuoteNode = document.createTextNode("'");
-                var spacerNode = document.createElement('span');
-                origPadding.textContent = "*/";
-                origPadding.parentNode.insertBefore(spacerNode, origPadding);
-                origPadding.parentNode.insertBefore(singleQuoteNode, spacerNode);
-
-                var padWidth = targetWidth - spanElt.offsetWidth;
-                spacerNode.style.display = 'inline-block';
-                spacerNode.style.width = String(padWidth) + "px";
-                spacerNode.style.height = '1em'; // cursor won't work w/o some height
-                spacerNode.style.cursor = 'text';
-            }
-        }
-    }
-}
-
-// the onload function for source file
-function srcFileOnload() {
-    var codeElement = document.getElementById("codeTbl");
-    var insertFunction = getInsertFunction(codeElement);                
-    try {
-        var els = codeElement.getElementsByTagName("tr");
-        for (var i = 0; i < els.length; i++) {                          
-            registerDelayedOnMouseOver(els[i], lineOnMouseIn, lineOnMouseOut);
-        }
-        updateToken(codeElement);
-    } catch (err) {};
-    insertFunction();
-    // add code to model hyperlinks for all tokens
-    var filename = location.pathname.split(/\//);
-    filename = filename[filename.length-1];
-    // highlight the filename in the TOC frame
-    if (top.rtwreport_contents_frame && top.hiliteByFileName(top.rtwreport_document_frame.document.location.href)) {
-        // remove the highlights in the TOC frame if filename is hilite successfully
-        top.removeHiliteTOC(top.rtwreport_contents_frame);
-    }
-
-    // annotate code with code coverage data
-    if (typeof rtwannotate === 'function') {
-        rtwannotate(filename.replace(/.html$/,"_cov.xml"));
-    }
-
-    fixBoxStyleFnHeaderLineWidths();
-
-    // highlight token and row 
-    if (top.RTW_TraceInfo.instance && top.RTW_TraceArgs.instance) {
-        var i;
-        // find the highlight file name
-        var fileIdx = top.RTW_TraceArgs.instance.getFileIdx(filename);
-        var ids=[], rows=[];
-        if (typeof fileIdx !== "undefined") {
-            ids = top.RTW_TraceArgs.instance.getIDs(fileIdx);
-            rows = top.RTW_TraceArgs.instance.getRows(fileIdx);
-            // highlight rows in file
-            for (i=0; i<rows.length;i++) {
-                elem = top.rtwreport_document_frame.document.getElementById(rows[i]);
-                if (elem) elem.className += " hilite";
-            }
-            // highlight tokens in file
-            if (top.GlobalConfig.hiliteToken) {
-                for (i=0; i<ids.length;i++) {
-                    elem = top.rtwreport_document_frame.document.getElementById(ids[i]);
-                    if (elem) elem.className += " hilite";              
-                }
-            }
-        } // end of if current file has highlighted lines
-
-        // if the loaded file is not currFile, call setInitLocation
-        var currFileIdx = top.RTW_TraceInfo.instance.getCurrFileIdx();
-        var myFileIdx = top.RTW_TraceInfo.instance.getFileIdx(filename);
-        // update navigation status if the file is loaded first time
-        if (currFileIdx !== myFileIdx && document.location.hash === "") {
-            if (rows.length > 0) 
-                top.RTW_TraceInfo.instance.setInitLocation(filename,rows[0]);
-            else {
-                top.toggleNavSideBar("off");                            
-                return;
-            }
-        }
-
-        // display navigation side bar
-        if (top.rtwreport_nav_frame) top.rtwreport_nav_frame.location.reload();
-        if (rows.length>0) {
-            top.toggleNavSideBar("on");
-            top.toggleNavToolBar("on");
-        } else {
-            top.toggleNavSideBar("off");
-        }
-    }
-    top.scrollToLineBasedOnHash(document.location.hash);
-    function getHash() {
-        var loc;
-        var aHash="";
-        var topDocObj = top.window.document;    
-        // get the hash value from location.
-        loc = topDocObj.location;
-        loc = loc.search || loc.hash;
-        aHash = loc.substring(1);
-        aHash = decodeURI(aHash);
-        return aHash;   
-    }
-}
-
-function createPopup(filename, evt) {
-    var anchorObj = evt.currentTarget;
-    if (anchorObj.children.length > 0)
-        return;
-    var filename = location.pathname.split(/\//);
-    filename = filename[filename.length-1];
-    var windowObj = top.getInspectWindow();
-    var propObj = top.getInspectData(filename, anchorObj);
-    var navObj = top.getInspectLink(filename, location.pathname, anchorObj);
-    if (propObj) { 
-        windowObj.appendChild(propObj);
-        windowObj.style.left = "0px";
-        if (anchorObj.parentElement.nodeName === "TD" && 
-            anchorObj.parentElement.parentElement.nodeName === "TR") {
-            anchorObj.parentElement.parentElement.lastChild.insertBefore(windowObj,
-                                                                         anchorObj.parentElement.parentElement.lastChild.lastChild.nextSibling);
-            var left = Math.min(evt.clientX , window.innerWidth - windowObj.scrollWidth - 30);
-            left = Math.max(0, left);
-            windowObj.style.left = "" + left + "px";
-        }
-    }
-};
-
-function destroyPopup(anchorObj) {
-    var popWindow = document.getElementById("popup_window");
-    if (popWindow) {
-        popWindow.parentElement.removeChild(popWindow);
-    }
-};

+ 0 - 14
Simulink/PMSM_Controller_ert_rtw/html/nav.html

@@ -1,14 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-</head>
-    <style>
-        * {
-            margin: 0;
-            padding: 0
-        }
-    </style>
-    <body onresize="top.drawNavSideBar();" onload="top.drawNavSideBar();top.load_metrics();">
-      <canvas id="canvas" title="navigate to highlighted lines"></canvas>
-    </body>
-</html>

+ 0 - 69
Simulink/PMSM_Controller_ert_rtw/html/navToolbar.html

@@ -1,69 +0,0 @@
-<!DOCTYPE html>
-<html>
-  <head>
-    <link rel="stylesheet" type="text/css" href="rtwreport.css" />
-    <link rel="stylesheet" type="text/css" href="css/coder_app.css" />
-  <script>
-    function NavOnloadFcn() {
-        var node = document.getElementById("rtwIdTraceBlock");
-        var td1 = document.getElementById("td1");
-        if (node && top.RTW_TraceArgs.instance) {
-            var sid = top.RTW_TraceArgs.instance.getBlock();
-            if (sid) {
-                if (top.RTW_TraceArgs.instance.getNumBlocks() === 1) {
-                    var block = sid;
-                    if (top.RTW_rtwnameSIDMap && top.RTW_rtwnameSIDMap.instance && top.RTW_rtwnameSIDMap.instance.getRtwname(sid)) {
-                        block = top.RTW_rtwnameSIDMap.instance.getRtwname(sid).rtwname;
-                    }
-                    if (block) {
-                        node.textContent = "'" + block + "'";
-                    }
-                    td1.className = "";
-                } else {
-                    td1.innerHTML = "<b>Highlight code for selected blocks:</b>";
-                }
-            } else {
-                td1.className = "hidden";
-            }
-         }
-        if (top.RTW_TraceInfo && top.RTW_TraceInfo.instance) {
-           top.RTW_TraceInfo.instance.updateNavState();
-        }        
-   }
-   function resize_text() {
-        var node = document.getElementById("rtwIdTraceBlock");        
-        if (node) {
-            node.style.maxWidth = "" + (window.innerWidth - 450) + "px";
-        }
-        top.resize_NavToolbar_frame();
-   }
-  </script>
-  </head>
-  <body class="nav_toolbar" onload="NavOnloadFcn(); resize_text();" onresize="resize_text();">
-    <table class="nav_table" id="rtwIdTracePanel">
-      <col style="width: 90%;">
-      <col style="width: 150px;">
-      <col style="width: 150px;">
-      <tr>
-        <td title="Navigation control for highlighted code" id="td1">
-          <b>Highlight code for block:</b>
-          <div id="rtwIdTraceBlock" style="overflow: hidden;text-overflow:ellipsis;white-space: nowrap"></div>
-        </td>
-        <td style="white-space:nowrap">
-	  <INPUT class="button" TYPE="button" VALUE="<<" style="width: 45px; height: 2em" ID="rtwIdButtonFirst" ONCLICK="if (top.rtwGoFirst) top.rtwGoFirst();" title="goto the first highlighted line" />
-	  <INPUT class="button" TYPE="button" VALUE="<" style="width: 45px; height: 2em" ID="rtwIdButtonPrev" ONCLICK="if (top.rtwGoPrev) top.rtwGoPrev();" disabled="disabled" title="goto the previous highlighted line"/>        
-	  <span id="rtwIdTraceNumber"></span>
-	  <INPUT class="button" TYPE="button" VALUE=">" style="width: 45px; height: 2em" ID="rtwIdButtonNext" ONCLICK="if (top.rtwGoNext) top.rtwGoNext();" disabled="disabled" title="goto the next highlighted line"/>
-	  <INPUT class="button" TYPE="button" VALUE=">>" style="width: 45px; height: 2em" ID="rtwIdButtonLast" ONCLICK="if (top.rtwGoLast) top.rtwGoLast();" title="goto the last highlighted line" />
-        </td>
-        <td>
-          <INPUT class="button" TYPE="button" VALUE="Remove Highlights" style="width: 150px; height: 2em" ID="rtwIdButtonRemove" ONCLICK="if (top.removeInCodeTraceHighlight()) top.removeInCodeTraceHighlight()" title="remove highlighted lines"/>
-        </td>
-      </tr>
-    </table>
-  </body>
-</html>
-</table>
-
-<!-- LocalWords:  Onload px ONCLICK
--->

+ 0 - 216
Simulink/PMSM_Controller_ert_rtw/html/rtGetInf_c.html

@@ -1,216 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rtGetInf.c</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="ct"> * Abstract:</span></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="ct"> *      Function to initialize non-finite, Inf</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "rtGetInf.h"</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#define</span> <a id="23c9" class="tk">NumBitsPerChar</a>                 8U</td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="ct"> * Initialize rtInf needed by the generated code.</span></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="ct"> * Inf is initialized as non-signaling. Assumes IEEE.</span></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><a id="29c1" class="tk">real_T</a> <a id="29c8" class="tk">rtGetInf</a>(<span class="kw">void</span>)</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="br">{</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td>  <a id="31c3" class="tk">size_t</a> <a id="31c10" class="tk">bitsPerReal</a> = <span class="kw">sizeof</span>(<a id="31c31" class="tk">real_T</a>) <a id="31c39" class="tk">*</a> (<a id="31c42" class="tk">NumBitsPerChar</a>);</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td>  <a id="32c3" class="tk">real_T</a> <a id="32c10" class="tk">inf</a> = 0.0;</td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td>  <span class="kw">if</span> (<a id="33c7" class="tk">bitsPerReal</a> <a id="33c19" class="tk">==</a> 32U) <span class="br">{</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td>    <a id="34c5" class="tk">inf</a> = <a id="34c11" class="tk">rtGetInfF</a>();</td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td>    <span class="kw">union</span> <span class="br">{</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td>      <a id="37c7" class="tk">LittleEndianIEEEDouble</a> <a id="37c30" class="tk">bitVal</a>;</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td>      <a id="38c7" class="tk">real_T</a> <a id="38c14" class="tk">fltVal</a>;</td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td>    <span class="br">}</span> <a id="39c7" class="tk">tmpVal</a>;</td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td>    <a id="41c5" class="tk">tmpVal</a>.<a id="41c12" class="tk">bitVal</a>.<a id="41c19" class="tk">words</a>.<a id="41c25" class="tk">wordH</a> = 0x7FF00000U;</td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td>    <a id="42c5" class="tk">tmpVal</a>.<a id="42c12" class="tk">bitVal</a>.<a id="42c19" class="tk">words</a>.<a id="42c25" class="tk">wordL</a> = 0x00000000U;</td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td>    <a id="43c5" class="tk">inf</a> = <a id="43c11" class="tk">tmpVal</a>.<a id="43c18" class="tk">fltVal</a>;</td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td>  <span class="kw">return</span> <a id="46c10" class="tk">inf</a>;</td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td><span class="br">}</span></td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td><span class="ct"> * Initialize rtInfF needed by the generated code.</span></td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td><span class="ct"> * Inf is initialized as non-signaling. Assumes IEEE.</span></td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><a id="53c1" class="tk">real32_T</a> <a id="53c10" class="tk">rtGetInfF</a>(<span class="kw">void</span>)</td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><span class="br">{</span></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td>  <a id="55c3" class="tk">IEEESingle</a> <a id="55c14" class="tk">infF</a>;</td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td>  <a id="56c3" class="tk">infF</a>.<a id="56c8" class="tk">wordL</a>.<a id="56c14" class="tk">wordLuint</a> = 0x7F800000U;</td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td>  <span class="kw">return</span> <a id="57c10" class="tk">infF</a>.<a id="57c15" class="tk">wordL</a>.<a id="57c21" class="tk">wordLreal</a>;</td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td><span class="br">}</span></td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td></td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><span class="ct"> * Initialize rtMinusInf needed by the generated code.</span></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td><span class="ct"> * Inf is initialized as non-signaling. Assumes IEEE.</span></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td><a id="64c1" class="tk">real_T</a> <a id="64c8" class="tk">rtGetMinusInf</a>(<span class="kw">void</span>)</td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td><span class="br">{</span></td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td>  <a id="66c3" class="tk">size_t</a> <a id="66c10" class="tk">bitsPerReal</a> = <span class="kw">sizeof</span>(<a id="66c31" class="tk">real_T</a>) <a id="66c39" class="tk">*</a> (<a id="66c42" class="tk">NumBitsPerChar</a>);</td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td>  <a id="67c3" class="tk">real_T</a> <a id="67c10" class="tk">minf</a> = 0.0;</td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td>  <span class="kw">if</span> (<a id="68c7" class="tk">bitsPerReal</a> <a id="68c19" class="tk">==</a> 32U) <span class="br">{</span></td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td>    <a id="69c5" class="tk">minf</a> = <a id="69c12" class="tk">rtGetMinusInfF</a>();</td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td>    <span class="kw">union</span> <span class="br">{</span></td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td>      <a id="72c7" class="tk">LittleEndianIEEEDouble</a> <a id="72c30" class="tk">bitVal</a>;</td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td>      <a id="73c7" class="tk">real_T</a> <a id="73c14" class="tk">fltVal</a>;</td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td>    <span class="br">}</span> <a id="74c7" class="tk">tmpVal</a>;</td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td></td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td>    <a id="76c5" class="tk">tmpVal</a>.<a id="76c12" class="tk">bitVal</a>.<a id="76c19" class="tk">words</a>.<a id="76c25" class="tk">wordH</a> = 0xFFF00000U;</td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td>    <a id="77c5" class="tk">tmpVal</a>.<a id="77c12" class="tk">bitVal</a>.<a id="77c19" class="tk">words</a>.<a id="77c25" class="tk">wordL</a> = 0x00000000U;</td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td>    <a id="78c5" class="tk">minf</a> = <a id="78c12" class="tk">tmpVal</a>.<a id="78c19" class="tk">fltVal</a>;</td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td></td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td>  <span class="kw">return</span> <a id="81c10" class="tk">minf</a>;</td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td><span class="br">}</span></td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td></td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td><span class="ct"> * Initialize rtMinusInfF needed by the generated code.</span></td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td><span class="ct"> * Inf is initialized as non-signaling. Assumes IEEE.</span></td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td><a id="88c1" class="tk">real32_T</a> <a id="88c10" class="tk">rtGetMinusInfF</a>(<span class="kw">void</span>)</td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td><span class="br">{</span></td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td>  <a id="90c3" class="tk">IEEESingle</a> <a id="90c14" class="tk">minfF</a>;</td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td>  <a id="91c3" class="tk">minfF</a>.<a id="91c9" class="tk">wordL</a>.<a id="91c15" class="tk">wordLuint</a> = 0xFF800000U;</td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td>  <span class="kw">return</span> <a id="92c10" class="tk">minfF</a>.<a id="92c16" class="tk">wordL</a>.<a id="92c22" class="tk">wordLreal</a>;</td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td><span class="br">}</span></td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td></td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="99" id="99">
-<td><a id="l99" class='ln'>99</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="100" id="100">
-<td><a id="l100" class='ln'>100</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 88
Simulink/PMSM_Controller_ert_rtw/html/rtGetInf_h.html

@@ -1,88 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rtGetInf.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_rtGetInf_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_rtGetInf_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="pp">#include &lt;stddef.h&gt;</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include "rtwtypes.h"</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "rt_nonfinite.h"</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="kw">extern</span> <a id="24c8" class="tk">real_T</a> <a id="24c15" class="tk">rtGetInf</a>(<span class="kw">void</span>);</td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="kw">extern</span> <a id="25c8" class="tk">real32_T</a> <a id="25c17" class="tk">rtGetInfF</a>(<span class="kw">void</span>);</td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="kw">extern</span> <a id="26c8" class="tk">real_T</a> <a id="26c15" class="tk">rtGetMinusInf</a>(<span class="kw">void</span>);</td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="kw">extern</span> <a id="27c8" class="tk">real32_T</a> <a id="27c17" class="tk">rtGetMinusInfF</a>(<span class="kw">void</span>);</td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td></td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* RTW_HEADER_rtGetInf_h_ */</span></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 148
Simulink/PMSM_Controller_ert_rtw/html/rtGetNaN_c.html

@@ -1,148 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rtGetNaN.c</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="ct"> * Abstract:</span></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="ct"> *      Function to initialize non-finite, NaN</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "rtGetNaN.h"</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#define</span> <a id="23c9" class="tk">NumBitsPerChar</a>                 8U</td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="ct"> * Initialize rtNaN needed by the generated code.</span></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="ct"> * NaN is initialized as non-signaling. Assumes IEEE.</span></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><a id="29c1" class="tk">real_T</a> <a id="29c8" class="tk">rtGetNaN</a>(<span class="kw">void</span>)</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="br">{</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td>  <a id="31c3" class="tk">size_t</a> <a id="31c10" class="tk">bitsPerReal</a> = <span class="kw">sizeof</span>(<a id="31c31" class="tk">real_T</a>) <a id="31c39" class="tk">*</a> (<a id="31c42" class="tk">NumBitsPerChar</a>);</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td>  <a id="32c3" class="tk">real_T</a> <a id="32c10" class="tk">nan</a> = 0.0;</td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td>  <span class="kw">if</span> (<a id="33c7" class="tk">bitsPerReal</a> <a id="33c19" class="tk">==</a> 32U) <span class="br">{</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td>    <a id="34c5" class="tk">nan</a> = <a id="34c11" class="tk">rtGetNaNF</a>();</td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td>    <span class="kw">union</span> <span class="br">{</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td>      <a id="37c7" class="tk">LittleEndianIEEEDouble</a> <a id="37c30" class="tk">bitVal</a>;</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td>      <a id="38c7" class="tk">real_T</a> <a id="38c14" class="tk">fltVal</a>;</td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td>    <span class="br">}</span> <a id="39c7" class="tk">tmpVal</a>;</td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td>    <a id="41c5" class="tk">tmpVal</a>.<a id="41c12" class="tk">bitVal</a>.<a id="41c19" class="tk">words</a>.<a id="41c25" class="tk">wordH</a> = 0xFFF80000U;</td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td>    <a id="42c5" class="tk">tmpVal</a>.<a id="42c12" class="tk">bitVal</a>.<a id="42c19" class="tk">words</a>.<a id="42c25" class="tk">wordL</a> = 0x00000000U;</td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td>    <a id="43c5" class="tk">nan</a> = <a id="43c11" class="tk">tmpVal</a>.<a id="43c18" class="tk">fltVal</a>;</td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td>  <span class="kw">return</span> <a id="46c10" class="tk">nan</a>;</td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td><span class="br">}</span></td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td><span class="ct"> * Initialize rtNaNF needed by the generated code.</span></td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td><span class="ct"> * NaN is initialized as non-signaling. Assumes IEEE.</span></td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><a id="53c1" class="tk">real32_T</a> <a id="53c10" class="tk">rtGetNaNF</a>(<span class="kw">void</span>)</td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><span class="br">{</span></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td>  <a id="55c3" class="tk">IEEESingle</a> <a id="55c14" class="tk">nanF</a> = <span class="br">{</span> <span class="br">{</span> 0 <span class="br">}</span> <span class="br">}</span>;</td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td>  <a id="57c3" class="tk">nanF</a>.<a id="57c8" class="tk">wordL</a>.<a id="57c14" class="tk">wordLuint</a> = 0xFFC00000U;</td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td>  <span class="kw">return</span> <a id="58c10" class="tk">nanF</a>.<a id="58c15" class="tk">wordL</a>.<a id="58c21" class="tk">wordLreal</a>;</td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td><span class="br">}</span></td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 84
Simulink/PMSM_Controller_ert_rtw/html/rtGetNaN_h.html

@@ -1,84 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rtGetNaN.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_rtGetNaN_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_rtGetNaN_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="pp">#include &lt;stddef.h&gt;</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include "rtwtypes.h"</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "rt_nonfinite.h"</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="kw">extern</span> <a id="24c8" class="tk">real_T</a> <a id="24c15" class="tk">rtGetNaN</a>(<span class="kw">void</span>);</td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="kw">extern</span> <a id="25c8" class="tk">real32_T</a> <a id="25c17" class="tk">rtGetNaNF</a>(<span class="kw">void</span>);</td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* RTW_HEADER_rtGetNaN_h_ */</span></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td></td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 130
Simulink/PMSM_Controller_ert_rtw/html/rt_defines_h.html

@@ -1,130 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rt_defines.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_rt_defines_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_rt_defines_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="ct">/*===========*</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="ct"> * Constants *</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="ct"> *===========*/</span></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="pp">#define</span> <a id="24c9" class="tk">RT_PI</a>                          3.14159265358979323846</td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="pp">#define</span> <a id="25c9" class="tk">RT_PIF</a>                         3.1415927F</td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="pp">#define</span> <a id="26c9" class="tk">RT_LN_10</a>                       2.30258509299404568402</td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="pp">#define</span> <a id="27c9" class="tk">RT_LN_10F</a>                      2.3025851F</td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="pp">#define</span> <a id="28c9" class="tk">RT_LOG10E</a>                      0.43429448190325182765</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="pp">#define</span> <a id="29c9" class="tk">RT_LOG10EF</a>                     0.43429449F</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="pp">#define</span> <a id="30c9" class="tk">RT_E</a>                           2.7182818284590452354</td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="pp">#define</span> <a id="31c9" class="tk">RT_EF</a>                          2.7182817F</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td><span class="ct"> * UNUSED_PARAMETER(x)</span></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td><span class="ct"> *   Used to specify that a function parameter (argument) is required but not</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td><span class="ct"> *   accessed by the function body.</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td><span class="pp">#ifndef</span> <a id="38c9" class="tk">UNUSED_PARAMETER</a></td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td><span class="pp">#if</span> <a id="39c5" class="tk">defined</a>(<a id="39c13" class="tk">__LCC__</a>)</td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td><span class="pp">#define</span> <a id="40c9" class="tk">UNUSED_PARAMETER</a>(<a id="40c26" class="tk">x</a>)                                      <span class="ct">/* do nothing */</span></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td><span class="pp">#else</span></td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td></td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td><span class="ct"> * This is the semi-ANSI standard way of indicating that an</span></td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td><span class="ct"> * unused function parameter is required.</span></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td><span class="pp">#define</span> <a id="47c9" class="tk">UNUSED_PARAMETER</a>(<a id="47c26" class="tk">x</a>)            (<span class="kw">void</span>) (<a id="47c48" class="tk">x</a>)</td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* RTW_HEADER_rt_defines_h_ */</span></td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td></td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 212
Simulink/PMSM_Controller_ert_rtw/html/rt_nonfinite_c.html

@@ -1,212 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rt_nonfinite.c</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="ct"> * Abstract:</span></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="ct"> *      Function to initialize non-finites,</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="ct"> *      (Inf, NaN and -Inf).</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#include "rt_nonfinite.h"</span></td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="pp">#include "rtGetNaN.h"</span></td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="pp">#include "rtGetInf.h"</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="pp">#define</span> <a id="26c9" class="tk">NumBitsPerChar</a>                 8U</td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td></td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><a id="28c1" class="tk">real_T</a> <a id="28c8" class="tk">rtInf</a>;</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><a id="29c1" class="tk">real_T</a> <a id="29c8" class="tk">rtMinusInf</a>;</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><a id="30c1" class="tk">real_T</a> <a id="30c8" class="tk">rtNaN</a>;</td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><a id="31c1" class="tk">real32_T</a> <a id="31c10" class="tk">rtInfF</a>;</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><a id="32c1" class="tk">real32_T</a> <a id="32c10" class="tk">rtMinusInfF</a>;</td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><a id="33c1" class="tk">real32_T</a> <a id="33c10" class="tk">rtNaNF</a>;</td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td><span class="ct"> * Initialize the rtInf, rtMinusInf, and rtNaN needed by the</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td><span class="ct"> * generated code. NaN is initialized as non-signaling. Assumes IEEE.</span></td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td><span class="kw">void</span> <a id="39c6" class="tk">rt_InitInfAndNaN</a>(<a id="39c23" class="tk">size_t</a> <a id="39c30" class="tk">realSize</a>)</td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td><span class="br">{</span></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td>  (<span class="kw">void</span>) (<a id="41c11" class="tk">realSize</a>);</td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td>  <a id="42c3" class="tk">rtNaN</a> = <a id="42c11" class="tk">rtGetNaN</a>();</td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td>  <a id="43c3" class="tk">rtNaNF</a> = <a id="43c12" class="tk">rtGetNaNF</a>();</td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td>  <a id="44c3" class="tk">rtInf</a> = <a id="44c11" class="tk">rtGetInf</a>();</td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td>  <a id="45c3" class="tk">rtInfF</a> = <a id="45c12" class="tk">rtGetInfF</a>();</td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td>  <a id="46c3" class="tk">rtMinusInf</a> = <a id="46c16" class="tk">rtGetMinusInf</a>();</td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td>  <a id="47c3" class="tk">rtMinusInfF</a> = <a id="47c17" class="tk">rtGetMinusInfF</a>();</td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td><span class="br">}</span></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td></td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td><span class="ct">/* Test if value is infinite */</span></td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td><a id="51c1" class="tk">boolean_T</a> <a id="51c11" class="tk">rtIsInf</a>(<a id="51c19" class="tk">real_T</a> <a id="51c26" class="tk">value</a>)</td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><span class="br">{</span></td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td>  <span class="kw">return</span> (<a id="53c11" class="tk">boolean_T</a>)((<a id="53c23" class="tk">value</a><a id="53c28" class="tk">==</a><a id="53c30" class="tk">rtInf</a> <a id="53c36" class="tk">||</a> <a id="53c39" class="tk">value</a><a id="53c44" class="tk">==</a><a id="53c46" class="tk">rtMinusInf</a>) <a id="53c58" class="tk">?</a> 1U <a id="53c63" class="tk">:</a> 0U);</td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><span class="br">}</span></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td></td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td><span class="ct">/* Test if single-precision value is infinite */</span></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td><a id="57c1" class="tk">boolean_T</a> <a id="57c11" class="tk">rtIsInfF</a>(<a id="57c20" class="tk">real32_T</a> <a id="57c29" class="tk">value</a>)</td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td><span class="br">{</span></td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td>  <span class="kw">return</span> (<a id="59c11" class="tk">boolean_T</a>)(((<a id="59c24" class="tk">value</a>)<a id="59c30" class="tk">==</a><a id="59c32" class="tk">rtInfF</a> <a id="59c39" class="tk">||</a> (<a id="59c43" class="tk">value</a>)<a id="59c49" class="tk">==</a><a id="59c51" class="tk">rtMinusInfF</a>) <a id="59c64" class="tk">?</a> 1U <a id="59c69" class="tk">:</a> 0U);</td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td><span class="br">}</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td><span class="ct">/* Test if value is not a number */</span></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><a id="63c1" class="tk">boolean_T</a> <a id="63c11" class="tk">rtIsNaN</a>(<a id="63c19" class="tk">real_T</a> <a id="63c26" class="tk">value</a>)</td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td><span class="br">{</span></td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td>  <a id="65c3" class="tk">boolean_T</a> <a id="65c13" class="tk">result</a> = (<a id="65c23" class="tk">boolean_T</a>) 0;</td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td>  <a id="66c3" class="tk">size_t</a> <a id="66c10" class="tk">bitsPerReal</a> = <span class="kw">sizeof</span>(<a id="66c31" class="tk">real_T</a>) <a id="66c39" class="tk">*</a> (<a id="66c42" class="tk">NumBitsPerChar</a>);</td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td>  <span class="kw">if</span> (<a id="67c7" class="tk">bitsPerReal</a> <a id="67c19" class="tk">==</a> 32U) <span class="br">{</span></td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td>    <a id="68c5" class="tk">result</a> = <a id="68c14" class="tk">rtIsNaNF</a>((<a id="68c24" class="tk">real32_T</a>)<a id="68c33" class="tk">value</a>);</td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td>  <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td>    <span class="kw">union</span> <span class="br">{</span></td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td>      <a id="71c7" class="tk">LittleEndianIEEEDouble</a> <a id="71c30" class="tk">bitVal</a>;</td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td>      <a id="72c7" class="tk">real_T</a> <a id="72c14" class="tk">fltVal</a>;</td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td>    <span class="br">}</span> <a id="73c7" class="tk">tmpVal</a>;</td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td></td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td>    <a id="75c5" class="tk">tmpVal</a>.<a id="75c12" class="tk">fltVal</a> = <a id="75c21" class="tk">value</a>;</td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td>    <a id="76c5" class="tk">result</a> = (<a id="76c15" class="tk">boolean_T</a>)((<a id="76c27" class="tk">tmpVal</a>.<a id="76c34" class="tk">bitVal</a>.<a id="76c41" class="tk">words</a>.<a id="76c47" class="tk">wordH</a> <a id="76c53" class="tk">&amp;</a> 0x7FF00000) <a id="76c67" class="tk">==</a> 0x7FF00000 <a id="76c81" class="tk">&amp;&amp;</a></td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td>                         ( (<a id="77c29" class="tk">tmpVal</a>.<a id="77c36" class="tk">bitVal</a>.<a id="77c43" class="tk">words</a>.<a id="77c49" class="tk">wordH</a> <a id="77c55" class="tk">&amp;</a> 0x000FFFFF) <a id="77c69" class="tk">!=</a> 0 <a id="77c74" class="tk">||</a></td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td>                          (<a id="78c28" class="tk">tmpVal</a>.<a id="78c35" class="tk">bitVal</a>.<a id="78c42" class="tk">words</a>.<a id="78c48" class="tk">wordL</a> <a id="78c54" class="tk">!=</a> 0) ));</td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td>  <span class="br">}</span></td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td></td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td>  <span class="kw">return</span> <a id="81c10" class="tk">result</a>;</td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td><span class="br">}</span></td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td></td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td><span class="ct">/* Test if single-precision value is not a number */</span></td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td><a id="85c1" class="tk">boolean_T</a> <a id="85c11" class="tk">rtIsNaNF</a>(<a id="85c20" class="tk">real32_T</a> <a id="85c29" class="tk">value</a>)</td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td><span class="br">{</span></td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td>  <a id="87c3" class="tk">IEEESingle</a> <a id="87c14" class="tk">tmp</a>;</td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td>  <a id="88c3" class="tk">tmp</a>.<a id="88c7" class="tk">wordL</a>.<a id="88c13" class="tk">wordLreal</a> = <a id="88c25" class="tk">value</a>;</td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td>  <span class="kw">return</span> (<a id="89c11" class="tk">boolean_T</a>)( (<a id="89c24" class="tk">tmp</a>.<a id="89c28" class="tk">wordL</a>.<a id="89c34" class="tk">wordLuint</a> <a id="89c44" class="tk">&amp;</a> 0x7F800000) <a id="89c58" class="tk">==</a> 0x7F800000 <a id="89c72" class="tk">&amp;&amp;</a></td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td>                     (<a id="90c23" class="tk">tmp</a>.<a id="90c27" class="tk">wordL</a>.<a id="90c33" class="tk">wordLuint</a> <a id="90c43" class="tk">&amp;</a> 0x007FFFFF) <a id="90c57" class="tk">!=</a> 0 );</td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td><span class="br">}</span></td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td></td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 140
Simulink/PMSM_Controller_ert_rtw/html/rt_nonfinite_h.html

@@ -1,140 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rt_nonfinite.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTW_HEADER_rt_nonfinite_h_</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTW_HEADER_rt_nonfinite_h_</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td><span class="pp">#include &lt;stddef.h&gt;</span></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include "rtwtypes.h"</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td></td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="kw">extern</span> <a id="23c8" class="tk">real_T</a> <a id="23c15" class="tk">rtInf</a>;</td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="kw">extern</span> <a id="24c8" class="tk">real_T</a> <a id="24c15" class="tk">rtMinusInf</a>;</td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="kw">extern</span> <a id="25c8" class="tk">real_T</a> <a id="25c15" class="tk">rtNaN</a>;</td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td><span class="kw">extern</span> <a id="26c8" class="tk">real32_T</a> <a id="26c17" class="tk">rtInfF</a>;</td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="kw">extern</span> <a id="27c8" class="tk">real32_T</a> <a id="27c17" class="tk">rtMinusInfF</a>;</td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="kw">extern</span> <a id="28c8" class="tk">real32_T</a> <a id="28c17" class="tk">rtNaNF</a>;</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="29c13" class="tk">rt_InitInfAndNaN</a>(<a id="29c30" class="tk">size_t</a> <a id="29c37" class="tk">realSize</a>);</td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="kw">extern</span> <a id="30c8" class="tk">boolean_T</a> <a id="30c18" class="tk">rtIsInf</a>(<a id="30c26" class="tk">real_T</a> <a id="30c33" class="tk">value</a>);</td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td><span class="kw">extern</span> <a id="31c8" class="tk">boolean_T</a> <a id="31c18" class="tk">rtIsInfF</a>(<a id="31c27" class="tk">real32_T</a> <a id="31c36" class="tk">value</a>);</td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="kw">extern</span> <a id="32c8" class="tk">boolean_T</a> <a id="32c18" class="tk">rtIsNaN</a>(<a id="32c26" class="tk">real_T</a> <a id="32c33" class="tk">value</a>);</td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="kw">extern</span> <a id="33c8" class="tk">boolean_T</a> <a id="33c18" class="tk">rtIsNaNF</a>(<a id="33c27" class="tk">real32_T</a> <a id="33c36" class="tk">value</a>);</td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td><span class="kw">typedef</span> <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td>  <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td>    <a id="36c5" class="tk">uint32_T</a> <a id="36c14" class="tk">wordH</a>;</td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td>    <a id="37c5" class="tk">uint32_T</a> <a id="37c14" class="tk">wordL</a>;</td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td>  <span class="br">}</span> <a id="38c5" class="tk">words</a>;</td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td><span class="br">}</span> <a id="39c3" class="tk">BigEndianIEEEDouble</a>;</td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td><span class="kw">typedef</span> <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td>  <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td>    <a id="43c5" class="tk">uint32_T</a> <a id="43c14" class="tk">wordL</a>;</td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td>    <a id="44c5" class="tk">uint32_T</a> <a id="44c14" class="tk">wordH</a>;</td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td>  <span class="br">}</span> <a id="45c5" class="tk">words</a>;</td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td><span class="br">}</span> <a id="46c3" class="tk">LittleEndianIEEEDouble</a>;</td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td></td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td><span class="kw">typedef</span> <span class="kw">struct</span> <span class="br">{</span></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td>  <span class="kw">union</span> <span class="br">{</span></td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td>    <a id="50c5" class="tk">real32_T</a> <a id="50c14" class="tk">wordLreal</a>;</td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td>    <a id="51c5" class="tk">uint32_T</a> <a id="51c14" class="tk">wordLuint</a>;</td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td>  <span class="br">}</span> <a id="52c5" class="tk">wordL</a>;</td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><span class="br">}</span> <a id="53c3" class="tk">IEEESingle</a>;</td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td></td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* RTW_HEADER_rt_nonfinite_h_ */</span></td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td></td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 2091
Simulink/PMSM_Controller_ert_rtw/html/rtwhilite.js

@@ -1,2091 +0,0 @@
-// Copyright 2006-2019 The MathWorks, Inc.
-
-// Class RTW_Hash ------------------------------------------------------------
-// Internal web browser doesn't change window.location.hash if the link points
-// to the same page.
-// RTW_Hash remembers the hash value when the page is loaded in the first time 
-// or a link is clicked.
-// removeHiliteByHash cleans the high lighted elements according to the stored 
-// hash value
-function RTW_Hash(aHash) {
-    if (aHash == null) {
-        this.fHash = "";
-    } else {
-        this.fHash = aHash;
-    };
-    
-    this.getHash = function() {
-        return this.fHash;
-    }
-
-    this.setHash = function(aHash) {
-        this.fHash = aHash;
-    }
-}
-
-RTW_Hash.instance = null;
-
-// Class RTW_TraceInfo --------------------------------------------------------
-function RTW_TraceInfo(aFileLinks) {
-    this.fFileLinks = aFileLinks;
-    this.fLines = new Array();
-    this.fTotalLines = 0; // total number of highlighted lines
-    this.fNumLines = new Array();
-    this.fFileIdxCache = new Array();
-    this.fDisablePanel = false;
-    this.fCurrFileIdx = -1;
-    this.fCurrLineIdx = -1;
-    this.fCurrCodeNode = null;
-    this.getHtmlFileName = function(aIndex) {
-        if (aIndex < this.fFileLinks.length) {
-            var href = this.fFileLinks[aIndex].href;
-            return href.substring(href.lastIndexOf('/')+1);
-        }
-    }
-    this.getSrcFileName = function(aIndex) {
-        var name = this.getHtmlFileName(aIndex);
-        if (name)
-            name = RTW_TraceInfo.toSrcFileName(name);
-        return name;
-    }
-    this.getNumFileLinks = function() {
-        return this.fFileLinks.length;
-    }
-    this.setFileLinkColor = function(aIndex, aColor) {
-        var link = this.fFileLinks[aIndex];
-        if (link && link.parentNode && link.parentNode.style)
-            link.parentNode.style.backgroundColor = aColor;
-    }
-    this.highlightFileLink = function(aIndex, aColor) {
-        for (var i = 0; i < this.fFileLinks.length; ++i) {
-            this.setFileLinkColor(i, i == aIndex ? aColor : "");
-        }
-    }
-    this.highlightCurrFileLink = function(aColor) {
-        this.highlightFileLink(this.fCurrFileIdx);
-    }
-    this.highlightLines = function(aCodeNode,aColor) {
-        this.fCurrCodeNode = aCodeNode;
-        var lines = this.fLines[this.getHtmlFileName(this.fCurrFileIdx)];
-        if (lines && aCodeNode) {
-            for (var i = 0; i < lines.length; ++i) {
-                var lineObj = aCodeNode.childNodes[lines[i]-1];
-                if (lineObj)
-                    lineObj.style.backgroundColor=aColor;
-            }
-        }
-    }
-    this.getFileIdx = function(aFile) {
-        if (this.fFileIdxCache[aFile] != null)
-            return this.fFileIdxCache[aFile];
-        for (var i = 0; i < this.fFileLinks.length; ++i) {
-            if (this.getHtmlFileName(i) == aFile) {
-                this.fFileIdxCache[aFile] = i;
-                return i;
-            }
-        }
-        return null;
-    }
-    this.getCurrFileIdx = function() { return this.fCurrFileIdx; }
-    this.setNumHighlightedLines = function(aFileIdx, aNumLines) {
-        this.fNumLines[aFileIdx] = aNumLines;
-        updateNumHighlightedLines(this.fFileLinks[aFileIdx], aNumLines);
-    }
-    this.getNumLines = function(aFileIdx) {
-        return this.fNumLines[aFileIdx] != null ? this.fNumLines[aFileIdx] : 0;
-    }
-    this.getNumLinesAll = function() {
-        var sum = 0;
-        var len = this.fNumLines.length;
-        for (var i = 0; i < len; ++i) {
-            sum += this.getNumLines(i);
-        }
-        return sum;
-    }
-    this.getPrevButton = function() {
-        var aFrame = getNavFrame();
-        if (typeof aFrame !== "undefined" && aFrame !== null)
-            return aFrame.document.getElementById("rtwIdButtonPrev");
-        else
-            return document.getElementById("rtwIdButtonPrev");
-    }
-    this.getNextButton = function() {
-        var aFrame = getNavFrame();
-        if (typeof aFrame !== "undefined" && aFrame !== null)
-            return aFrame.document.getElementById("rtwIdButtonNext");
-        else
-            return document.getElementById("rtwIdButtonNext");
-    }
-    this.getPanel = function() {
-        var aFrame = getNavFrame();
-        if (typeof aFrame !== "undefined" && aFrame !== null)
-            return aFrame.document.getElementById("rtwIdTracePanel");
-        else
-            return document.getElementById("rtwIdTracePanel");
-    }
-    this.removeHighlighting = function() {
-        for (var i = 0; i < this.fFileLinks.length; ++i) {
-            this.setFileLinkColor(i, "");
-            this.setNumHighlightedLines(i, 0);
-        }
-        // remove highlight and reset current code node
-        try {
-            if (this.fCurrCodeNode != null)
-                this.highlightLines(getCodeNode(),"");
-        } catch (e) {};
-        this.fCurrCodeNode = null;    
-        if (this.getPrevButton()) { this.getPrevButton().disabled = true; }
-        if (this.getNextButton()) { this.getNextButton().disabled = true; }
-        if (this.getPanel()) { this.getPanel().style.display = "none"; }
-        this.fCurrFileIdx = -1;
-        this.fCurrLineIdx = -1;
-    }
-    this.setCurrLineIdx = function(aLineIdx) {
-        this.fCurrLineIdx = aLineIdx;
-    }
-    this.getCurrLineIdx = function() { return this.fCurrLineIdx; }
-    this.setCurrent = function(aFileIdx, aLineIdx) {
-        this.fCurrFileIdx = aFileIdx;
-        var numLines = this.getNumLines(aFileIdx);
-        if (!numLines || aLineIdx >= numLines)
-            this.fCurrLineIdx = -1;
-        else
-            this.fCurrLineIdx = aLineIdx;
-        var allNumLines = this.getNumLinesAll();
-        if (this.getPrevButton()) {
-            this.getPrevButton().disabled = (allNumLines <= 1 || !this.hasPrev());
-        }
-        if (this.getNextButton()) {
-            this.getNextButton().disabled = (allNumLines <= 1 || !this.hasNext());
-        }
-        if (this.getPanel() && !this.fDisablePanel) {
-            this.getPanel().style.display = 'block';
-        }
-    }
-    this.setDisablePanel = function(aDisable) {
-        this.fDisablePanel = aDisable;
-    }
-    this.getPrevFileIdx = function() {
-        if (this.fCurrLineIdx > 0)
-            return this.fCurrFileIdx;
-        for (var i = this.fCurrFileIdx - 1; i >= 0; --i)
-            if (this.fNumLines[i] > 0)
-                return i;
-        return null;
-    }
-    // update the navigation bar state
-    this.updateNavState = function() {
-        if (this.getPrevButton())
-            this.getPrevButton().disabled = !this.hasPrev();
-        if (this.getNextButton())
-            this.getNextButton().disabled = !this.hasNext();
-        setTraceNumber();
-    }
-    this.hasPrev = function() {
-        return this.getPrevFileIdx() != null;
-    }
-    this.getFirstFileIdx = function() {
-        for (var i = 0; i < this.getNumFileLinks(); ++i)
-            if (this.fNumLines[i] > 0)
-                return i;
-    }
-    this.getLastFileIdx = function() {
-        for (var i = this.getNumFileLinks(); i >= 0; --i)
-            if (this.fNumLines[i] > 0)
-                return i;
-    }
-    this.goFirst = function() {
-        this.fCurrFileIdx = this.getFirstFileIdx();
-        this.fCurrLineIdx = 0;
-        this.updateNavState();
-    }
-    this.goLast = function() {
-        this.fCurrFileIdx = this.getLastFileIdx();;
-        this.fCurrLineIdx = this.getNumLines(this.fCurrFileIdx) - 1;
-        this.updateNavState();
-    }
-    this.goPrev = function() {
-        var fileIdx = this.getPrevFileIdx();
-        if (fileIdx == null)
-            return;
-        if (fileIdx == this.fCurrFileIdx)
-            --this.fCurrLineIdx;
-        else {
-            this.fCurrFileIdx = fileIdx;
-            this.fCurrLineIdx = this.getNumLines(fileIdx) - 1;
-        }
-        this.updateNavState();
-    }
-    this.getNextFileIdx = function() {
-        if (this.fCurrLineIdx < this.getNumLines(this.fCurrFileIdx) - 1 && this.getNumLines(this.fCurrFileIdx) > 0)
-            return this.fCurrFileIdx;
-        for (var i = this.fCurrFileIdx + 1; i < this.getNumFileLinks(); ++i)
-            if (this.fNumLines[i] > 0)
-                return i;
-        return null;
-    }
-    this.hasNext = function() {
-        return this.getNextFileIdx() != null;
-    }
-    this.goNext = function() {
-        var fileIdx = this.getNextFileIdx();
-        if (fileIdx == null)
-            return;
-        if (fileIdx == this.fCurrFileIdx)
-            ++this.fCurrLineIdx;
-        else {
-            this.fCurrFileIdx = fileIdx;
-            this.fCurrLineIdx = 0;
-        }
-        this.updateNavState();
-    }
-    this.setTotalLines = function(num) {
-        this.fTotalLines = num;
-    }
-    this.getTotalLines = function() { return this.fTotalLines;}
-    this.setLines = function(aFile, aLines) {
-        this.fLines[aFile] = aLines;
-        var index = this.getFileIdx(aFile);
-        if (index != null)
-            this.setNumHighlightedLines(index,aLines.length);
-    }
-    this.getLines = function(aFile) {
-        return this.fLines[aFile];
-    }
-    // get current on focus line number
-    this.getCurrLine = function() {
-        var file = this.getHtmlFileName(this.getCurrFileIdx());
-        var lines = this.fLines[file];
-        var line = null;
-        if (lines) {
-            var line = lines[this.fCurrLineIdx];
-        }
-        return line;
-    }
-    this.getHRef = function(aFileIdx, aLineIdx, offset) {
-        var file = this.getHtmlFileName(aFileIdx);
-        var lines = this.fLines[file];
-        if (lines) {
-            var line = lines[aLineIdx];
-            line = offset_line(line, offset);
-            file = file+"#"+line;
-        }
-        return file;
-    }
-    
-    this.getCurrentHRef = function(offset) {
-        return this.getHRef(this.fCurrFileIdx, this.fCurrLineIdx, offset);
-    }
-    this.setInitLocation = function(aFile, aLine) {
-        var fileIdx = this.getFileIdx(aFile);
-        var lineIdx = null;
-        if (fileIdx != null && aLine) {
-            var lines = this.getLines(aFile);
-            for (var i = 0; i < lines.length; ++i) {
-                if (lines[i] == aLine) {
-                    lineIdx = i;
-                    break;
-                } 
-            }
-        }
-        if (fileIdx == null || lineIdx == null)
-            this.setCurrent(-1,-1);
-        else
-            this.setCurrent(fileIdx,lineIdx);
-    }
-}
-
-// Static methods in RTW_TraceInfo
-
-RTW_TraceInfo.getFileLinks = function(docObj) {
-    var links;
-    if (docObj && docObj.getElementsByName)
-        links = docObj.getElementsByName("rtwIdGenFileLinks");
-    return links ? links : new Array();
-}
-
-RTW_TraceInfo.toSrcFileName = function(aHtmlFileName) {
-    aHtmlFileName = aHtmlFileName.replace(/_c.html$/,".c");
-    aHtmlFileName = aHtmlFileName.replace(/_h.html$/,".h");
-    aHtmlFileName = aHtmlFileName.replace(/_cpp.html$/,".cpp");
-    aHtmlFileName = aHtmlFileName.replace(/_hpp.html$/,".hpp");
-    aHtmlFileName = aHtmlFileName.replace(/_cc.html$/,".hpp");
-    return aHtmlFileName;
-}
-
-RTW_TraceInfo.instance = null;
-
-// Class RTW_TraceArgs --------------------------------------------------------
-// file.c:10,20,30&file.h:10,20,30[&color=value] or 
-// sid=model:1[&color=value]
-RTW_TraceArgs = function(aHash) {
-    this.fColor = null;
-    this.fFontSize = null;
-    this.fInitFile = null;
-    this.fInitLine = null;
-    this.fSID = null;
-    this.fFiles = new Array();
-    this.fLines = new Array();
-    this.fMessage = null;
-    this.fBlock = null;  
-    this.fNumBlocks = 0;
-    this.fUseExternalBrowser = true;
-    this.fInStudio = false;
-    this.fModel2CodeSrc = null;
-    this.fInCodeTrace = false;
-    this.fTraceData = null;
-    this.fFileIdx = []; // filename to fileId
-    this.fRows = []; // highlighted rows indexed by fileId
-    this.fIDs = []; // highlighted IDs indexed by fileId
-
-    this.hasSid = function() {
-        return !(this.fSID == null);
-    }
-    this.parseCommand = function(aHash) {
-        var args = new Array();
-        args = aHash.split('&');
-        for (var i = 0; i < args.length; ++i) {
-            var arg = args[i];
-            sep = arg.indexOf('=');
-            if (sep != -1) {
-                var cmd = arg.substring(0,sep);
-                var opt = arg.substring(sep+1);
-                switch (cmd.toLowerCase()) {
-                case "color":
-                    this.fColor = opt;
-                    break;
-                case "fontsize":
-                    this.fFontSize = opt;
-                    break;
-                case "initfile":
-                    this.fInitFile = RTW_TraceArgs.toHtmlFileName(opt);
-                    break;
-                case "initline":
-                    this.fInitLine = opt;
-                    break;
-                case "msg":
-                    this.fMessage = opt;
-                    break;
-                case "block":
-                    this.fBlock = unescape(opt);
-                    break;
-                case "numblocks":
-                    this.fNumBlocks = parseInt(opt);
-                    break;
-                case "sid":
-                    this.fSID = opt;
-                    // convert sid to code location
-                    break;
-                case "model2code_src":
-                    // model2code_src from model or webview
-                    this.fModel2CodeSrc = opt;
-                    break;
-                case "useexternalbrowser":
-                    this.fUseExternalBrowser = (opt=="true");
-                    break;
-                case "instudio":
-                    this.fInStudio = (opt=="true");
-                    break;
-                case "incodetrace":
-                    this.fInCodeTrace = (opt=="true");
-                    break;
-                case "tracedata":
-                    this.fTraceData = decodeURI(opt);
-                    break;
-                }
-            }
-        }    
-    }
-    this.parseUrlHash = function(aHash) {
-        var rows, sep, assignSep;
-        if (aHash) {
-            args = aHash.split('&');
-            for (var i = 0; i < args.length; ++i) {
-                var arg = args[i];
-                sep = arg.indexOf(':');
-                assignSep = arg.indexOf('=');
-                if (sep !== -1 && assignSep === -1) {
-                    var fileLines = arg.split(':');
-                    var htmlFileName = RTW_TraceArgs.toHtmlFileName(fileLines[0]);
-                    this.fFileIdx[htmlFileName] = i;
-                    this.fFiles.push(htmlFileName);
-                    if (fileLines[1]) {
-                        rows = fileLines[1].split(',');
-                        rows = uniqueRows(rows);
-                        this.fLines.push(rows);
-                        this.fRows[i] = rows;
-                    }
-                }
-            }
-            if (this.fInitFile == null && this.fFiles.length > 0) {
-                this.fInitFile = this.fFiles[0];
-                this.fInitLine = (this.fLines[0] == null ? -1 : this.fLines[0][0]);
-            }
-        }
-    }
-    this.parseUrlHash2 = function(aHash) {
-        aHash = decodeURI(aHash);    
-        var rows;
-        var ids;
-        if (aHash && aHash.length > 0 && aHash[0] === "[") {
-            var input = eval(aHash);  
-            var i;
-            var j;
-            // set highlight files from url
-            for (i=0; i<input.length;i++) {
-                rows = new Array();
-                ids = new Array();
-                this.fFileIdx[input[i].file] = i;
-                this.fFiles.push(input[i].file);
-                ids = input[i].id;
-                for (j=0; j<ids.length;j++) {
-                    // get row number
-                    if (ids[j].indexOf("c") !== -1)
-                        rows.push(Number(ids[j].substring(0,ids[j].indexOf("c")))); 
-                    else
-                        rows.push(Number(ids[j]));
-                }
-                rows = uniqueRows(rows);
-                this.fRows[i] = rows;
-                this.fIDs[i] = ids;
-            }
-        } else {
-            // reset all states
-            this.fFiles = [];
-            this.fRows = [];
-            this.fIDs = [];
-        }
-        return;
-    }
-    this.getFileIdx = function(aFileName) {
-        if (aFileName) {
-            return this.fFileIdx[aFileName];
-        } else {
-            // return the fileIdx of the current display file
-            var pathname = top.rtwreport_document_frame.location.pathname;
-            pathname = pathname.substr(pathname.lastIndexOf("/")+1);
-            // find the highlight file name
-            return this.getFileIdx(pathname);
-        }
-    }
-
-    this.getColor = function() { return this.fColor; }
-    this.getFontSize = function() { return this.fFontSize; }
-    this.getInitFile = function() { return this.fInitFile; }
-    this.getInitLine = function() { return this.fInitLine; }
-    this.getNumFiles = function() { return this.fFiles.length; }
-    this.getSID = function() { return this.fSID; }
-    this.getFile = function(aIdx) { if (isNaN(aIdx)) return this.fFiles; return this.fFiles[aIdx];}
-    this.getLines = function(aIdx) { return this.fLines[aIdx]; } 
-    this.getUseExternalBrowser = function() { return this.fUseExternalBrowser; } 
-    this.getInStudio = function() { return this.fInStudio; } 
-    this.getInCodeTrace = function() { return this.fInCodeTrace; } 
-    this.getTraceData = function() { return this.fTraceData; } 
-    this.getModel2CodeSrc = function() { return this.fModel2CodeSrc; }
-    this.setUseExternalBrowser = function(val) { this.fUseExternalBrowser = val; } 
-    this.setInCodeTrace = function(val) { this.fInCodeTrace = val; } 
-    this.setTraceData = function(val) { this.fTraceData = val; } 
-    this.setModel2CodeSrc = function(val) { this.fModel2CodeSrc = val; }
-    this.getRows = function(aIdx) { return this.fRows[aIdx];}
-    this.getIDs = function(aIdx) { return this.fIDs[aIdx]; }
-    this.getBlock = function() { return this.fBlock; }
-    this.getNumBlocks = function() { return this.fNumBlocks; }
-    // constructor
-    this.parseCommand(aHash);
-}
-
-// Static methods in RTW_TraceArgs
-
-RTW_TraceArgs.toHtmlFileName = function(aFile) {
-    f = aFile;
-    aFile = f.substring(0,f.lastIndexOf('.')) + '_' + f.substring(f.lastIndexOf('.')+1) + ".html";
-    return aFile;
-}
-
-RTW_TraceArgs.instance = null;
-
-RTW_MessageWindow = function(aWindow, aParagraph) {
-    this.fWindow    = aWindow;
-    this.fParagraph = aParagraph;
-    
-    this.print = function(msg) {
-        this.fParagraph.innerHTML = msg;
-        if (msg)
-            this.fWindow.style.display = "block";
-        else
-            this.fWindow.style.display = "none";
-    }
-    this.clear = function() {
-        this.print("");
-    }
-}
-
-// RTW_MessageWindow factory
-RTW_MessageWindowFactory = function(aDocObj) {
-    this.fDocObj = aDocObj;
-    this.fInstance = null;
-
-    this.getInstance = function() {
-        if (this.fInstance)
-            return this.fInstance;
-        if (!this.fDocObj)
-            return;
-        
-        var table     = this.fDocObj.getElementById("rtwIdMsgWindow");
-        var paragraph = this.fDocObj.getElementById("rtwIdMsg");
-        var button    = this.fDocObj.getElementById("rtwIdButtonMsg");
-
-        if (!table || !paragraph || !button)
-            return null;
-
-        obj = new RTW_MessageWindow(table,paragraph);
-        button.onclick = function() { obj.clear(); }
-        this.fInstance = obj;
-        return this.fInstance;
-    }
-}
-
-RTW_MessageWindowFactory.instance = null;
-RTW_MessageWindow.factory = function(aDocObj) {
-    if (!RTW_MessageWindowFactory.instance)
-        RTW_MessageWindowFactory.instance = new RTW_MessageWindowFactory(aDocObj);
-    return RTW_MessageWindowFactory.instance.getInstance();
-}
-
-// Callbacks and helper functions ---------------------------------------------
-
-// Helper functions
-function getCodeNode() {
-    return rtwSrcFrame().document.getElementById("RTWcode");
-}
-
-function rtwMidFrame() {
-    return top.document.getElementById('rtw_midFrame');
-}
-function rtwSrcFrame() {
-    return top.rtwreport_document_frame;
-}
-function rtwTocFrame() {
-    return top.rtwreport_contents_frame;
-}
-function rtwNavToolbarFrame() {
-    return top.rtwreport_navToolbar_frame; // return rtwTocFrame();
-}
-function rtwInspectFrame() {
-    return top.rtwreport_inspect_frame; // return rtwTocFrame();
-}
-function rtwGetFileName(url) {
-    var slashIdx = url.lastIndexOf('/');
-    var hashIdx  = url.indexOf('#', slashIdx);
-    if (hashIdx == -1)
-        return url.substring(slashIdx+1)
-    else
-        return url.substring(slashIdx+1,hashIdx);
-}
-
-// Help function to expand the file group
-function expandFileGroup(docObj, tagID) {
-    if (docObj.getElementById) {
-        var obj_table = docObj.getElementById(tagID);
-        var o;
-        while (obj_table.nodeName != "TABLE") {
-            if (obj_table.parentNode) {
-                obj_table = obj_table.parentNode;
-            } else {
-                return;
-            }
-        }
-        if (obj_table.style.display == "none") {
-            var category_table = obj_table.parentNode;
-            while (category_table.nodeName != "TABLE") {
-                if (category_table.parentNode) {
-                    category_table = category_table.parentNode;
-                } else {
-                    return;
-                }        
-            }
-            var o = category_table.id + "_button";
-            o = docObj.getElementById(o);
-            if (o && top.rtwreport_contents_frame.rtwFileListShrink) {
-                top.rtwreport_contents_frame.rtwFileListShrink(o, category_table.id,
-                                                               category_table.getAttribute('label'), 0);
-            }
-        }
-    }
-}
-// Help function to set the background color based on Element's Id in a document
-// object
-function setBGColorByElementId(docObj, tagID, bgColor) {
-    var status = false;
-    if (bgColor == "") {
-        bgColor = "TRANSPARENT";
-    }
-    
-    if (docObj.getElementById) {
-        var obj2Hilite = docObj.getElementById(tagID);
-        if (obj2Hilite && obj2Hilite.parentNode) {
-            obj2Hilite.parentNode.style.backgroundColor = bgColor;
-            status = true;
-        }
-    }
-    return status;
-}
-
-// Help function to set the background color based on Element's name in a document
-// object
-function setBGColorByElementsName(docObj, tagName, bgColor) {
-    if (bgColor == "") {
-        bgColor = "TRANSPARENT";
-    }  
-    if (docObj.getElementsByName) {
-        var objs2Hilite = docObj.getElementsByName(tagName);
-        for (var objIndex = 0; objIndex < objs2Hilite.length; ++objIndex) {     
-            if (objs2Hilite[objIndex].parentNode)
-                objs2Hilite[objIndex].parentNode.style.backgroundColor = bgColor;
-        }
-    }
-}
-
-// Help function to highlight lines in source file based on Element's name
-// Note: Name of docHiliteByElementsName would be better
-function hiliteByElementsName(winObj, tagName) {
-    var hiliteColor = "#aaffff";
-    if (winObj.document)
-        setBGColorByElementsName(winObj.document, tagName, hiliteColor);
-}
-
-// Help function to remove the highlight of lines in source file based on Element's name
-function removeHiliteByElementsName(winObj, tagName) {
-    if (winObj.document)
-        setBGColorByElementsName(winObj.document, tagName, "");
-}
-
-// Help function to set the background color based on the URL's hash
-function setBGColorByHash(docObj, bgColor) {    
-    if (docObj.location) {
-        var tagName = docObj.location.hash;
-        // Use the stored hash value if it exists because the location.hash
-        // may be wrong in internal web browser
-        if (RTW_Hash.instance)
-            tagName = RTW_Hash.instance.getHash();
-        if (tagName != null)
-            tagName = tagName.substring(1);
-        
-        var codeNode = docObj.getElementById("RTWcode");
-        if (tagName != null && tagName != "") {        
-            if (!isNaN(tagName))
-                tagName = Number(tagName) + 10;            
-            setBGColorByElementsName(docObj, tagName, bgColor);
-        }
-    }
-}
-
-// Highlight the lines in document frame based on the URL's hash
-function hiliteByHash(docObj) {       
-    var hiliteColor = "#aaffff";  
-    setBGColorByHash(docObj, hiliteColor);
-}
-
-// Remove highlight of lines in document frame based on the URL's hash
-function removeHiliteByHash(winObj) {
-    if (winObj.document)
-        setBGColorByHash(winObj.document, "");
-}
-
-// Highlight the filename Element in TOC frame based on the URL's filename
-function hiliteByFileName(aHref) {       
-    var status = false;
-    if (!top.rtwreport_contents_frame)
-        return status;
-    var hiliteColor = GlobalConfig.fileLinkHiliteColor;
-    var fileName = rtwGetFileName(aHref);    
-    if (top.rtwreport_contents_frame.document) {
-        removeHiliteFileList(top.rtwreport_contents_frame);
-        status = setBGColorByElementId(top.rtwreport_contents_frame.document, fileName, hiliteColor);
-        if (status)
-            expandFileGroup(top.rtwreport_contents_frame.document, fileName);
-    }
-    return status;
-}
-
-// Clear the highlights in the code navigation frame.
-function removeHiliteCodeNav(winObj) {    
-    removeHiliteTOC(winObj);
-    removeHiliteFileList(winObj);
-}
-// Clear the highlights in TOC frame. TOC links are named TOC_List
-function removeHiliteTOC(winObj) {    
-    removeHiliteByElementsName(winObj, "TOC_List"); 
-}
-// Clear the highlights in Generated File List. 
-// The filename links are named rtwIdGenFileLinks,
-function removeHiliteFileList(winObj) {    
-    removeHiliteByElementsName(winObj, "rtwIdGenFileLinks");
-}
-
-// Highlight TOC hyperlinks by their Ids.
-function tocHiliteById(id) {
-    hiliteColor = GlobalConfig.fileLinkHiliteColor;    
-    if (top && top.rtwreport_contents_frame && top.rtwreport_contents_frame.document) {
-        removeHiliteCodeNav(top.rtwreport_contents_frame);
-        setBGColorByElementId(top.rtwreport_contents_frame.document, id, hiliteColor);
-    }
-}
-
-// onClick function to highlight the link itself
-function tocHiliteMe(winObj, linkObj, bCleanTrace) {
-    hiliteColor = GlobalConfig.fileLinkHiliteColor;
-    // remove the trace info (previous highlighted source code and the navigate
-    // panel)
-    // Clean Trace info only when links in TOC clicked. Links of filenames won't
-    // clean trace info. 
-    if (bCleanTrace) {
-        if (RTW_TraceInfo.instance) {
-            RTW_TraceInfo.instance.setDisablePanel(true);
-            rtwRemoveHighlighting();
-        }
-        closeInspectWindow();        
-    }        
-    removeHiliteCodeNav(winObj);
-    if (linkObj.parentNode) {
-        linkObj.parentNode.style.backgroundColor= hiliteColor;
-    }
-}
-
-// onClick function to clean the currently highlighed lines in document frame
-// based on URL's hash
-// Then highlight lines in document frame based on Element's name
-// It works for links to some elements in the same page, otherwise, 
-// rtwFileOnLoad() in loading page does the job.
-function docHiliteMe(winObj, elementName) {
-    // First, remove the highlighted elements by stored hash value
-    removeHiliteByHash(winObj);
-    // Store the new hash value defined by elementName
-    if (RTW_Hash.instance) {
-        RTW_Hash.instance.setHash("#"+elementName);
-    } else {
-        RTW_Hash.instance = new RTW_Hash("#"+elementName);
-    }
-    hiliteByElementsName(winObj, elementName);
-}
-
-// Callback for generated file load callback
-function rtwFileOnLoad(docObj) {
-    if (!docObj.location || !docObj.location.href)
-        return;
-    // Save the hash value when file is loaded in the first time
-    if (!RTW_Hash.instance) {
-        RTW_Hash.instance = new RTW_Hash(docObj.location.hash);
-    } else {
-        RTW_Hash.instance.setHash(docObj.location.hash);
-    }  
-    
-    updateHyperlinks();
-    // highlight lines in source code file according to the URL hash
-    hiliteByHash(docObj);
-    // highlight the filename in the TOC frame
-    if (top.rtwreport_contents_frame) {
-        if (hiliteByFileName(docObj.location.href)) {
-            // remove the highlights in the TOC frame if filename is hilite successfully
-            removeHiliteTOC(top.rtwreport_contents_frame);
-        }
-    }
-    
-    if (!RTW_TraceInfo.instance)
-        return;
-    if (!docObj.getElementById)
-        return;
-    if (rtwSrcFrame())
-        rtwSrcFrame().focus();
-    var fileName = rtwGetFileName(docObj.location.href);
-    var fileIdx = RTW_TraceInfo.instance.getFileIdx(fileName);
-    if (fileIdx != null) {
-        if (fileIdx != RTW_TraceInfo.instance.getCurrFileIdx())
-            RTW_TraceInfo.instance.setCurrent(fileIdx,-1);
-        var codeNode = docObj.getElementById("RTWcode");
-        var hiliteColor = RTW_TraceArgs.instance.getColor();
-        if (!hiliteColor) {
-            hiliteColor = "#aaffff";
-        }
-        var fontSize = RTW_TraceArgs.instance.getFontSize();
-        if (fontSize) {
-            codeNode.style.fontSize = fontSize;
-        }
-        RTW_TraceInfo.instance.highlightLines(codeNode,hiliteColor);
-        RTW_TraceInfo.instance.highlightFileLink(fileIdx, GlobalConfig.fileLinkHiliteColor);
-    }
-}
-
-function Nav(fileIdx1, fileIdx2) {
-    var filename = top.rtwreport_document_frame.location.pathname.split(/\//);
-    filename = filename[filename.length-1];
-    var currentFileIdx = RTW_TraceInfo.instance.getFileIdx(filename);
-    if (fileIdx1 === currentFileIdx) {
-        top.rtwreport_document_frame.document.location.href = RTW_TraceInfo.instance.getCurrentHRef();
-        top.initLine = top.rtwreport_document_frame.document.location.hash.substr(1);
-        addTagToCurrentLine();
-        if (top.rtwreport_contents_frame) {            
-            if (hiliteByFileName(top.rtwreport_document_frame.location.href))
-                removeHiliteTOC(top.rtwreport_contents_frame);
-        }
-    } else {
-        var aUrl = RTW_TraceInfo.instance.getCurrentHRef();
-        if (hasWebviewFrame()) {
-            top.rtwreport_document_frame.document.location.href=aUrl;
-        } else {
-            top.rtwreport_document_frame.document.location.href=aUrl + "+newPage";
-        }
-    }
-}
-// Callback for "Prev" button
-function rtwGoPrev() {
-    if (RTW_TraceInfo.instance && top.rtwreport_document_frame) {
-        var prevfileIdx = RTW_TraceInfo.instance.getPrevFileIdx();
-        var currfileIdx = RTW_TraceInfo.instance.fCurrFileIdx;
-        rmTagToCurrentLine();
-        RTW_TraceInfo.instance.goPrev();
-        Nav(prevfileIdx, currfileIdx);
-    }
-}
-// Callback for "First" button
-function rtwGoFirst() {
-    if (RTW_TraceInfo.instance && top.rtwreport_document_frame) {
-        var prevfileIdx = RTW_TraceInfo.instance.getFirstFileIdx();
-        var currfileIdx = RTW_TraceInfo.instance.fCurrFileIdx;
-        rmTagToCurrentLine();
-        RTW_TraceInfo.instance.goFirst();
-        Nav(prevfileIdx, currfileIdx);
-    }
-}
-
-// Callback for navigation button onclick
-var navButtonStatus = (function() {
-    var isclicked = false;
-    return {
-        clicked: function () {
-            isclicked = true;
-            return false;
-        },
-        reset: function () {
-            isclicked = false;
-        },
-        isClicked: function () {
-            return isclicked;
-        }
-    };
-})();
-
-// Callback for "Next" button
-function rtwGoNext() {
-    if (RTW_TraceInfo.instance && top.rtwreport_document_frame) {
-        var nextfileIdx = RTW_TraceInfo.instance.getNextFileIdx();
-        var currfileIdx = RTW_TraceInfo.instance.fCurrFileIdx;
-        rmTagToCurrentLine();
-        RTW_TraceInfo.instance.goNext();
-        Nav(nextfileIdx, currfileIdx);
-    }
-}
-// Callback for "Last" button
-function rtwGoLast() {
-    if (RTW_TraceInfo.instance && top.rtwreport_document_frame) {
-        var nextfileIdx = RTW_TraceInfo.instance.getLastFileIdx();
-        var currfileIdx = RTW_TraceInfo.instance.fCurrFileIdx;
-        rmTagToCurrentLine();
-        RTW_TraceInfo.instance.goLast();
-        Nav(nextfileIdx, currfileIdx);
-    }
-}
-
-function addTagToCurrentLine() {
-    rmHiliteClickedToken();
-    tagCurrentLine(true);
-}
-function rmTagToCurrentLine() {
-    tagCurrentLine(false);
-}
-// tag current line by changing the bacgkround color of the line 
-function tagCurrentLine(addColor) {
-    if (RTW_TraceInfo.instance) {
-        var o = top.rtwreport_document_frame.document.getElementById(RTW_TraceInfo.instance.getCurrLine());
-        if (o) {
-            if (addColor) {
-                o.className = "hiliteCurrentLine";            
-            } else {
-                o.className = "hilite";
-            }
-        }
-    }
-}
-// Helper function for main document load callback
-function rtwMainOnLoadFcn(topDocObj,aLoc,aPanel,forceReload) {
-    var loc;
-    var aHash="";
-    var lastArgs = null;
-    var tocDocObj = top.rtwreport_contents_frame.document;
-    if (typeof forceReload === "undefined") {
-        forceReload = false;
-    }
-    // get the hash value from location.
-    if (!aLoc) {
-        loc = topDocObj.location;
-        if (loc.search || loc.hash) {
-            if (loc.search)
-                aHash = loc.search.substring(1);
-            else
-                aHash = loc.hash.substring(1);
-        }
-    } else {
-        aHash = aLoc;
-        if (RTW_TraceArgs.instance)
-            lastArgs = RTW_TraceArgs.instance;
-    }
-
-    // parse URL hash value
-    RTW_TraceArgs.instance = new RTW_TraceArgs(aHash);
-    // load metrics
-    load_metrics();
-    // hide content panel if in studio
-    if (RTW_TraceArgs.instance.getInStudio()) {
-        setupInStudio();
-    }
-    // use incode traceability
-    if (RTW_TraceArgs.instance.getInCodeTrace()) {
-        RTW_TraceArgs.instance.parseUrlHash2(RTW_TraceArgs.instance.getTraceData());
-        inCodeTraceOnload();
-        return;
-    }
-    if (lastArgs !== null) {
-        RTW_TraceArgs.instance.setUseExternalBrowser(lastArgs.getUseExternalBrowser());
-        RTW_TraceArgs.instance.setModel2CodeSrc(lastArgs.getModel2CodeSrc());
-    }    
-
-    // get highlight url using sid
-    if (RTW_TraceArgs.instance.hasSid()) {
-        aHash = getCodeLines();  
-    }
-    // parse hash to look for msg=...&block=... pattern
-    RTW_TraceArgs.instance.parseCommand(aHash);
-    // parse hash to look for file.c:10,12&file.h:10,12 
-    RTW_TraceArgs.instance.parseUrlHash(aHash);
-
-    // hide navigation buttons if not in MATLAB
-    if (RTW_TraceArgs.instance.getUseExternalBrowser() && tocDocObj.getElementById) {
-        var o = tocDocObj.getElementById("nav_buttons");
-        if (o != null) {
-            o.style.display = "none";
-        }
-    }
-
-    // hide web view frameset if model2code_src is model
-    if (RTW_TraceArgs.instance.getModel2CodeSrc() === "model") {
-        var o = top.document.getElementById('rtw_webviewMidFrame');
-        if (o) {
-            o.rows = "100%,0%";
-        }
-    }
-
-    // stop onload when it has been loaded
-    if (window.location.search.indexOf("loaded=true") > 0 
-        && top.rtwreport_document_frame.location.href !== "about:blank" && forceReload !== true) {
-        updateHyperlinks();
-        return;
-    }  
-    
-    // modify modelref links
-    update_modelref_report_link(top.rtwreport_contents_frame.document);
-    try {
-        // ignore browser security error 
-        update_modelref_report_link(top.rtwreport_document_frame.document);
-    } catch(e) {};
-
-    // redirect the page based on the url    
-    var initPage = null;
-    if (RTW_TraceArgs.instance.getNumFiles()) {
-        var fileLinks = RTW_TraceInfo.getFileLinks(tocDocObj);
-        RTW_TraceInfo.instance = new RTW_TraceInfo(fileLinks);
-        RTW_TraceInfo.instance.removeHighlighting()
-        var numFiles = RTW_TraceArgs.instance.getNumFiles();
-        var tLines = 0;
-        for (var i = 0; i < numFiles; ++i) {
-            RTW_TraceInfo.instance.setLines(RTW_TraceArgs.instance.getFile(i),RTW_TraceArgs.instance.getLines(i));
-            tLines += RTW_TraceArgs.instance.getLines(i).length;
-        }
-        RTW_TraceInfo.instance.setTotalLines(tLines);
-        if (aPanel == false) {
-            RTW_TraceInfo.instance.setDisablePanel(true);
-        }
-        var initFile = RTW_TraceArgs.instance.getInitFile();
-        RTW_TraceInfo.instance.setInitLocation(initFile,RTW_TraceArgs.instance.getInitLine());
-        if (!hasInCodeTrace()) {
-            initPage = RTW_TraceInfo.instance.getCurrentHRef();
-        } else {
-            initPage = initFile;
-        }
-    } else {
-        // catch error that document frame is in another domain
-        try {
-            var fileDocObj = top.rtwreport_document_frame.document;
-            if (fileDocObj.location && (!fileDocObj.location.href || fileDocObj.location.href == "about:blank")) {
-                var summaryPage = tocDocObj.getElementById("rtwIdSummaryPage");
-                var tracePage = tocDocObj.getElementById("rtwIdTraceability");
-                if (summaryPage) {
-                    initPage = summaryPage.href;
-                } else if (tracePage) {
-                    initPage = tracePage;
-                }
-            }
-        } catch(e) {};
-    }
-    if (RTW_TraceArgs.instance && RTW_TraceArgs.instance.fMessage) {
-        // display diagnostic message
-        var linkId = "rtwIdMsgFileLink";
-        var msgFile = tocDocObj.getElementById(linkId);
-        if (msgFile && msgFile.style) {
-            msgFile.style.display = "block";
-            // Highlight the background of msg link
-            tocHiliteById(linkId);      
-        }
-        initPage = "rtwmsg.html";
-    }
-    if (initPage) {
-        var is_same_page = false;
-        try {
-            var fileDocObj = top.rtwreport_document_frame.document;
-            is_same_page = isSamePage(fileDocObj.location.href, initPage);
-        } catch(e) {};     
-        if (document.getElementById("rtwreport_document_frame")) {
-            document.getElementById("rtwreport_document_frame").setAttribute("src", initPage);
-        } else {
-            top.rtwreport_document_frame.location.href = initPage;
-        }
-                
-        if (is_same_page) {
-            // Goto the same page won't trigger onload function.
-            // Call it manuelly to highligh new code location.
-            rtwFileOnLoad(top.rtwreport_document_frame.document);        
-        } 
-    }
-}
-
-// Compare if href1(i.e. file:///path/file1.html#222) and href2(i.e.file2.html) are same pages.
-// isSamePage return true if file1 == file2.
-function isSamePage(href1, href2) {
-    var page1 = href1.substring(href1.lastIndexOf('/')+1,href1.lastIndexOf('.html'));
-    var page2 = href2.substring(href2.lastIndexOf('/')+1,href2.lastIndexOf('.html'));
-    return (page1 == page2);
-}
-
-// Callback for main document loading
-function rtwMainOnLoad() {    
-    rtwMainOnLoadFcn(document,null,true, false);
-    var newUrl;
-    // modify history state to avoid reload from pressing back 
-    if (RTW_TraceArgs.instance && !RTW_TraceArgs.instance.getUseExternalBrowser() && 
-        typeof window.history.replaceState === "function") {
-        if (window.location.search.length > 0) {
-            if (window.location.search.indexOf("loaded=true") === -1) {
-                newUrl = document.location.pathname + window.location.search + '&loaded=true';
-            } else {
-                newUrl = document.location.pathname + window.location.search;
-            }
-        } else {
-            newUrl = document.location.pathname + window.location.search + '?loaded=true';
-        }
-        window.history.replaceState("","",newUrl);
-    }
-}
-
-// Helper function for traceability report
-function rtwMainReload(location) {
-    // remove highlight filename and lines before reloading the page
-    if (RTW_TraceInfo.instance)
-        RTW_TraceInfo.instance.removeHighlighting();  
-    rtwMainOnLoadFcn(document,location,true,true);
-}
-
-function rtwMainReloadNoPanel(location) {
-    rtwMainOnLoadFcn(document,location,false,true);
-}
-
-// Callback for hyperlink "Remove Highlighting"
-function rtwRemoveHighlighting() {
-    if (RTW_TraceInfo.instance)
-        RTW_TraceInfo.instance.removeHighlighting();
-    if (rtwSrcFrame()) {
-        rtwSrcFrame().focus();
-    }
-    if (hasInCodeTrace()) {
-        removeInCodeTraceHighlight();
-    }
-}
-
-// Display diagnostic message in document frame
-function rtwDisplayMessage() {
-    var docObj = top.rtwreport_document_frame.document;
-    var msg = docObj.getElementById(RTW_TraceArgs.instance.fMessage);
-    if (!msg) {
-        msg = docObj.getElementById("rtwMsg_notTraceable");
-    }
-    if (msg && msg.style) {
-        msg.style.display = "block"; // make message visible
-        var msgstr = msg.innerHTML;
-        // replace '%s' in message with block name
-        if (top.RTW_TraceArgs.instance) {
-            var sid = top.RTW_TraceArgs.instance.getBlock();
-            if (sid) {
-                var block = sid;
-                if (top.RTW_rtwnameSIDMap && top.RTW_rtwnameSIDMap.instance && top.RTW_rtwnameSIDMap.instance.getRtwname(sid)) {
-                    block = top.RTW_rtwnameSIDMap.instance.getRtwname(sid).rtwname;
-                    block = block.replace("<", "&lt;").replace(">", "&gt;");
-                } else {
-                    block = sid;
-                }
-                if (block) {
-                    msgstr = msgstr.replace("%s", block);
-                }
-            }
-        }
-        msg.innerHTML = msgstr;
-    }
-}
-
-function updateHyperlinks() {
-    docObj = top.rtwreport_document_frame;
-    if (docObj && docObj.document) {
-        if (RTW_TraceArgs.instance === null || !RTW_TraceArgs.instance.getUseExternalBrowser()) {
-            var plain_link =  docObj.document.getElementById("linkToText_plain");
-            if (plain_link && plain_link.href && plain_link.href.indexOf("matlab:coder.internal.editUrlTextFile") === -1 ) {
-                plain_link.href = "matlab:coder.internal.editUrlTextFile('" + str2StrVar(plain_link.href) + "')";
-            }          
-            var alink = docObj.document.getElementById("linkToCS");
-            var linkCmd = "matlab:coder.internal.viewCodeConfigsetFromReport";
-            if (alink && alink.href && alink.href.indexOf(linkCmd) === -1) {
-                alink.href = linkCmd+ "('" + str2StrVar(alink.href) + "');";
-                if(alink.style) {
-                    alink.style.display = "";
-                    hidden_link = docObj.document.getElementById("linkToCS_disabled");
-                    if (hidden_link) {
-                        hidden_link.style.display = "none";
-                    }
-                }
-            }
-        } else {
-            var alink = docObj.document.getElementById("linkToCS");
-            if (alink && alink.style) {
-                alink.style.display = "none";
-                hidden_link = docObj.document.getElementById("linkToCS_disabled");
-                if (hidden_link)
-                    hidden_link.style.display = "";
-            }
-            if (typeof docObj.document.getElementsByClassName === "function") {
-                alinks = docObj.document.getElementsByClassName("callMATLAB");
-            } else if (typeof docObj.document.getElementsByName === "function") {
-                alinks = docObj.document.getElementsByName("callMATLAB");
-            } else {
-                alinks = [];
-            }
-            alink = docObj.document.getElementById("CodeGenAdvCheck");
-            if (alink && alink.href && alink.href.indexOf("externalweb=true")===-1) {
-                alink.href = alink.href + "?externalweb=true";
-            }
-
-            if (typeof docObj.document.getElementsByName === "function") 
-                var objs = docObj.document.getElementsByName("MATLAB_link");
-            else 
-                objs = [];
-            for (var objIndex = 0; objIndex < objs.length; ++objIndex) {     
-                objs[objIndex].style.display = "none";
-            }
-        }
-    }
-    updateCode2ModelLinks(docObj.document);
-    // modify modelref links
-    update_modelref_report_link(top.rtwreport_contents_frame.document);
-    try {
-        // ignore browser security error 
-        update_modelref_report_link(top.rtwreport_document_frame.document);
-    } catch(e) {};
-}
-
-function update_modelref_report_link(docObj) {
-    if (docObj.getElementsByName) {
-        var arg = "";
-        if (RTW_TraceArgs.instance && !RTW_TraceArgs.instance.getUseExternalBrowser()) {
-            arg = "?useExternalBrowser=false";
-        }
-        if (RTW_TraceArgs && RTW_TraceArgs.instance && RTW_TraceArgs.instance.getModel2CodeSrc() != null) {
-            if (arg.length > 0)
-                arg = arg + "&model2code_src=" + RTW_TraceArgs.instance.getModel2CodeSrc();
-            else
-                arg = "?model2code_src=" + RTW_TraceArgs.instance.getModel2CodeSrc();
-        }
-        if (arg.length > 0) {
-            links = docObj.getElementsByName('external_link');
-            for (var link_idx = 0; link_idx < links.length; ++link_idx) {
-                links[link_idx].href = links[link_idx].href + arg;
-            }
-        }
-    }
-}
-
-function rtwResizeFrame(f) {
-    if (f) {
-        f.style.height = f.contentWindow.document.body.scrollHeight + "px";
-    }
-}
-
-function rtwPageOnLoad(id) {
-    // highlight toc entry
-    tocHiliteById(id);
-    // restore elements state
-    if (top && top.restoreState) {
-        if (top.rtwreport_contents_frame && top.rtwreport_contents_frame.document)
-            top.restoreState(top.rtwreport_contents_frame.document);
-        if (top.rtwreport_document_frame && top.rtwreport_document_frame.document) {
-            top.restoreState(top.rtwreport_document_frame.document);
-            rtwResizeFrame(top.rtwreport_document_frame.document.getElementById("rtwIdContentsIframe"));
-        }
-    }
-    updateHyperlinks();
-}
-
-// highlight code after changeSys
-function rtwChangeSysCallback(sid) {
-    if (sid == "" || typeof RTW_Sid2UrlHash == "undefined" || !RTW_Sid2UrlHash.instance)
-        return false;
-    urlHash = RTW_Sid2UrlHash.instance.getUrlHash(sid);
-    if (urlHash != undefined) {
-        if (RTW_TraceArgs && RTW_TraceArgs.instance && 
-            !RTW_TraceArgs.instance.getUseExternalBrowser())
-            urlHash = (urlHash == "")? "?useExternalBrowser=false" : 
-            urlHash+"&useExternalBrowser=false";
-        rtwMainReload(urlHash, true);
-        return true;
-    } else {
-        // remove highlighting from traceinfo
-        rtwRemoveHighlighting();
-        return false;
-    }
-}
-
-function emlFileOnload(docObj) {
-    var loc = docObj.location;
-    if (loc.hash) {
-        var line = loc.hash.substring(1);
-        hiliteEmlLine(docObj, line);                        
-    }   
-}
-
-function hiliteEmlLine(docObj, line) {
-    var bgColor;
-    if (top.HiliteCodeStatus)
-        bgColor = "#66CCFF";
-    else
-        bgColor = "#E8D152";
-    // unhighlight
-    if (typeof docObj.HiliteLine != "undefined") {
-        trObj = docObj.getElementById("LN_"+docObj.HiliteLine);
-        if (trObj != null) {
-            trObj.style.backgroundColor = "";                   
-        }
-    }   
-    // hilighlight
-    trObj = docObj.getElementById("LN_"+line);
-    if (trObj != null) {
-        trObj.style.backgroundColor = bgColor;
-        docObj.HiliteLine = line;
-    }
-}
-
-function emlLineOnClick(docObj,sid,line) {
-    if (top) {
-        top.HiliteCodeStatus = top.rtwChangeSysCallback(sid);        
-    }
-    hiliteEmlLine(docObj, line);
-}
-
-function updateCode2ModelLinks(docObj) {
-    var webviewFrame = top.document.getElementById('rtw_webviewMidFrame');
-    var link2model = false;
-    var isTestHarness = false;
-    if (top.testHarnessInfo && top.testHarnessInfo.IsTestHarness === "1") {
-        isTestHarness = true;
-    }
-    if (webviewFrame || isTestHarness) {
-        if (webviewFrame && RTW_TraceArgs.instance && 
-            (RTW_TraceArgs.instance.getModel2CodeSrc() !== "model" ||
-             RTW_TraceArgs.instance.getUseExternalBrowser())
-           ) {
-            hiliteCmd = "javascript:top.rtwHilite(";
-        } else {
-            hiliteCmd = "matlab:coder.internal.code2model(";
-            link2model = true;
-        }
-        var objs = docObj.getElementsByName('code2model');
-        var o = null;
-        var str = '';
-        var sid = '';
-        var pattern = "'code2model',";
-        for (var objIndex = 0; objIndex < objs.length; ++objIndex) {     
-            o = objs[objIndex];
-            str = o.href.substring(o.href.indexOf('(')+1);
-            if (str.indexOf(pattern) > -1) {
-                str = str.substring(str.indexOf(pattern) + pattern.length);
-            }
-            o.href = hiliteCmd + str;
-            if (link2model && isTestHarness) {
-                sid = str.substring(0, str.indexOf(")"));
-                o.href = hiliteCmd + sid + ",'" +
-                    top.testHarnessInfo.HarnessName+ "','" + 
-                    top.testHarnessInfo.HarnessOwner+ "','" + 
-                    top.testHarnessInfo.OwnerFileName + "');";
-            }
-        }
-    }
-}
-
-function rtwHilite(aBlock,aParentSID) {
-    if (aBlock.indexOf('-') !== -1) { 
-        // remove sid range: model:sid:2-10 => model:sid 
-        var s; 
-        s = aBlock.split(':'); 
-        if (s.length > 0) { 
-            s = s[s.length-1]; 
-            if (s.indexOf('-') != -1) { 
-                aBlock = aBlock.substring(0, aBlock.lastIndexOf(':')); 
-            } 
-        } 
-    } 
-    if (typeof aParentSID === "undefined") {
-        if (top.RTW_SidParentMap && top.RTW_SidParentMap.instance)
-            aParentSID = top.RTW_SidParentMap.instance.getParentSid(aBlock);
-        else
-            aParentSID = aBlock;
-    }
-    top.HiliteCodeStatus = true;
-    
-    // webview 2 defines an interface api, call slwebview.
-    if (top.slwebview) {
-        // webview 2.x
-        if (top.codeToWebView(aBlock, aParentSID) === -1) {
-            alert("Cannot highlight block in model Web view. It may not be exported.");
-        }
-    
-    } else {
-        // webview 1.x
-        if (hiliteBlockForRTWReport(aBlock,aParentSID) === false) {
-            if (hiliteBlockForRTWReport(aBlock, aBlock) === false) {
-                rtwHilite(aParentSID);
-            }
-        }
-    }
-}
-
-function rtwHiliteMultiple(sids, action) {
-	//For new Code Gen report
-	if (top.slwebview) {
-        // webview 2.x
-        if (top.codeToWebViewArray(sids, action) === -1) {
-            alert("Cannot highlight block(s) in model Web view. It may not be exported.");
-        }
-    }
-}
-
-function str2StrVar(str) {
-    return str.replace(/'/g,"''");
-}
-window.onload=rtwMainOnLoad;
-
-// handle incode traceability highlighting
-function inCodeTraceOnload() {  
-    var tocDocObj = top.rtwreport_contents_frame.document;
-    if (!top.RTW_TraceArgs.instance) {
-        var summaryPage = tocDocObj.getElementById("rtwIdSummaryPage");                 
-        top.rtwreport_document_frame.location.href = summaryPage.href;  
-        return;
-    }
-
-    var files = top.RTW_TraceArgs.instance.getFile();
-    if (files.length === 0) {
-        if (top.RTW_TraceArgs.instance) {
-            var block = top.RTW_TraceArgs.instance.getBlock();
-            block = block.replace("<", "&lt;").replace(">", "&gt;");
-        }
-        top.rtwreport_document_frame.document.write("<pre>No traceability information for block " + block + ".</pre>");
-        return;
-    };
-
-    var fileLinks = RTW_TraceInfo.getFileLinks(tocDocObj);
-    RTW_TraceInfo.instance = new RTW_TraceInfo(fileLinks);
-
-    // update filelist with num of highlighted lines
-    var tocDoc = top.rtwreport_contents_frame.document;
-    var tLines = 0;
-    for (var i=0; i<files.length;i++) {
-        var fileIdx = top.RTW_TraceArgs.instance.getFileIdx(files[i]);
-        if (typeof fileIdx !== "undefined") {
-            var rows = top.RTW_TraceArgs.instance.getRows(fileIdx);
-            var linkNode =  tocDoc.getElementById(files[i]);
-            updateNumHighlightedLines(linkNode, rows.length);
-            RTW_TraceInfo.instance.setLines(files[i], rows);
-            tLines += rows.length;
-        }
-    }
-    // set number of total lines
-    RTW_TraceInfo.instance.setTotalLines(tLines);
-    // update highligthed from
-    if (RTW_TraceArgs.instance.getNumBlocks() === 1) {
-        var node = tocDoc.getElementById("rtwIdTraceBlock");
-        if (node) node.textContent = RTW_TraceArgs.instance.getBlock();
-    }
-    // set the initial file and line
-    fileIdx = top.RTW_TraceArgs.instance.getFileIdx(files[0]);
-    rows = top.RTW_TraceArgs.instance.getRows(fileIdx);
-    RTW_TraceInfo.instance.setInitLocation(files[0],rows[0]);
-
-    // highlight first file
-    top.rtwreport_document_frame.location.href = files[0];
-    return;
-}
-
-function updateNumHighlightedLines(linkObj, aNumLines) {
-    var parent = linkObj.parentNode;
-    if (parent && parent.childNodes && parent.childNodes.length > 1) {
-        var spanNodes = parent.getElementsByTagName('span');
-        var len = spanNodes.length;
-        if (len > 0) {
-            if (aNumLines > 0) {
-                /* display number of matches */
-                spanNodes.item(len-1).innerHTML = "&nbsp;("+aNumLines+")";
-            } else {
-                /* clear number of matches */
-                spanNodes.item(len-1).innerHTML = "";
-            }
-        }
-    }
-}
-
-function setupInStudio() {
-    if (top.whole) {
-        var tmp = top.whole.rows.split(",");    
-        tmp[0] = "35px";
-        top.whole.rows = tmp.join();    
-    }
-    if (top.main) {
-        var tmp = top.main.cols.split(",");
-        tmp[0] = "0";
-        top.main.cols = tmp.join();
-    }
-    // add file list to source file
-    if (top.Html2SrcLink && top.Html2SrcLink.instance && top.fileSelector) {
-        var myDoc = top.fileSelector.document;
-        var fileSelector = myDoc.createElement("select");
-        fileSelector.id = "fileSelector";
-        fileSelector.onchange = top.fileSelectorOnChange;
-        var filename;
-        var filelink;
-        fileSelector.innerHTML += "<option value='" + 
-            top.rtwreport_contents_frame.document.getElementById('rtwIdSummaryPage').href +
-            "'>Summary</option>"; 
-        for (var i=0; i < top.fileList.length; i++) {
-            filename = top.fileList[i];
-            filelink = top.Html2SrcLink.instance.getLink2Src(filename);
-            fileSelector.innerHTML += "<option value='" + filename + "'>" + filelink.substring(filelink.lastIndexOf('/')+1); + "</option>";
-        }
-        var bodyNode = myDoc.body;
-        bodyNode.insertBefore(fileSelector, bodyNode.firstElementChild);
-        var textNode = myDoc.createElement("span");
-        textNode.innerHTML = "Goto: ";
-        bodyNode.insertBefore(textNode, fileSelector);
-        var myCss = myDoc.createElement("link");
-        myCss.type = "text/css";
-        myCss.rel = "stylesheet";
-        myCss.href = "rtwreport.css";
-        myDoc.getElementsByTagName("head")[0].appendChild(myCss);
-    }
-}
-
-function toggleNavSideBar(val) {
-    if (top.main) {
-        var tmp = top.main.cols.split(",");    
-
-        if (val === "on") {
-            tmp[tmp.length-1] = "15px";        
-        } else {
-            tmp[tmp.length-1] = "0";        
-        }
-        top.main.cols = tmp.join();    
-        if (top.rtwreport_nav_frame) 
-            top.rtwreport_nav_frame.location.href = "nav.html";    
-    }
-};
-
-function toggleNavToolBar(val) 
-{    
-    var midFrame = rtwMidFrame();
-    if (midFrame) {
-        var tmp1 = midFrame.rows.split(",");
-        var frameIdx = getNavToolbarFrameIdx();
-        if (val === "on") {
-            tmp1[frameIdx] = "40px";
-        } else {
-            tmp1[frameIdx] = "0";
-        }    
-        midFrame.rows = tmp1.join();
-        if (top.rtwreport_navToolbar_frame) {
-            top.rtwreport_navToolbar_frame.location.href = "navToolbar.html";
-        }
-    }
-};
-
-var GlobalConfig = {
-    navHiliteColor: "#0000ff",
-    fileLinkHiliteColor: "#ffff99",
-    navToolbarBgcolor: "ivory",
-    offset: 10,
-    hiliteToken: false
-};
-var NavSideBarState = {
-    calLineHeight: 0, 
-    overLink: false,
-    linkTarget: null,
-    lastLinkTarget: null,
-    linkTargetIdx: 0
-}
-function drawNavSideBar() {
-    var rectHeight = 1;
-    if (!top || !top.rtwreport_document_frame || !top.rtwreport_nav_frame) return;
-    
-    if (!top.RTW_TraceArgs.instance) return;
-    var fileIdx = top.RTW_TraceArgs.instance.getFileIdx();
-    if (fileIdx === undefined) return;
-    var rows = top.RTW_TraceArgs.instance.getRows(fileIdx);                
-    if (rows.length === 0) return; // no highlighted line 
-    
-    var codeTbl = top.rtwreport_document_frame.document.getElementById("codeTbl");
-    if (!codeTbl) return; // no code table
-    
-    var nRows = codeTbl.rows.length + 1;
-    var canvas = top.rtwreport_nav_frame.document.getElementById("canvas");                
-    canvas.width = top.rtwreport_nav_frame.innerWidth;
-    canvas.height = top.rtwreport_nav_frame.innerHeight-2;
-    NavSideBarState.calLineHeight = canvas.height/nRows;
-    if (canvas.getContext) {
-        var ctx = canvas.getContext("2d");
-        ctx.clearRect(0, 0, canvas.width, canvas.height);
-        // fill background 
-        ctx.fillStyle = GlobalConfig.navToolbarBgcolor;
-        ctx.fillRect(0, 0, canvas.width, canvas.height);
-        ctx.fillStyle = GlobalConfig.navHiliteColor;
-        for (var i=0;i<rows.length;i++) {
-            ctx.fillRect(0, Number(rows[i])*NavSideBarState.calLineHeight, canvas.width, rectHeight);
-        }
-        if (canvas.addEventListener) { 
-            canvas.addEventListener("mousemove", navBarOnMousemove, false);
-            canvas.addEventListener("click", navBarOnClick, false);
-        } else if (canvas.attachEvent) {
-            canvas.attachEvent("mousemove", navBarOnMousemove);
-            canvas.attachEvent("click", navBarOnClick);
-        }
-    }
-}
-
-function navBarOnMousemove(e) {
-    var y = e.clientY;
-    var tolerable_range = 5;
-    if (!top.RTW_TraceArgs.instance || !top.rtwreport_nav_frame) return;
-    var fileIdx = top.RTW_TraceArgs.instance.getFileIdx();
-    var rows = top.RTW_TraceArgs.instance.getRows(fileIdx);
-    var lineLoc,nextLineLoc;
-    top.rtwreport_nav_frame.document.body.style.cursor="";
-    NavSideBarState.overLink = false;
-    NavSideBarState.linkTarget = null;                 
-    NavSideBarState.linkTargetIdx = null;
-    for (var i=0;i<rows.length;i++) {
-        loc = rows[i]*NavSideBarState.calLineHeight;
-        // if within the tolerable range
-        if (Math.abs(y-loc) <= tolerable_range) {
-            top.rtwreport_nav_frame.document.body.style.cursor="pointer";
-            var canvas = top.rtwreport_nav_frame.document.getElementById("canvas");                
-            canvas.title = "navigate to line " + rows[i];
-            NavSideBarState.overLink = true;
-            NavSideBarState.linkTarget = rows[i];
-            NavSideBarState.linkTargetIdx = i;
-            break;
-        } 
-    }
-}
-
-function navBarOnClick(e) {
-    if (NavSideBarState.overLink && top.rtwreport_document_frame) {
-        rmTagToCurrentLine(); // remove current line tag
-        top.RTW_TraceInfo.instance.setCurrLineIdx(NavSideBarState.linkTargetIdx);
-        top.rtwreport_document_frame.document.location.href=RTW_TraceInfo.instance.getCurrentHRef();
-        top.addTagToCurrentLine(); // add current line tag
-        RTW_TraceInfo.instance.updateNavState();
-    }                
-}
-
-function removeInCodeTraceHighlight() {
-    var docObj = top.rtwreport_document_frame.document;
-    toggleNavSideBar("off");
-    toggleNavToolBar("off");
-    var nodes = docObj.getElementsByClassName("hilite");
-    // nodes is a live nodeList. Changing className modifies the list.
-    while(nodes.length) {
-        nodes[0].className = nodes[0].className.replace("hilite", "");
-    }
-    var nodes = docObj.getElementsByClassName("hiliteCurrentLine");
-    // nodes is a live nodeList. Changing className modifies the list.
-    while(nodes.length) {
-        nodes[0].className = nodes[0].className.replace("hiliteCurrentLine", "");
-    }
-    // reset RTW_TraceArgs.instance
-    RTW_TraceArgs.instance = null;
-    // remove highlight in content panel except the filelink
-    if (RTW_TraceInfo && RTW_TraceInfo.instance) {
-        var currFileIdx = RTW_TraceInfo.instance.getCurrFileIdx();
-        RTW_TraceInfo.instance.removeHighlighting();
-        RTW_TraceInfo.instance.highlightFileLink(currFileIdx);
-    }
-}
-
-function getInspectWindow() {
-    var divObj = document.createElement("div");
-    divObj.id = "popup_window";
-    return divObj;    
-}
-function getInspectData(file, anchorObj) {   
-    var metricsData = null;
-    var propObj = null;
-    var type = null;
-    var size = null;
-    var cm;
-    var srcFileName = RTW_TraceInfo.toSrcFileName(file);
-    if (top.rtwreport_nav_frame && top.rtwreport_nav_frame.CodeMetrics && 
-        top.rtwreport_nav_frame.CodeMetrics.instance && 
-        top.RTW_TraceArgs && top.RTW_TraceArgs.instance && 
-        !top.RTW_TraceArgs.instance.getUseExternalBrowser()) {
-        cm = top.rtwreport_nav_frame.CodeMetrics.instance;
-    }
-    if (cm && cm.getMetrics) {
-        metricsData = cm.getMetrics(anchorObj.text);
-        if (!metricsData) {
-            // try static token
-            metricsData =  cm.getMetrics(srcFileName + ":" + anchorObj.text);
-        }
-        if (metricsData) {            
-            type = metricsData.type;
-            if (type === "var") {
-                type = "Global Variable";
-                size = "(" + metricsData.size + " byte)";
-            } else if (type === "fcn") {
-                type = "Function";
-                if (metricsData.stackTotal === -1) {
-                    size = "(stack: " + metricsData.stack + " byte, total stack: recursion)";
-                } else {
-                    size = "(stack: " + metricsData.stack + " byte, total stack: "
-                        + metricsData.stackTotal + " byte)";
-                }
-            }            
-        }
-    }    
-    if (type === null) {
-        var defObj;
-        if (top.CodeDefine.instance.def[srcFileName + ":" + anchorObj.text]) {
-            defObj = top.CodeDefine.instance.def[srcFileName + ":" + anchorObj.text];
-        } else if (top.CodeDefine.instance.def[anchorObj.text]) {
-            defObj = top.CodeDefine.instance.def[anchorObj.text];
-        }
-        if (defObj) {
-            type = defObj.type;
-            if (type === "var") {
-                type = "Variable";
-            } else if (type === "fcn") {
-                type = "Function";
-            } else if (type === "type") {
-                type = "Type";
-            }
-            size = "";
-        }
-    }   
-    var propObj = document.createElement("div");
-    propObj.id = "token_property";
-    
-    var ulObj = document.createElement("ul");
-    ulObj.className = "popup_attrib_list";
-    if (type === null) {
-        ulObj.innerHTML = "Navigate to model";
-    } else {
-        ulObj.innerHTML = "<li>" + type + ": <var>" + anchorObj.text + "</var></li><li>"+
-            size + "</li>";
-    }
-    propObj.appendChild(ulObj);   
-    
-    return propObj;
-}
-function getInspectLink(file, pathname, anchorObj) {
-    var model = top.reportModel;
-    var tokenId = anchorObj.id;
-    var navObj = document.createElement("div");
-    navObj.id = "token_usage_nav";
-    ulObj = document.createElement("ul");
-    ulObj.id = "token_nav_links";
-    ulObj.className="popup_attrib_list";
-    var srcFileName = RTW_TraceInfo.toSrcFileName(file);
-    var defObj;
-    if (top.CodeDefine.instance.def[srcFileName + ":" + anchorObj.text]) {
-        defObj = top.CodeDefine.instance.def[srcFileName + ":" + anchorObj.text];
-    } else if (top.CodeDefine.instance.def[anchorObj.text]) {
-        defObj = top.CodeDefine.instance.def[anchorObj.text];
-    }
-    var line = anchorObj.id.substring(0,anchorObj.id.indexOf("c"));
-    // link to model
-    if (top.TraceInfoFlag && top.TraceInfoFlag.instance && 
-        top.TraceInfoFlag.instance.traceFlag[srcFileName+":"+anchorObj.id]) {
-        return null;
-    }
-    // link to def/decl
-    if (defObj) {
-        var filename = defObj.file.split(/\//);
-        filename = filename[filename.length-1];
-        ulObj.innerHTML += "<li><i>" + anchorObj.text + "</i> defined at <a target='rtwreport_document_frame' onclick=\"top.tokenLinkOnClick(event)\" href='" + defObj.file + "#" + defObj.line +
-            "'>" + RTW_TraceInfo.toSrcFileName(filename) + " line " + defObj.line + "</a></li>";
-    }
-    navObj.appendChild(ulObj);
-    return navObj;
-}
-
-var LastHiliteTokenId = null;
-function rmHiliteClickedToken() {
-    if (LastHiliteTokenId) {
-        var o = top.rtwreport_document_frame.document.getElementById(LastHiliteTokenId);
-        if (o) {
-            o.className = o.className.replace("hiliteToken", "");
-        }
-    }
-}
-function hiliteClickedToken(elem) {
-    rmHiliteClickedToken();
-    LastHiliteTokenId = elem.id;
-    elem.className += " hiliteToken";
-}
-
-var initLine = null;
-function scrollToInitLine() {
-    if (initLine) {
-        var lineElem = top.rtwreport_document_frame.document.getElementById(initLine);
-        if (lineElem) {
-            lineElem.scrollIntoView();
-        }
-    }
-}
-
-function scrollToLineBasedOnHash(hashValue) {
-    // move to the current highlight line if the hash is not empty
-    if (hashValue === "") {
-        if (top.RTW_TraceInfo.instance && top.RTW_TraceInfo.instance.getCurrLine() !== null) {
-            top.rtwreport_document_frame.document.location.href=top.RTW_TraceInfo.instance.getCurrentHRef();
-            top.initLine = top.rtwreport_document_frame.document.location.hash.substr(1);
-        }
-    } else {
-        // scroll and hilite line
-        hashValue = hashValue.substr(1);
-        if (isNaN(hashValue)) {
-            // #fcn_name
-            var pattern = "+newPage";
-            if (hashValue.indexOf(pattern) != -1) {
-                hashValue = hashValue.replace(pattern, '');
-                var lineElem = top.rtwreport_document_frame.document.getElementById(hashValue);
-                initLine = hashValue; // save initLine in case the dom is updated later by anootation
-                if (lineElem) {
-                    lineElem.scrollIntoView(); 
-                    addTagToCurrentLine();
-                }
-
-            } else {
-                var token = null;
-                pattern = ["var_", "fcn_", "type_"];
-                for (var i =0; i < pattern.length; i++) {
-                    if (hashValue.indexOf(pattern[i]) === 0) {
-                        token = hashValue.substr(pattern[i].length);
-                        break;
-                    }
-                }
-                if (token !== null && top.CodeDefine && top.CodeDefine.instance) {
-                    var addr;
-                    var filename = location.pathname.split(/\//);
-                    filename = filename[filename.length-1];  
-                    var srcFileName;
-                    if (top.RTW_TraceInfo) {
-                        srcFileName = top.RTW_TraceInfo.toSrcFileName(filename);
-                    }
-                    if (top.CodeDefine.instance.def[srcFileName + ":" + token]) {
-                        addr = top.CodeDefine.instance.def[srcFileName + ":" + token];
-                    } else {
-                        addr = top.CodeDefine.instance.def[token];
-                    }
-                    if (addr) {
-                        hilite_line(addr.line);
-                    }
-                } else { // token id like #line"c"#col
-                    if (hashValue.indexOf("c") !== -1) {
-                        hilite_line(hashValue.substr(0, hashValue.indexOf("c")), hashValue);
-                    }
-                }
-            }
-        } else { // #line
-            hilite_line(hashValue);
-        }
-    }
-    return false;
-    // hilite line number and scroll with an offset
-    function hilite_line(line, tokenId) {
-        if (isNaN(line)) return;
-        if (!tokenId) {
-            tokenId = line;
-        }
-        var elem = top.rtwreport_document_frame.document.getElementById(tokenId);               
-        hiliteClickedToken(elem);
-        initLine = offset_line(line);
-        scrollToInitLine();
-    }
-}
-
-function tokenLinkOnClick(event) {
-    var alink = event.currentTarget;
-    if (alink.pathname === top.rtwreport_document_frame.location.pathname) {
-        event.preventDefault();
-        scrollToLineBasedOnHash(alink.hash);
-    }
-    return false;
-}
-function inspectToken(file, pathname, event) {
-    var height = "70px";
-    // show inspect data
-    if (top.rtwreport_inspect_frame) { 
-        var windowObj = getInspectWindow();
-        var propObj = getInspectData(file, event.currentTarget);
-        var navObj = getInspectLink(file, pathname, event.currentTarget);
-        if (navObj === null) {
-            closeInspectWindow();
-            return false;
-        }
-        if (propObj === null) {
-            height = "50px";
-        } else {
-            windowObj.appendChild(propObj);
-        }
-        windowObj.appendChild(navObj);
-        var data = top.rtwreport_inspect_frame.document.getElementById("popup_window");
-        if (data) {
-            data.parentNode.replaceChild(windowObj.cloneNode(true), data);
-        }
-    }
-    var offsetHeight = 0;
-    var docHeight = 0;
-    if (typeof(top.rtwInspectFrame().document.body.offsetHeight) === "number") {
-        offsetHeight = top.rtwInspectFrame().document.body.offsetHeight;        
-    }
-    if (typeof(top.rtwInspectFrame().document.height) === "number") {
-        docHeight = top.rtwInspectFrame().document.height;
-    }   
-    if (offsetHeight > 0) {
-        height = ""+offsetHeight+"px";
-    } else if (docHeight > 0) {
-        height = ""+docHeight+"px";
-    }   
-    setInspectWindow(height);
-    return false;
-}
-function setInspectWindow(height) {
-    // show inspect code frame
-    var midFrame = rtwMidFrame();
-    if (midFrame) {
-        var tmp = midFrame.rows.split(",");
-        tmp[getInspectFrameIdx()] = height;    
-        midFrame.rows = tmp.join();
-    }
-}
-function closeInspectWindow() {
-    setInspectWindow(0);
-    return false;
-}
-
-// set the trace number in the navigation toolbar
-function setTraceNumber() {
-    if (RTW_TraceInfo.instance) {
-        var aFrame = rtwNavToolbarFrame();
-        if (aFrame) {
-            var node = aFrame.document.getElementById("rtwIdTraceNumber");
-            // calculate current line index over total highlighted lines
-            var currNum = RTW_TraceInfo.instance.getCurrLineIdx();
-            for (var idx=0;idx<RTW_TraceInfo.instance.getCurrFileIdx();idx++) {
-                currNum += RTW_TraceInfo.instance.getNumLines(idx);
-            }
-            if (node) {
-                node.innerHTML = String(currNum+1) + " of " + String(RTW_TraceInfo.instance.getTotalLines());
-            }
-        }
-    }
-}
-
-function offset_line(line, offset) {
-    if (offset == undefined)
-        offset = GlobalConfig.offset;
-    if (offset > 0)
-        line = (line > GlobalConfig.offset ? line - GlobalConfig.offset : 1);
-    return line;
-}
-
-function load_js(frame, file) {
-    var h = frame.document.getElementsByTagName("head")[0];
-    var o = h.getElementsByTagName('script');
-    for (var i=0;i<o.length;++i) {
-        if (o[i].getAttribute("src") === file) {
-            h.removeChild(o[i]);
-        }
-    }
-    var s = top.document.createElement("script");
-    s.type = "text/javascript";
-    s.src = file;
-    h.appendChild(s);
-}
-
-function reqOnClick(event) {
-    top.hiliteClickedToken(event.currentTarget);
-    return true;
-}
-function resize_NavToolbar_frame() {
-    resize_frame(getNavToolbarFrameIdx(), rtwNavToolbarFrame().document.height);
-}
-function resize_frame(id, height) {
-    if (height) {
-        var midFrame = top.rtwMidFrame();
-        var tmp = midFrame.rows.split(",");
-        if (tmp[id] !== "0%" && tmp[id] !== "0") {
-            tmp[id] = "" + height - 8 + "px";
-            midFrame.rows = tmp.join();
-        }
-    }
-}
-function getNavToolbarFrameIdx() {
-    return 0;
-}
-function getInspectFrameIdx() {
-    return 2;
-}
-function load_metrics() {
-    var alink = top.document.createElement("a");
-    alink.href = "metrics.js";
-    if (top.RTW_TraceArgs && top.RTW_TraceArgs.instance && !top.RTW_TraceArgs.instance.getUseExternalBrowser()) {
-        try {
-            load_js(top.rtwreport_nav_frame, alink.href);
-        } catch (err) {};
-    }
-}
-
-function getNavFrame() {
-    if (hasWebviewFrame()) {
-        return rtwTocFrame();
-    } else {
-        return rtwNavToolbarFrame();
-    }
-}
-
-function hasWebviewFrame() {
-    if (top.document.getElementById('rtw_webviewMidFrame')) {
-        return true;
-    } else {
-        return  false;
-    }
-}
-function hasInCodeTrace() {
-    return (typeof(Html2SrcLink) === "function") && !hasWebviewFrame();
-}
-function uniqueRows(rows) {
-    return rows.sort(function(a,b) {return a-b}).filter(
-        function(el,idx, arr) {
-            if (idx===arr.indexOf(el)) return true; return false;
-        }
-    );
-}
-function fileSelectorOnChange(event) {
-    var o = top.Html2SrcLink.instance.getLinkFromRoot(event.currentTarget.value)
-    if (o) {
-        top.rtwreport_document_frame.location.href = o;
-    } else {
-        top.rtwreport_document_frame.location.href = event.currentTarget.value;
-    }
-}
-function getBuildDir() {
-    var relPathToBuildDir = top.relPathToBuildDir.substr(0,top.relPathToBuildDir.lastIndexOf('/')+1);
-    var a = document.createElement('a');
-    a.href = relPathToBuildDir;
-    var ret = decodeURI(a.pathname);
-    if (top.isPC && ret[0] === "/") {
-        ret = ret.substr(1);
-    }
-    ret = ret.replace(new RegExp("/", 'g'), top.fileSep);
-    return ret;
-}
-
-function getCodeLocation() {
-    var codeLocation = getBuildDir();
-    // make build dir link in report visible by clearing 'display' style
-    docObj = top.rtwreport_document_frame;
-    var alinkTitle = docObj.document.getElementById("sourceLocationTitle");
-    if (alinkTitle && alinkTitle.style) {        
-        alinkTitle.style.display = "";
-    }    
-    var alink = docObj.document.getElementById("sourceLocation");
-    if (alink && alink.style) {        
-        alink.style.display = "";
-    }
-    return codeLocation;
-}
-// get code lines for the input SIDs
-function getCodeLines()
-{
-        var codeLocs = "";
-        var sid = RTW_TraceArgs.instance.getSID();
-        sid = sid.split(",");
-        if(sid.length == 1) {
-            codeLocs = RTW_Sid2UrlHash.instance.getUrlHash(sid[0]);     
-        }
-        else {
-            var fileLocs = [];
-            for(var i=0; i < sid.length; ++i) {
-                var locstr = RTW_Sid2UrlHash.instance.getUrlHash(sid[i]);  
-                var locs = locstr.split("&");
-                for(var j=0; j< locs.length; ++j) {
-                    locElems = locs[j].split(":");
-                    if(fileLocs[locElems[0]] == null) {
-                        fileLocs[locElems[0]] = locElems[1];
-                    } 
-                    else {
-                        fileLocs[locElems[0]] = fileLocs[locElems[0]].concat(",", locElems[1]);                        
-                    }
-                }
-            }
-    
-            // join all locations
-            Object.keys(fileLocs).forEach(function(key) {
-                if(codeLocs.length != 0) {
-                    codeLocs = codeLocs.concat("&", key, ":", fileLocs[key]);
-                } else {
-                    codeLocs = codeLocs.concat(key, ":", fileLocs[key]);
-                }
-            });
-        }
-    return codeLocs;
-}
-
-//add source to frame when _codegen_rpt openend from outisde matlab
-function loadDocFrameSource(modelName) {
-    const urlParams = new URLSearchParams(window.location.search);
-    const opendInExtBrowser = urlParams.get('useExternalBrowser');
-    if (opendInExtBrowser === null) {
-        document.getElementById('rtwreport_document_frame').src = modelName.concat('_survey.html');
-    }
-}

+ 0 - 31
Simulink/PMSM_Controller_ert_rtw/html/rtwmsg.html

@@ -1,31 +0,0 @@
-<html>
-  <head>
-    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
-    <title>Block-to-Code Highlighting Message</title>
-    <link rel="stylesheet" type="text/css" href="rtwreport.css" />
-  </head>
-  <body onload="if (top.rtwDisplayMessage) top.rtwDisplayMessage();">
-    <h1>Block-to-Code Highlighting Message</h1>
-    <p id="rtwMsg_notTraceable" style="display: none">
-      <img src=hilite_warning.png vspace="3px" align="top" />For '%s', you cannot trace code from the model because there is no traceability information.
-    </p>
-    <p id="rtwMsg_virtualBlock" style="display: none">
-      <img src=hilite_warning.png vspace="3px" align="top" />'%s' is a virtual block. Code is not generated for virtual blocks.
-    </p>
-    <p id="rtwMsg_reducedBlock" style="display: none">
-      <img src=hilite_warning.png vspace="3px" align="top" />'%s' is reduced during model compilation. Code is not generated for reduced blocks.
-    </p>
-    <p id="rtwMsg_reusableFunction" style="display: none">
-      <img src=hilite_warning.png vspace="3px" align="top" />Code for '%s' is from reusable function and cannot be traced. 
-    </p>
-    <p id="rtwMsg_blockOutsideSystem" style="display: none">
-      <img src=hilite_warning.png vspace="3px" align="top" />'%s' is outside of source subsystem and cannot be traced.
-    </p>
-    <p id="rtwMsg_illegalCharacter" style="display: none">
-      <img src=hilite_warning.png vspace="3px" align="top" />'%s' contains illegal character (single quote) that disables model-to-code navigation. Remove single quote from block name and rebuild model.
-    </p>
-    <p id="rtwMsg_maskedSubSystem" style="display: none">
-      <img src=hilite_warning.png vspace="3px" align="top" />'%s' is a masked subsystem and cannot be traced at the subsystem block level. Traceability information is available for individual blocks under the mask.
-    </p>
-  </body>
-</html>

+ 0 - 257
Simulink/PMSM_Controller_ert_rtw/html/rtwreport.css

@@ -1,257 +0,0 @@
-/* Copyright 2011-2019 The MathWorks, Inc. */
-body,p,table {font-family: calibri, verdana, sans-serif;}
-button,.buton {font-family: calibri, verdana, sans-serif;}  
-button,.button {font-size: small;}
-.small_font {font-size: small;}
-h1 { font-weight: normal; color: #000066; }
-td { vertical-align: top }
-th { background-color: #eeeeee; text-align: left; }
-a:link { color: #0033cc; }
-a:visited { color: #666666; }
-input { font-family: sans-serif, verdana, calibri; }
-table {
-  background-color: #ffffff;
-  width: 100%;
-}
-
-table.toc, table.button, table.panel {
-  border-style: none;
-}
-
-/* LineNumber */
-.LN {
-    font-style: italic;
-    color: #888888;
-}
-
-/* Comment */
-.CT {
-    font-style: italic;
-    color: #117755;
-}
-
-/* PreProcessor */
-PP {
-    /* font-weight: bold; */
-    color: #992211;
-}
-
-/* Keyword */
-.KW {
-    /* font-weight: bold; */
-    color: #0000FF;
-}
-
-/* Datatype */
-.DT {
-    /* font-weight: bold; */
-    color: #112266
-}
-
-.highlighted {
-    background-color: yellow;
-}
-
-.highlightedCurrent {
-    background-color: rgba(150, 12, 116, 0.1);
-}
-
-input.search {
-    background-color: #ffffff;
-}
-
-input.failedSearch {
-    background-color: #F78181;
-}
-
-/* ensure that code2model links are comment green */
-a.code2model:link {
-    color: #117755;
-    font-style: italic;
-}
-a.code2model:visited{
-    color: #117755;
-    font-style: italic;
-}
-
-.toc td, .button td, .panel td {
-  border-style: none;
-  padding: 4px;
-}
-
-h1 { font-weight: normal; color: #000066; }
-td { vertical-align: top }
-th { background-color: #eeeeee; text-align: left; }
-a:link { color: #0033cc; }
-a:visited { color: #666666; }
-
-/******* table *******/
-/* default table style */
-table.AltRow {
-    border-collapse: collapse; border: none; border-spacing: 0pt;
-    border-top: solid #4F81BD 1.0pt; border-bottom: solid #4F81BD 1.0pt;
-}
-table.AltRow th, table.AltRow td { padding: 2pt 8pt 2pt 2pt }
-/* default alternating row style */
-table.AltRow tr.even td { background-color:#D3DFEE; border:none;}
-table.AltRow tr.odd td { background-color:#FFFFFF; border:none;}
-/* tr class="heading" */
-table.AltRow tr.heading td, table.AltRow th {
-  background-color:#FFFFFF; font-weight:bold; border:none;
-  border-bottom: solid #4F81BD 1.0pt;
-}
-/* table class="FirstColumn" */
-table.FirstColumn td:first-child { font-weight:bold }
-/* table class="TotalRow" */
-table.TotalRow tr:last-child { font-weight:bold }
-table.TotalRow tr:last-child td { border-top: solid #4F81BD 1.0pt }
-
-a.closeButton {
-	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #f9f9f9), color-stop(1, #e9e9e9) );
-	background:-moz-linear-gradient( center top, #f9f9f9 5%, #e9e9e9 100% );
-	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e9e9e9');
-	background-color:#f9f9f9;
-	-webkit-border-top-left-radius:20px;
-	-moz-border-radius-topleft:20px;
-	border-top-left-radius:20px;
-	-webkit-border-top-right-radius:20px;
-	-moz-border-radius-topright:20px;
-	border-top-right-radius:20px;
-	-webkit-border-bottom-right-radius:20px;
-	-moz-border-radius-bottomright:20px;
-	border-bottom-right-radius:20px;
-	-webkit-border-bottom-left-radius:20px;
-	-moz-border-radius-bottomleft:20px;
-	border-bottom-left-radius:20px;
-	text-indent:0;
-	border:2px solid #dcdcdc;
-	display:inline-block;
-	color:#454143;
-	font-family:Arial;
-	font-size:15px;
-	font-weight:bold;
-	font-style:normal;
-	height:20px;
-	line-height:20px;
-	width:20px;
-	text-decoration:none;
-	text-align:center;
-        cursor: pointer;
-}
-a.closeButton:hover {
-	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #e9e9e9), color-stop(1, #f9f9f9) );
-	background:-moz-linear-gradient( center top, #e9e9e9 5%, #f9f9f9 100% );
-	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e9e9e9', endColorstr='#f9f9f9');
-	background-color:#e9e9e9;
-}
-a.closeButton:active {
-	position:relative;
-	top:1px;
-}
-
-.button {
-	-moz-box-shadow:inset 0px 1px 0px 0px #ffffff;
-	-webkit-box-shadow:inset 0px 1px 0px 0px #ffffff;
-	box-shadow:inset 0px 1px 0px 0px #ffffff;
-	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ededed), color-stop(1, #dfdfdf) );
-	background:-moz-linear-gradient( center top, #ededed 5%, #dfdfdf 100% );
-	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dfdfdf');
-	background-color:#ededed;
-	-webkit-border-top-left-radius:5px;
-	-moz-border-radius-topleft:5px;
-	border-top-left-radius:5px;
-	-webkit-border-top-right-radius:5px;
-	-moz-border-radius-topright:5px;
-	border-top-right-radius:5px;
-	-webkit-border-bottom-right-radius:5px;
-	-moz-border-radius-bottomright:5px;
-	border-bottom-right-radius:5px;
-	-webkit-border-bottom-left-radius:5px;
-	-moz-border-radius-bottomleft:5px;
-	border-bottom-left-radius:5px;
-	text-indent:0px;
-	border:1px solid #dcdcdc;
-	display:inline-block;
-	color:black;
-	font-family:Arial;
-	font-size:12px;
-	font-weight:bold;
-	font-style:normal;
-	height:12px;
-	line-height:12px;
-	width:45px;
-	text-decoration:none;
-	text-align:center;
-	text-shadow:1px 1px 0px #ffffff;
-}
-.button:hover {
-	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #dfdfdf), color-stop(1, #ededed) );
-	background:-moz-linear-gradient( center top, #dfdfdf 5%, #ededed 100% );
-	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dfdfdf', endColorstr='#ededed');
-	background-color:#dfdfdf;
-}.button:active {
-	position:relative;
-	top:1px;
-}.button:disabled {
-	color:#777777;
-}
-
-ul.nav_list {
-        list-style-type:none; 
-        display: block;		
-	margin: 0;
-	padding: 0;
-}
-ul.nav_list li {
-        list-style-type:none; 
-	display: inline;
-	margin: 0 18px 0 0;
-	padding: 0;
-}
-
-.nav_toolbar {
-    background-color: ivory;
-    margin-top: 0;
-}
-
-.inspect_body {
-    margin: 0;
-    margin-bottom: 0;
-    display: inline;
-    vertical-align:middle; 
-}
-
-table.nav_table {
-    background-color: ivory;
-    border: none;
-    width: 100%;
-    display: inline;
-    vertical-align:middle;    
-}
-
-table#rtwIdTracePanel > tr > td {
-    white-space: nowrap;
-    table-layout:fixed;
-    vertical-align:middle; 
-}
-
-table.nav_table > button {
-  height: 20px;
-}
-select#fileSelector {
-   padding: 5px;
-   font-size: 16px;
-   line-height: 1;
-   border-radius: 0;
-   height: 34px;
-}
-
-.treeTable table{
-   table-layout: fixed;
-}
-.treeTable td:first-child > span{
-   display: inline-block;
-   text-overflow: ellipsis;
-   overflow: hidden;
-   width: 100%;
-}

+ 0 - 92
Simulink/PMSM_Controller_ert_rtw/html/rtwreport_utils.js

@@ -1,92 +0,0 @@
-// Copyright 2011-2013 The MathWorks, Inc.
-
-
-function local_onload() {
-    if (typeof top.rtwreport_document_frame !== "undefined") {
-        var docObj = window.document;
-        var alink =  docObj.getElementById("linkToText_plain");
-        if (alink) {
-            alink.href = "matlab:coder.internal.editUrlTextFile('" + alink.href + "')";
-        }
-        alink = docObj.getElementById("linkToCS");
-        if (alink) {
-            alink.href = "matlab:coder.internal.viewCodeConfigsetFromReport('" + alink.href + "');";
-        }
-    }
-}
-
-var utils = (function() {
-
-    // Load via Microsoft.XMLDOM--for older versions of IE
-    function loadXML_MSXMLDOM(filename, callback, async) {
-        if (navigator.appName == "Microsoft Internet Explorer") {
-            // Internet Explorer 5/6 
-            try {
-                var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
-                xmlDoc.async = async;
-                xmlDoc.onreadystatechange = function() {
-                    if (xmlDoc.readyState == 4) {
-                        callback(xmlDoc);
-                    }
-                }
-                xmlDoc.load(filename);
-                return true;
-            } catch(e) {
-            }
-        }
-        return false;
-    }
-
-    // Load via XMLHttpRequest
-    function loadXML_XHR(filename, callback, async) {
-        if (window.XMLHttpRequest) {
-            try {
-                var xhr = new XMLHttpRequest();
-                xhr.onreadystatechange = function() {
-                    if (this.readyState == 4) {
-                        callback(this.responseXML);
-                    }
-                }
-                xhr.open("GET", filename, async);
-                xhr.send("");
-                return true;
-            } catch(e) {
-                if (navigator.appName === "Netscape" && e.code === 1012) {
-                    // file not found: ignore
-                    return true;
-                }
-            }
-        }
-        return false;
-    }
-
-    return {
-        trimText: function(s) {
-            // In IE9, String.trim not present
-            if (s && s.trim) {
-                return s.trim();
-            }
-            else {
-                return s;
-            }
-        },
-        getText: function(elt) {
-            // In IE9, use 'text' property rather than 'textContent'
-            return elt.textContent ? elt.textContent : elt.text;
-        },
-        loadXML: function(filename, callback, options) {
-            var async = !!options && typeof(options["async"]) !== "undefined" ? options.async : true;
-            if (!loadXML_XHR(filename, callback, async)) {
-                if (!loadXML_MSXMLDOM(filename, callback, async)) {
-                    return false;
-                }
-            }
-            return true;
-        }
-    };
-})();
-
-function code2model(sid) {
-    utils.loadXML("http://localhost:31415/matlab/feval/coder.internal.code2model?arguments=[\"" + sid + "\"]", function() {});
-    //window.location.href = "matlab:coder.internal.code2model('" + sid + "')";
-}

+ 0 - 210
Simulink/PMSM_Controller_ert_rtw/html/rtwshrink.js

@@ -1,210 +0,0 @@
-// Copyright 2011-2017 The MathWorks, Inc.
-
-function RTW_STRUCT(prop, value) {
-    this.prop = prop;
-    if (typeof(value) == 'undefined') {
-        this.value = "";
-    } else {
-        this.value = value;
-    }
-}
-
-// initialize the cache when code generation report is first loaded
-function RTW_BOOK() {
-    this.length = 0;
-    this.rtw_pages = new Array();
-    this.getPage = function(file) {
-        return this.rtw_pages[file];
-    };
-    this.addPage = function(file) {
-        var page;
-        if (this.hasPage(file)) {
-            page = this.rtw_pages[file];
-        } else {
-            page = new RTW_PAGE(file);
-            this.rtw_pages[file] = page;
-        }
-        return page;
-    };
-    this.hasPage = function(file) {
-        return typeof(this.rtw_pages[file]) != 'undefined';
-    };
-    this.removePage = function(file) {
-            var tmp;
-            if (typeof(this.rtw_pages[file]) != 'undefined') {
-                tmp = this.rtw_pages[file];
-                delete this.rtw_pages[file];
-                this.length--;
-            }
-            return tmp;
-        };
-}
-
-if (!RTW_BOOK.instance) {
-    RTW_BOOK.instance = new RTW_BOOK();
-}
-
-function RTW_PAGE() {
-    this.length = 0;
-    this.items = new Array();
-    this.pagename = '';
-    if (arguments.length > 0 && typeof(arguments[1]) != 'undefined') {
-        this.pagename = arguments[1];
-    }
-
-    this.getItem = function(id) {
-        return this.items[id];
-    };
-    this.getItems = function() {
-        return this.items;
-    };
-    this.addItem = function(id, value) {
-        var tmp;
-        if (typeof(value) != 'undefined') {
-            if (typeof(this.items[id]) != 'undefined') {
-                this.length++;
-            } else {
-                tmp = this.items[id];
-            }
-            this.items[id] = value;
-            this.length++;
-        }
-        return tmp;
-    };
-    this.hasItem = function(id) {
-        return typeof(this.items[id]) != 'undefined';
-    };
-    this.removeItem = function(id) {
-        var tmp;
-        if (typeof(this.items[id]) != 'undefined') {
-            tmp = this.items[id];
-            delete this.items[id];
-            this.length--;
-        }
-        return tmp;
-    };
-}
-
-function rtwTableShrink(doc, obj, id, isSymbol) {
-    var hide, hide_text, show, show_text;
-    if (isSymbol) {
-        hide = "[-]";
-        hide_text = hide;
-        show = "[+]";
-        show_text = show;
-    } else {
-        hide = "[<u>hide</u>]";
-        hide_text  = "[hide]";
-        show = "[<u>show</u>]";
-        show_text = "[show]";
-    }
-    hide = "<span class='shrink-button'>" + hide + "</span>";
-    show = "<span class='shrink-button'>" + show + "</span>";
-    if (doc.getElementsByName) {
-        var o = doc.getElementsByName(id);
-        for (var oid = 0; oid < o.length; ++oid) {
-            if (o[oid].style.display === "none") {
-                o[oid].style.display =  "";
-            } else {
-                o[oid].style.display = "none";
-            }
-        }
-        if (o.length >= 0 && addToPage) {
-            addToPage(doc, o[0], 'display');
-        }
-    }
-
-    // IE supports innerText while other browsers support textContent
-    if (obj.textContent) {
-        var objText = obj.textContent;
-    } else {
-        var objText = obj.innerText;
-    }
-
-    if (objText.toLowerCase() === show_text.toLowerCase()) {
-        obj.innerHTML = hide;
-    } else {
-        obj.innerHTML = show;
-    }
-
-    if (addToPage) {
-        addToPage(doc, obj, 'innerHTML');
-    }
-}
-
-function rtwTableExpand(doc, controlObj, id) {
-    if (doc.getElementById) {
-        var obj = doc.getElementById(id);
-        if (obj && obj.style.display === "none") {
-            rtwTableShrink(doc, controlObj, id, false);
-        }
-    }
-}
-
-function restoreState(docObj) {
-    var filename = docObj.location.href;
-    if (RTW_BOOK.instance && RTW_BOOK.instance.hasPage(filename)) {
-        var page = RTW_BOOK.instance.getPage(filename);
-        var items = page.getItems();
-        var elem;
-        if (docObj.getElementsByName) {
-            for (var i in items) {
-                var o = docObj.getElementsByName(i);
-                for (var oid = 0; oid < o.length; ++oid) {
-                    elem = o[oid];
-                    if (items[i].prop === 'display') {
-                        if (elem.style.display === 'none') {
-                            elem.style.display = '';
-                        } else {
-                            elem.style.display = 'none';
-                        }
-                    } else if (items[i].prop === 'innerHTML') {
-                        elem.innerHTML = items[i].value;
-                    }
-                }
-            }
-        }
-    }
-}
-
-function addToPage(docObj, obj, prop) {
-    var filename = docObj.location.href;
-    if (RTW_BOOK.instance) {
-        var page;
-        if (RTW_BOOK.instance.hasPage(filename)) {
-            page = RTW_BOOK.instance.getPage(filename);
-        } else {
-            page = RTW_BOOK.instance.addPage(filename);
-        }
-        if (page.hasItem(obj.id)) {
-            page.removeItem(obj.id);
-        } else {
-            var my_struct;
-            if (prop === "display") {
-                my_struct = new RTW_STRUCT(prop, obj.style.display);
-            } else {
-                my_struct = new RTW_STRUCT(prop, obj.innerHTML);
-            }
-            page.addItem(obj.id, my_struct);
-        }
-    }
-}
-
-function rtwSwitchView(doc, obj1, obj2) {
-    if (doc.getElementsByName) {
-        var o = doc.getElementsByName(obj1);
-        for (var oid = 0; oid < o.length; ++oid) {
-            o[oid].style.display =  "none";
-        }
-        if (o.length >= 0 && addToPage) {
-            addToPage(doc, o[0], 'display');
-        }
-        var o = doc.getElementsByName(obj2);
-        for (var oid = 0; oid < o.length; ++oid) {
-            o[oid].style.display =  "";
-        }
-        if (o.length >= 0 && addToPage) {
-            addToPage(doc, o[0], 'display');
-        }
-    }
-}

+ 0 - 222
Simulink/PMSM_Controller_ert_rtw/html/rtwtypes_h.html

@@ -1,222 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script type="text/javascript" src="./js/coder_app.js"></script>
-<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<script type="text/javascript" src="./rtwreport_utils.js"></script>
-<script type="text/javascript" src="./rtwannotate.js"></script>
-<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
-</head>
-<body onload="srcFileOnload();">
-<pre id="code">
-<table class="code" id="codeTbl">
-<tr name="1" id="1">
-<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="2" id="2">
-<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * File: rtwtypes.h</span></td></tr>
-<tr name="3" id="3">
-<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="4" id="4">
-<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generated for Simulink model 'PMSM_Controller'.</span></td></tr>
-<tr name="5" id="5">
-<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="6" id="6">
-<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version                  : 1.885</span></td></tr>
-<tr name="7" id="7">
-<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
-<tr name="8" id="8">
-<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C/C++ source code generated on : Sat Jan  8 15:44:11 2022</span></td></tr>
-<tr name="9" id="9">
-<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="10" id="10">
-<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: ert.tlc</span></td></tr>
-<tr name="11" id="11">
-<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="12" id="12">
-<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
-<tr name="13" id="13">
-<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> *    1. Execution efficiency</span></td></tr>
-<tr name="14" id="14">
-<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> *    2. RAM efficiency</span></td></tr>
-<tr name="15" id="15">
-<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
-<tr name="16" id="16">
-<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="17" id="17">
-<td><a id="l17" class='ln'>17</a></td><td></td></tr>
-<tr name="18" id="18">
-<td><a id="l18" class='ln'>18</a></td><td><span class="pp">#ifndef</span> <a id="18c9" class="tk">RTWTYPES_H</a></td></tr>
-<tr name="19" id="19">
-<td><a id="l19" class='ln'>19</a></td><td><span class="pp">#define</span> <a id="19c9" class="tk">RTWTYPES_H</a></td></tr>
-<tr name="20" id="20">
-<td><a id="l20" class='ln'>20</a></td><td></td></tr>
-<tr name="21" id="21">
-<td><a id="l21" class='ln'>21</a></td><td><span class="ct">/* Logical type definitions */</span></td></tr>
-<tr name="22" id="22">
-<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#if</span> (<a id="22c6" class="tk">!</a><a id="22c7" class="tk">defined</a>(<a id="22c15" class="tk">__cplusplus</a>))</td></tr>
-<tr name="23" id="23">
-<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#ifndef</span> false</td></tr>
-<tr name="24" id="24">
-<td><a id="l24" class='ln'>24</a></td><td><span class="pp">#define</span> false                          (0U)</td></tr>
-<tr name="25" id="25">
-<td><a id="l25" class='ln'>25</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="26" id="26">
-<td><a id="l26" class='ln'>26</a></td><td></td></tr>
-<tr name="27" id="27">
-<td><a id="l27" class='ln'>27</a></td><td><span class="pp">#ifndef</span> true</td></tr>
-<tr name="28" id="28">
-<td><a id="l28" class='ln'>28</a></td><td><span class="pp">#define</span> true                           (1U)</td></tr>
-<tr name="29" id="29">
-<td><a id="l29" class='ln'>29</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="30" id="30">
-<td><a id="l30" class='ln'>30</a></td><td><span class="pp">#endif</span></td></tr>
-<tr name="31" id="31">
-<td><a id="l31" class='ln'>31</a></td><td></td></tr>
-<tr name="32" id="32">
-<td><a id="l32" class='ln'>32</a></td><td><span class="ct">/*=======================================================================*</span></td></tr>
-<tr name="33" id="33">
-<td><a id="l33" class='ln'>33</a></td><td><span class="ct"> * Target hardware information</span></td></tr>
-<tr name="34" id="34">
-<td><a id="l34" class='ln'>34</a></td><td><span class="ct"> *   Device type: ARM Compatible-&gt;ARM Cortex-M</span></td></tr>
-<tr name="35" id="35">
-<td><a id="l35" class='ln'>35</a></td><td><span class="ct"> *   Number of bits:     char:   8    short:   16    int:  32</span></td></tr>
-<tr name="36" id="36">
-<td><a id="l36" class='ln'>36</a></td><td><span class="ct"> *                       long:  32    long long:  64</span></td></tr>
-<tr name="37" id="37">
-<td><a id="l37" class='ln'>37</a></td><td><span class="ct"> *                       native word size:  32</span></td></tr>
-<tr name="38" id="38">
-<td><a id="l38" class='ln'>38</a></td><td><span class="ct"> *   Byte ordering: LittleEndian</span></td></tr>
-<tr name="39" id="39">
-<td><a id="l39" class='ln'>39</a></td><td><span class="ct"> *   Signed integer division rounds to: Zero</span></td></tr>
-<tr name="40" id="40">
-<td><a id="l40" class='ln'>40</a></td><td><span class="ct"> *   Shift right on a signed integer as arithmetic shift: on</span></td></tr>
-<tr name="41" id="41">
-<td><a id="l41" class='ln'>41</a></td><td><span class="ct"> *=======================================================================*/</span></td></tr>
-<tr name="42" id="42">
-<td><a id="l42" class='ln'>42</a></td><td></td></tr>
-<tr name="43" id="43">
-<td><a id="l43" class='ln'>43</a></td><td><span class="ct">/*=======================================================================*</span></td></tr>
-<tr name="44" id="44">
-<td><a id="l44" class='ln'>44</a></td><td><span class="ct"> * Fixed width word size data types:                                     *</span></td></tr>
-<tr name="45" id="45">
-<td><a id="l45" class='ln'>45</a></td><td><span class="ct"> *   int8_T, int16_T, int32_T     - signed 8, 16, or 32 bit integers     *</span></td></tr>
-<tr name="46" id="46">
-<td><a id="l46" class='ln'>46</a></td><td><span class="ct"> *   uint8_T, uint16_T, uint32_T  - unsigned 8, 16, or 32 bit integers   *</span></td></tr>
-<tr name="47" id="47">
-<td><a id="l47" class='ln'>47</a></td><td><span class="ct"> *   real32_T, real64_T           - 32 and 64 bit floating point numbers *</span></td></tr>
-<tr name="48" id="48">
-<td><a id="l48" class='ln'>48</a></td><td><span class="ct"> *=======================================================================*/</span></td></tr>
-<tr name="49" id="49">
-<td><a id="l49" class='ln'>49</a></td><td><span class="kw">typedef</span> <span class="kw">signed</span> <span class="kw">char</span> <a id="49c21" class="tk">int8_T</a>;</td></tr>
-<tr name="50" id="50">
-<td><a id="l50" class='ln'>50</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">char</span> <a id="50c23" class="tk">uint8_T</a>;</td></tr>
-<tr name="51" id="51">
-<td><a id="l51" class='ln'>51</a></td><td><span class="kw">typedef</span> <span class="kw">short</span> <a id="51c15" class="tk">int16_T</a>;</td></tr>
-<tr name="52" id="52">
-<td><a id="l52" class='ln'>52</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">short</span> <a id="52c24" class="tk">uint16_T</a>;</td></tr>
-<tr name="53" id="53">
-<td><a id="l53" class='ln'>53</a></td><td><span class="kw">typedef</span> <span class="kw">int</span> <a id="53c13" class="tk">int32_T</a>;</td></tr>
-<tr name="54" id="54">
-<td><a id="l54" class='ln'>54</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">int</span> <a id="54c22" class="tk">uint32_T</a>;</td></tr>
-<tr name="55" id="55">
-<td><a id="l55" class='ln'>55</a></td><td><span class="kw">typedef</span> <span class="kw">long</span> <span class="kw">long</span> <a id="55c19" class="tk">int64_T</a>;</td></tr>
-<tr name="56" id="56">
-<td><a id="l56" class='ln'>56</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">long</span> <span class="kw">long</span> <a id="56c28" class="tk">uint64_T</a>;</td></tr>
-<tr name="57" id="57">
-<td><a id="l57" class='ln'>57</a></td><td><span class="kw">typedef</span> <span class="kw">float</span> <a id="57c15" class="tk">real32_T</a>;</td></tr>
-<tr name="58" id="58">
-<td><a id="l58" class='ln'>58</a></td><td><span class="kw">typedef</span> <span class="kw">double</span> <a id="58c16" class="tk">real64_T</a>;</td></tr>
-<tr name="59" id="59">
-<td><a id="l59" class='ln'>59</a></td><td></td></tr>
-<tr name="60" id="60">
-<td><a id="l60" class='ln'>60</a></td><td><span class="ct">/*===========================================================================*</span></td></tr>
-<tr name="61" id="61">
-<td><a id="l61" class='ln'>61</a></td><td><span class="ct"> * Generic type definitions: boolean_T, char_T, byte_T, int_T, uint_T,       *</span></td></tr>
-<tr name="62" id="62">
-<td><a id="l62" class='ln'>62</a></td><td><span class="ct"> *                           real_T, time_T, ulong_T, ulonglong_T.           *</span></td></tr>
-<tr name="63" id="63">
-<td><a id="l63" class='ln'>63</a></td><td><span class="ct"> *===========================================================================*/</span></td></tr>
-<tr name="64" id="64">
-<td><a id="l64" class='ln'>64</a></td><td><span class="kw">typedef</span> <span class="kw">double</span> <a id="64c16" class="tk">real_T</a>;</td></tr>
-<tr name="65" id="65">
-<td><a id="l65" class='ln'>65</a></td><td><span class="kw">typedef</span> <span class="kw">double</span> <a id="65c16" class="tk">time_T</a>;</td></tr>
-<tr name="66" id="66">
-<td><a id="l66" class='ln'>66</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">char</span> <a id="66c23" class="tk">boolean_T</a>;</td></tr>
-<tr name="67" id="67">
-<td><a id="l67" class='ln'>67</a></td><td><span class="kw">typedef</span> <span class="kw">int</span> <a id="67c13" class="tk">int_T</a>;</td></tr>
-<tr name="68" id="68">
-<td><a id="l68" class='ln'>68</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">int</span> <a id="68c22" class="tk">uint_T</a>;</td></tr>
-<tr name="69" id="69">
-<td><a id="l69" class='ln'>69</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">long</span> <a id="69c23" class="tk">ulong_T</a>;</td></tr>
-<tr name="70" id="70">
-<td><a id="l70" class='ln'>70</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">long</span> <span class="kw">long</span> <a id="70c28" class="tk">ulonglong_T</a>;</td></tr>
-<tr name="71" id="71">
-<td><a id="l71" class='ln'>71</a></td><td><span class="kw">typedef</span> <span class="kw">char</span> <a id="71c14" class="tk">char_T</a>;</td></tr>
-<tr name="72" id="72">
-<td><a id="l72" class='ln'>72</a></td><td><span class="kw">typedef</span> <span class="kw">unsigned</span> <span class="kw">char</span> <a id="72c23" class="tk">uchar_T</a>;</td></tr>
-<tr name="73" id="73">
-<td><a id="l73" class='ln'>73</a></td><td><span class="kw">typedef</span> <a id="73c9" class="tk">char_T</a> <a id="73c16" class="tk">byte_T</a>;</td></tr>
-<tr name="74" id="74">
-<td><a id="l74" class='ln'>74</a></td><td></td></tr>
-<tr name="75" id="75">
-<td><a id="l75" class='ln'>75</a></td><td><span class="ct">/*=======================================================================*</span></td></tr>
-<tr name="76" id="76">
-<td><a id="l76" class='ln'>76</a></td><td><span class="ct"> * Min and Max:                                                          *</span></td></tr>
-<tr name="77" id="77">
-<td><a id="l77" class='ln'>77</a></td><td><span class="ct"> *   int8_T, int16_T, int32_T     - signed 8, 16, or 32 bit integers     *</span></td></tr>
-<tr name="78" id="78">
-<td><a id="l78" class='ln'>78</a></td><td><span class="ct"> *   uint8_T, uint16_T, uint32_T  - unsigned 8, 16, or 32 bit integers   *</span></td></tr>
-<tr name="79" id="79">
-<td><a id="l79" class='ln'>79</a></td><td><span class="ct"> *=======================================================================*/</span></td></tr>
-<tr name="80" id="80">
-<td><a id="l80" class='ln'>80</a></td><td><span class="pp">#define</span> <a id="80c9" class="tk">MAX_int8_T</a>                     ((<a id="80c42" class="tk">int8_T</a>)(127))</td></tr>
-<tr name="81" id="81">
-<td><a id="l81" class='ln'>81</a></td><td><span class="pp">#define</span> <a id="81c9" class="tk">MIN_int8_T</a>                     ((<a id="81c42" class="tk">int8_T</a>)(<a id="81c50" class="tk">-</a>128))</td></tr>
-<tr name="82" id="82">
-<td><a id="l82" class='ln'>82</a></td><td><span class="pp">#define</span> <a id="82c9" class="tk">MAX_uint8_T</a>                    ((<a id="82c42" class="tk">uint8_T</a>)(255U))</td></tr>
-<tr name="83" id="83">
-<td><a id="l83" class='ln'>83</a></td><td><span class="pp">#define</span> <a id="83c9" class="tk">MAX_int16_T</a>                    ((<a id="83c42" class="tk">int16_T</a>)(32767))</td></tr>
-<tr name="84" id="84">
-<td><a id="l84" class='ln'>84</a></td><td><span class="pp">#define</span> <a id="84c9" class="tk">MIN_int16_T</a>                    ((<a id="84c42" class="tk">int16_T</a>)(<a id="84c51" class="tk">-</a>32768))</td></tr>
-<tr name="85" id="85">
-<td><a id="l85" class='ln'>85</a></td><td><span class="pp">#define</span> <a id="85c9" class="tk">MAX_uint16_T</a>                   ((<a id="85c42" class="tk">uint16_T</a>)(65535U))</td></tr>
-<tr name="86" id="86">
-<td><a id="l86" class='ln'>86</a></td><td><span class="pp">#define</span> <a id="86c9" class="tk">MAX_int32_T</a>                    ((<a id="86c42" class="tk">int32_T</a>)(2147483647))</td></tr>
-<tr name="87" id="87">
-<td><a id="l87" class='ln'>87</a></td><td><span class="pp">#define</span> <a id="87c9" class="tk">MIN_int32_T</a>                    ((<a id="87c42" class="tk">int32_T</a>)(<a id="87c51" class="tk">-</a>2147483647<a id="87c62" class="tk">-</a>1))</td></tr>
-<tr name="88" id="88">
-<td><a id="l88" class='ln'>88</a></td><td><span class="pp">#define</span> <a id="88c9" class="tk">MAX_uint32_T</a>                   ((<a id="88c42" class="tk">uint32_T</a>)(0xFFFFFFFFU))</td></tr>
-<tr name="89" id="89">
-<td><a id="l89" class='ln'>89</a></td><td><span class="pp">#define</span> <a id="89c9" class="tk">MAX_int64_T</a>                    ((<a id="89c42" class="tk">int64_T</a>)(9223372036854775807LL))</td></tr>
-<tr name="90" id="90">
-<td><a id="l90" class='ln'>90</a></td><td><span class="pp">#define</span> <a id="90c9" class="tk">MIN_int64_T</a>                    ((<a id="90c42" class="tk">int64_T</a>)(<a id="90c51" class="tk">-</a>9223372036854775807LL<a id="90c73" class="tk">-</a>1LL))</td></tr>
-<tr name="91" id="91">
-<td><a id="l91" class='ln'>91</a></td><td><span class="pp">#define</span> <a id="91c9" class="tk">MAX_uint64_T</a>                   ((<a id="91c42" class="tk">uint64_T</a>)(0xFFFFFFFFFFFFFFFFULL))</td></tr>
-<tr name="92" id="92">
-<td><a id="l92" class='ln'>92</a></td><td></td></tr>
-<tr name="93" id="93">
-<td><a id="l93" class='ln'>93</a></td><td><span class="ct">/* Block D-Work pointer type */</span></td></tr>
-<tr name="94" id="94">
-<td><a id="l94" class='ln'>94</a></td><td><span class="kw">typedef</span> <span class="kw">void</span> <a id="94c14" class="tk">*</a> <a id="94c16" class="tk">pointer_T</a>;</td></tr>
-<tr name="95" id="95">
-<td><a id="l95" class='ln'>95</a></td><td></td></tr>
-<tr name="96" id="96">
-<td><a id="l96" class='ln'>96</a></td><td><span class="pp">#endif</span>                                 <span class="ct">/* RTWTYPES_H */</span></td></tr>
-<tr name="97" id="97">
-<td><a id="l97" class='ln'>97</a></td><td></td></tr>
-<tr name="98" id="98">
-<td><a id="l98" class='ln'>98</a></td><td><span class="ct">/*</span></td></tr>
-<tr name="99" id="99">
-<td><a id="l99" class='ln'>99</a></td><td><span class="ct"> * File trailer for generated code.</span></td></tr>
-<tr name="100" id="100">
-<td><a id="l100" class='ln'>100</a></td><td><span class="ct"> *</span></td></tr>
-<tr name="101" id="101">
-<td><a id="l101" class='ln'>101</a></td><td><span class="ct"> * [EOF]</span></td></tr>
-<tr name="102" id="102">
-<td><a id="l102" class='ln'>102</a></td><td><span class="ct"> */</span></td></tr>
-<tr name="103" id="103">
-<td><a id="l103" class='ln'>103</a></td><td></td></tr>
-</table>
-</pre>
-</body>
-</html>

+ 0 - 559
Simulink/PMSM_Controller_ert_rtw/html/search.js

@@ -1,559 +0,0 @@
-// Copyright 2007-2012 The MathWorks, Inc.
-
-function createHighlightSpanStart(num)
-{
-    return "<span class=\"highlighted\" name=\"highlight" + num + "\">";
-}
-
-var str2pos;   // This is a map between a tag stripped string and the original string. 
-function getTagStrippedStringAndMap(aString)
-{
-    var tagStrippedString = new String();
-
-    str2pos = new Array();
-
-    var inTag = false;
-    var inScript = false;
-    
-    for (var strPos = 0; strPos < aString.length; strPos++) {
-        if (inTag && aString.charAt(strPos) == '>') {
-            inTag = false;
-            if (inScript && (strPos > 8) && (aString.slice(strPos, strPos - 8) == '/script>')) {
-                inScript = false;
-            }            
-            continue;
-        } else if (!inTag && aString.charAt(strPos) == '<') {
-            inTag = true;
-            if (!inScript && aString.slice(strPos, strPos + 7) == '<script') {
-                inScript = true;
-                strPos += 7;
-            }
-            continue;
-        }        
-        
-        if (inTag == false && inScript == false) {
-            tagStrippedString += aString.charAt(strPos);
-            str2pos.push(strPos);
-        }
-    }
-    return tagStrippedString;
-}
-
-function escapeSpecialChars(string)
-{
-    // let the browser handle the escaping rather than doing a String.replace
-    // call
-    var div = document.createElement("div");
-    var text = document.createTextNode(string);
-    div.appendChild(text);
-    var escapedString = div.innerHTML;
-    delete div;
-    return escapedString;
-}
-
-// insert highlight tags into the body. Split it up into multiple sections if necessary
-// (i.e. if there is a tag in the middle).
-function insertHighlighting(bodyText, previ, i, length, highlightStartTag, highlightEndTag)
-{
-    var newText = "";    
-    newText = bodyText.slice(previ, str2pos[i]);
-    
-    // insert start
-    newText += highlightStartTag;
-    
-    var str2posprev = str2pos[i];    
-    // deal with intermediate tags
-    for(var cnt = i; cnt < i+length; cnt++)
-    {
-        if (str2pos[cnt] > str2posprev+1) // we have jumped some text, so there must be a tag
-        {
-            // insert end tag
-            newText += highlightEndTag;
-            
-            // insert intermediate body text tags
-            newText += bodyText.slice(str2posprev+1, str2pos[cnt]);
-            
-            // insert start tag
-            newText += highlightStartTag;
-        }
-        newText += bodyText.charAt(str2pos[cnt]);
-        str2posprev=str2pos[cnt];
-    }
-    
-    // insert end
-    newText += highlightEndTag;
-    return newText;
-    
-}
-
-// check to see if the sequence at position 'i' in taglessString is actually in
-// the middle of an escape sequence. We assume escape sequences follow the pattern
-// &<sequenceText>;. We check for &nbsp;, &lt;, &gt; and &amp;
-function isInEscapedSequence(i, taglessString, searchTerm)
-{
-    var escapeSeq = /&nbsp;|&lt;|&gt;|&amp;/gi;
-    var maxEscapeSeqLength = 6;
-    var startPos = 0; 
-    var endPos = 0;
-    
-    // exit if the search term has an escape sequence inside it
-    if (escapeSeq.test(searchTerm)) {
-        return false;
-    }
-
-    // reset the escape sequence
-    escapeSeq = /&nbsp;|&lt;|&gt;|&amp;/gi;
-
-    // go back in the string until we find an ampersand or we hit maxEscapeSeqLength characters
-    tempI = i;
-    var bFound = false;
-    while (tempI >= 0 && tempI > (i-maxEscapeSeqLength)) {
-        if (taglessString.charAt(tempI) == "&") {
-            startPos = tempI;
-            bFound = true;
-            break;
-        } 
-        tempI = tempI-1;
-        
-        // if we hit a ';' in any position other than the first while searching
-        // for an ampersand, then we cannot be inside an escape sequence
-        if (tempI >= 0 && taglessString.charAt(tempI) == ";") {
-            return false;
-        }        
-    }
-    if (!bFound) {
-        return false;
-    }
-    // reset the escape sequence
-    escapeSeq = /&nbsp;|&lt;|&gt;|&amp;/gi;
-
-    var subString = taglessString.substring(startPos, startPos + maxEscapeSeqLength);
-    return escapeSeq.test(subString);
-}
-
-// Adds highlighting to bodyText around searchTerm. Case sensitivity is optional.
-// hitCount is used to a) count the number of search matches and b) Generate unique
-// name strings for each highlighting SPAN element.
-function addHighlight(bodyText, searchTerm, caseSensitive, hitCount) 
-{
-    var highlightStartTag = ""; 
-    var highlightEndTag = "</span>";
-  
-    var newText = "";
-    var i = 0;
-    var previ = 0;
-    var bodyTextUC = bodyText.toUpperCase();
-    
-    if (caseSensitive) {
-        var taglessString = getTagStrippedStringAndMap(bodyText);
-    } else {
-        var taglessString = getTagStrippedStringAndMap(bodyTextUC);
-    }
-
-    // escape the search term in case the user input '<' or '>' etc
-    searchTerm = escapeSpecialChars(searchTerm);
-
-    if (!caseSensitive) {
-        var searchTermUC = searchTerm.toUpperCase();
-    } 
-
-    // search for subsequent matches
-    while (true) {
-        if (caseSensitive) {
-            i = taglessString.indexOf(searchTerm, i);
-        } else {
-            i = taglessString.indexOf(searchTermUC, i);
-        }
-        if (i < 0) break;
-        
-        // we have a match!
-        
-        // make sure that the match is not inside an escaped sequence of text
-        // such as &nbsp;
-        if (isInEscapedSequence(i, taglessString, searchTerm)) {
-            i=i+1;
-            continue;
-        }
-        
-        // insert highlight tags that cross tag boundaries
-        highlightStartTag = createHighlightSpanStart(hitCount);
-        hitCount = hitCount+1;
-        newText += insertHighlighting(bodyText, previ, i, searchTerm.length, highlightStartTag, highlightEndTag);        
-        previ = str2pos[i+searchTerm.length-1]+1;
-        
-        i = i + searchTerm.length;
-    }
-    
-    newText += bodyText.slice(previ, bodyText.length);
-    return [newText, hitCount];
-}
-
-function removeHighlight(bodyText) 
-{
-    // We use regular expressions here rather than a straight text search because 
-    // some browsers actually insert double quotes and capitalize.  Also, each highlight
-    // name is uniquely numbered in order of discovery
-    var highlightStartTag = /<span class=[\"]*highlighted(Current)*[\"]* name=[\"]*highlight[0-9]*[\"]*>/i;
-    var highlightEndTag = /<\/span>/i;
-    
-    var newText = "";
-
-    var startPatternFirstIndex = -1;
-    var startPatternLastIndex = -1;
-    
-    var endPatternFirstIndex = -1;
-    var endPatternLastIndex = -1;
-
-    while (highlightStartTag.test(bodyText) === true) {
-        startPatternFirstIndex = bodyText.search(highlightStartTag);
-        newText += bodyText.substring(0, startPatternFirstIndex);        
-        startPatternLastIndex = bodyText.indexOf('>', startPatternFirstIndex+1);
-        
-        bodyText = bodyText.substr(startPatternLastIndex+1);
-        endPatternFirstIndex = bodyText.search(highlightEndTag);
-        newText += bodyText.substring(0, endPatternFirstIndex);
-        endPatternLastIndex = endPatternFirstIndex+7;
-        
-        bodyText = bodyText.substr(endPatternLastIndex);
-    }
-    if (startPatternFirstIndex < 0) {
-        return bodyText;
-    } else {
-        return newText+bodyText;
-    }
-}
-
-function removeHighlightInAllDocs()
-{
-    if (top) {
-        for (var i = 0; i < top.frames.length; i++) {
-            if (top.frames[i].name === "rtwreport_contents_frame" || top.frames[i].name === "rtwreport_document_frame") {
-                var currentDoc = top.frames[i].document;
-                if (typeof currentDoc.body !== "undefined" && currentDoc.body !== null)
-                    currentDoc.body.innerHTML=removeHighlight(currentDoc.body.innerHTML);
-            }
-        }
-    }
-}
-
-function findInDoc(searchStringFromSubmitBox, doc, caseSensitive, hitCount) 
-{
-    var searchBody = doc.body.innerHTML;
-    // if the document is empty, or the documents is invalid, return
-    if (!doc.body || typeof(searchBody) === "undefined") {
-        return [false, hitCount];
-    }
-        
-    // inject highlighting code into html
-    var result = addHighlight(searchBody, searchStringFromSubmitBox, caseSensitive, hitCount);
-    doc.body.innerHTML = result[0];
-
-    return [true, result[1]];
-}
-
-var currentlyHighlightedHit;
-
-function getSpansByName(name)
-{
-    var allSpans = [];
-    for (i = 0; i < top.frames.length; i++) {
-        if (top.frames[i].name === "rtwreport_contents_frame" || top.frames[i].name === "rtwreport_document_frame") {
-            var currentDoc = top.frames[i].document; 
-            var highlightedSpans = currentDoc.getElementsByName(name);
-            if (highlightedSpans && highlightedSpans.length && highlightedSpans.length > 0) {
-            for (j = 0; j < highlightedSpans.length; j++) {
-            allSpans = allSpans.concat(highlightedSpans[j]);
-            }
-            }
-        }
-    }
-    return allSpans;
-}
-
-function isVisibleElement(elementID)
-{
-    if (elementID)
-        return elementID.offsetWidth > 0 || elementID.offsetHeight > 0;
-    else 
-        return false;
-}
-
-function areAllSpansVisible(spans)
-{
-    isVisible = true;
-    for (i = 0; i < highlightedSpans.length; i++) {
-        isVisible = isVisible && isVisibleElement(highlightedSpans[i]);
-    }
-    return isVisible;
-}
-
-function getNextVisible()
-{
-    var isVisible = false;
-    var foundVisible = false;
-    while (!isVisible) {
-        currentlyHighlightedHit = currentlyHighlightedHit + 1;
-        highlightedSpans = setCurrentSearchMatchIfVisible(currentlyHighlightedHit);
-        if (highlightedSpans && highlightedSpans.length > 0) {
-            isVisible = true;
-        } else if (currentlyHighlightedHit < totalHits) {
-            continue;
-        } else {
-            // we have reached the end
-            isVisible = false;
-            currentlyHighlightedHit = 0;
-            highlightedSpans = null;
-            break;
-        }
-    }
-    
-    return highlightedSpans;    
-}
-
-function clearCurrentSearchMatch()
-{
-    // clear prior highlighting
-    spanName = "highlight" + currentlyHighlightedHit;
-    highlightedSpans = getSpansByName(spanName);
-    if (highlightedSpans && highlightedSpans.length) {
-        for (i = 0; i < highlightedSpans.length; i++) {
-            if (highlightedSpans[i]) {
-                highlightedSpans[i].setAttribute("class", "highlighted");
-            }           
-        }
-    }
-}
-
-function setCurrentSearchMatchIfVisible(hitNum){
-    currentlyHighlightedHit = hitNum;
-    var spanName = "highlight" + currentlyHighlightedHit;
-    var highlightedSpans = getSpansByName(spanName);
-    if (highlightedSpans && highlightedSpans.length) {
-        for (i = 0; i < highlightedSpans.length; i++) {
-            if (!isVisibleElement(highlightedSpans[i])) {
-                highlightedSpans = null;
-                break;
-            }
-        }
-    }
-    return highlightedSpans;
-}
-
-// this takes in an option integer 'hitNum'. If not specified, it scrolls
-// to the next hit
-function scrollToNextHit(hitNum)
-{
-    var i = 0;
-    var found = false;
-    var spanName = "";
-    var highlightedSpans;
-    var searchBox = findElement('searchTxtBox');
-    
-    clearCurrentSearchMatch();
-    
-    if (hitNum) {
-        // if a number is provided, use it
-        highlightedSpans = setCurrentSearchMatchIfVisible(hitNum);
-    } else {        
-        // start working on next element to highlight
-        highlightedSpans = getNextVisible();
-    }    
-    
-    // we found the current 
-    if (highlightedSpans && highlightedSpans.length > 0) {
-        highlightedSpans[0].scrollIntoView();
-        for (i = 0; i < highlightedSpans.length; i++) {
-            highlightedSpans[i].setAttribute("class", "highlightedCurrent");
-        }
-        searchBox.setAttribute("class", "search");
-        
-    // if highlightedSpans is invalid, then we did not find any valid, visible subsequent matches
-    // wrap to beginning or indicate no matches
-    } else {
-        // Element not found. Scroll to first visible element        
-        currentlyHighlightedHit = 0;
-        var highlightedSpans = getNextVisible(currentlyHighlightedHit);
-        if (highlightedSpans && highlightedSpans.length > 0) {
-            highlightedSpans[0].scrollIntoView();
-            for (i = 0; i < highlightedSpans.length; i++) {
-                highlightedSpans[i].setAttribute("class", "highlightedCurrent");
-            }
-            searchBox.setAttribute("class", "search");
-        } else {
-            // there aren't any matches
-            searchBox.setAttribute("class", "failedSearch");
-        }
-    }
-}
-
-// find search box
-function findElement(element)
-{
-    var i = 0;
-    for (i = 0; i < top.frames.length; i++) {
-        if (top.frames[i].name === "rtwreport_contents_frame" || top.frames[i].name === "rtwreport_document_frame") {
-            var elem = top.frames[i].document.getElementById(element);
-            if (elem) { 
-                return elem;
-            }
-        }
-    }
-}
-
-// Restore search term once form is submitted
-function initSearchBox(strInitValue)
-{
-    var txtBox = findElement('searchTxtBox');
-    if (txtBox) {
-        txtBox.value = strInitValue;
-    }
-}
-
-// Sets focus back on to the text box
-function setFocusOnTxtBox()
-{
-    var txtBox = findElement('searchTxtBox');
-    if (txtBox) {
-        txtBox.focus();
-        txtBox.select();
-    }
-    return txtBox;
-}
-
-var previousSearchString;
-var totalHits;
-function findInAllDocs(searchStringFromSubmitBox, caseSensitive)
-{
-    if (previousSearchString != searchStringFromSubmitBox) {
-        // If the search string has changed or a new page has been loaded, do a new search
-        var hitCount = 1;
-        var i = 0;        
-        var success = false;
-        previousSearchString = searchStringFromSubmitBox;
-               
-        // start by removing traceinfo highlighting
-        rtwRemoveHighlighting();
-        
-        // remove all previous search highlighting
-        removeHighlightInAllDocs();
-
-        // 1. Iterate through all frames in window and search
-        for (i = 0; i < top.frames.length; i++) {
-            var currentDoc = top.frames[i].document;    
-            
-            // if we have no search term, restore
-            if (searchStringFromSubmitBox !== "") {
-                // search and highlight in all frames
-                var srchResult = findInDoc(searchStringFromSubmitBox, currentDoc, caseSensitive, hitCount);
-                hitCount = srchResult[1];
-                totalHits = srchResult[1];
-            }
-        }
-
-        // 2. Restore search term once form is submitted and text highlighted        
-        if (searchStringFromSubmitBox != "") {
-            strInitValue = searchStringFromSubmitBox;
-        }    
-        initSearchBox(strInitValue);
-
-        // 3. Scroll to the first hit encountered
-        scrollToNextHit(1);
-        
-        // 4. Set focus back to text box and select text
-        var txtBox = setFocusOnTxtBox();
-        if (txtBox) {
-            txtBox.select();
-        }
-                
-    } else {
-        // If the search string is the same, then scroll to the next 
-        // hit if the hit is valid. Else wrap back.        
-        scrollToNextHit();
-    }
-    return false;
-}
-
-// if the search box is empty, clear highlighting
-function clearIfEmpty()
-{
-    txtBox = findElement('searchTxtBox');
-    if (txtBox.value == "") {
-        txtBox.setAttribute("class", "search");
-        removeHighlightInAllDocs();
-        previousSearchString="";
-        setFocusOnTxtBox();
-    }
-}
-
-function keyPressSwitchyard(keyPressEvent)
-{ 
-    var kc;
-    keyPressEvent = (keyPressEvent == null ? window.keyPressEvent : keyPressEvent);
-
-    // typically IE does not support this
-    if (!keyPressEvent || (typeof keyPressEvent == "undefined")) {
-        return;
-    }
-    
-    if (keyPressEvent.keyCode) {    
-        kc=keyPressEvent.keyCode;
-    } else if (keyPressEvent.which) {
-        kc=keyPressEvent.which;   
-    } else {
-        return;
-    }
-
-    // we do not care about the browser find appearing. If it does appear, then 
-    // we are running an external browser and that is okay.
-    
-    // handle Ctrl-Key combinations
-    if (keyPressEvent.ctrlKey) {
-        switch (kc) {
-            case 70: // Ctrl-F
-            { 
-              setFocusOnTxtBox();
-              break;
-            }
-            
-            default: break;
-        }
-    } 
-}
-
-function installDocumentKeyPressHandler()
-{
-    var i = 0;
-    for (i = 0; i < top.frames.length; i++) {
-        var currentDoc = top.frames[i].document;    
-        currentDoc.onkeydown = keyPressSwitchyard;
-    }    
-    top.document.onkeydown = keyPressSwitchyard;
-    
-    // This also clears search related highlighting
-    removeHighlightInAllDocs();
-    currentlyHighlightedHit = 0;
-    if (previousSearchString) initSearchBox(previousSearchString);
-    previousSearchString = "";
-}
-
-// This function is a onresize callback for the rtwreport_contents_frame
-// It is used to dynamically resize the searchbox based on the size of the frame.
-function setWidthDynamic(frameID, elementID, extraSpace, minSize)
-{
-    var frame = document.getElementById(frameID);
-    
-    // sanity check input args
-    if (frame && extraSpace > 0 && minSize > 0) {
-        var frameWidth = frame.scrollWidth;
-        var newSize = extraSpace + minSize + 40; // 40 is the extra whitespace
-        var element = findElement(elementID);
-        if (element)
-        {
-            if (frameWidth < newSize) {
-                element.style.width = minSize;
-            } else {
-                element.style.width = frameWidth - extraSpace - 40;
-            }
-        }
-    }
-}

BIN
Simulink/PMSM_Controller_ert_rtw/html/spinner.gif


+ 0 - 3
Simulink/PMSM_Controller_ert_rtw/modelsources.txt

@@ -1,3 +0,0 @@
-  PMSM_Controller.c
-Shunt_Three_Sample_Point.c
-

+ 0 - 99
Simulink/PMSM_Controller_ert_rtw/rtGetInf.c

@@ -1,99 +0,0 @@
-/*
- * File: rtGetInf.c
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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
- */
-
-/*
- * Abstract:
- *      Function to initialize non-finite, Inf
- */
-#include "rtGetInf.h"
-#define NumBitsPerChar                 8U
-
-/*
- * Initialize rtInf needed by the generated code.
- * Inf is initialized as non-signaling. Assumes IEEE.
- */
-real_T rtGetInf(void)
-{
-  size_t bitsPerReal = sizeof(real_T) * (NumBitsPerChar);
-  real_T inf = 0.0;
-  if (bitsPerReal == 32U) {
-    inf = rtGetInfF();
-  } else {
-    union {
-      LittleEndianIEEEDouble bitVal;
-      real_T fltVal;
-    } tmpVal;
-
-    tmpVal.bitVal.words.wordH = 0x7FF00000U;
-    tmpVal.bitVal.words.wordL = 0x00000000U;
-    inf = tmpVal.fltVal;
-  }
-
-  return inf;
-}
-
-/*
- * Initialize rtInfF needed by the generated code.
- * Inf is initialized as non-signaling. Assumes IEEE.
- */
-real32_T rtGetInfF(void)
-{
-  IEEESingle infF;
-  infF.wordL.wordLuint = 0x7F800000U;
-  return infF.wordL.wordLreal;
-}
-
-/*
- * Initialize rtMinusInf needed by the generated code.
- * Inf is initialized as non-signaling. Assumes IEEE.
- */
-real_T rtGetMinusInf(void)
-{
-  size_t bitsPerReal = sizeof(real_T) * (NumBitsPerChar);
-  real_T minf = 0.0;
-  if (bitsPerReal == 32U) {
-    minf = rtGetMinusInfF();
-  } else {
-    union {
-      LittleEndianIEEEDouble bitVal;
-      real_T fltVal;
-    } tmpVal;
-
-    tmpVal.bitVal.words.wordH = 0xFFF00000U;
-    tmpVal.bitVal.words.wordL = 0x00000000U;
-    minf = tmpVal.fltVal;
-  }
-
-  return minf;
-}
-
-/*
- * Initialize rtMinusInfF needed by the generated code.
- * Inf is initialized as non-signaling. Assumes IEEE.
- */
-real32_T rtGetMinusInfF(void)
-{
-  IEEESingle minfF;
-  minfF.wordL.wordLuint = 0xFF800000U;
-  return minfF.wordL.wordLreal;
-}
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 35
Simulink/PMSM_Controller_ert_rtw/rtGetInf.h

@@ -1,35 +0,0 @@
-/*
- * File: rtGetInf.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_rtGetInf_h_
-#define RTW_HEADER_rtGetInf_h_
-#include <stddef.h>
-#include "rtwtypes.h"
-#include "rt_nonfinite.h"
-
-extern real_T rtGetInf(void);
-extern real32_T rtGetInfF(void);
-extern real_T rtGetMinusInf(void);
-extern real32_T rtGetMinusInfF(void);
-
-#endif                                 /* RTW_HEADER_rtGetInf_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 65
Simulink/PMSM_Controller_ert_rtw/rtGetNaN.c

@@ -1,65 +0,0 @@
-/*
- * File: rtGetNaN.c
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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
- */
-
-/*
- * Abstract:
- *      Function to initialize non-finite, NaN
- */
-#include "rtGetNaN.h"
-#define NumBitsPerChar                 8U
-
-/*
- * Initialize rtNaN needed by the generated code.
- * NaN is initialized as non-signaling. Assumes IEEE.
- */
-real_T rtGetNaN(void)
-{
-  size_t bitsPerReal = sizeof(real_T) * (NumBitsPerChar);
-  real_T nan = 0.0;
-  if (bitsPerReal == 32U) {
-    nan = rtGetNaNF();
-  } else {
-    union {
-      LittleEndianIEEEDouble bitVal;
-      real_T fltVal;
-    } tmpVal;
-
-    tmpVal.bitVal.words.wordH = 0xFFF80000U;
-    tmpVal.bitVal.words.wordL = 0x00000000U;
-    nan = tmpVal.fltVal;
-  }
-
-  return nan;
-}
-
-/*
- * Initialize rtNaNF needed by the generated code.
- * NaN is initialized as non-signaling. Assumes IEEE.
- */
-real32_T rtGetNaNF(void)
-{
-  IEEESingle nanF = { { 0 } };
-
-  nanF.wordL.wordLuint = 0xFFC00000U;
-  return nanF.wordL.wordLreal;
-}
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 33
Simulink/PMSM_Controller_ert_rtw/rtGetNaN.h

@@ -1,33 +0,0 @@
-/*
- * File: rtGetNaN.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_rtGetNaN_h_
-#define RTW_HEADER_rtGetNaN_h_
-#include <stddef.h>
-#include "rtwtypes.h"
-#include "rt_nonfinite.h"
-
-extern real_T rtGetNaN(void);
-extern real32_T rtGetNaNF(void);
-
-#endif                                 /* RTW_HEADER_rtGetNaN_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 56
Simulink/PMSM_Controller_ert_rtw/rt_defines.h

@@ -1,56 +0,0 @@
-/*
- * File: rt_defines.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_rt_defines_h_
-#define RTW_HEADER_rt_defines_h_
-
-/*===========*
- * Constants *
- *===========*/
-#define RT_PI                          3.14159265358979323846
-#define RT_PIF                         3.1415927F
-#define RT_LN_10                       2.30258509299404568402
-#define RT_LN_10F                      2.3025851F
-#define RT_LOG10E                      0.43429448190325182765
-#define RT_LOG10EF                     0.43429449F
-#define RT_E                           2.7182818284590452354
-#define RT_EF                          2.7182817F
-
-/*
- * UNUSED_PARAMETER(x)
- *   Used to specify that a function parameter (argument) is required but not
- *   accessed by the function body.
- */
-#ifndef UNUSED_PARAMETER
-#if defined(__LCC__)
-#define UNUSED_PARAMETER(x)                                      /* do nothing */
-#else
-
-/*
- * This is the semi-ANSI standard way of indicating that an
- * unused function parameter is required.
- */
-#define UNUSED_PARAMETER(x)            (void) (x)
-#endif
-#endif
-#endif                                 /* RTW_HEADER_rt_defines_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 97
Simulink/PMSM_Controller_ert_rtw/rt_nonfinite.c

@@ -1,97 +0,0 @@
-/*
- * File: rt_nonfinite.c
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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
- */
-
-/*
- * Abstract:
- *      Function to initialize non-finites,
- *      (Inf, NaN and -Inf).
- */
-#include "rt_nonfinite.h"
-#include "rtGetNaN.h"
-#include "rtGetInf.h"
-#define NumBitsPerChar                 8U
-
-real_T rtInf;
-real_T rtMinusInf;
-real_T rtNaN;
-real32_T rtInfF;
-real32_T rtMinusInfF;
-real32_T rtNaNF;
-
-/*
- * Initialize the rtInf, rtMinusInf, and rtNaN needed by the
- * generated code. NaN is initialized as non-signaling. Assumes IEEE.
- */
-void rt_InitInfAndNaN(size_t realSize)
-{
-  (void) (realSize);
-  rtNaN = rtGetNaN();
-  rtNaNF = rtGetNaNF();
-  rtInf = rtGetInf();
-  rtInfF = rtGetInfF();
-  rtMinusInf = rtGetMinusInf();
-  rtMinusInfF = rtGetMinusInfF();
-}
-
-/* Test if value is infinite */
-boolean_T rtIsInf(real_T value)
-{
-  return (boolean_T)((value==rtInf || value==rtMinusInf) ? 1U : 0U);
-}
-
-/* Test if single-precision value is infinite */
-boolean_T rtIsInfF(real32_T value)
-{
-  return (boolean_T)(((value)==rtInfF || (value)==rtMinusInfF) ? 1U : 0U);
-}
-
-/* Test if value is not a number */
-boolean_T rtIsNaN(real_T value)
-{
-  boolean_T result = (boolean_T) 0;
-  size_t bitsPerReal = sizeof(real_T) * (NumBitsPerChar);
-  if (bitsPerReal == 32U) {
-    result = rtIsNaNF((real32_T)value);
-  } else {
-    union {
-      LittleEndianIEEEDouble bitVal;
-      real_T fltVal;
-    } tmpVal;
-
-    tmpVal.fltVal = value;
-    result = (boolean_T)((tmpVal.bitVal.words.wordH & 0x7FF00000) == 0x7FF00000 &&
-                         ( (tmpVal.bitVal.words.wordH & 0x000FFFFF) != 0 ||
-                          (tmpVal.bitVal.words.wordL != 0) ));
-  }
-
-  return result;
-}
-
-/* Test if single-precision value is not a number */
-boolean_T rtIsNaNF(real32_T value)
-{
-  IEEESingle tmp;
-  tmp.wordL.wordLreal = value;
-  return (boolean_T)( (tmp.wordL.wordLuint & 0x7F800000) == 0x7F800000 &&
-                     (tmp.wordL.wordLuint & 0x007FFFFF) != 0 );
-}
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 61
Simulink/PMSM_Controller_ert_rtw/rt_nonfinite.h

@@ -1,61 +0,0 @@
-/*
- * File: rt_nonfinite.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTW_HEADER_rt_nonfinite_h_
-#define RTW_HEADER_rt_nonfinite_h_
-#include <stddef.h>
-#include "rtwtypes.h"
-
-extern real_T rtInf;
-extern real_T rtMinusInf;
-extern real_T rtNaN;
-extern real32_T rtInfF;
-extern real32_T rtMinusInfF;
-extern real32_T rtNaNF;
-extern void rt_InitInfAndNaN(size_t realSize);
-extern boolean_T rtIsInf(real_T value);
-extern boolean_T rtIsInfF(real32_T value);
-extern boolean_T rtIsNaN(real_T value);
-extern boolean_T rtIsNaNF(real32_T value);
-typedef struct {
-  struct {
-    uint32_T wordH;
-    uint32_T wordL;
-  } words;
-} BigEndianIEEEDouble;
-
-typedef struct {
-  struct {
-    uint32_T wordL;
-    uint32_T wordH;
-  } words;
-} LittleEndianIEEEDouble;
-
-typedef struct {
-  union {
-    real32_T wordLreal;
-    uint32_T wordLuint;
-  } wordL;
-} IEEESingle;
-
-#endif                                 /* RTW_HEADER_rt_nonfinite_h_ */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

+ 0 - 4
Simulink/PMSM_Controller_ert_rtw/rtw_proj.tmw

@@ -1,4 +0,0 @@
-Simulink Coder project for PMSM_Controller using . MATLAB root = D:\Program Files\R2020b. SimStruct date: 29-7月-2020 14:26:22
-This file is generated by Simulink Coder for use by the make utility
-to determine when to rebuild objects when the name of the current Simulink Coder project changes.
-The rtwinfomat located at: ..\slprj\ert\PMSM_Controller\tmwinternal\binfo.mat

+ 0 - 102
Simulink/PMSM_Controller_ert_rtw/rtwtypes.h

@@ -1,102 +0,0 @@
-/*
- * File: rtwtypes.h
- *
- * Code generated for Simulink model 'PMSM_Controller'.
- *
- * Model version                  : 1.885
- * Simulink Coder version         : 9.4 (R2020b) 29-Jul-2020
- * C/C++ source code generated on : Sat Jan  8 15:44:11 2022
- *
- * 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 RTWTYPES_H
-#define RTWTYPES_H
-
-/* Logical type definitions */
-#if (!defined(__cplusplus))
-#ifndef false
-#define false                          (0U)
-#endif
-
-#ifndef true
-#define true                           (1U)
-#endif
-#endif
-
-/*=======================================================================*
- * Target hardware information
- *   Device type: ARM Compatible->ARM Cortex-M
- *   Number of bits:     char:   8    short:   16    int:  32
- *                       long:  32    long long:  64
- *                       native word size:  32
- *   Byte ordering: LittleEndian
- *   Signed integer division rounds to: Zero
- *   Shift right on a signed integer as arithmetic shift: on
- *=======================================================================*/
-
-/*=======================================================================*
- * Fixed width word size data types:                                     *
- *   int8_T, int16_T, int32_T     - signed 8, 16, or 32 bit integers     *
- *   uint8_T, uint16_T, uint32_T  - unsigned 8, 16, or 32 bit integers   *
- *   real32_T, real64_T           - 32 and 64 bit floating point numbers *
- *=======================================================================*/
-typedef signed char int8_T;
-typedef unsigned char uint8_T;
-typedef short int16_T;
-typedef unsigned short uint16_T;
-typedef int int32_T;
-typedef unsigned int uint32_T;
-typedef long long int64_T;
-typedef unsigned long long uint64_T;
-typedef float real32_T;
-typedef double real64_T;
-
-/*===========================================================================*
- * Generic type definitions: boolean_T, char_T, byte_T, int_T, uint_T,       *
- *                           real_T, time_T, ulong_T, ulonglong_T.           *
- *===========================================================================*/
-typedef double real_T;
-typedef double time_T;
-typedef unsigned char boolean_T;
-typedef int int_T;
-typedef unsigned int uint_T;
-typedef unsigned long ulong_T;
-typedef unsigned long long ulonglong_T;
-typedef char char_T;
-typedef unsigned char uchar_T;
-typedef char_T byte_T;
-
-/*=======================================================================*
- * Min and Max:                                                          *
- *   int8_T, int16_T, int32_T     - signed 8, 16, or 32 bit integers     *
- *   uint8_T, uint16_T, uint32_T  - unsigned 8, 16, or 32 bit integers   *
- *=======================================================================*/
-#define MAX_int8_T                     ((int8_T)(127))
-#define MIN_int8_T                     ((int8_T)(-128))
-#define MAX_uint8_T                    ((uint8_T)(255U))
-#define MAX_int16_T                    ((int16_T)(32767))
-#define MIN_int16_T                    ((int16_T)(-32768))
-#define MAX_uint16_T                   ((uint16_T)(65535U))
-#define MAX_int32_T                    ((int32_T)(2147483647))
-#define MIN_int32_T                    ((int32_T)(-2147483647-1))
-#define MAX_uint32_T                   ((uint32_T)(0xFFFFFFFFU))
-#define MAX_int64_T                    ((int64_T)(9223372036854775807LL))
-#define MIN_int64_T                    ((int64_T)(-9223372036854775807LL-1LL))
-#define MAX_uint64_T                   ((uint64_T)(0xFFFFFFFFFFFFFFFFULL))
-
-/* Block D-Work pointer type */
-typedef void * pointer_T;
-
-#endif                                 /* RTWTYPES_H */
-
-/*
- * File trailer for generated code.
- *
- * [EOF]
- */

BIN
Simulink/PMSM_Controller_ert_rtw/rtwtypeschksum.mat


+ 0 - 2
Simulink/PMSM_Controller_ert_rtw/setup_msvc.bat

@@ -1,2 +0,0 @@
-set "VSCMD_START_DIR=%CD%"
-"d:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\VCVARSALL.BAT " amd64

BIN
Simulink/foc_libs.slx


+ 11 - 9
Simulink/init_model.m

@@ -35,6 +35,7 @@ clc
 Ts                  = 6.2e-6;                         % [s] Model sampling time (1 MHz)
 Ts_ctrl             = 62e-6;                         % [s] Controller sampling time (~16 kHz)
 f_ctrl              = 16e3;                         % [Hz] Controller frequency = 1/Ts_ctrl (16 kHz)
+Ts_speed       = Ts_ctrl * 50;    
 i_pwm_count         = 4000;
 i_dead              = 10;
 i_adc               = 10;
@@ -73,7 +74,7 @@ n_max               = 5000;             % [rpm] Maximum motor speed: [-5000, 500
 % open loop speed -> voltage lookup table
 res_rpm_openloop     = 100;
 delta_rpm_openloop = 100; % delta rpm that when speed decreased, enter open loop
-min_start_voltage_openloop = 50;
+min_start_voltage_openloop = 100;
 a_rpm_step = i_Udc / (n_max / res_rpm_openloop);
 % Motor parameters
 n_polePairs         = 4;                           % [-] Number of motor pole pairs
@@ -82,7 +83,7 @@ a_elecDeltaAngle         = 60;                           % [deg] Electrical angl
 a_mechAngle         = a_elecDeltaAngle / n_polePairs;    % [deg] Mechanical angle between two Hall sensor changing events
 r_whl               = 6.5 * 2.54 * 1e-2 / 2;        % [m] Wheel radius. Diameter = 6.5 inch (1 inch = 2.54 cm): Speed[kph] = rpm*(pi/30)*r_whl*3.6
 
-f_lpf_coeff         = 0.2;
+f_lpf_coeff         = 0.12;
 
 %hall,  [4,6,2,3,1,5,4] [  3,2,6,4,5,1]
 vec_hallToPos       =   [7 5 1 0 3 4 2 7];  % [-] Mapping Hall signal to position
@@ -93,8 +94,8 @@ cf_speedCoef        = (i_hall_count_max * a_mechAngle * (pi/180) * (30/pi));
 z_maxCntRst         = i_hall_count_max;   % [-] Maximum counter value for reset (works also as time-out to detect standing still)
 n_commDeacvHi       = 30;               % [rpm] Commutation method deactivation speed high
 n_commAcvLo         = 15;               % [rpm] Commutation method activation speed low
-dz_cntTrnsDetHi     = 40;               % [-] Counter gradient High for transient behavior detection (used for speed estimation)
-dz_cntTrnsDetLo     = 20;               % [-] Counter gradient Low for steady state detection (used for speed estimation)
+dz_cntTrnsDetHi     = 140;               % [-] Counter gradient High for transient behavior detection (used for speed estimation)
+dz_cntTrnsDetLo     = 100;               % [-] Counter gradient Low for steady state detection (used for speed estimation)
 n_stdStillDet       = 3;                % [rpm] Speed threshold for Stand still detection
 
 % Motor Angle Measurement (e.g. using an encoder)
@@ -102,10 +103,9 @@ b_angleMeasEna      = 0;                % [-] Enable flag for external mechanica
 
 % Control model request
 OPEN_MODE           = 0;                % [-] Open mode
-VLT_MODE            = 1;                % [-] Voltage mode
-SPD_MODE            = 2;                % [-] Speed mode
-TRQ_MODE            = 3;                % [-] Torque mode
-z_ctrlModReq        = VLT_MODE;         % [-] Control Mode Request (default)
+SPD_MODE            = 1;                % [-] Speed mode
+TRQ_MODE            = 2;                % [-] Torque mode
+z_ctrlModReq        = TRQ_MODE;         % [-] Control Mode Request (default)
 
 % Cruise control
 b_cruiseCtrlEna     = 0;                % [-] Cruise control enable flag: 0 = disable (default), 1 = enable
@@ -125,6 +125,8 @@ id_fieldWeakMax     = 5;        % [A] Field weakening maximum current
 z_selPhaCurMeasABC  = 0;                % [-] Select measured current phases: {iA,iB} = 0; {iB,iC} = 1; {iA,iC} = 2
 
 % Motor Limitations Calibratables
+speed_pi_time       = 1e-3;
+speed_pi_count      = speed_pi_time/Ts_ctrl;
 cf_iqKiLimProt      = 60 / (f_ctrl/3);  % [-] Current limit protection integral gain (only used in VLT_MODE and SPD_MODE)
 cf_nKiLimProt       = 20 / (f_ctrl/3);  % [-] Speed limit protection integral gain (only used in VLT_MODE and TRQ_MODE)
 cf_KbLimProt        = 1000 / (f_ctrl/3);% [-] Back calculation gain for integral anti-windup
@@ -137,7 +139,7 @@ Vq_max_M1           = sqrt(Vd_max^2 - Vq_max_XA.^2);  % Circle limitations look-
 
 i_sca               = 1;                           % [-] [not tunable] Scalling factor A to int16 (50 = 1/0.02)
 % Current Limitations
-i_max               = 100;               % [A] Maximum allowed motor current (continuous)
+i_max               = 45;               % [A] Maximum allowed motor current (continuous)
 i_max               = i_max * i_sca;
 iq_maxSca_XA        = 0:0.02:0.99;
 iq_maxSca_XA        = fixpt_evenspace_cleanup(iq_maxSca_XA, ufix(16), 2^-16);   % Make sure the data is evely spaced up to the last bit

BIN
Simulink/power_mos.slx


BIN
Simulink/power_mos.slxc