Project 2-Highway Assistant-Lane Changing Assistant
Aim:
To make the Highway assistant-lane changing simulink model as per the given requirements.
Objectives:
- The Model must be developed in MATLAB Simulink as per the MBD guidelines.
- Code generation profile must be AUTOSAR coder.
- Simulink Data Dictionary must be created for the model & must be linked to the model.
- All the input and output signals must be mapped into the AUTOSAR editor
- Model Advisor report is mandatory and this will be followed by Code Generation.
Creating SLDD file:


Configuring the solver settings and system target file to Autosar coder that is autosar.tlc


Creating the model:
The simulink model is created as per the given requirements given in the question and it is built as per the MBD guidelines.


Requirement 1:


The input and output signals can be defined using Symbols pane:

Requirement 2:


The input and output signals can be defined using Symbols pane:

Requirement 3:

The requirement tagging is done on all three requirements:

All signals new generating signals are resolved and continuing signals are propogated.
Autosar port mapping:
For updating the ports, interfaces, and data elements open the autosar dictionary
Now click on apps and select the Autosar components under the Code generation



Click next... and finish
Port mapping the receiver ports:
Port mapping the sender ports:

Portmapping the runnables:

The SR interfaces:


Code generation:

<?xml version="1.0" encoding="UTF-8"?>
<!--
Auto generated XML Component Description for model Highway_Assistant_model
Model version : 1.60
Simulink Coder version : Simulink Coder 9.5 (R2021a) 14-Nov-2020
XML source code generated on : Sat Jul 02 07:56:37 2022
Model Checksum : 3368237537 36503399 1580218289 2187227641
-->
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_4-3-1.xsd">
<AR-PACKAGES>
<AR-PACKAGE>
<SHORT-NAME>Components</SHORT-NAME>
<ELEMENTS>
<APPLICATION-SW-COMPONENT-TYPE UUID="90750b8c-192d-5510-0bcb-29e80ebb018d">
<SHORT-NAME>Highway_Assistant_model</SHORT-NAME>
<PORTS>
<R-PORT-PROTOTYPE UUID="4348b8f2-d505-5ff4-b2f5-2b84ea8170ac">
<SHORT-NAME>Highway_Input_Signal</SHORT-NAME>
<REQUIRED-COM-SPECS>
<NONQUEUED-RECEIVER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Highway_Input_Signal/Highway_Input_Signal</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<ALIVE-TIMEOUT>0</ALIVE-TIMEOUT>
<ENABLE-UPDATE>false</ENABLE-UPDATE>
<HANDLE-NEVER-RECEIVED>false</HANDLE-NEVER-RECEIVED>
<HANDLE-TIMEOUT-TYPE>NONE</HANDLE-TIMEOUT-TYPE>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-RECEIVER-COM-SPEC>
</REQUIRED-COM-SPECS>
<REQUIRED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Highway_Input_Signal</REQUIRED-INTERFACE-TREF>
</R-PORT-PROTOTYPE>
<R-PORT-PROTOTYPE UUID="d426e1a1-a952-5cca-690b-b23c56cb6e36">
<SHORT-NAME>Enable_Display</SHORT-NAME>
<REQUIRED-COM-SPECS>
<NONQUEUED-RECEIVER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Enable_Display/Enable_Display</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<ALIVE-TIMEOUT>0</ALIVE-TIMEOUT>
<ENABLE-UPDATE>false</ENABLE-UPDATE>
<HANDLE-NEVER-RECEIVED>false</HANDLE-NEVER-RECEIVED>
<HANDLE-TIMEOUT-TYPE>NONE</HANDLE-TIMEOUT-TYPE>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-RECEIVER-COM-SPEC>
</REQUIRED-COM-SPECS>
<REQUIRED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Enable_Display</REQUIRED-INTERFACE-TREF>
</R-PORT-PROTOTYPE>
<R-PORT-PROTOTYPE UUID="dc4e6167-58e7-519f-6adb-5ec5dd24c98f">
<SHORT-NAME>Input_Switch</SHORT-NAME>
<REQUIRED-COM-SPECS>
<NONQUEUED-RECEIVER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Input_Switch/Input_Switch</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<ALIVE-TIMEOUT>0</ALIVE-TIMEOUT>
<ENABLE-UPDATE>false</ENABLE-UPDATE>
<HANDLE-NEVER-RECEIVED>false</HANDLE-NEVER-RECEIVED>
<HANDLE-TIMEOUT-TYPE>NONE</HANDLE-TIMEOUT-TYPE>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-RECEIVER-COM-SPEC>
</REQUIRED-COM-SPECS>
<REQUIRED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Input_Switch</REQUIRED-INTERFACE-TREF>
</R-PORT-PROTOTYPE>
<R-PORT-PROTOTYPE UUID="6731259b-53b7-5472-4c72-f192fa5ccd06">
<SHORT-NAME>Lane_Input_Signal</SHORT-NAME>
<REQUIRED-COM-SPECS>
<NONQUEUED-RECEIVER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Lane_Input_Signal/Lane_Input_Signal</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<ALIVE-TIMEOUT>0</ALIVE-TIMEOUT>
<ENABLE-UPDATE>false</ENABLE-UPDATE>
<HANDLE-NEVER-RECEIVED>false</HANDLE-NEVER-RECEIVED>
<HANDLE-TIMEOUT-TYPE>NONE</HANDLE-TIMEOUT-TYPE>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-RECEIVER-COM-SPEC>
</REQUIRED-COM-SPECS>
<REQUIRED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Lane_Input_Signal</REQUIRED-INTERFACE-TREF>
</R-PORT-PROTOTYPE>
<P-PORT-PROTOTYPE UUID="9e3b0878-ff2b-5861-a6f7-81aff4273335">
<SHORT-NAME>Display_Mode_1</SHORT-NAME>
<PROVIDED-COM-SPECS>
<NONQUEUED-SENDER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_1/Display_Mode_1</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-SENDER-COM-SPEC>
</PROVIDED-COM-SPECS>
<PROVIDED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Display_Mode_1</PROVIDED-INTERFACE-TREF>
</P-PORT-PROTOTYPE>
<P-PORT-PROTOTYPE UUID="3786b905-15f2-519d-53b9-40d904fabe4d">
<SHORT-NAME>Display_Mode_2</SHORT-NAME>
<PROVIDED-COM-SPECS>
<NONQUEUED-SENDER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_2/Display_Mode_2</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-SENDER-COM-SPEC>
</PROVIDED-COM-SPECS>
<PROVIDED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Display_Mode_2</PROVIDED-INTERFACE-TREF>
</P-PORT-PROTOTYPE>
<P-PORT-PROTOTYPE UUID="4c10f20d-82e8-5305-0d61-b7aa3851081d">
<SHORT-NAME>Display_Mode_3</SHORT-NAME>
<PROVIDED-COM-SPECS>
<NONQUEUED-SENDER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_3/Display_Mode_3</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-SENDER-COM-SPEC>
</PROVIDED-COM-SPECS>
<PROVIDED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Display_Mode_3</PROVIDED-INTERFACE-TREF>
</P-PORT-PROTOTYPE>
<P-PORT-PROTOTYPE UUID="e30e89c9-6161-5fb2-828b-0b829be4c20e">
<SHORT-NAME>Display_Mode_4</SHORT-NAME>
<PROVIDED-COM-SPECS>
<NONQUEUED-SENDER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_4/Display_Mode_4</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<INIT-VALUE>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_UInt8</SHORT-LABEL>
<VALUE>0</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</INIT-VALUE>
</NONQUEUED-SENDER-COM-SPEC>
</PROVIDED-COM-SPECS>
<PROVIDED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/Interfaces/Display_Mode_4</PROVIDED-INTERFACE-TREF>
</P-PORT-PROTOTYPE>
</PORTS>
<INTERNAL-BEHAVIORS>
<SWC-INTERNAL-BEHAVIOR UUID="ecc719ab-96ee-5881-ac39-2980a1823a04">
<SHORT-NAME>Highway_Assistant_model_IB</SHORT-NAME>
<EVENTS>
<TIMING-EVENT UUID="542809dd-93c3-59fb-4eab-06d62927b887">
<SHORT-NAME>Event_Highway_Assistant_model_Step</SHORT-NAME>
<START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/Components/Highway_Assistant_model/Highway_Assistant_model_IB/Highway_Assistant_model_Step</START-ON-EVENT-REF>
<PERIOD>0.2</PERIOD>
</TIMING-EVENT>
</EVENTS>
<HANDLE-TERMINATION-AND-RESTART>NO-SUPPORT</HANDLE-TERMINATION-AND-RESTART>
<RUNNABLES>
<RUNNABLE-ENTITY UUID="d18be2a5-35fe-5ef1-7621-6d10f7a6bcbf">
<SHORT-NAME>Highway_Assistant_model_Init</SHORT-NAME>
<MINIMUM-START-INTERVAL>0</MINIMUM-START-INTERVAL>
<CAN-BE-INVOKED-CONCURRENTLY>false</CAN-BE-INVOKED-CONCURRENTLY>
<SYMBOL>Highway_Assistant_model_Init</SYMBOL>
</RUNNABLE-ENTITY>
<RUNNABLE-ENTITY UUID="60d1602a-c868-55d5-61f9-b734a4af8b99">
<SHORT-NAME>Highway_Assistant_model_Step</SHORT-NAME>
<MINIMUM-START-INTERVAL>0</MINIMUM-START-INTERVAL>
<CAN-BE-INVOKED-CONCURRENTLY>false</CAN-BE-INVOKED-CONCURRENTLY>
<DATA-READ-ACCESSS>
<VARIABLE-ACCESS UUID="14748254-1635-5b74-325a-514875cf835b">
<SHORT-NAME>IN_Enable_Display_Enable_Display</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="R-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Enable_Display</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Enable_Display/Enable_Display</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
<VARIABLE-ACCESS UUID="325c93a6-63ac-59d7-7e36-af5196828d6f">
<SHORT-NAME>IN_Highway_Input_Signal_Highway_Input_Signal</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="R-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Highway_Input_Signal</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Highway_Input_Signal/Highway_Input_Signal</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
<VARIABLE-ACCESS UUID="9c7b39eb-99eb-5e30-374f-db65e7e18458">
<SHORT-NAME>IN_Input_Switch_Input_Switch</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="R-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Input_Switch</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Input_Switch/Input_Switch</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
<VARIABLE-ACCESS UUID="0bbcea4a-8294-5258-ba90-eb1cf8ea3ca2">
<SHORT-NAME>IN_Lane_Input_Signal_Lane_Input_Signal</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="R-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Lane_Input_Signal</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Lane_Input_Signal/Lane_Input_Signal</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</DATA-READ-ACCESSS>
<DATA-WRITE-ACCESSS>
<VARIABLE-ACCESS UUID="a5f2625f-fea4-5bf6-9805-f48ec50087ae">
<SHORT-NAME>OUT_Display_Mode_1_Display_Mode_1</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Display_Mode_1</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_1/Display_Mode_1</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
<VARIABLE-ACCESS UUID="c5e9d471-d97b-5358-81cd-45bac21ca6d7">
<SHORT-NAME>OUT_Display_Mode_2_Display_Mode_2</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Display_Mode_2</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_2/Display_Mode_2</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
<VARIABLE-ACCESS UUID="511eb24a-80f1-59b9-0daf-cf685df48d4f">
<SHORT-NAME>OUT_Display_Mode_3_Display_Mode_3</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Display_Mode_3</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_3/Display_Mode_3</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
<VARIABLE-ACCESS UUID="03b5a8a4-a3c9-5866-73a3-588a879f1733">
<SHORT-NAME>OUT_Display_Mode_4_Display_Mode_4</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/Components/Highway_Assistant_model/Display_Mode_4</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/Interfaces/Display_Mode_4/Display_Mode_4</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</DATA-WRITE-ACCESSS>
<SYMBOL>Highway_Assistant_model_Step</SYMBOL>
</RUNNABLE-ENTITY>
</RUNNABLES>
<SUPPORTS-MULTIPLE-INSTANTIATION>false</SUPPORTS-MULTIPLE-INSTANTIATION>
</SWC-INTERNAL-BEHAVIOR>
</INTERNAL-BEHAVIORS>
</APPLICATION-SW-COMPONENT-TYPE>
</ELEMENTS>
</AR-PACKAGE>
</AR-PACKAGES>
</AUTOSAR>
Performing the Model advisor check:

