Project 2-Highway Assistant-Lane Changing Assistant
CREATED SLDD AND ATTACHED WITH MODEL:

REQUIRMENT 1:
MODEL DEVELOPED AS PER REQUIRMENT 1:

REQUIRMENT 2:
MODEL DEVELOPED AS PER REQUIRMENT 2:

DEVELOPED MODEL :

MAAB GUDLINES REPORT GENERATED :

FOR GENERATING AUTOSAR C-CODE CHANGED SETTING :

SELECTED -AUTOSAR COMPONENT FROM APPS :

COMPLETED AUTOSAR MAPPING SUCCESFULLY :
ADDED SIGNALS TO RECEIVER-SENDER -AND SR INTERFERENCE

FINALLY GENERATED CODE AFTER SUCCESFUL VALIDATION:
/*
* File: Project_2.c
*
* Code generated for Simulink model 'Project_2'.
*
* Model version : 1.4
* Simulink Coder version : 9.5 (R2021a) 14-Nov-2020
* C/C++ source code generated on : Tue Jan 10 23:59:56 2023
*
* Target selection: autosar.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
* Code generation objectives: Unspecified
* Validation result: Not run
*/
#include "Project_2.h"
#include "Project_2_private.h"
/* Named constants for Chart: '/Highway_DisplayUnit1' */
#define Project_2_IN_CONDIION1 ((uint8)1U)
#define Project_2_IN_CONDIION2 ((uint8)2U)
/* Block signals (default storage) */
B_Project_2_T Project_2_B;
/* Block states (default storage) */
DW_Project_2_T Project_2_DW;
/* Model step function */
void Project_2_Step(void)
{
float64 tmp;
float64 tmp_0;
sint32 rtb_Lane_Display_Mode_1;
sint32 rtb_Lane_Display_Mode_2;
sint32 rtb_Lane_Display_Mode_3;
sint32 rtb_Lane_Display_Mode_4;
/* Chart: '/Highway_DisplayUnit1' incorporates:
* Inport: '/Inport'
* Inport: '/Inport1'
* Inport: '/Inport2'
*/
if (Project_2_DW.is_active_c2_Project_2 == 0U) {
Project_2_DW.is_active_c2_Project_2 = 1U;
Project_2_DW.is_c2_Project_2 = Project_2_IN_CONDIION1;
Project_2_B.Highway_Display_Mode_1 = 232.0;
Project_2_B.Highway_Display_Mode_2 = 183.0;
Project_2_B.Highway_Display_Mode_3 = 41.0;
Project_2_B.Highway_Display_Mode_4 = 94.0;
} else if (Project_2_DW.is_c2_Project_2 == Project_2_IN_CONDIION1) {
if ((Rte_IRead_Project_2_Step_Rp_Highway_Input_Signal_DE_Enable_Display() ==
1.0) && (Rte_IRead_Project_2_Step_Rp_Enable_Display_DE_Inport2() == 1.0)
&& (Rte_IRead_Project_2_Step_Rp_Input_Switch_DE_Highway_Input_Signal() ==
1.0)) {
Project_2_DW.is_c2_Project_2 = Project_2_IN_CONDIION2;
Project_2_B.Highway_Display_Mode_1 = 213.0;
Project_2_B.Highway_Display_Mode_2 = 183.0;
Project_2_B.Highway_Display_Mode_3 = 9.0;
Project_2_B.Highway_Display_Mode_4 = 94.0;
}
/* case IN_CONDIION2: */
} else if ((Rte_IRead_Project_2_Step_Rp_Highway_Input_Signal_DE_Enable_Display
() == 1.0) &&
(Rte_IRead_Project_2_Step_Rp_Enable_Display_DE_Inport2() == 0.0) &&
(Rte_IRead_Project_2_Step_Rp_Input_Switch_DE_Highway_Input_Signal()
== 1.0)) {
Project_2_DW.is_c2_Project_2 = Project_2_IN_CONDIION1;
Project_2_B.Highway_Display_Mode_1 = 232.0;
Project_2_B.Highway_Display_Mode_2 = 183.0;
Project_2_B.Highway_Display_Mode_3 = 41.0;
Project_2_B.Highway_Display_Mode_4 = 94.0;
} else {
Project_2_B.Highway_Display_Mode_1 = 213.0;
Project_2_B.Highway_Display_Mode_2 = 183.0;
Project_2_B.Highway_Display_Mode_3 = 9.0;
Project_2_B.Highway_Display_Mode_4 = 94.0;
}
/* End of Chart: '/Highway_DisplayUnit1' */
/* Chart: '/Lane_DisplayUnit' incorporates:
* Inport: '/Inport'
* Inport: '/Inport1'
* Inport: '/Inport2'
*/
if (Project_2_DW.is_active_c1_Project_2 == 0U) {
Project_2_DW.is_active_c1_Project_2 = 1U;
Project_2_DW.is_c1_Project_2 = Project_2_IN_CONDIION1;
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 (Project_2_DW.is_c1_Project_2 == Project_2_IN_CONDIION1) {
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 ((Rte_IRead_Project_2_Step_Rp_Highway_Input_Signal_DE_Enable_Display() ==
6.0) && (Rte_IRead_Project_2_Step_Rp_Enable_Display_DE_Inport2() == 1.0)
&& (Rte_IRead_Project_2_Step_Rp_Input_Switch_DE_Highway_Input_Signal() ==
1.0)) {
Project_2_DW.is_c1_Project_2 = Project_2_IN_CONDIION2;
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_CONDIION2: */
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 ((Rte_IRead_Project_2_Step_Rp_Highway_Input_Signal_DE_Enable_Display() ==
6.0) && (Rte_IRead_Project_2_Step_Rp_Enable_Display_DE_Inport2() == 0.0)
&& (Rte_IRead_Project_2_Step_Rp_Input_Switch_DE_Highway_Input_Signal() ==
1.0)) {
Project_2_DW.is_c1_Project_2 = Project_2_IN_CONDIION1;
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: '/Lane_DisplayUnit' */
/* Switch: '/Switch' incorporates:
* Inport: '/Inport'
* Switch: '/Switch1'
* Switch: '/Switch2'
* Switch: '/Switch3'
*/
tmp_0 = Rte_IRead_Project_2_Step_Rp_Highway_Input_Signal_DE_Enable_Display();
if (tmp_0 != 0.0) {
tmp = Project_2_B.Highway_Display_Mode_1;
} else {
tmp = rtb_Lane_Display_Mode_1;
}
/* End of Switch: '/Switch' */
/* Outport: '/Outport' */
Rte_IWrite_Project_2_Step_Pp_Highway_Display_Mode_1_DE_Outport(tmp);
/* Switch: '/Switch1' */
if (tmp_0 != 0.0) {
tmp = Project_2_B.Highway_Display_Mode_2;
} else {
tmp = rtb_Lane_Display_Mode_2;
}
/* Outport: '/Outport1' */
Rte_IWrite_Project_2_Step_Pp_Highway_Display_Mode_2_DE_Outport1(tmp);
/* Switch: '/Switch2' */
if (tmp_0 != 0.0) {
tmp = Project_2_B.Highway_Display_Mode_3;
} else {
tmp = rtb_Lane_Display_Mode_3;
}
/* Outport: '/Outport2' */
Rte_IWrite_Project_2_Step_Pp_Highway_Display_Mode_3_DE_Outport2(tmp);
/* Switch: '/Switch3' */
if (tmp_0 != 0.0) {
tmp_0 = Project_2_B.Highway_Display_Mode_4;
} else {
tmp_0 = rtb_Lane_Display_Mode_4;
}
/* Outport: '/Outport3' */
Rte_IWrite_Project_2_Step_Pp_Highway_Display_Mode_4_DE_Outport3(tmp_0);
}
/* Model initialize function */
void Project_2_Init(void)
{
/* (no initialization code required) */
}
/*
* File trailer for generated code.
*
* [EOF]
*/