1142 lines
45 KiB
C
1142 lines
45 KiB
C
/*
|
|
* File: socTouchDisplay.c
|
|
*
|
|
* Code generated for Simulink model 'socTouchDisplay'.
|
|
*
|
|
* Model version : 1.104
|
|
* Simulink Coder version : 23.2 (R2023b) 01-Aug-2023
|
|
* C/C++ source code generated on : Mon Oct 28 16:04:13 2024
|
|
*
|
|
* Target selection: ert.tlc
|
|
* Embedded hardware selection: Intel->x86-64 (Windows64)
|
|
* Code generation objectives: Unspecified
|
|
* Validation result: Not run
|
|
*/
|
|
|
|
#include "socTouchDisplay.h"
|
|
#include "rtwtypes.h"
|
|
#include <math.h>
|
|
#include "rt_nonfinite.h"
|
|
#include "socTouchDisplay_private.h"
|
|
|
|
/* Named constants for Chart: '<Root>/Chart' */
|
|
#define socTouchDi_IN_waitTillNextTouch ((uint8_T)4U)
|
|
#define socTouchDis_IN_touchNotDetected ((uint8_T)3U)
|
|
#define socTouchDisplay_IN_displayError ((uint8_T)1U)
|
|
#define socTouchDisplay_IN_displaySoc ((uint8_T)2U)
|
|
|
|
/* Named constants for Chart: '<Root>/Chart1' */
|
|
#define socTouchDisplay_IN_bmsPresent ((uint8_T)1U)
|
|
#define socTouchDisplay_IN_init ((uint8_T)2U)
|
|
|
|
/* Block signals (default storage) */
|
|
B_socTouchDisplay_T socTouchDisplay_B;
|
|
|
|
/* Block states (default storage) */
|
|
DW_socTouchDisplay_T socTouchDisplay_DW;
|
|
|
|
/* External inputs (root inport signals with default storage) */
|
|
ExtU_socTouchDisplay_T socTouchDisplay_U;
|
|
|
|
/* External outputs (root outports fed by signals with default storage) */
|
|
ExtY_socTouchDisplay_T socTouchDisplay_Y;
|
|
|
|
/* Real-time model */
|
|
static RT_MODEL_socTouchDisplay_T socTouchDisplay_M_;
|
|
RT_MODEL_socTouchDisplay_T *const socTouchDisplay_M = &socTouchDisplay_M_;
|
|
|
|
/* Model step function */
|
|
void socTouchDisplay_step(void)
|
|
{
|
|
real_T tmp;
|
|
int32_T s3_iter;
|
|
uint32_T tmp_0;
|
|
uint8_T rtb_Cast;
|
|
boolean_T Memory_PreviousInput;
|
|
boolean_T rtb_Memory;
|
|
|
|
/* Outputs for Iterator SubSystem: '<Root>/canMsgDecode' incorporates:
|
|
* ForIterator: '<S3>/For Iterator'
|
|
*/
|
|
/* InitializeConditions for Memory: '<S3>/Memory' */
|
|
Memory_PreviousInput = false;
|
|
for (s3_iter = 0; s3_iter < 10; s3_iter++) {
|
|
/* Selector: '<S3>/Selector' incorporates:
|
|
* Inport: '<Root>/Input'
|
|
*/
|
|
socTouchDisplay_B.Selector = socTouchDisplay_U.Input[s3_iter];
|
|
|
|
/* S-Function (canReceive): '<S3>/S-Function' */
|
|
canReceive_Outputs_wrapper(&socTouchDisplay_B.Selector.ID,
|
|
&socTouchDisplay_B.Selector.Length, &socTouchDisplay_B.Selector.Data[0],
|
|
&socTouchDisplay_B.SFunction);
|
|
|
|
/* Memory: '<S3>/Memory' */
|
|
rtb_Memory = Memory_PreviousInput;
|
|
|
|
/* S-Function (scanunpack): '<S3>/CAN Unpack' */
|
|
{
|
|
/* S-Function (scanunpack): '<S3>/CAN Unpack' */
|
|
if ((8 == socTouchDisplay_B.SFunction.Length) &&
|
|
(socTouchDisplay_B.SFunction.ID != INVALID_CAN_ID) ) {
|
|
if ((220839530 == socTouchDisplay_B.SFunction.ID) && (1U ==
|
|
socTouchDisplay_B.SFunction.Extended) ) {
|
|
{
|
|
/* --------------- START Unpacking signal 16 ------------------
|
|
* startBit = 0
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
{
|
|
real_T outValue = 0;
|
|
|
|
{
|
|
uint8_T unpackedValue = 0;
|
|
|
|
{
|
|
uint8_T tempValue = (uint8_T) (0);
|
|
|
|
{
|
|
tempValue = tempValue | (uint8_T)
|
|
(socTouchDisplay_B.SFunction.Data[0]);
|
|
}
|
|
|
|
unpackedValue = tempValue;
|
|
}
|
|
|
|
outValue = (real_T) (unpackedValue);
|
|
}
|
|
|
|
{
|
|
real_T result = (real_T) outValue;
|
|
socTouchDisplay_B.CANUnpack_o17 = result;
|
|
}
|
|
}
|
|
|
|
/* --------------- START Unpacking signal 0 ------------------
|
|
* startBit = 8
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 1 ------------------
|
|
* startBit = 24
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 2 ------------------
|
|
* startBit = 32
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 3 ------------------
|
|
* startBit = 40
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 4 ------------------
|
|
* startBit = 48
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 5 ------------------
|
|
* startBit = 56
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 6 ------------------
|
|
* startBit = 8
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 7 ------------------
|
|
* startBit = 16
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 8 ------------------
|
|
* startBit = 16
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 9 ------------------
|
|
* startBit = 24
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 10 ------------------
|
|
* startBit = 32
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 11 ------------------
|
|
* startBit = 40
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 12 ------------------
|
|
* startBit = 48
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 13 ------------------
|
|
* startBit = 56
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 14 ------------------
|
|
* startBit = 8
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 15 ------------------
|
|
* startBit = 16
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 17 ------------------
|
|
* startBit = 8
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 18 ------------------
|
|
* startBit = 48
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 19 ------------------
|
|
* startBit = 32
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 20 ------------------
|
|
* startBit = 48
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 21 ------------------
|
|
* startBit = 40
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 22 ------------------
|
|
* startBit = 16
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 23 ------------------
|
|
* startBit = 8
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 24 ------------------
|
|
* startBit = 16
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 25 ------------------
|
|
* startBit = 24
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 26 ------------------
|
|
* startBit = 32
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 27 ------------------
|
|
* startBit = 40
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 28 ------------------
|
|
* startBit = 8
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 29 ------------------
|
|
* startBit = 9
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 30 ------------------
|
|
* startBit = 16
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 31 ------------------
|
|
* startBit = 16
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 32 ------------------
|
|
* startBit = 32
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 33 ------------------
|
|
* startBit = 48
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 34 ------------------
|
|
* startBit = 16
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 35 ------------------
|
|
* startBit = 32
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 36 ------------------
|
|
* startBit = 48
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 37 ------------------
|
|
* startBit = 16
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 38 ------------------
|
|
* startBit = 32
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 39 ------------------
|
|
* startBit = 48
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 40 ------------------
|
|
* startBit = 16
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 41 ------------------
|
|
* startBit = 32
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 42 ------------------
|
|
* startBit = 48
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 43 ------------------
|
|
* startBit = 16
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 44 ------------------
|
|
* startBit = 32
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 45 ------------------
|
|
* startBit = 48
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 46 ------------------
|
|
* startBit = 32
|
|
* length = 16
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 47 ------------------
|
|
* startBit = 9
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 48 ------------------
|
|
* startBit = 8
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 49 ------------------
|
|
* startBit = 16
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = SIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 50 ------------------
|
|
* startBit = 10
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 51 ------------------
|
|
* startBit = 11
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 52 ------------------
|
|
* startBit = 13
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 53 ------------------
|
|
* startBit = 14
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 54 ------------------
|
|
* startBit = 15
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 55 ------------------
|
|
* startBit = 16
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/* Perform the mode dependency check to value */
|
|
if (socTouchDisplay_B.CANUnpack_o17 == 2.0) {
|
|
{
|
|
real_T outValue = 0;
|
|
|
|
{
|
|
uint8_T unpackedValue = 0;
|
|
|
|
{
|
|
uint8_T tempValue = (uint8_T) (0);
|
|
|
|
{
|
|
tempValue = tempValue | (uint8_T)
|
|
(socTouchDisplay_B.SFunction.Data[2]);
|
|
}
|
|
|
|
unpackedValue = tempValue;
|
|
}
|
|
|
|
outValue = (real_T) (unpackedValue);
|
|
}
|
|
|
|
{
|
|
real_T result = (real_T) outValue;
|
|
socTouchDisplay_B.CANUnpack_o56 = result;
|
|
}
|
|
}
|
|
}
|
|
|
|
/* --------------- START Unpacking signal 56 ------------------
|
|
* startBit = 8
|
|
* length = 8
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
|
|
/* --------------- START Unpacking signal 57 ------------------
|
|
* startBit = 12
|
|
* length = 1
|
|
* desiredSignalByteLayout = BIGENDIAN
|
|
* dataType = UNSIGNED
|
|
* factor = 1.0
|
|
* offset = 0.0
|
|
* -----------------------------------------------------------------------*/
|
|
/*
|
|
* Signal is not connected or connected to terminator.
|
|
* No unpacking code generated.
|
|
*/
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/* DataTypeConversion: '<S3>/Cast' */
|
|
tmp = floor(socTouchDisplay_B.CANUnpack_o56);
|
|
if (rtIsNaN(tmp) || rtIsInf(tmp)) {
|
|
tmp = 0.0;
|
|
} else {
|
|
tmp = fmod(tmp, 256.0);
|
|
}
|
|
|
|
if (tmp < 0.0) {
|
|
rtb_Cast = (uint8_T)-(int8_T)(uint8_T)-tmp;
|
|
} else {
|
|
rtb_Cast = (uint8_T)tmp;
|
|
}
|
|
|
|
/* End of DataTypeConversion: '<S3>/Cast' */
|
|
|
|
/* Update for Memory: '<S3>/Memory' incorporates:
|
|
* Logic: '<S3>/OR'
|
|
* RelationalOperator: '<S3>/Equal'
|
|
*/
|
|
Memory_PreviousInput = ((socTouchDisplay_B.SFunction.ID == 220839530U) ||
|
|
Memory_PreviousInput);
|
|
}
|
|
|
|
/* End of Outputs for SubSystem: '<Root>/canMsgDecode' */
|
|
|
|
/* Chart: '<Root>/Chart1' */
|
|
if (socTouchDisplay_DW.is_active_c1_socTouchDisplay == 0U) {
|
|
socTouchDisplay_DW.is_active_c1_socTouchDisplay = 1U;
|
|
socTouchDisplay_DW.is_c1_socTouchDisplay = socTouchDisplay_IN_init;
|
|
Memory_PreviousInput = false;
|
|
} else if (socTouchDisplay_DW.is_c1_socTouchDisplay ==
|
|
socTouchDisplay_IN_bmsPresent) {
|
|
Memory_PreviousInput = true;
|
|
if (rtb_Memory) {
|
|
socTouchDisplay_DW.durationCounter_1 = 0U;
|
|
}
|
|
|
|
if (socTouchDisplay_DW.durationCounter_1 > 150U) {
|
|
socTouchDisplay_DW.is_c1_socTouchDisplay = socTouchDisplay_IN_init;
|
|
Memory_PreviousInput = false;
|
|
}
|
|
} else {
|
|
/* case IN_init: */
|
|
Memory_PreviousInput = false;
|
|
if (rtb_Memory) {
|
|
socTouchDisplay_DW.durationCounter_1 = 0U;
|
|
socTouchDisplay_DW.is_c1_socTouchDisplay = socTouchDisplay_IN_bmsPresent;
|
|
Memory_PreviousInput = true;
|
|
}
|
|
}
|
|
|
|
if (!rtb_Memory) {
|
|
socTouchDisplay_DW.durationCounter_1++;
|
|
} else {
|
|
socTouchDisplay_DW.durationCounter_1 = 0U;
|
|
}
|
|
|
|
/* End of Chart: '<Root>/Chart1' */
|
|
|
|
/* Chart: '<Root>/Chart' incorporates:
|
|
* Inport: '<Root>/in_bTouchDetected'
|
|
* Inport: '<Root>/ip_u32DisplayDuration_msec'
|
|
* Inport: '<Root>/ip_u32TouchDuration_msec'
|
|
*/
|
|
if (socTouchDisplay_DW.temporalCounter_i1 < MAX_uint32_T) {
|
|
socTouchDisplay_DW.temporalCounter_i1++;
|
|
}
|
|
|
|
if (socTouchDisplay_DW.is_active_c3_socTouchDisplay == 0U) {
|
|
socTouchDisplay_DW.is_active_c3_socTouchDisplay = 1U;
|
|
socTouchDisplay_DW.durationCounter_2 = 0U;
|
|
socTouchDisplay_DW.durationCounter_1_g = 0U;
|
|
socTouchDisplay_DW.is_c3_socTouchDisplay = socTouchDis_IN_touchNotDetected;
|
|
|
|
/* Outport: '<Root>/op_bDisplayStatus' */
|
|
socTouchDisplay_Y.op_bDisplayStatus = false;
|
|
|
|
/* Outport: '<Root>/op_bErrorStatus' */
|
|
socTouchDisplay_Y.op_bErrorStatus = false;
|
|
} else {
|
|
switch (socTouchDisplay_DW.is_c3_socTouchDisplay) {
|
|
case socTouchDisplay_IN_displayError:
|
|
/* Outport: '<Root>/op_bErrorStatus' */
|
|
socTouchDisplay_Y.op_bErrorStatus = true;
|
|
if ((uint32_T)((int32_T)socTouchDisplay_DW.temporalCounter_i1 * 100) >=
|
|
(uint32_T)ceil(socTouchDisplay_U.ip_u32DisplayDuration_msec)) {
|
|
socTouchDisplay_DW.temporalCounter_i1 = 0U;
|
|
socTouchDisplay_DW.is_c3_socTouchDisplay =
|
|
socTouchDi_IN_waitTillNextTouch;
|
|
|
|
/* Outport: '<Root>/op_bDisplayStatus' */
|
|
socTouchDisplay_Y.op_bDisplayStatus = false;
|
|
|
|
/* Outport: '<Root>/op_bErrorStatus' */
|
|
socTouchDisplay_Y.op_bErrorStatus = false;
|
|
}
|
|
break;
|
|
|
|
case socTouchDisplay_IN_displaySoc:
|
|
/* Outport: '<Root>/op_bDisplayStatus' */
|
|
socTouchDisplay_Y.op_bDisplayStatus = true;
|
|
if ((uint32_T)((int32_T)socTouchDisplay_DW.temporalCounter_i1 * 100) >=
|
|
(uint32_T)ceil(socTouchDisplay_U.ip_u32DisplayDuration_msec)) {
|
|
socTouchDisplay_DW.temporalCounter_i1 = 0U;
|
|
socTouchDisplay_DW.is_c3_socTouchDisplay =
|
|
socTouchDi_IN_waitTillNextTouch;
|
|
|
|
/* Outport: '<Root>/op_bDisplayStatus' */
|
|
socTouchDisplay_Y.op_bDisplayStatus = false;
|
|
|
|
/* Outport: '<Root>/op_bErrorStatus' */
|
|
socTouchDisplay_Y.op_bErrorStatus = false;
|
|
}
|
|
break;
|
|
|
|
case socTouchDis_IN_touchNotDetected:
|
|
/* Outport: '<Root>/op_bDisplayStatus' */
|
|
socTouchDisplay_Y.op_bDisplayStatus = false;
|
|
|
|
/* Outport: '<Root>/op_bErrorStatus' */
|
|
socTouchDisplay_Y.op_bErrorStatus = false;
|
|
rtb_Memory = !(socTouchDisplay_U.in_bTouchDetected == 1.0);
|
|
if (rtb_Memory) {
|
|
socTouchDisplay_DW.durationCounter_2 = 0U;
|
|
}
|
|
|
|
tmp_0 = (uint32_T)ceil(socTouchDisplay_U.ip_u32TouchDuration_msec);
|
|
if (((uint32_T)((int32_T)socTouchDisplay_DW.durationCounter_2 * 100) >
|
|
tmp_0) && Memory_PreviousInput) {
|
|
socTouchDisplay_DW.temporalCounter_i1 = 0U;
|
|
socTouchDisplay_DW.is_c3_socTouchDisplay = socTouchDisplay_IN_displaySoc;
|
|
|
|
/* Outport: '<Root>/op_bDisplayStatus' */
|
|
socTouchDisplay_Y.op_bDisplayStatus = true;
|
|
} else {
|
|
if (rtb_Memory) {
|
|
socTouchDisplay_DW.durationCounter_1_g = 0U;
|
|
}
|
|
|
|
if (((uint32_T)((int32_T)socTouchDisplay_DW.durationCounter_1_g * 100) >
|
|
tmp_0) && (!Memory_PreviousInput)) {
|
|
socTouchDisplay_DW.temporalCounter_i1 = 0U;
|
|
socTouchDisplay_DW.is_c3_socTouchDisplay =
|
|
socTouchDisplay_IN_displayError;
|
|
|
|
/* Outport: '<Root>/op_bErrorStatus' */
|
|
socTouchDisplay_Y.op_bErrorStatus = true;
|
|
}
|
|
}
|
|
break;
|
|
|
|
default:
|
|
/* Outport: '<Root>/op_bDisplayStatus' */
|
|
/* case IN_waitTillNextTouch: */
|
|
socTouchDisplay_Y.op_bDisplayStatus = false;
|
|
|
|
/* Outport: '<Root>/op_bErrorStatus' */
|
|
socTouchDisplay_Y.op_bErrorStatus = false;
|
|
if (socTouchDisplay_DW.temporalCounter_i1 >= 100U) {
|
|
socTouchDisplay_DW.durationCounter_2 = 0U;
|
|
socTouchDisplay_DW.durationCounter_1_g = 0U;
|
|
socTouchDisplay_DW.is_c3_socTouchDisplay =
|
|
socTouchDis_IN_touchNotDetected;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (socTouchDisplay_U.in_bTouchDetected == 1.0) {
|
|
socTouchDisplay_DW.durationCounter_1_g++;
|
|
socTouchDisplay_DW.durationCounter_2++;
|
|
} else {
|
|
socTouchDisplay_DW.durationCounter_1_g = 0U;
|
|
socTouchDisplay_DW.durationCounter_2 = 0U;
|
|
}
|
|
|
|
/* End of Chart: '<Root>/Chart' */
|
|
|
|
/* Outputs for Atomic SubSystem: '<Root>/displayData' */
|
|
/* Switch: '<S4>/Switch1' incorporates:
|
|
* Outport: '<Root>/op_bErrorStatus'
|
|
* Switch: '<S4>/Switch'
|
|
* Switch: '<S4>/Switch2'
|
|
*/
|
|
if (socTouchDisplay_Y.op_bErrorStatus) {
|
|
/* Outport: '<Root>/op_u8TensPlace' incorporates:
|
|
* Constant: '<S4>/Constant3'
|
|
*/
|
|
socTouchDisplay_Y.op_u8TensPlace = 114U;
|
|
|
|
/* Outport: '<Root>/op_u8OnesPlace' incorporates:
|
|
* Constant: '<S4>/Constant4'
|
|
*/
|
|
socTouchDisplay_Y.op_u8OnesPlace = 114U;
|
|
|
|
/* Outport: '<Root>/op_u8HundredsPlace' incorporates:
|
|
* Constant: '<S4>/Constant2'
|
|
*/
|
|
socTouchDisplay_Y.op_u8HundredsPlace = 69U;
|
|
} else {
|
|
/* Outport: '<Root>/op_u8TensPlace' incorporates:
|
|
* Constant: '<S4>/Constant'
|
|
* Math: '<S4>/Mod1'
|
|
* Product: '<S4>/Divide'
|
|
*/
|
|
socTouchDisplay_Y.op_u8TensPlace = (uint8_T)((int32_T)(rtb_Cast / 10U) % 10);
|
|
|
|
/* Outport: '<Root>/op_u8OnesPlace' incorporates:
|
|
* Math: '<S4>/Mod2'
|
|
*/
|
|
socTouchDisplay_Y.op_u8OnesPlace = (uint8_T)(rtb_Cast % 10);
|
|
|
|
/* Outport: '<Root>/op_u8HundredsPlace' incorporates:
|
|
* Constant: '<S4>/Constant1'
|
|
* Math: '<S4>/Mod'
|
|
* Product: '<S4>/Divide1'
|
|
*/
|
|
socTouchDisplay_Y.op_u8HundredsPlace = (uint8_T)((int32_T)(rtb_Cast / 100U) %
|
|
10);
|
|
}
|
|
|
|
/* End of Switch: '<S4>/Switch1' */
|
|
/* End of Outputs for SubSystem: '<Root>/displayData' */
|
|
}
|
|
|
|
/* Model initialize function */
|
|
void socTouchDisplay_initialize(void)
|
|
{
|
|
/* Registration code */
|
|
|
|
/* initialize non-finites */
|
|
rt_InitInfAndNaN(sizeof(real_T));
|
|
|
|
/* SystemInitialize for Iterator SubSystem: '<Root>/canMsgDecode' */
|
|
|
|
/* Start for S-Function (scanunpack): '<S3>/CAN Unpack' */
|
|
|
|
/*-----------S-Function Block: <S3>/CAN Unpack -----------------*/
|
|
|
|
/* End of SystemInitialize for SubSystem: '<Root>/canMsgDecode' */
|
|
}
|
|
|
|
/* Model terminate function */
|
|
void socTouchDisplay_terminate(void)
|
|
{
|
|
/* (no terminate code required) */
|
|
}
|
|
|
|
/*
|
|
* File trailer for generated code.
|
|
*
|
|
* [EOF]
|
|
*/
|