select Modeling standards for MAB and run the selected checks
Model advisor report is generated:

Code generation using embedded coder:
/*
* File: Highway_Assistant_model.c
*
* Code generated for Simulink model 'Highway_Assistant_model'.
*
* Model version : 1.65
* Simulink Coder version : 9.5 (R2021a) 14-Nov-2020
* C/C++ source code generated on : Sat Jul 2 09:19:11 2022
*
* Target selection: ert.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
* Code generation objectives: Unspecified
* Validation result: Not run
*/
#include "Highway_Assistant_model.h"
#include "Highway_Assistant_model_private.h"
/* Named constants for Chart: '<S2>/Highway_DisplayUnit' */
#define IN_Condition_1
((uint8_T)1U)
#define IN_Condition_2 ((uint8_T)2U)
/* Block states (default storage) */
DW rtDW;
/* External inputs (root inport signals with default storage) */
ExtU rtU;
/* External outputs (root outports fed by signals with default storage) */
ExtY rtY;
/* Real-time model */
static RT_MODEL rtM_;
RT_MODEL *const rtM = &rtM_;
/* Model step function */
void Highway_Assistant_model_step(void)
{
int32_T rtb_Highway_Display_Mode_1;
int32_T rtb_Highway_Display_Mode_3;
int32_T rtb_Lane_Display_Mode_1;
int32_T rtb_Lane_Display_Mode_2;
int32_T rtb_Lane_Display_Mode_3;
int32_T rtb_Lane_Display_Mode_4;
/* Chart: '<S2>/Highway_DisplayUnit' incorporates:
* Inport: '<Root>/Enable_Display'
* Inport: '<Root>/Highway_Input_Signal'
* Inport: '<Root>/Input_Switch'
*/
if (rtDW.is_active_c3_Highway_Assistant_ == 0U) {
rtDW.is_active_c3_Highway_Assistant_ = 1U;
rtDW.is_c3_Highway_Assistant_model = IN_Condition_1;
rtb_Highway_Display_Mode_1 = 232;
rtb_Highway_Display_Mode_3 = 41;
} else if (rtDW.is_c3_Highway_Assistant_model == IN_Condition_1) {
rtb_Highway_Display_Mode_1 = 232;
rtb_Highway_Display_Mode_3 = 41;
if ((rtU.Highway_Input_Signal == 1) && (rtU.Enable_Display == 1) &&
(rtU.Input_Switch == 1)) {
rtDW.is_c3_Highway_Assistant_model = IN_Condition_2;
rtb_Highway_Display_Mode_1 = 213;
rtb_Highway_Display_Mode_3 = 9;
}
} else {
/* case IN_Condition_2: */
rtb_Highway_Display_Mode_1 = 213;
rtb_Highway_Display_Mode_3 = 9;
if ((rtU.Highway_Input_Signal == 1) && (rtU.Enable_Display == 0) &&
(rtU.Input_Switch == 1)) {
rtDW.is_c3_Highway_Assistant_model = IN_Condition_1;
rtb_Highway_Display_Mode_1 = 232;
rtb_Highway_Display_Mode_3 = 41;
}
}
/* End of Chart: '<S2>/Highway_DisplayUnit' */
/* Chart: '<S3>/Lane_DisplayUnit' incorporates:
* Inport: '<Root>/Enable_Display'
* Inport: '<Root>/Input_Switch'
* Inport: '<Root>/Lane_Input_Signal'
*/
if (rtDW.is_active_c1_Highway_Assistant_ == 0U) {
rtDW.is_active_c1_Highway_Assistant_ = 1U;
rtDW.is_c1_Highway_Assistant_model = IN_Condition_1;
rtb_Lane_Display_Mode_1 = 132;
rtb_Lane_Display_Mode_2 = 185;
rtb_Lane_Display_Mode_3 = 54;
rtb_Lane_Display_Mode_4 = 67;
} else if (rtDW.is_c1_Highway_Assistant_model == IN_Condition_1) {
rtb_Lane_Display_Mode_1 = 132;
rtb_Lane_Display_Mode_2 = 185;
rtb_Lane_Display_Mode_3 = 54;
rtb_Lane_Display_Mode_4 = 67;
if ((rtU.Lane_Input_Signal == 6) && (rtU.Enable_Display == 1) &&
(rtU.Input_Switch == 1)) {
rtDW.is_c1_Highway_Assistant_model = IN_Condition_2;
rtb_Lane_Display_Mode_1 = 127;
rtb_Lane_Display_Mode_2 = 248;
rtb_Lane_Display_Mode_3 = 186;
rtb_Lane_Display_Mode_4 = 84;
}
} else {
/* case IN_Condition_2: */
rtb_Lane_Display_Mode_1 = 127;
rtb_Lane_Display_Mode_2 = 248;
rtb_Lane_Display_Mode_3 = 186;
rtb_Lane_Display_Mode_4 = 84;
if ((rtU.Lane_Input_Signal == 6) && (rtU.Enable_Display == 0) &&
(rtU.Input_Switch == 1)) {
rtDW.is_c1_Highway_Assistant_model = IN_Condition_1;
rtb_Lane_Display_Mode_1 = 132;
rtb_Lane_Display_Mode_2 = 185;
rtb_Lane_Display_Mode_3 = 54;
rtb_Lane_Display_Mode_4 = 67;
}
}
/* End of Chart: '<S3>/Lane_DisplayUnit' */
/* Switch: '<S4>/Switch' incorporates:
* Inport: '<Root>/Highway_Input_Signal'
* Switch: '<S4>/Switch1'
* Switch: '<S4>/Switch2'
* Switch: '<S4>/Switch3'
*/
if (rtU.Highway_Input_Signal != 0) {
/* Outport: '<Root>/Display_Mode_1' */
rtY.Display_Mode_1 = (uint8_T)rtb_Highway_Display_Mode_1;
/* Outport: '<Root>/Display_Mode_2' */
rtY.Display_Mode_2 = 183U;
/* Outport: '<Root>/Display_Mode_3' */
rtY.Display_Mode_3 = (uint8_T)rtb_Highway_Display_Mode_3;
/* Outport: '<Root>/Display_Mode_4' */
rtY.Display_Mode_4 = 94U;
} else {
/* Outport: '<Root>/Display_Mode_1' */
rtY.Display_Mode_1 = (uint8_T)rtb_Lane_Display_Mode_1;
/* Outport: '<Root>/Display_Mode_2' */
rtY.Display_Mode_2 = (uint8_T)rtb_Lane_Display_Mode_2;
/* Outport: '<Root>/Display_Mode_3' */
rtY.Display_Mode_3 = (uint8_T)rtb_Lane_Display_Mode_3;
/* Outport: '<Root>/Display_Mode_4' */
rtY.Display_Mode_4 = (uint8_T)rtb_Lane_Display_Mode_4;
}
/* End of Switch: '<S4>/Switch' */
}
/* Model initialize function */
void Highway_Assistant_model_initialize(void)
{
/* (no initialization code required) */
}
/* Model terminate function */
void Highway_Assistant_model_terminate(void)
{
/* (no terminate code required) */
}
/*
* File trailer for generated code.
*
* [EOF]
*/
All the files are placed in the zip file.