Добавлены настройки LIN5 (управление кнопками) и немного сон
This commit is contained in:
parent
5d0cdc248c
commit
75594dae5c
43204
HVAC_model.c
43204
HVAC_model.c
File diff suppressed because it is too large
Load Diff
7646
HVAC_model.h
7646
HVAC_model.h
File diff suppressed because it is too large
Load Diff
|
|
@ -3,9 +3,9 @@
|
|||
*
|
||||
* Code generated for Simulink model 'HVAC_model'.
|
||||
*
|
||||
* Model version : 1.1397
|
||||
* Model version : 1.1446
|
||||
* Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
|
||||
* C/C++ source code generated on : Fri Jul 17 14:49:32 2026
|
||||
* C/C++ source code generated on : Mon Jul 27 16:34:24 2026
|
||||
*
|
||||
* Target selection: ert.tlc
|
||||
* Embedded hardware selection: ARM Compatible->ARM Cortex-M
|
||||
|
|
@ -19,27 +19,27 @@
|
|||
|
||||
/* Invariant block signals (default storage) */
|
||||
const ConstB rtConstB = {
|
||||
/* Start of '<S1306>/If Action Subsystem1' */
|
||||
/* Start of '<S1892>/If Action Subsystem1' */
|
||||
{
|
||||
{ 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '<S1322>/Data Type Conversion' */
|
||||
{ 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '<S1908>/Data Type Conversion' */
|
||||
}
|
||||
,
|
||||
|
||||
/* End of '<S1306>/If Action Subsystem1' */
|
||||
/* End of '<S1892>/If Action Subsystem1' */
|
||||
|
||||
/* Start of '<S1235>/If Action Subsystem1' */
|
||||
/* Start of '<S1821>/If Action Subsystem1' */
|
||||
{
|
||||
{ 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '<S1251>/Data Type Conversion' */
|
||||
{ 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '<S1837>/Data Type Conversion' */
|
||||
}
|
||||
,
|
||||
|
||||
/* End of '<S1235>/If Action Subsystem1' */
|
||||
/* End of '<S1821>/If Action Subsystem1' */
|
||||
|
||||
/* Start of '<S1165>/If Action Subsystem1' */
|
||||
/* Start of '<S1751>/If Action Subsystem1' */
|
||||
{
|
||||
{ 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '<S1181>/Data Type Conversion' */
|
||||
{ 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '<S1767>/Data Type Conversion' */
|
||||
}
|
||||
/* End of '<S1165>/If Action Subsystem1' */
|
||||
/* End of '<S1751>/If Action Subsystem1' */
|
||||
};
|
||||
|
||||
/* Constant parameters (default storage) */
|
||||
|
|
@ -92,8 +92,8 @@ const ConstP rtConstP = {
|
|||
/* Pooled Parameter (Expression: [850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 836 818 800 784 769 754 740 727 714 702 691 680 670 659 650 640 631 622 614 606 598 590 583 575 568 561 555 548 542 536 530 524 518 512 507 501 496 491 486 481 476 471 466 462 457 453 448 444 440 436 431 427 423 420 416 412 408 405 401 397 394 390 387 384 380 377 374 370 367 364 361 358 355 352 349 346 343 340 338 335 332 329 327 324 321 319 316 314 311 309 306 304 301 299 297 294 292 289 287 285 283 280 278 276 274 272 269 267 265 263 261 259 257 255 253 251 249 247 245 243 241 239 237 235 234 232 230 228 226 224 223 221 219 217 216 214 212 210 209 207 205 204 202 200 199 197 195 194 192 191 189 187 186 184 183 181 180 178 177 175 174 172 171 169 168 166 165 163 162 161 159 158 156 155 153 152 151 149 148 147 145 144 143 141 140 139 137 136 135 133 132 131 129 128 127 126 124 123 122 121 119 118 117 116 115 113 112 111 110 109 107 106 105 104 103 101 100 99 98 97 96 95 93 92 91 90 89 88 87 86 84 83 82 81 80 79 78 77 76 75 74 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 29 28 27 26 25 24 23 22 21 20 19 18 17 17 16 15 14 13 12 11 10 9 8 8 7 6 5 4 3 2 1 0 0 0 -1 -2 -3 -4 -5 -5 -6 -7 -8 -9 -10 -11 -11 -12 -13 -14 -15 -16 -17 -17 -18 -19 -20 -21 -22 -22 -23 -24 -25 -26 -27 -27 -28 -29 -30 -31 -31 -32 -33 -34 -35 -36 -36 -37 -38 -39 -40 -40 -41 -42 -43 -44 -44 -45 -46 -47 -47 -48 -49 -50 -51 -51 -52 -53 -54 -55 -55 -56 -57 -58 -58 -59 -60 -61 -62 -62 -63 -64 -65 -65 -66 -67 -68 -68 -69 -70 -71 -71 -72 -73 -74 -74 -75 -76 -77 -77 -78 -79 -80 -80 -81 -82 -83 -83 -84 -85 -86 -86 -87 -88 -89 -89 -90 -91 -92 -92 -93 -94 -95 -95 -96 -97 -97 -98 -99 -100 -100 -101 -102 -103 -103 -104 -105 -105 -106 -107 -108 -108 -109 -110 -111 -111 -112 -113 -113 -114 -115 -116 -116 -117 -118 -118 -119 -120 -121 -121 -122 -123 -123 -124 -125 -126 -126 -127 -128 -128 -129 -130 -131 -131 -132 -133 -133 -134 -135 -136 -136 -137 -138 -138 -139 -140 -140 -141 -142 -143 -143 -144 -145 -145 -146 -147 -148 -148 -149 -150 -150 -151 -152 -152 -153 -154 -155 -155 -156 -157 -157 -158 -159 -159 -160 -161 -162 -162 -163 -164 -164 -165 -166 -166 -167 -168 -169 -169 -170 -171 -171 -172 -173 -173 -174 -175 -176 -176 -177 -178 -178 -179 -180 -180 -181 -182 -183 -183 -184 -185 -185 -186 -187 -187 -188 -189 -189 -190 -191 -192 -192 -193 -194 -194 -195 -196 -196 -197 -198 -199 -199 -200 -201 -201 -202 -203 -204 -204 -205 -206 -206 -207 -208 -208 -209 -210 -211 -211 -212 -213 -213 -214 -215 -216 -216 -217 -218 -218 -219 -220 -221 -221 -222 -223 -223 -224 -225 -226 -226 -227 -228 -228 -229 -230 -231 -231 -232 -233 -233 -234 -235 -236 -236 -237 -238 -238 -239 -240 -241 -241 -242 -243 -244 -244 -245 -246 -246 -247 -248 -249 -249 -250 -251 -252 -252 -253 -254 -255 -255 -256 -257 -257 -258 -259 -260 -260 -261 -262 -263 -263 -264 -265 -266 -266 -267 -268 -269 -269 -270 -271 -272 -272 -273 -274 -275 -275 -276 -277 -278 -279 -279 -280 -281 -282 -282 -283 -284 -285 -285 -286 -287 -288 -289 -289 -290 -291 -292 -292 -293 -294 -295 -296 -296 -297 -298 -299 -300 -300 -301 -302 -303 -304 -304 -305 -306 -307 -308 -308 -309 -310 -311 -312 -313 -313 -314 -315 -316 -317 -318 -318 -319 -320 -321 -322 -323 -323 -324 -325 -326 -327 -328 -329 -329 -330 -331 -332 -333 -334 -335 -335 -336 -337 -338 -339 -340 -341 -342 -342 -343 -344 -345 -346 -347 -348 -349 -350 -351 -351 -352 -353 -354 -355 -356 -357 -358 -359 -360 -361 -362 -363 -364 -364 -365 -366 -367 -368 -369 -370 -371 -372 -373 -374 -375 -376 -377 -378 -379 -380 -381 -382 -383 -384 -385 -386 -387 -388 -389 -390 -391 -392 -393 -394 -395 -396 -398 -399 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400
|
||||
])
|
||||
* Referenced by:
|
||||
* '<S436>/1-D Lookup Table'
|
||||
* '<S437>/1-D Lookup Table'
|
||||
* '<S986>/1-D Lookup Table'
|
||||
* '<S987>/1-D Lookup Table'
|
||||
*/
|
||||
{ 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0,
|
||||
850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 836.0, 818.0, 800.0, 784.0, 769.0,
|
||||
|
|
@ -200,7 +200,7 @@ const ConstP rtConstP = {
|
|||
-400.0, -400.0, -400.0, -400.0, -400.0, -400.0, -400.0 },
|
||||
|
||||
/* Expression: [zeros(1, 85), linspace(0.268534, 390.3364, 1024-85)]
|
||||
* Referenced by: '<S453>/1-D Lookup Table'
|
||||
* Referenced by: '<S1003>/1-D Lookup Table'
|
||||
*/
|
||||
{ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
|
||||
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
|
||||
|
|
@ -507,10 +507,10 @@ const ConstP rtConstP = {
|
|||
|
||||
/* Pooled Parameter (Expression: Incar_Temp_Table)
|
||||
* Referenced by:
|
||||
* '<S706>/1-D Lookup Table2'
|
||||
* '<S707>/1-D Lookup Table4'
|
||||
* '<S708>/1-D Lookup Table1'
|
||||
* '<S709>/1-D Lookup Table3'
|
||||
* '<S1256>/1-D Lookup Table2'
|
||||
* '<S1257>/1-D Lookup Table4'
|
||||
* '<S1258>/1-D Lookup Table1'
|
||||
* '<S1259>/1-D Lookup Table3'
|
||||
*/
|
||||
{ 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0, 850.0,
|
||||
850.0, 850.0, 850.0, 850.0, 837.0, 816.0, 797.0, 780.0, 763.0, 748.0, 733.0,
|
||||
|
|
@ -618,111 +618,111 @@ const ConstP rtConstP = {
|
|||
|
||||
/* Pooled Parameter (Expression: [17 18 19 20 21 22 23 24 25 26 27 28 29])
|
||||
* Referenced by:
|
||||
* '<S30>/Âûáîð ðåæèìà Left'
|
||||
* '<S30>/Âûáîð ðåæèìà Right'
|
||||
* '<S34>/Âûáîð ðåæèìà Left'
|
||||
* '<S34>/Âûáîð ðåæèìà Right'
|
||||
*/
|
||||
{ 5U, 12U },
|
||||
|
||||
/* Pooled Parameter (Expression: [170:10:290])
|
||||
* Referenced by:
|
||||
* '<S301>/1-D Lookup Table'
|
||||
* '<S301>/1-D Lookup Table1'
|
||||
* '<S301>/1-D Lookup Table2'
|
||||
* '<S301>/1-D Lookup Table3'
|
||||
* '<S301>/1-D Lookup Table4'
|
||||
* '<S301>/1-D Lookup Table5'
|
||||
* '<S303>/1-D Lookup Table'
|
||||
* '<S303>/1-D Lookup Table1'
|
||||
* '<S303>/1-D Lookup Table2'
|
||||
* '<S303>/1-D Lookup Table3'
|
||||
* '<S303>/1-D Lookup Table4'
|
||||
* '<S303>/1-D Lookup Table5'
|
||||
* '<S318>/1-D Lookup Table'
|
||||
* '<S318>/1-D Lookup Table1'
|
||||
* '<S318>/1-D Lookup Table2'
|
||||
* '<S318>/1-D Lookup Table3'
|
||||
* '<S318>/1-D Lookup Table4'
|
||||
* '<S318>/1-D Lookup Table5'
|
||||
* '<S330>/1-D Lookup Table'
|
||||
* '<S330>/1-D Lookup Table1'
|
||||
* '<S330>/1-D Lookup Table2'
|
||||
* '<S330>/1-D Lookup Table3'
|
||||
* '<S330>/1-D Lookup Table4'
|
||||
* '<S330>/1-D Lookup Table5'
|
||||
* '<S342>/1-D Lookup Table'
|
||||
* '<S342>/1-D Lookup Table1'
|
||||
* '<S342>/1-D Lookup Table2'
|
||||
* '<S342>/1-D Lookup Table3'
|
||||
* '<S342>/1-D Lookup Table4'
|
||||
* '<S342>/1-D Lookup Table5'
|
||||
* '<S354>/1-D Lookup Table'
|
||||
* '<S354>/1-D Lookup Table1'
|
||||
* '<S354>/1-D Lookup Table2'
|
||||
* '<S354>/1-D Lookup Table3'
|
||||
* '<S354>/1-D Lookup Table4'
|
||||
* '<S354>/1-D Lookup Table5'
|
||||
* '<S366>/1-D Lookup Table'
|
||||
* '<S366>/1-D Lookup Table1'
|
||||
* '<S366>/1-D Lookup Table2'
|
||||
* '<S366>/1-D Lookup Table3'
|
||||
* '<S366>/1-D Lookup Table4'
|
||||
* '<S366>/1-D Lookup Table5'
|
||||
* '<S378>/1-D Lookup Table'
|
||||
* '<S378>/1-D Lookup Table1'
|
||||
* '<S378>/1-D Lookup Table2'
|
||||
* '<S378>/1-D Lookup Table3'
|
||||
* '<S378>/1-D Lookup Table4'
|
||||
* '<S378>/1-D Lookup Table5'
|
||||
* '<S792>/1-D Lookup Table'
|
||||
* '<S792>/1-D Lookup Table1'
|
||||
* '<S792>/1-D Lookup Table2'
|
||||
* '<S792>/1-D Lookup Table3'
|
||||
* '<S792>/1-D Lookup Table4'
|
||||
* '<S792>/1-D Lookup Table5'
|
||||
* '<S804>/1-D Lookup Table'
|
||||
* '<S804>/1-D Lookup Table1'
|
||||
* '<S804>/1-D Lookup Table2'
|
||||
* '<S804>/1-D Lookup Table3'
|
||||
* '<S804>/1-D Lookup Table4'
|
||||
* '<S804>/1-D Lookup Table5'
|
||||
* '<S834>/1-D Lookup Table'
|
||||
* '<S834>/1-D Lookup Table1'
|
||||
* '<S834>/1-D Lookup Table2'
|
||||
* '<S834>/1-D Lookup Table3'
|
||||
* '<S834>/1-D Lookup Table4'
|
||||
* '<S834>/1-D Lookup Table5'
|
||||
* '<S846>/1-D Lookup Table'
|
||||
* '<S846>/1-D Lookup Table1'
|
||||
* '<S846>/1-D Lookup Table2'
|
||||
* '<S846>/1-D Lookup Table3'
|
||||
* '<S846>/1-D Lookup Table4'
|
||||
* '<S846>/1-D Lookup Table5'
|
||||
* '<S826>/1-D Lookup Table'
|
||||
* '<S826>/1-D Lookup Table1'
|
||||
* '<S826>/1-D Lookup Table2'
|
||||
* '<S826>/1-D Lookup Table3'
|
||||
* '<S826>/1-D Lookup Table4'
|
||||
* '<S826>/1-D Lookup Table5'
|
||||
* '<S828>/1-D Lookup Table'
|
||||
* '<S828>/1-D Lookup Table1'
|
||||
* '<S828>/1-D Lookup Table2'
|
||||
* '<S828>/1-D Lookup Table3'
|
||||
* '<S828>/1-D Lookup Table4'
|
||||
* '<S828>/1-D Lookup Table5'
|
||||
* '<S852>/1-D Lookup Table'
|
||||
* '<S852>/1-D Lookup Table1'
|
||||
* '<S852>/1-D Lookup Table2'
|
||||
* '<S852>/1-D Lookup Table3'
|
||||
* '<S852>/1-D Lookup Table4'
|
||||
* '<S852>/1-D Lookup Table5'
|
||||
* '<S864>/1-D Lookup Table'
|
||||
* '<S864>/1-D Lookup Table1'
|
||||
* '<S864>/1-D Lookup Table2'
|
||||
* '<S864>/1-D Lookup Table3'
|
||||
* '<S864>/1-D Lookup Table4'
|
||||
* '<S864>/1-D Lookup Table5'
|
||||
* '<S876>/1-D Lookup Table'
|
||||
* '<S876>/1-D Lookup Table1'
|
||||
* '<S876>/1-D Lookup Table2'
|
||||
* '<S876>/1-D Lookup Table3'
|
||||
* '<S876>/1-D Lookup Table4'
|
||||
* '<S876>/1-D Lookup Table5'
|
||||
* '<S888>/1-D Lookup Table'
|
||||
* '<S888>/1-D Lookup Table1'
|
||||
* '<S888>/1-D Lookup Table2'
|
||||
* '<S888>/1-D Lookup Table3'
|
||||
* '<S888>/1-D Lookup Table4'
|
||||
* '<S888>/1-D Lookup Table5'
|
||||
* '<S900>/1-D Lookup Table'
|
||||
* '<S900>/1-D Lookup Table1'
|
||||
* '<S900>/1-D Lookup Table2'
|
||||
* '<S900>/1-D Lookup Table3'
|
||||
* '<S900>/1-D Lookup Table4'
|
||||
* '<S900>/1-D Lookup Table5'
|
||||
* '<S924>/1-D Lookup Table'
|
||||
* '<S924>/1-D Lookup Table1'
|
||||
* '<S924>/1-D Lookup Table2'
|
||||
* '<S924>/1-D Lookup Table3'
|
||||
* '<S924>/1-D Lookup Table4'
|
||||
* '<S924>/1-D Lookup Table5'
|
||||
* '<S1354>/1-D Lookup Table'
|
||||
* '<S1354>/1-D Lookup Table1'
|
||||
* '<S1354>/1-D Lookup Table2'
|
||||
* '<S1354>/1-D Lookup Table3'
|
||||
* '<S1354>/1-D Lookup Table4'
|
||||
* '<S1354>/1-D Lookup Table5'
|
||||
* '<S1366>/1-D Lookup Table'
|
||||
* '<S1366>/1-D Lookup Table1'
|
||||
* '<S1366>/1-D Lookup Table2'
|
||||
* '<S1366>/1-D Lookup Table3'
|
||||
* '<S1366>/1-D Lookup Table4'
|
||||
* '<S1366>/1-D Lookup Table5'
|
||||
* '<S1396>/1-D Lookup Table'
|
||||
* '<S1396>/1-D Lookup Table1'
|
||||
* '<S1396>/1-D Lookup Table2'
|
||||
* '<S1396>/1-D Lookup Table3'
|
||||
* '<S1396>/1-D Lookup Table4'
|
||||
* '<S1396>/1-D Lookup Table5'
|
||||
* '<S1408>/1-D Lookup Table'
|
||||
* '<S1408>/1-D Lookup Table1'
|
||||
* '<S1408>/1-D Lookup Table2'
|
||||
* '<S1408>/1-D Lookup Table3'
|
||||
* '<S1408>/1-D Lookup Table4'
|
||||
* '<S1408>/1-D Lookup Table5'
|
||||
*/
|
||||
{ 170, 180, 190, 200, 210, 220, 230, 240, 250, 260, 270, 280, 290 },
|
||||
|
||||
/* Pooled Parameter (Expression: [5, 4, 3, 2, 1, 0])
|
||||
* Referenced by:
|
||||
* '<S29>/1-D Lookup Table'
|
||||
* '<S967>/Get LVL for temp'
|
||||
* '<S33>/1-D Lookup Table'
|
||||
* '<S1465>/Get LVL for temp'
|
||||
*/
|
||||
{ 5, 4, 3, 2, 1, 0 },
|
||||
|
||||
/* Computed Parameter: GetLVLfortemp_bp01Data
|
||||
* Referenced by: '<S967>/Get LVL for temp'
|
||||
* Referenced by: '<S1465>/Get LVL for temp'
|
||||
*/
|
||||
{ -1000, -50, -10, 5, 20, 65 },
|
||||
|
||||
/* Pooled Parameter (Expression: [0;1;2;3;4;5])
|
||||
* Referenced by:
|
||||
* '<S30>/Âûáîð ðåæèìà Left'
|
||||
* '<S30>/Âûáîð ðåæèìà Right'
|
||||
* '<S34>/Âûáîð ðåæèìà Left'
|
||||
* '<S34>/Âûáîð ðåæèìà Right'
|
||||
*/
|
||||
{ 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
|
||||
|
||||
/* Pooled Parameter (Expression: [850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 850 848 845 841 838 834 831 827 824 821 818 814 811 808 805 802 799 796 793 790 787 784 781 778 775 772 769 767 764 761 758 756 753 750 748 745 742 740 737 735 732 730 727 725 722 720 717 715 713 710 708 706 703 701 699 696 694 692 690 688 685 683 681 679 677 675 673 670 668 666 664 662 660 658 656 654 652 650 648 646 644 642 640 638 637 635 633 631 629 627 625 624 622 620 618 616 614 613 611 609 607 606 604 602 600 599 597 595 594 592 590 589 587 585 584 582 580 579 577 576 574 572 571 569 568 566 564 563 561 560 558 557 555 554 552 551 549 548 546 545 543 542 540 539 537 536 534 533 532 530 529 527 526 524 523 522 520 519 517 516 515 513 512 511 509 508 507 505 504 503 501 500 499 497 496 495 493 492 491 489 488 487 485 484 483 482 480 479 478 477 475 474 473 472 470 469 468 467 465 464 463 462 460 459 458 457 456 454 453 452 451 450 448 447 446 445 444 442 441 440 439 438 437 435 434 433 432 431 430 429 427 426 425 424 423 422 421 420 418 417 416 415 414 413 412 411 410 408 407 406 405 404 403 402 401 400 399 398 396 395 394 393 392 391 390 389 388 387 386 385 384 383 382 381 380 378 377 376 375 374 373 372 371 370 369 368 367 366 365 364 363 362 361 360 359 358 357 356 355 354 353 352 351 350 349 348 347 346 345 344 343 342 341 340 339 338 337 336 335 334 333 332 331 330 329 328 327 326 325 324 324 323 322 321 320 319 318 317 316 315 314 313 312 311 310 309 308 307 306 305 305 304 303 302 301 300 299 298 297 296 295 294 293 292 291 291 290 289 288 287 286 285 284 283 282 281 280 279 279 278 277 276 275 274 273 272 271 270 269 268 268 267 266 265 264 263 262 261 260 259 259 258 257 256 255 254 253 252 251 250 250 249 248 247 246 245 244 243 242 241 241 240 239 238 237 236 235 234 233 233 232 231 230 229 228 227 226 225 224 224 223 222 221 220 219 218 217 217 216 215 214 213 212 211 210 209 209 208 207 206 205 204 203 202 201 201 200 199 198 197 196 195 194 194 193 192 191 190 189 188 187 186 186 185 184 183 182 181 180 179 179 178 177 176 175 174 173 172 171 171 170 169 168 167 166 165 164 163 163 162 161 160 159 158 157 156 155 155 154 153 152 151 150 149 148 147 147 146 145 144 143 142 141 140 139 139 138 137 136 135 134 133 132 131 130 130 129 128 127 126 125 124 123 122 121 121 120 119 118 117 116 115 114 113 112 112 111 110 109 108 107 106 105 104 103 102 101 101 100 99 98 97 96 95 94 93 92 91 90 89 88 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 3 2 1 0 0 -1 -2 -3 -4 -5 -6 -7 -9 -10 -11 -12 -13 -14 -15 -16 -17 -19 -20 -21 -22 -23 -24 -25 -26 -28 -29 -30 -31 -32 -33 -34 -36 -37 -38 -39 -40 -42 -43 -44 -45 -46 -47 -49 -50 -51 -52 -54 -55 -56 -57 -58 -60 -61 -62 -63 -65 -66 -67 -68 -70 -71 -72 -74 -75 -76 -77 -79 -80 -81 -83 -84 -85 -87 -88 -89 -91 -92 -93 -95 -96 -98 -99 -100 -102 -103 -105 -106 -108 -109 -110 -112 -113 -115 -116 -118 -119 -121 -122 -124 -125 -127 -128 -130 -131 -133 -134 -136 -138 -139 -141 -142 -144 -146 -147 -149 -151 -152 -154 -156 -157 -159 -161 -162 -164 -166 -168 -169 -171 -173 -175 -177 -179 -180 -182 -184 -186 -188 -190 -192 -194 -196 -198 -200 -202 -204 -206 -208 -210 -212 -214 -216 -218 -221 -223 -225 -227 -229 -232 -234 -236 -239 -241 -243 -246 -248 -251 -253 -256 -258 -261 -264 -266 -269 -272 -275 -277 -280 -283 -286 -289 -292 -295 -298 -301 -304 -308 -311 -314 -318 -321 -325 -328 -332 -336 -339 -343 -347 -351 -355 -359 -364 -368 -373 -377 -382 -387 -392 -397 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400 -400])
|
||||
* Referenced by:
|
||||
* '<S454>/1-D Lookup Table7'
|
||||
* '<S461>/1-D Lookup Table4'
|
||||
* '<S1004>/1-D Lookup Table7'
|
||||
* '<S1011>/1-D Lookup Table4'
|
||||
*/
|
||||
{ 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850,
|
||||
850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850, 850,
|
||||
|
|
@ -796,8 +796,8 @@ const ConstP rtConstP = {
|
|||
|
||||
/* Pooled Parameter (Expression: [0:4:4095])
|
||||
* Referenced by:
|
||||
* '<S454>/1-D Lookup Table7'
|
||||
* '<S461>/1-D Lookup Table4'
|
||||
* '<S1004>/1-D Lookup Table7'
|
||||
* '<S1011>/1-D Lookup Table4'
|
||||
*/
|
||||
{ 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76,
|
||||
80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140,
|
||||
|
|
@ -877,83 +877,83 @@ const ConstP rtConstP = {
|
|||
4052, 4056, 4060, 4064, 4068, 4072, 4076, 4080, 4084, 4088, 4092 },
|
||||
|
||||
/* Computed Parameter: DataStoreMemory13_InitialValue
|
||||
* Referenced by: '<S1136>/Data Store Memory13'
|
||||
* Referenced by: '<S1722>/Data Store Memory13'
|
||||
*/
|
||||
{ 1050, 1250, 1175, 1195, 1315, 1300, 1485, 1440, 1195 },
|
||||
|
||||
/* Computed Parameter: DataStoreMemory13_InitialValue_i
|
||||
* Referenced by: '<S1137>/Data Store Memory13'
|
||||
* Referenced by: '<S1723>/Data Store Memory13'
|
||||
*/
|
||||
{ 1225, 1320, 1270, 1540, 1480, 1175, 0, 0, 0 },
|
||||
|
||||
/* Computed Parameter: DataStoreMemory13_InitialValue_l
|
||||
* Referenced by: '<S1138>/Data Store Memory13'
|
||||
* Referenced by: '<S1724>/Data Store Memory13'
|
||||
*/
|
||||
{ 3075, 3075, 1605, 1840, 1650, 1635, 1820, 1650, 0 },
|
||||
|
||||
/* Pooled Parameter (Expression: [170:10:290])
|
||||
* Referenced by:
|
||||
* '<S302>/1-D Lookup Table'
|
||||
* '<S302>/1-D Lookup Table1'
|
||||
* '<S302>/1-D Lookup Table2'
|
||||
* '<S302>/1-D Lookup Table3'
|
||||
* '<S302>/1-D Lookup Table4'
|
||||
* '<S302>/1-D Lookup Table5'
|
||||
* '<S304>/1-D Lookup Table'
|
||||
* '<S304>/1-D Lookup Table1'
|
||||
* '<S304>/1-D Lookup Table2'
|
||||
* '<S304>/1-D Lookup Table3'
|
||||
* '<S304>/1-D Lookup Table4'
|
||||
* '<S304>/1-D Lookup Table5'
|
||||
* '<S305>/1-D Lookup Table'
|
||||
* '<S305>/1-D Lookup Table1'
|
||||
* '<S305>/1-D Lookup Table2'
|
||||
* '<S305>/1-D Lookup Table3'
|
||||
* '<S305>/1-D Lookup Table4'
|
||||
* '<S305>/1-D Lookup Table5'
|
||||
* '<S306>/1-D Lookup Table'
|
||||
* '<S306>/1-D Lookup Table1'
|
||||
* '<S306>/1-D Lookup Table2'
|
||||
* '<S306>/1-D Lookup Table3'
|
||||
* '<S306>/1-D Lookup Table4'
|
||||
* '<S306>/1-D Lookup Table5'
|
||||
* '<S788>/1-D Lookup Table10'
|
||||
* '<S788>/1-D Lookup Table11'
|
||||
* '<S788>/1-D Lookup Table6'
|
||||
* '<S788>/1-D Lookup Table7'
|
||||
* '<S788>/1-D Lookup Table8'
|
||||
* '<S788>/1-D Lookup Table9'
|
||||
* '<S789>/1-D Lookup Table10'
|
||||
* '<S789>/1-D Lookup Table11'
|
||||
* '<S789>/1-D Lookup Table6'
|
||||
* '<S789>/1-D Lookup Table7'
|
||||
* '<S789>/1-D Lookup Table8'
|
||||
* '<S789>/1-D Lookup Table9'
|
||||
* '<S832>/1-D Lookup Table10'
|
||||
* '<S832>/1-D Lookup Table11'
|
||||
* '<S832>/1-D Lookup Table6'
|
||||
* '<S832>/1-D Lookup Table7'
|
||||
* '<S832>/1-D Lookup Table8'
|
||||
* '<S832>/1-D Lookup Table9'
|
||||
* '<S833>/1-D Lookup Table1'
|
||||
* '<S833>/1-D Lookup Table12'
|
||||
* '<S833>/1-D Lookup Table2'
|
||||
* '<S833>/1-D Lookup Table3'
|
||||
* '<S833>/1-D Lookup Table4'
|
||||
* '<S833>/1-D Lookup Table5'
|
||||
* '<S827>/1-D Lookup Table'
|
||||
* '<S827>/1-D Lookup Table1'
|
||||
* '<S827>/1-D Lookup Table2'
|
||||
* '<S827>/1-D Lookup Table3'
|
||||
* '<S827>/1-D Lookup Table4'
|
||||
* '<S827>/1-D Lookup Table5'
|
||||
* '<S829>/1-D Lookup Table'
|
||||
* '<S829>/1-D Lookup Table1'
|
||||
* '<S829>/1-D Lookup Table2'
|
||||
* '<S829>/1-D Lookup Table3'
|
||||
* '<S829>/1-D Lookup Table4'
|
||||
* '<S829>/1-D Lookup Table5'
|
||||
* '<S830>/1-D Lookup Table'
|
||||
* '<S830>/1-D Lookup Table1'
|
||||
* '<S830>/1-D Lookup Table2'
|
||||
* '<S830>/1-D Lookup Table3'
|
||||
* '<S830>/1-D Lookup Table4'
|
||||
* '<S830>/1-D Lookup Table5'
|
||||
* '<S837>/1-D Lookup Table'
|
||||
* '<S837>/1-D Lookup Table1'
|
||||
* '<S837>/1-D Lookup Table2'
|
||||
* '<S837>/1-D Lookup Table3'
|
||||
* '<S837>/1-D Lookup Table4'
|
||||
* '<S837>/1-D Lookup Table5'
|
||||
* '<S1350>/1-D Lookup Table10'
|
||||
* '<S1350>/1-D Lookup Table11'
|
||||
* '<S1350>/1-D Lookup Table6'
|
||||
* '<S1350>/1-D Lookup Table7'
|
||||
* '<S1350>/1-D Lookup Table8'
|
||||
* '<S1350>/1-D Lookup Table9'
|
||||
* '<S1351>/1-D Lookup Table10'
|
||||
* '<S1351>/1-D Lookup Table11'
|
||||
* '<S1351>/1-D Lookup Table6'
|
||||
* '<S1351>/1-D Lookup Table7'
|
||||
* '<S1351>/1-D Lookup Table8'
|
||||
* '<S1351>/1-D Lookup Table9'
|
||||
* '<S1394>/1-D Lookup Table10'
|
||||
* '<S1394>/1-D Lookup Table11'
|
||||
* '<S1394>/1-D Lookup Table6'
|
||||
* '<S1394>/1-D Lookup Table7'
|
||||
* '<S1394>/1-D Lookup Table8'
|
||||
* '<S1394>/1-D Lookup Table9'
|
||||
* '<S1395>/1-D Lookup Table1'
|
||||
* '<S1395>/1-D Lookup Table12'
|
||||
* '<S1395>/1-D Lookup Table2'
|
||||
* '<S1395>/1-D Lookup Table3'
|
||||
* '<S1395>/1-D Lookup Table4'
|
||||
* '<S1395>/1-D Lookup Table5'
|
||||
*/
|
||||
{ 170U, 180U, 190U, 200U, 210U, 220U, 230U, 240U, 250U, 260U, 270U, 280U, 290U
|
||||
},
|
||||
|
||||
/* Pooled Parameter (Expression: [0:4:4092])
|
||||
* Referenced by:
|
||||
* '<S436>/1-D Lookup Table'
|
||||
* '<S437>/1-D Lookup Table'
|
||||
* '<S453>/1-D Lookup Table'
|
||||
* '<S706>/1-D Lookup Table2'
|
||||
* '<S707>/1-D Lookup Table4'
|
||||
* '<S708>/1-D Lookup Table1'
|
||||
* '<S709>/1-D Lookup Table3'
|
||||
* '<S986>/1-D Lookup Table'
|
||||
* '<S987>/1-D Lookup Table'
|
||||
* '<S1003>/1-D Lookup Table'
|
||||
* '<S1256>/1-D Lookup Table2'
|
||||
* '<S1257>/1-D Lookup Table4'
|
||||
* '<S1258>/1-D Lookup Table1'
|
||||
* '<S1259>/1-D Lookup Table3'
|
||||
*/
|
||||
{ 0U, 4U, 8U, 12U, 16U, 20U, 24U, 28U, 32U, 36U, 40U, 44U, 48U, 52U, 56U, 60U,
|
||||
64U, 68U, 72U, 76U, 80U, 84U, 88U, 92U, 96U, 100U, 104U, 108U, 112U, 116U,
|
||||
|
|
@ -1047,87 +1047,103 @@ const ConstP rtConstP = {
|
|||
4080U, 4084U, 4088U, 4092U },
|
||||
|
||||
/* Computed Parameter: uDLookupTable1_bp01Data
|
||||
* Referenced by: '<S1034>/1-D Lookup Table1'
|
||||
* Referenced by: '<S1532>/1-D Lookup Table1'
|
||||
*/
|
||||
{ 10U, 50U },
|
||||
|
||||
/* Computed Parameter: ACT1_Value
|
||||
* Referenced by: '<S1161>/ACT1'
|
||||
* Referenced by: '<S1747>/ACT1'
|
||||
*/
|
||||
{ 1050U, 1250U, 1175U, 1195U, 1315U, 1300U, 1485U, 1440U, 1195U },
|
||||
|
||||
/* Computed Parameter: ACT1_Value_c
|
||||
* Referenced by: '<S1231>/ACT1'
|
||||
* Referenced by: '<S1817>/ACT1'
|
||||
*/
|
||||
{ 1225U, 1320U, 1270U, 1540U, 1480U, 1175U },
|
||||
|
||||
/* Computed Parameter: ACT1_Value_m
|
||||
* Referenced by: '<S1302>/ACT1'
|
||||
* Referenced by: '<S1888>/ACT1'
|
||||
*/
|
||||
{ 3075U, 3075U, 1605U, 1840U, 1650U, 1635U, 1820U, 1650U },
|
||||
|
||||
/* Pooled Parameter (Expression: [1:7])
|
||||
* Referenced by:
|
||||
* '<S275>/1-D Lookup Table3'
|
||||
* '<S275>/1-D Lookup Table4'
|
||||
* '<S275>/1-D Lookup Table5'
|
||||
*/
|
||||
{ 1U, 2U, 3U, 4U, 5U, 6U, 7U },
|
||||
|
||||
/* Pooled Parameter (Expression: [0:7])
|
||||
* Referenced by:
|
||||
* '<S275>/1-D Lookup Table'
|
||||
* '<S275>/1-D Lookup Table1'
|
||||
* '<S275>/1-D Lookup Table2'
|
||||
*/
|
||||
{ 0U, 1U, 2U, 3U, 4U, 5U, 6U, 7U },
|
||||
|
||||
/* Pooled Parameter (Expression: [10:10:110])
|
||||
* Referenced by:
|
||||
* '<S279>/1-D Lookup Table1'
|
||||
* '<S279>/1-D Lookup Table2'
|
||||
* '<S281>/1-D Lookup Table'
|
||||
* '<S281>/1-D Lookup Table2'
|
||||
* '<S282>/1-D Lookup Table1'
|
||||
* '<S282>/1-D Lookup Table2'
|
||||
* '<S284>/1-D Lookup Table'
|
||||
* '<S284>/1-D Lookup Table1'
|
||||
* '<S284>/1-D Lookup Table2'
|
||||
* '<S285>/1-D Lookup Table1'
|
||||
* '<S285>/1-D Lookup Table2'
|
||||
* '<S287>/1-D Lookup Table'
|
||||
* '<S286>/1-D Lookup Table'
|
||||
* '<S286>/1-D Lookup Table2'
|
||||
* '<S287>/1-D Lookup Table1'
|
||||
* '<S287>/1-D Lookup Table2'
|
||||
* '<S292>/1-D Lookup Table1'
|
||||
* '<S289>/1-D Lookup Table'
|
||||
* '<S289>/1-D Lookup Table2'
|
||||
* '<S290>/1-D Lookup Table1'
|
||||
* '<S290>/1-D Lookup Table2'
|
||||
* '<S292>/1-D Lookup Table'
|
||||
* '<S292>/1-D Lookup Table2'
|
||||
* '<S294>/1-D Lookup Table'
|
||||
* '<S294>/1-D Lookup Table2'
|
||||
* '<S295>/1-D Lookup Table1'
|
||||
* '<S295>/1-D Lookup Table2'
|
||||
* '<S297>/1-D Lookup Table'
|
||||
* '<S297>/1-D Lookup Table1'
|
||||
* '<S297>/1-D Lookup Table2'
|
||||
* '<S298>/1-D Lookup Table1'
|
||||
* '<S298>/1-D Lookup Table2'
|
||||
* '<S300>/1-D Lookup Table'
|
||||
* '<S299>/1-D Lookup Table'
|
||||
* '<S299>/1-D Lookup Table2'
|
||||
* '<S300>/1-D Lookup Table1'
|
||||
* '<S300>/1-D Lookup Table2'
|
||||
* '<S302>/1-D Lookup Table'
|
||||
* '<S302>/1-D Lookup Table2'
|
||||
* '<S303>/1-D Lookup Table1'
|
||||
* '<S303>/1-D Lookup Table2'
|
||||
* '<S305>/1-D Lookup Table'
|
||||
* '<S305>/1-D Lookup Table2'
|
||||
*/
|
||||
{ 10U, 20U, 30U, 40U, 50U, 60U, 70U, 80U, 90U, 100U, 110U },
|
||||
|
||||
/* Pooled Parameter (Expression: [1 2 3 4 5 6 7 8 9])
|
||||
* Referenced by:
|
||||
* '<S1143>/Constant3'
|
||||
* '<S1192>/Constant5'
|
||||
* '<S1263>/Constant5'
|
||||
* '<S1334>/Constant5'
|
||||
* '<S1187>/Constant5'
|
||||
* '<S1257>/Constant5'
|
||||
* '<S1328>/Constant5'
|
||||
* '<S1729>/Constant3'
|
||||
* '<S1778>/Constant5'
|
||||
* '<S1849>/Constant5'
|
||||
* '<S1920>/Constant5'
|
||||
* '<S1773>/Constant5'
|
||||
* '<S1843>/Constant5'
|
||||
* '<S1914>/Constant5'
|
||||
*/
|
||||
{ 1U, 2U, 3U, 4U, 5U, 6U, 7U, 8U, 9U },
|
||||
|
||||
/* Computed Parameter: Constant3_Value
|
||||
* Referenced by: '<S1213>/Constant3'
|
||||
* Referenced by: '<S1799>/Constant3'
|
||||
*/
|
||||
{ 1U, 2U, 3U, 4U, 5U, 6U },
|
||||
|
||||
/* Computed Parameter: Constant3_Value_d
|
||||
* Referenced by: '<S1284>/Constant3'
|
||||
* Referenced by: '<S1870>/Constant3'
|
||||
*/
|
||||
{ 1U, 2U, 3U, 4U, 5U, 6U, 7U, 8U },
|
||||
|
||||
/* Pooled Parameter (Expression: )
|
||||
* Referenced by:
|
||||
* '<S30>/Âûáîð ðåæèìà Left'
|
||||
* '<S30>/Âûáîð ðåæèìà Right'
|
||||
* '<S34>/Âûáîð ðåæèìà Left'
|
||||
* '<S34>/Âûáîð ðåæèìà Right'
|
||||
*/
|
||||
{ 0U, 1U, 2U, 3U, 4U, 5U },
|
||||
|
||||
/* Pooled Parameter (Expression: [0:6])
|
||||
* Referenced by:
|
||||
* '<S273>/1-D Lookup Table'
|
||||
* '<S274>/1-D Lookup Table'
|
||||
* '<S278>/1-D Lookup Table'
|
||||
* '<S279>/1-D Lookup Table'
|
||||
*/
|
||||
{ 0U, 1U, 2U, 3U, 4U, 5U, 6U }
|
||||
};
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@
|
|||
*
|
||||
* Code generated for Simulink model 'HVAC_model'.
|
||||
*
|
||||
* Model version : 1.1397
|
||||
* Model version : 1.1446
|
||||
* Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
|
||||
* C/C++ source code generated on : Fri Jul 17 14:49:32 2026
|
||||
* C/C++ source code generated on : Mon Jul 27 16:34:24 2026
|
||||
*
|
||||
* Target selection: ert.tlc
|
||||
* Embedded hardware selection: ARM Compatible->ARM Cortex-M
|
||||
|
|
@ -78,6 +78,10 @@ extern int8_t look1_iu8lu64n56ts8Ds16_binlcs(uint8_t u0, const uint8_t bp0[],
|
|||
const int8_t table[], uint32_t maxIndex);
|
||||
extern int16_t look1_iu8lu64n48ts16Ds32_binlcs(uint8_t u0, const uint8_t bp0[],
|
||||
const int16_t table[], uint32_t maxIndex);
|
||||
extern int16_t look1_is16lu64n32tu16Ds32Is16_binlcs(int16_t u0, const int16_t
|
||||
bp0[], const uint16_t table[], uint32_t maxIndex);
|
||||
extern uint32_t binsearch_u32s16(int16_t u_5, const int16_t bp[], uint32_t
|
||||
startIndex, uint32_t maxIndex);
|
||||
extern int16_t look1_is16lu64n32Ds32_binlcs(int16_t u0, const int16_t bp0[],
|
||||
const int16_t table[], uint32_t maxIndex);
|
||||
extern int16_t look1_is16lu64n32tu8Ds16Is16_binlcs(int16_t u0, const int16_t
|
||||
|
|
@ -99,12 +103,12 @@ extern int16_t look1_iu16bs16lu64n32ts16Ds32_binlcs(uint16_t u0, const int16_t
|
|||
bp0[], const int16_t table[], uint32_t maxIndex);
|
||||
extern double look1_bs16ts16DdId_binlc(double u0, const int16_t bp0[], const
|
||||
int16_t table[], uint32_t maxIndex);
|
||||
extern uint8_t look1_iu8lu64n56_binlcse(uint8_t u0, const uint8_t bp0[], const
|
||||
uint8_t table[], uint32_t maxIndex);
|
||||
extern double look1_iu16td_binlc(uint16_t u0, const uint16_t bp0[], const double
|
||||
table[], uint32_t maxIndex);
|
||||
extern uint32_t plook_u32s16_bincka(int16_t u_2, const int16_t bp[], uint32_t
|
||||
extern uint32_t plook_u32s16_bincka(int16_t u_6, const int16_t bp[], uint32_t
|
||||
maxIndex);
|
||||
extern uint32_t binsearch_u32s16(int16_t u_3, const int16_t bp[], uint32_t
|
||||
startIndex, uint32_t maxIndex);
|
||||
extern int32_t div_nzp_s32_round(int32_t numerator, int32_t denominator);
|
||||
extern void get_tg_FLL_for_LVL(uint8_t rtu_ambient_Lvl, uint8_t rtu_set_tmp,
|
||||
int16_t *rty_vals);
|
||||
|
|
@ -142,6 +146,136 @@ extern void IfActionSubsystem_n(uint8_t rtu_In1, int8_t *rty_Out1, int16_t
|
|||
*rty_Out2);
|
||||
extern void IfActionSubsystem2_c(uint8_t rtu_In1, int8_t *rty_Out1, int16_t
|
||||
*rty_Out2);
|
||||
extern void g_assSTART_ENTER_INCAR_n(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void Level2(int8_t *rty_step);
|
||||
extern void g_assSTART_ENTER_COOLANT_m(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void Level4(int8_t *rty_step1, const uint8_t *rtd_CCU_MODE_FL, const
|
||||
int16_t *rtd_ECT, const uint8_t *rtd_LEVEL, const uint8_t
|
||||
*rtd_LO_HI_MODE_FL);
|
||||
extern void Level0(int8_t *rty_step);
|
||||
extern void incarfilterdown(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void incarfilterup(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void g_assSTART_COOLANT_STEP0_TO_1_c(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void uwayvalvestatus(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Dtg_FrontLower_X(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Dtg_FrontUpper_X(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Incartempgotofromstep1tostep2(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void MATLABFunction1_Init(DW_MATLABFunction1 *localDW);
|
||||
extern void MATLABFunction1(uint32_t rtu_t_now, uint16_t rtu_time_delta, bool
|
||||
*rty_timer_out, DW_MATLABFunction1 *localDW);
|
||||
extern void blowerFR(uint8_t rtu_LVL, uint16_t *rty_out);
|
||||
extern void modeFRstep1(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void windowheating(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void MATLABFunction1_a_Init(DW_MATLABFunction1_f *localDW);
|
||||
extern void MATLABFunction1_j(uint32_t rtu_t_now, uint32_t rtu_time_delta, bool *
|
||||
rty_timer_out, DW_MATLABFunction1_f *localDW);
|
||||
extern void Timegotofromstep1tostep2(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void ECTminmax(uint8_t rtu_LVL, int16_t rty_out[2]);
|
||||
extern void blowerminmax(uint8_t rtu_LVL, uint16_t rty_out[2]);
|
||||
extern void uwayvalvestatus_m(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void timeforstep(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void timeforstep_d(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Timegotofromstep2tostep3(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void blowerstep(uint8_t rtu_LVL, uint16_t *rty_out);
|
||||
extern void blowertimeforstep(uint8_t rtu_LVL, uint16_t *rty_out);
|
||||
extern void step_g(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void timeforstep_f(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void windowheating_o(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void autodemistautodefog(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Level3_Init(DW_Level3 *localDW);
|
||||
extern void Level3(int8_t *rty_step, uint8_t *rtd_Autodefog, uint8_t
|
||||
*rtd_Blower_FL, uint8_t *rtd_Blower_FR, const uint8_t
|
||||
*rtd_Blower_logic_FL, const uint8_t *rtd_CCU_MODE_FL,
|
||||
uint16_t *rtd_Dtg_FLL, uint16_t *rtd_Dtg_FLR, uint16_t
|
||||
*rtd_Dtg_FUL, uint16_t *rtd_Dtg_FUR, const int16_t
|
||||
*rtd_Dtg_logic_FLL, const int16_t *rtd_Dtg_logic_FUL, uint8_t
|
||||
*rtd_El_window_heating, const bool *rtd_HI_logic_on, uint8_t *
|
||||
rtd_Incar_filter_down_value, uint8_t
|
||||
*rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, const
|
||||
uint8_t *rtd_LO_HI_MODE_FL, uint8_t *rtd_Mode_FL, uint8_t
|
||||
*rtd_Mode_FR, const uint8_t *rtd_Mode_logic_FL, double
|
||||
*rtd_Recirculation, uint8_t *rtd_Valve_3_way, const uint32_t *
|
||||
rtd_t_now, DW_Level3 *localDW);
|
||||
extern void Step3F(int8_t *rty_step, int8_t *rtd_start_control_finished_front);
|
||||
extern void g_ausSTART_ENTER_SETTEMP_i(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void g_assSTART_ENTER_INCAR_f(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void g_assSTART_ENTER_COOLANT_m1(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void Level4_j(int8_t *rty_step1, const uint8_t *rtd_CCU_MODE_RR, const
|
||||
int16_t *rtd_ECT, const int16_t *rtd_Incar_RR, const
|
||||
uint8_t *rtd_LEVEL, const uint8_t *rtd_LO_HI_MODE_RR);
|
||||
extern void incarfilterdown_m(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void incarfilterup_j(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void g_assSTART_COOLANT_STEP0_TO_1_j(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void Level4_h(int8_t *rty_step1, uint8_t *rtd_Blower_RL, uint8_t
|
||||
*rtd_Blower_RR, const uint8_t *rtd_CCU_MODE_RR, uint16_t
|
||||
*rtd_Dtg_RL, uint16_t *rtd_Dtg_RR, const int16_t *rtd_ECT,
|
||||
uint8_t *rtd_Incar_filter_down_value, uint8_t
|
||||
*rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, const
|
||||
uint8_t *rtd_LO_HI_MODE_RR, uint8_t *rtd_Mode_RL, uint8_t
|
||||
*rtd_Mode_RR, uint8_t *rtd_Valve_2_way, uint8_t
|
||||
*rtd_Valve_3_way);
|
||||
extern void uwayvalve(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Dtg_rear(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Incartempgotofromstep1tostep2_m(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void Timegotofromstep1tostep2_n(uint8_t rtu_LVL, int16_t *rty_out);
|
||||
extern void moderearstep1(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Level0_c_Init(DW_Level0_h *localDW);
|
||||
extern void Level0_g(int8_t *rty_step, uint8_t *rtd_Blower_RL, uint8_t
|
||||
*rtd_Blower_RR, const uint8_t *rtd_CCU_MODE_RR, uint16_t
|
||||
*rtd_Dtg_RL, uint16_t *rtd_Dtg_RR, const int16_t
|
||||
*rtd_Incar_RR, uint8_t *rtd_Incar_filter_down_value,
|
||||
uint8_t *rtd_Incar_filter_up_value, const uint8_t
|
||||
*rtd_LEVEL, const uint8_t *rtd_LO_HI_MODE_RR, uint8_t
|
||||
*rtd_Mode_RL, uint8_t *rtd_Mode_RR, double
|
||||
*rtd_Recirculation, uint8_t *rtd_Valve_2_way, const
|
||||
uint32_t *rtd_t_now, DW_Level0_h *localDW);
|
||||
extern void blowerstartfinish(uint8_t rtu_LVL, uint16_t rty_out[2]);
|
||||
extern void ECTminmax_j(uint8_t rtu_LVL, int16_t rty_out[2]);
|
||||
extern void Level4_b_Init(DW_Level4_h *localDW);
|
||||
extern void Level4_m(int8_t *rty_step, uint8_t *rtd_Blower_RL, uint8_t
|
||||
*rtd_Blower_RR, const uint8_t *rtd_CCU_MODE_RR, uint16_t
|
||||
*rtd_Dtg_RL, uint16_t *rtd_Dtg_RR, const int16_t *rtd_ECT,
|
||||
const int16_t *rtd_Incar_RR, uint8_t
|
||||
*rtd_Incar_filter_down_value, uint8_t
|
||||
*rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, const
|
||||
uint8_t *rtd_LO_HI_MODE_RR, uint8_t *rtd_Mode_RL, uint8_t
|
||||
*rtd_Mode_RR, double *rtd_Recirculation, uint8_t
|
||||
*rtd_Valve_2_way, const uint32_t *rtd_t_now, DW_Level4_h
|
||||
*localDW);
|
||||
extern void timeforstep_k(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void blowerstep_c(uint8_t rtu_LVL, uint16_t *rty_out);
|
||||
extern void blowertimeforstep_k(uint8_t rtu_LVL, uint16_t *rty_out);
|
||||
extern void step_a(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void timeforstep_dm(uint8_t rtu_LVL, uint8_t *rty_out);
|
||||
extern void Level0_h_Init(DW_Level0_hr *localDW);
|
||||
extern void Level0_a(int8_t *rty_step, uint8_t *rtd_Blower_RL, uint8_t
|
||||
*rtd_Blower_RR, const uint16_t *rtd_Blower_logic_RR, const
|
||||
uint8_t *rtd_CCU_MODE_FL, uint16_t *rtd_Dtg_RL, uint16_t
|
||||
*rtd_Dtg_RR, const int16_t *rtd_Dtg_logic_RR, uint8_t
|
||||
*rtd_Incar_filter_down_value, uint8_t
|
||||
*rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, const
|
||||
uint8_t *rtd_LO_HI_MODE_FL, uint8_t *rtd_Mode_RL, uint8_t
|
||||
*rtd_Mode_RR, const uint8_t *rtd_Mode_logic_RR, double
|
||||
*rtd_Recirculation, uint8_t *rtd_Valve_2_way, const
|
||||
uint32_t *rtd_t_now, DW_Level0_hr *localDW);
|
||||
extern void Level2_j_Init(DW_Level2_j *localDW);
|
||||
extern void Level2_f(int8_t *rty_step, uint8_t *rtd_Blower_RL, uint8_t
|
||||
*rtd_Blower_RR, const uint16_t *rtd_Blower_logic_RR, const
|
||||
uint8_t *rtd_CCU_MODE_FL, uint16_t *rtd_Dtg_RL, uint16_t
|
||||
*rtd_Dtg_RR, const int16_t *rtd_Dtg_logic_RR, const bool
|
||||
*rtd_HI_logic_on, uint8_t *rtd_Incar_filter_down_value,
|
||||
uint8_t *rtd_Incar_filter_up_value, const uint8_t
|
||||
*rtd_LEVEL, const uint8_t *rtd_LO_HI_MODE_FL, uint8_t
|
||||
*rtd_Mode_RL, uint8_t *rtd_Mode_RR, const uint8_t
|
||||
*rtd_Mode_logic_RR, double *rtd_Recirculation, uint8_t
|
||||
*rtd_Valve_2_way, const uint32_t *rtd_t_now, DW_Level2_j
|
||||
*localDW);
|
||||
extern void funcg_assAUTO_STEP_DUCT_TG_U(uint8_t rtu_LVL, double rtu_AF_STEP,
|
||||
int16_t *rty_y);
|
||||
extern void funcg_assAUTO_STEP_DUCT_TG_L(uint8_t rtu_LVL, double rtu_AF_STEP,
|
||||
int16_t *rty_y);
|
||||
extern void funcg_assAUTO_STEP_DUCT_TG_R(uint8_t rtu_LVL, double rtu_AF_STEP,
|
||||
int16_t *rty_y);
|
||||
extern void correctionrate(int16_t rtu_SET, uint8_t rtu_LVL, int16_t *rty_y);
|
||||
extern void is_ending_with_5(uint16_t rtu_SET, bool *rty_is_ending_with_5);
|
||||
extern void u(uint8_t rtu_lvl, uint16_t *rty_f_g_ausINCARRATE_FALLING_F);
|
||||
|
|
@ -175,13 +309,8 @@ extern void g_ausINCARRATE_RISING_DIFF_R8(uint16_t
|
|||
extern void INCARRATE_RISING_DIFF_R7(uint16_t
|
||||
*rty_f_g_ausINCARRATE_RISING_DIFF_R);
|
||||
extern void u_b3(uint8_t rtu_lvl, uint16_t *rty_out);
|
||||
extern void Zone_Climate_Logic_Auto_FL1_Init(uint8_t *rty_out_def, uint8_t
|
||||
*rty_out_face, uint8_t *rty_out_foot, uint8_t *rty_out_auto, double
|
||||
*rty_out_ac, DW_Zone_Climate_Logic_Auto_FL1 *localDW);
|
||||
extern void Zone_Climate_Logic_Auto_FL1(uint8_t rtu_btn_def, uint8_t
|
||||
rtu_btn_face, uint8_t rtu_btn_foot, uint8_t rtu_btn_auto, uint8_t rtu_btn_ac,
|
||||
uint8_t *rty_out_def, uint8_t *rty_out_face, uint8_t *rty_out_foot, uint8_t
|
||||
*rty_out_auto, double *rty_out_ac, DW_Zone_Climate_Logic_Auto_FL1 *localDW);
|
||||
extern void directionforfrontindexmode(uint8_t rtu_index_mode, double rty_Y[4]);
|
||||
extern void directionforREARindexmode(uint16_t rtu_index_mode, double rty_Y[4]);
|
||||
extern void Zone_Climate_Logic_Auto_FL2_Init(uint8_t *rty_out_def, uint8_t
|
||||
*rty_out_face, uint8_t *rty_out_foot, uint8_t *rty_out_auto, double
|
||||
*rty_out_ac, DW_Zone_Climate_Logic_Auto_FL2 *localDW);
|
||||
|
|
@ -198,7 +327,7 @@ extern void AFforTriLevel(uint8_t rtu_blower_speed, uint16_t *rty_out);
|
|||
extern void AFforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out);
|
||||
extern void RearLeftAFmanualdirections(bool rtu_Enable, uint8_t rtu_blowerspeed,
|
||||
uint8_t rtu_faceison, uint8_t rtu_footison, uint16_t *rty_AFout);
|
||||
extern void funcg_ascAUTO_STEP_AF_F(int8_t rtu_AF_STEP, int8_t *rty_y);
|
||||
extern void funcg_ascAUTO_STEP_AF_F(double rtu_AF_STEP, int8_t *rty_y);
|
||||
extern void u_m2(int16_t rtu_lvl, uint8_t *rty_f_g_aucAMBRATE_FALLING);
|
||||
extern void u_kb(int16_t rtu_amb_raw, int16_t rtu_lvl, uint8_t *rty_out, const
|
||||
double *rtd_AMB_store, double *rtd_KEEP_FALLING_UNTIL_LIMIT);
|
||||
|
|
@ -231,12 +360,12 @@ extern void increase(int16_t rtu_duct_tg, const uint16_t rtu_mode_array[7],
|
|||
uint16_t *rty_y);
|
||||
extern void decrease(int16_t rtu_duct_tg, const uint16_t rtu_mode_array[7],
|
||||
uint16_t *rty_y);
|
||||
extern void valves_rear_left_d(uint16_t rtu_MODE, uint16_t rty_get_valves[6]);
|
||||
extern void valves_rear_left_h(uint16_t rtu_MODE, uint16_t rty_get_valves[6]);
|
||||
extern void ValvesforBiLevel(uint16_t rty_out[9]);
|
||||
extern void ValvesforFootDef(uint16_t rty_out[9]);
|
||||
extern void ValvesforHi_Level(uint16_t rty_out[9]);
|
||||
extern void ValvesforTriLevel(uint16_t rty_out[9]);
|
||||
extern void AFforBiLevel_a(uint16_t rty_out[6]);
|
||||
extern void AFforBiLevel_b(uint16_t rty_out[6]);
|
||||
extern void valvesforVentmode(uint16_t rty_out[6]);
|
||||
|
||||
#endif /* HVAC_model_private_h_ */
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@
|
|||
*
|
||||
* Code generated for Simulink model 'HVAC_model'.
|
||||
*
|
||||
* Model version : 1.1397
|
||||
* Model version : 1.1446
|
||||
* Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
|
||||
* C/C++ source code generated on : Fri Jul 17 14:49:32 2026
|
||||
* C/C++ source code generated on : Mon Jul 27 16:34:24 2026
|
||||
*
|
||||
* Target selection: ert.tlc
|
||||
* Embedded hardware selection: ARM Compatible->ARM Cortex-M
|
||||
|
|
@ -637,18 +637,50 @@ typedef struct {
|
|||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT1_WakeUp_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT1_WakeUp_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t CCU_ModeFL_Stat;
|
||||
uint8_t CCU_ModeFR_Stat;
|
||||
uint8_t CCU_ModeRL_Stat;
|
||||
uint8_t CCU_ModeRR_Stat;
|
||||
uint8_t CCU_AutoModeFL_Stat;
|
||||
uint8_t CCU_AutoModeFR_Stat;
|
||||
uint8_t CCU_AirDirectionRL_Face_Stat;
|
||||
uint8_t CCU_AirDirectionRL_Foot_Stat;
|
||||
uint8_t CCU_AutoModeRL_Stat;
|
||||
uint8_t CCU_AutoModeRR_Stat;
|
||||
uint8_t CCU_AirDirectionRR_Face_Stat;
|
||||
uint8_t CCU_AirDirectionRR_Foot_Stat;
|
||||
uint8_t CCU_AirDirectionFL_Def_Stat;
|
||||
uint8_t CCU_AirDirectionFL_Face_Stat;
|
||||
uint8_t CCU_AirDirectionFL_Foot_Stat;
|
||||
uint8_t CCU_AirDirectionFR_Def_Stat;
|
||||
uint8_t CCU_AirDirectionFR_Face_Stat;
|
||||
uint8_t CCU_AirDirectionFR_Foot_Stat;
|
||||
uint8_t CCU_Recirculation_Stat;
|
||||
uint8_t CCU_BlowerSpeedFL_Stat;
|
||||
uint8_t CCU_TargetTempFL_Stat_ro;
|
||||
uint8_t CCU_BlowerSpeedFR_Stat;
|
||||
uint8_t CCU_TargetTempFR_Stat_ro;
|
||||
uint8_t CCU_BlowerSpeedRL_Stat;
|
||||
uint8_t CCU_TargetTempRR_Stat_ro;
|
||||
uint8_t CCU_BlowerSpeedRR_Stat;
|
||||
uint8_t CCU_TargetTempRL_Stat_ro;
|
||||
} CmdCAN_CCU_STAT1_WakeUp_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_LIN5_SENSON_ADR_Stat_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_LIN5_SENSON_ADR_Stat_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t DRS_DL_Stat;
|
||||
uint8_t DRS_DR_Stat;
|
||||
uint8_t DRS_FPL_Stat;
|
||||
uint8_t DRS_FPR_Stat;
|
||||
uint8_t DRS_RLB_Stat;
|
||||
uint8_t DRS_RRB_Stat;
|
||||
uint8_t DRS_FCL_Stat;
|
||||
uint8_t DRS_FCR_Stat;
|
||||
uint8_t in_COUNT[8];
|
||||
uint8_t in_error_connect[8];
|
||||
uint8_t LinRespErr_Stat[8];
|
||||
uint8_t Err_Stat[8];
|
||||
uint8_t Error_Connect;
|
||||
} LIN5_SENSON_ADR_Stat_Bus;
|
||||
|
||||
#endif
|
||||
|
|
@ -903,6 +935,143 @@ typedef struct {
|
|||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_CCUCAN_OCURR_MSG_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_CCUCAN_OCURR_MSG_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t OCURR_OccupantWeight_Stat;
|
||||
uint8_t OCURR_SeatOccupied_Stat;
|
||||
uint8_t OCURR_SensorError_Stat;
|
||||
uint8_t OCURR_MSG_RC;
|
||||
uint8_t OCURR_MSG_CS;
|
||||
} CCUCAN_OCURR_MSG_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_LIN4_ERROR_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_LIN4_ERROR_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t in_error_connect[7];
|
||||
uint8_t Error_Connect;
|
||||
} LIN4_ERROR_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT3_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT3_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t CCU_AromaCartridgeCapacity_Stat_ro;
|
||||
uint8_t CCU_AromaCartridgeFlavor_Stat;
|
||||
uint8_t CCU_AromaFaultReason_Stat;
|
||||
uint8_t CCU_RLfootBlowDis_Stat;
|
||||
uint8_t CCU_RRfootBlowDis_Stat;
|
||||
uint8_t CCU_RestMode2_Stat;
|
||||
} CmdCAN_CCU_STAT3_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_dbg_LIN_Ionizer_Stat_t_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_dbg_LIN_Ionizer_Stat_t_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t LIN_Ionizer_Err_Stat;
|
||||
uint8_t LIN_Ionizer_LinRespErr;
|
||||
uint8_t LIN_Ionizer_Ionization;
|
||||
} dbg_LIN_Ionizer_Stat_t_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_dbg_LIN_Aroma_Stat_t_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_dbg_LIN_Aroma_Stat_t_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t LIN_AromaLinRespErr_Stat;
|
||||
uint8_t LIN_Aroma_1CartridgeSw;
|
||||
uint8_t LIN_Aroma_2CartridgeSw;
|
||||
uint8_t LIN_Aroma_3CartridgeSw;
|
||||
uint8_t LIN_Aroma_Error_Stat;
|
||||
uint8_t LIN_Aroma_Intens;
|
||||
uint8_t LIN_Aroma_CartridgeSel;
|
||||
uint8_t LIN_Aroma_1CartridgeFlavor;
|
||||
uint8_t LIN_Aroma_2CartridgeFlavor;
|
||||
uint8_t LIN_Aroma_3CartridgeFlavor;
|
||||
uint8_t LIN_Aroma_1CartridgeCapacity;
|
||||
uint8_t LIN_Aroma_2CartridgeCapacity;
|
||||
uint8_t LIN_Aroma_3CartridgeCapacity;
|
||||
} dbg_LIN_Aroma_Stat_t_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT2_WakeUp_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT2_WakeUp_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t CCU_AromaCartridgeSw_Stat;
|
||||
uint8_t CCU_FrontZoneSync_Stat;
|
||||
uint8_t CCU_RearZoneSync_Stat;
|
||||
uint8_t CCU_AllZoneSync_Stat;
|
||||
uint8_t CCU_ACfront_Stat;
|
||||
uint8_t CCU_ACrear_Stat;
|
||||
uint8_t CCU_ACmaxF_Stat;
|
||||
uint8_t CCU_ACmaxR_Stat;
|
||||
uint8_t CCU_Defrost_Stat;
|
||||
uint8_t CCU_Ionization_Stat;
|
||||
uint8_t CCU_FootTempCorFL_Stat;
|
||||
uint8_t CCU_FootTempCorFR_Stat;
|
||||
uint8_t CCU_AromaIntens_Stat;
|
||||
uint8_t CCU_FootTempCorRL_Stat;
|
||||
uint8_t CCU_FootTempCorRR_Stat;
|
||||
uint8_t CCU_DeflectorSwDL_Stat;
|
||||
uint8_t CCU_DeflectorSwDR_Stat;
|
||||
uint8_t CCU_DeflectorSwFPL_Stat;
|
||||
uint8_t CCU_DeflectorSwFPR_Stat;
|
||||
uint8_t CCU_DeflectorSwFCL_Stat;
|
||||
uint8_t CCU_DeflectorSwFCR_Stat;
|
||||
uint8_t CCU_DeflectorSwRLB_Stat;
|
||||
uint8_t CCU_DeflectorSwRRB_Stat;
|
||||
} CmdCAN_CCU_STAT2_WakeUp_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT3_WakeUp_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_CmdCAN_CCU_STAT3_WakeUp_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t CCU_AromaCartridgeCapacity_Stat_ro;
|
||||
uint8_t CCU_AromaCartridgeFlavor_Stat;
|
||||
uint8_t CCU_AromaFaultReason_Stat;
|
||||
uint8_t CCU_RLfootBlowDis_Stat;
|
||||
uint8_t CCU_RRfootBlowDis_Stat;
|
||||
uint8_t CCU_RestMode2_Stat;
|
||||
} CmdCAN_CCU_STAT3_WakeUp_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_CCU_Msg1_WakeUp_Bus_
|
||||
#define DEFINED_TYPEDEF_FOR_CCU_Msg1_WakeUp_Bus_
|
||||
|
||||
typedef struct {
|
||||
uint8_t CCU_MirrorHeating_Req;
|
||||
uint8_t CCU_RecirculationLed_Cmd;
|
||||
uint8_t CCU_DefrostLed_Req;
|
||||
uint8_t CCU_SideWindowHeating_Req;
|
||||
uint8_t CCU_RearWindowHeating_Req;
|
||||
uint8_t CCU_FrontWindowHeating_Req;
|
||||
uint8_t CCU_EmergAirCleaning_Stat;
|
||||
uint8_t CCU_FireExtinguishSys_Stat;
|
||||
uint8_t CCU_FLAutoPsngrLed_Cmd;
|
||||
uint8_t CCU_FRAutoPsngrLed_Cmd;
|
||||
uint8_t CCU_RLAutoPsngrLed_Cmd;
|
||||
uint8_t CCU_RRAutoPsngrLed_Cmd;
|
||||
uint8_t CCU_AC_MaxLed_Cmd;
|
||||
uint8_t CCU_MSG1_RC;
|
||||
uint8_t CCU_MSG1_CS;
|
||||
} CCU_Msg1_WakeUp_Bus;
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef DEFINED_TYPEDEF_FOR_CmdBusADCData_
|
||||
#define DEFINED_TYPEDEF_FOR_CmdBusADCData_
|
||||
|
||||
|
|
|
|||
214
Model_Task.c
214
Model_Task.c
|
|
@ -7,6 +7,7 @@
|
|||
#include "HVAC_model.h"
|
||||
#include "memory.h"
|
||||
#include "SystemDelayInterface.h"
|
||||
#include "fc7xxx_driver_smc.h"
|
||||
|
||||
#define LOG_SIGN "ModelTask"
|
||||
#define LOGGER env->logger
|
||||
|
|
@ -75,8 +76,8 @@ void ModelTask_Init(
|
|||
|
||||
env->canUds = canUds;
|
||||
|
||||
env->adc0Task = adc0Task;
|
||||
env->adc1Task = adc1Task;
|
||||
env->adc0Task = adc0Task;
|
||||
env->adc1Task = adc1Task;
|
||||
|
||||
env->canSpamReceiver = canSpamReceiver;
|
||||
env->canSpamTransmitter = canSpamTransmitter;
|
||||
|
|
@ -275,18 +276,34 @@ static bool setActuatorBusy(tModelTask *env) {
|
|||
return false;
|
||||
}
|
||||
|
||||
__attribute__((section(".nchache_save_data"))) volatile CCU_Stat1_t CCU_STAT1_MODEL_SAVE;
|
||||
__attribute__((section(".nchache_save_data"))) volatile CCU_Stat2_t CCU_STAT2_MODEL_SAVE;
|
||||
__attribute__((section(".nchache_save_data"))) volatile CCU_Stat3_t CCU_STAT3_MODEL_SAVE;
|
||||
__attribute__((section(".nchache_save_data"))) volatile CCU_Msg1_t CCU_MSG1_MODEL_SAVE;
|
||||
|
||||
#define SLEEP_TIME 3000
|
||||
|
||||
static _Noreturn void ModelTask_Thread(tModelTask *env) {
|
||||
bool TwoWayValve_EN;
|
||||
bool EN_BATTChiller;
|
||||
bool Incar_Motor_Front_EN ;
|
||||
bool Incar_Motor_Rear_EN;
|
||||
bool ShutOffFront_EN;
|
||||
bool ShutOffRear_EN ;
|
||||
bool PtcRelayDriver1_EN;
|
||||
bool PtcRelayDriver2_EN;
|
||||
|
||||
memset((void *) &CCU_STAT1_MODEL_SAVE, 0, sizeof(env->ccu_candb_tx.CCU_Stat1));
|
||||
memset((void *) &CCU_STAT2_MODEL_SAVE, 0, sizeof(env->ccu_candb_tx.CCU_Stat2));
|
||||
memset((void *) &CCU_STAT3_MODEL_SAVE, 0, sizeof(env->ccu_candb_tx.CCU_Stat3));
|
||||
memset((void *) &CCU_MSG1_MODEL_SAVE, 0, sizeof(env->ccu_candb_tx.CCU_Msg1));
|
||||
|
||||
for (;;) {
|
||||
|
||||
if (GPIO_ReadPins((uint8_t) PORT_E, PORT_PIN_16)) {
|
||||
if (env->sleep_time == 0) {
|
||||
env->sleep_time = SystemGetMs() + SLEEP_TIME;
|
||||
}
|
||||
} else {
|
||||
env->sleep_time = 0;
|
||||
}
|
||||
|
||||
if ((env->sleep_time > 0) && (env->sleep_time < SystemGetMs())) {
|
||||
SMC_SetSystemMode(SMC_MODE_STANBY_3);
|
||||
}
|
||||
|
||||
if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
|
||||
//LoggerFormatError(LOGGER, LOG_SIGN, "Step END = %d", SystemGetMs())
|
||||
|
|
@ -296,14 +313,17 @@ static _Noreturn void ModelTask_Thread(tModelTask *env) {
|
|||
getCmdBusADCData(env->adc0Task, &rtDW.ADC_Data_Model);
|
||||
|
||||
|
||||
getCmdBusADC2Data(env->adc1Task, (CmdBusADC2Data *)&rtDW.ADC_Data_Model.VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB);
|
||||
getCmdBusADC2Data(env->adc1Task,
|
||||
(CmdBusADC2Data *) &rtDW.ADC_Data_Model.VN7008AJ_DIAG_FrontLINActuatorPowerDriverAB);
|
||||
|
||||
|
||||
//начало--------------------------------------------------PWM-----------------------------------------------------------
|
||||
PWM_Get.pwmPercentFront = env->pwms->pwmFrontCaptureIO.getPwm(env->pwms->pwmFrontCaptureIO.env);
|
||||
PWM_Get.pwmPercentRear = env->pwms->pwmRearCaptureIO.getPwm(env->pwms->pwmRearCaptureIO.env);
|
||||
PWM_Get.pwmPercentFrontReserved = env->pwms->pwmFrontCaptureIO.getPwm(env->pwms->pwmFrontReservedCaptureIO.env);
|
||||
PWM_Get.pwmPercentRearReserved = env->pwms->pwmRearCaptureIO.getPwm(env->pwms->pwmRearReservedCaptureIO.env);
|
||||
PWM_Get.pwmPercentFrontReserved = env->pwms->pwmFrontCaptureIO.getPwm(
|
||||
env->pwms->pwmFrontReservedCaptureIO.env);
|
||||
PWM_Get.pwmPercentRearReserved = env->pwms->pwmRearCaptureIO.getPwm(
|
||||
env->pwms->pwmRearReservedCaptureIO.env);
|
||||
|
||||
model_Status_Pwm_For_Model_input.Pwm_Front = PWM_Get.pwmPercentFront * 10;
|
||||
model_Status_Pwm_For_Model_input.Pwm_Rear = PWM_Get.pwmPercentRear * 10;
|
||||
|
|
@ -320,11 +340,14 @@ static _Noreturn void ModelTask_Thread(tModelTask *env) {
|
|||
model_Status_EMS_For_Model_input.EMS_Chiller_Req = rtDW.CCUCAN_EMS_HVC_REQ_MSG_MODEL.EMS_eCompChiller_Req;
|
||||
//конец--------------------------------------------------CAN------------------------------------------------------------
|
||||
|
||||
|
||||
Lin4_Output_Get_From_Model(env->lin4TaskSensor);
|
||||
Lin5_Output_Get_From_Model(env->lin5TaskSensor);
|
||||
|
||||
HVAC_model_step();
|
||||
|
||||
Lin5_Input_Set_From_Model(env->lin5TaskSensor);
|
||||
|
||||
CanUdsOutput_Get_Model(env->canUds);
|
||||
|
||||
setActuatorBusy(env);
|
||||
|
|
@ -336,109 +359,121 @@ static _Noreturn void ModelTask_Thread(tModelTask *env) {
|
|||
// Контроль напряжения борт-сети (1 - ВКЛ)
|
||||
GpioPinSet(&env->gpios->power.PBATT_CK_EN, rtY.PowerEnable_Model.PBATT_CK_EN);
|
||||
|
||||
TwoWayValve_EN = rtY.PowerEnable_Model.TwoWayValve_EN;
|
||||
EN_BATTChiller = rtY.PowerEnable_Model.EN_BATTChiller;
|
||||
Incar_Motor_Front_EN = rtY.PowerEnable_Model.Incar_Motor_Front_EN;
|
||||
Incar_Motor_Rear_EN = rtY.PowerEnable_Model.Incar_Motor_Rear_EN;
|
||||
ShutOffFront_EN = rtY.PowerEnable_Model.ShutOffFront_EN;
|
||||
ShutOffRear_EN = rtY.PowerEnable_Model.ShutOffRear_EN;
|
||||
PtcRelayDriver1_EN = rtY.PowerEnable_Model.PtcRelayDriver1_EN;
|
||||
PtcRelayDriver2_EN = rtY.PowerEnable_Model.PtcRelayDriver2_EN;
|
||||
env->TwoWayValve_EN = rtY.PowerEnable_Model.TwoWayValve_EN;
|
||||
env->EN_BATTChiller = rtY.PowerEnable_Model.EN_BATTChiller;
|
||||
env->Incar_Motor_Front_EN = rtY.PowerEnable_Model.Incar_Motor_Front_EN;
|
||||
env->Incar_Motor_Rear_EN = rtY.PowerEnable_Model.Incar_Motor_Rear_EN;
|
||||
env->ShutOffFront_EN = rtY.PowerEnable_Model.ShutOffFront_EN;
|
||||
env->ShutOffRear_EN = rtY.PowerEnable_Model.ShutOffRear_EN;
|
||||
env->PtcRelayDriver1_EN = rtY.PowerEnable_Model.PtcRelayDriver1_EN;
|
||||
env->PtcRelayDriver2_EN = rtY.PowerEnable_Model.PtcRelayDriver2_EN;
|
||||
|
||||
if (model_Status_Set_For_Model_output.IO == 1) {
|
||||
|
||||
if (model_Status_IO_For_Model_output._2_Way_Valve == 0) {
|
||||
TwoWayValve_EN = false;
|
||||
env->TwoWayValve_EN = false;
|
||||
} else {
|
||||
TwoWayValve_EN = true;
|
||||
env->TwoWayValve_EN = true;
|
||||
}
|
||||
|
||||
if (model_Status_IO_For_Model_output.IncarMotor_Front == 0) {
|
||||
Incar_Motor_Front_EN = false;
|
||||
env->Incar_Motor_Front_EN = false;
|
||||
} else {
|
||||
Incar_Motor_Front_EN = true;
|
||||
env->Incar_Motor_Front_EN = true;
|
||||
}
|
||||
|
||||
if (model_Status_IO_For_Model_output.IncarMotor_Rear == 0) {
|
||||
Incar_Motor_Rear_EN = false;
|
||||
env->Incar_Motor_Rear_EN = false;
|
||||
} else {
|
||||
Incar_Motor_Rear_EN = true;
|
||||
env->Incar_Motor_Rear_EN = true;
|
||||
}
|
||||
|
||||
if (model_Status_IO_For_Model_output.ShutOff_Chiller == 0) {
|
||||
EN_BATTChiller = false;
|
||||
env->EN_BATTChiller = false;
|
||||
} else {
|
||||
EN_BATTChiller = true;
|
||||
env->EN_BATTChiller = true;
|
||||
}
|
||||
|
||||
if (model_Status_IO_For_Model_output.ShutOff_Front == 0) {
|
||||
ShutOffFront_EN =false;
|
||||
env->ShutOffFront_EN = false;
|
||||
} else {
|
||||
ShutOffFront_EN = true;
|
||||
env->ShutOffFront_EN = true;
|
||||
}
|
||||
|
||||
if (model_Status_IO_For_Model_output.IncarMotor_Rear == 0) {
|
||||
ShutOffRear_EN = false;
|
||||
env->ShutOffRear_EN = false;
|
||||
} else {
|
||||
ShutOffRear_EN = true;
|
||||
env->ShutOffRear_EN = true;
|
||||
}
|
||||
|
||||
if (model_Status_IO_For_Model_output.PTC_1 == 0) {
|
||||
PtcRelayDriver1_EN = false;
|
||||
env->PtcRelayDriver1_EN = false;
|
||||
} else {
|
||||
PtcRelayDriver1_EN = true;
|
||||
env->PtcRelayDriver1_EN = true;
|
||||
}
|
||||
|
||||
if (model_Status_IO_For_Model_output.PTC_2 == 0) {
|
||||
PtcRelayDriver2_EN = false;
|
||||
env->PtcRelayDriver2_EN = false;
|
||||
} else {
|
||||
PtcRelayDriver2_EN = true;
|
||||
env->PtcRelayDriver2_EN = true;
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_TwoWayValveAndReservePowerSupply.TwoWayValve_EN,TwoWayValve_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_TwoWayValveAndReservePowerSupply.TwoWayValve_EN,
|
||||
env->TwoWayValve_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_TwoWayValveAndReservePowerSupply.TwoWayValve_EN_Diag, true);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_TwoWayValveAndReservePowerSupply.ReservePower_EN,rtY.PowerEnable_Model.ReservePower_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_TwoWayValveAndReservePowerSupply.ReservePower_EN,
|
||||
rtY.PowerEnable_Model.ReservePower_EN);
|
||||
|
||||
GpioPinSet(&env->gpios->power.BTS4175SGAXUMA1_ShutOFFValveBatteryChiller.EN_BATTChiller,EN_BATTChiller);
|
||||
GpioPinSet(&env->gpios->power.BTS4175SGAXUMA1_ShutOFFValveBatteryChiller.EN_BATTChiller,
|
||||
env->EN_BATTChiller);
|
||||
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_FrontRearIncarMotor.Incar_Motor_Front_EN,Incar_Motor_Front_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_FrontRearIncarMotor.Incar_Motor_Front_EN,
|
||||
env->Incar_Motor_Front_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_FrontRearIncarMotor.Incar_EN_Diag, true);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_FrontRearIncarMotor.Incar_Motor_Rear_EN,Incar_Motor_Rear_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_FrontRearIncarMotor.Incar_Motor_Rear_EN,
|
||||
env->Incar_Motor_Rear_EN);
|
||||
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_ShutOFFValveFrontRear.ShutOffFront_EN,ShutOffFront_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_ShutOFFValveFrontRear.ShutOffFront_EN, env->ShutOffFront_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_ShutOFFValveFrontRear.ShutOff_EN_Diag, true);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_ShutOFFValveFrontRear.ShutOffRear_EN,ShutOffRear_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_ShutOFFValveFrontRear.ShutOffRear_EN, env->ShutOffRear_EN);
|
||||
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_2xChannelPTCPower.PtcRelayDriver1_EN,PtcRelayDriver1_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_2xChannelPTCPower.PtcRelayDriver1_EN,
|
||||
env->PtcRelayDriver1_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_2xChannelPTCPower.PtcRelayDriver_EN_Diag, true);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_2xChannelPTCPower.PtcRelayDriver2_EN,PtcRelayDriver2_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5180_2EKA_2xChannelPTCPower.PtcRelayDriver2_EN,
|
||||
env->PtcRelayDriver2_EN);
|
||||
}
|
||||
|
||||
model_Status_IO_For_Model_input._2_Way_Valve = TwoWayValve_EN;
|
||||
model_Status_IO_For_Model_input.IncarMotor_Front = Incar_Motor_Front_EN;
|
||||
model_Status_IO_For_Model_input.IncarMotor_Rear = Incar_Motor_Rear_EN;
|
||||
model_Status_IO_For_Model_input.ShutOff_Chiller = EN_BATTChiller;
|
||||
model_Status_IO_For_Model_input.ShutOff_Front = ShutOffFront_EN;
|
||||
model_Status_IO_For_Model_input.ShutOff_Rear = ShutOffRear_EN;
|
||||
model_Status_IO_For_Model_input.PTC_1 = PtcRelayDriver1_EN;
|
||||
model_Status_IO_For_Model_input.PTC_2 = PtcRelayDriver2_EN;
|
||||
model_Status_IO_For_Model_input._2_Way_Valve = env->TwoWayValve_EN;
|
||||
model_Status_IO_For_Model_input.IncarMotor_Front = env->Incar_Motor_Front_EN;
|
||||
model_Status_IO_For_Model_input.IncarMotor_Rear = env->Incar_Motor_Rear_EN;
|
||||
model_Status_IO_For_Model_input.ShutOff_Chiller = env->EN_BATTChiller;
|
||||
model_Status_IO_For_Model_input.ShutOff_Front = env->ShutOffFront_EN;
|
||||
model_Status_IO_For_Model_input.ShutOff_Rear = env->ShutOffRear_EN;
|
||||
model_Status_IO_For_Model_input.PTC_1 = env->PtcRelayDriver1_EN;
|
||||
model_Status_IO_For_Model_input.PTC_2 = env->PtcRelayDriver2_EN;
|
||||
|
||||
|
||||
|
||||
// GpioPinSet(&env->gpios->power.BTS4175SGAXUMA1_ReservePowerOutput.EN_ReservePower, rtY.PowerEnable_Model.EN_ReservePower);
|
||||
GpioPinSet(&env->gpios->power.BTS4175SGAXUMA1_PowerReserve.EN_PowerReserve, rtY.PowerEnable_Model.EN_PowerReserve);
|
||||
GpioPinSet(&env->gpios->power.BTS4175SGAXUMA1_PowerReserve.EN_PowerReserve,
|
||||
rtY.PowerEnable_Model.EN_PowerReserve);
|
||||
|
||||
GpioPinSet(&env->gpios->power.VN7008AJ_FrontLINActuatorPowerDriverAB.LIN_ActPower_AB, rtY.PowerEnable_Model.LIN_ActPower_AB);
|
||||
GpioPinSet(&env->gpios->power.VN7008AJ_FrontLINActuatorPowerDriverAB.LIN_ActPower_AB,
|
||||
rtY.PowerEnable_Model.LIN_ActPower_AB);
|
||||
GpioPinSet(&env->gpios->power.VN7008AJ_FrontLINActuatorPowerDriverAB.EN_CurrentSensing_AB, true);
|
||||
|
||||
GpioPinSet(&env->gpios->power.VN7008AJ_RearLINActuatorPowerDriverC.LIN_ActPower_C, rtY.PowerEnable_Model.LIN_ActPower_C);
|
||||
GpioPinSet(&env->gpios->power.VN7008AJ_RearLINActuatorPowerDriverC.LIN_ActPower_C,
|
||||
rtY.PowerEnable_Model.LIN_ActPower_C);
|
||||
GpioPinSet(&env->gpios->power.VN7008AJ_RearLINActuatorPowerDriverC.EN_CurrentSensing_C, true);
|
||||
|
||||
GpioPinSet(&env->gpios->power.BTS5120_2EKA_ShutoffValvePowerTXV.ShutOffTXV1_EN, rtY.PowerEnable_Model.ShutOffTXV1_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5120_2EKA_ShutoffValvePowerTXV.ShutOffTXV1_EN,
|
||||
rtY.PowerEnable_Model.ShutOffTXV1_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5120_2EKA_ShutoffValvePowerTXV.ShutOffTXV_EN_Diag, true);
|
||||
GpioPinSet(&env->gpios->power.BTS5120_2EKA_ShutoffValvePowerTXV.ShutOffTXV2_EN, rtY.PowerEnable_Model.ShutOffTXV2_EN);
|
||||
GpioPinSet(&env->gpios->power.BTS5120_2EKA_ShutoffValvePowerTXV.ShutOffTXV2_EN,
|
||||
rtY.PowerEnable_Model.ShutOffTXV2_EN);
|
||||
//конец--------------------------------------------------GPIO-----------------------------------------------------------
|
||||
|
||||
|
||||
|
|
@ -451,20 +486,30 @@ static _Noreturn void ModelTask_Thread(tModelTask *env) {
|
|||
|
||||
env->pwms->pwmFrontIo.setActivePercent(env->pwms->pwmFrontIo.env, rtY.PWM_Get_f.pwmPercentFront);
|
||||
env->pwms->pwmRearIo.setActivePercent(env->pwms->pwmRearIo.env, rtY.PWM_Get_f.pwmPercentRear);
|
||||
env->pwms->pwmFrontReservedIo.setActivePercent(env->pwms->pwmFrontReservedIo.env, rtY.PWM_Get_f.pwmPercentFrontReserved);
|
||||
env->pwms->pwmRearReservedIo.setActivePercent(env->pwms->pwmRearReservedIo.env, rtY.PWM_Get_f.pwmPercentRearReserved);
|
||||
env->pwms->pwmFrontReservedIo.setActivePercent(env->pwms->pwmFrontReservedIo.env,
|
||||
rtY.PWM_Get_f.pwmPercentFrontReserved);
|
||||
env->pwms->pwmRearReservedIo.setActivePercent(env->pwms->pwmRearReservedIo.env,
|
||||
rtY.PWM_Get_f.pwmPercentRearReserved);
|
||||
//конец--------------------------------------------------PWM------------------------------------------------------------
|
||||
|
||||
//начало-------------------------------------------------SlEEP----------------------------------------------------------
|
||||
|
||||
memcpy((void *) &CCU_STAT1_MODEL_SAVE, &rtY.CCU_Stat1_model, sizeof(env->ccu_candb_tx.CCU_Stat1));
|
||||
memcpy((void *) &CCU_STAT2_MODEL_SAVE, &rtY.CCU_Stat2_model, sizeof(env->ccu_candb_tx.CCU_Stat2));
|
||||
memcpy((void *) &CCU_MSG1_MODEL_SAVE, &rtY.CCU_Msg1_model, sizeof(env->ccu_candb_tx.CCU_Msg1));
|
||||
|
||||
//конец--------------------------------------------------SLEEP----------------------------------------------------------
|
||||
|
||||
//начало--------------------------------------------------CAN-----------------------------------------------------------
|
||||
memcpy(&env->ccu_candb_tx.CCU_Errors, &rtY.CCU_Errors_model, sizeof(env->ccu_candb_tx.CCU_Errors));
|
||||
memcpy(&env->ccu_candb_tx.CCU_Stat1, &rtY.CCU_Stat1_model, sizeof(env->ccu_candb_tx.CCU_Stat1));
|
||||
memcpy(&env->ccu_candb_tx.CCU_Stat2, &rtY.CCU_Stat2_model, sizeof(env->ccu_candb_tx.CCU_Stat2));
|
||||
memcpy(&env->ccu_candb_tx.CCU_HVC_Req_Msg, &rtY.CCUCAN_HVC_REQ_MSG_MODEL, sizeof(env->ccu_candb_tx.CCU_HVC_Req_Msg));
|
||||
memcpy(&env->ccu_candb_tx.CCU_HVC_Req_Msg, &rtY.CCUCAN_HVC_REQ_MSG_MODEL,
|
||||
sizeof(env->ccu_candb_tx.CCU_HVC_Req_Msg));
|
||||
memcpy(&env->ccu_candb_tx.CCU_Msg3, &rtY.CCU_Msg3_model, sizeof(env->ccu_candb_tx.CCU_Msg3));
|
||||
memcpy(&env->ccu_candb_tx.CCU_Msg1, &rtY.CCU_Msg1_model, sizeof(env->ccu_candb_tx.CCU_Msg1));
|
||||
|
||||
|
||||
|
||||
if (model_Status_Set_For_Model_output.eComp == 1) {
|
||||
env->ccu_candb_tx.CCU_HVC_Req_Msg.CCU_eCompSpeedReq_Val_ro = model_Status_eComp_For_Model_output.Pwm_Front;
|
||||
|
||||
|
|
@ -494,7 +539,6 @@ static _Noreturn void ModelTask_Thread(tModelTask *env) {
|
|||
model_Status_eComp_For_Model_input.eComp_Statue_Request = env->ccu_candb_tx.CCU_HVC_Req_Msg.CCU_eCompReq_Stat;
|
||||
|
||||
|
||||
|
||||
if (model_Status_Set_For_Model_output.External == 1) {
|
||||
env->ccu_candb_tx.CCU_Msg3.CCU_FAN_Req = model_Status_External_For_Model_output.CoolingFan / 10;
|
||||
}
|
||||
|
|
@ -507,25 +551,39 @@ static _Noreturn void ModelTask_Thread(tModelTask *env) {
|
|||
memcpy(&env->ccu_candb_dbg_tx.dbg_Act0, &rtY.dbgCAN_dbg_Act0_model, sizeof(env->ccu_candb_dbg_tx.dbg_Act0));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Act1, &rtY.dbgCAN_dbg_Act1_model, sizeof(env->ccu_candb_dbg_tx.dbg_Act1));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Act2, &rtY.dbgCAN_dbg_Act2_model, sizeof(env->ccu_candb_dbg_tx.dbg_Act2));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Duct, &rtY.dbgCAN_dbg_Sen_Duct_model, sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Duct));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Eva, &rtY.dbgCAN_dbg_Sen_Eva_model, sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Eva));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Blower, &rtY.dbgCAN_dbg_Logic_Blower_model, sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Blower));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Amb, &rtY.dbgCAN_dbg_Sen_Amb_model, sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Amb));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Incar, &rtY.dbgCAN_dbg_Sen_Incar_model, sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Incar));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_0, &rtY.dbgCAN_dbg_Sen_0_model, sizeof(env->ccu_candb_dbg_tx.dbg_Sen_0));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Ac, &rtY.dbg_Logic_Ac_model, sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Ac));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_CCU_IO, &rtY.dbgCAN_CCU_IO_model, sizeof(env->ccu_candb_dbg_tx.dbg_CCU_IO));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Rec, &rtY.dbgCAN_Logic_Rec_model, sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Rec));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_State, &rtY.dbgCAN_Logic_State_model, sizeof(env->ccu_candb_dbg_tx.dbg_Logic_State));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Duct, &rtY.dbgCAN_dbg_Sen_Duct_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Duct));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Eva, &rtY.dbgCAN_dbg_Sen_Eva_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Eva));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Blower, &rtY.dbgCAN_dbg_Logic_Blower_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Blower));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Amb, &rtY.dbgCAN_dbg_Sen_Amb_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Amb));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_Incar, &rtY.dbgCAN_dbg_Sen_Incar_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Sen_Incar));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Sen_0, &rtY.dbgCAN_dbg_Sen_0_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Sen_0));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Ac, &rtY.dbg_Logic_Ac_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Ac));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_CCU_IO, &rtY.dbgCAN_CCU_IO_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_CCU_IO));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Rec, &rtY.dbgCAN_Logic_Rec_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Rec));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_State, &rtY.dbgCAN_Logic_State_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Logic_State));
|
||||
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Auto_AF, &rtY.dbgCAN_Auto_AF_model, sizeof(env->ccu_candb_dbg_tx.dbg_Auto_AF));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Auto_Duct, &rtY.dbgCAN_Auto_Duct_model, sizeof(env->ccu_candb_dbg_tx.dbg_Auto_Duct));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Auto_AF, &rtY.dbgCAN_Auto_AF_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Auto_AF));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Auto_Duct, &rtY.dbgCAN_Auto_Duct_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Auto_Duct));
|
||||
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Valve, &rtY.dbg_Logic_Valve_model, sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Valve));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Logic_Valve, &rtY.dbg_Logic_Valve_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Valve));
|
||||
//конец--------------------------------------------------CAN------------------------------------------------------------
|
||||
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_Drs, &rtY.dbg_Drs_t_model, sizeof(env->ccu_candb_dbg_tx.dbg_Drs));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_LIN_AirQS_Stat, &rtY.dbg_LIN_AirQS_Stat_t_model, sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Valve));
|
||||
memcpy(&env->ccu_candb_dbg_tx.dbg_LIN_AirQS_Stat, &rtY.dbg_LIN_AirQS_Stat_t_model,
|
||||
sizeof(env->ccu_candb_dbg_tx.dbg_Logic_Valve));
|
||||
|
||||
Lin4_Input_Set_From_Model(env->lin4TaskSensor);
|
||||
|
||||
|
|
|
|||
13
Model_Task.h
13
Model_Task.h
|
|
@ -58,6 +58,19 @@ typedef struct {
|
|||
ActuatorCmdBus triggerActuatorCmdBus_2;
|
||||
ActuatorCmdBus triggerActuatorCmdBus_3;
|
||||
|
||||
|
||||
bool TwoWayValve_EN;
|
||||
bool EN_BATTChiller;
|
||||
bool Incar_Motor_Front_EN ;
|
||||
bool Incar_Motor_Rear_EN;
|
||||
bool ShutOffFront_EN;
|
||||
bool ShutOffRear_EN ;
|
||||
bool PtcRelayDriver1_EN;
|
||||
bool PtcRelayDriver2_EN;
|
||||
|
||||
|
||||
uint32_t sleep_time;
|
||||
|
||||
bool isRunning;
|
||||
|
||||
struct {
|
||||
|
|
|
|||
Loading…
Reference in New Issue