1 /************************************************************/
3 /* CarState State transition model source file */
4 /* ZIPC Designer Version 1.2.1 */
5 /************************************************************/
6 #include "../ZST_include.h"
8 /* State management variable */
9 static uint8_t ZCAR_CarStateState[ZCAR_CARSTATESTATENOMAX];
11 static void ZCAR_CarStates0e1( void );
12 static void ZCAR_CarStates1e0( void );
13 static void ZCAR_CarStates0Event( void );
14 static void ZCAR_CarStates1Event( void );
16 /****************************************/
19 /* State : car_stop( No 0 ) */
20 /* Event : stt_accel_pedal_on( No 1 ) */
21 /****************************************/
22 static void ZCAR_CarStates0e1( void )
24 ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATES1;
25 stm_rns_start_activity_car_run();
28 /****************************************/
31 /* State : car_run( No 1 ) */
32 /* Event : stt_accel_pedal_off( No 0 )*/
33 /****************************************/
34 static void ZCAR_CarStates1e0( void )
36 ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATES0;
37 stm_rns_start_activity_car_stop();
40 /****************************************/
41 /* Event appraisal function */
43 /* State : car_stop( No 0 ) */
44 /****************************************/
45 static void ZCAR_CarStates0Event( void )
47 /*stt_accel_pedal_on*/
48 if( g_stm_crr_state.car_element[StmCarElementNoAccelPedal].state == StmAccelPedalSttNoOn )
54 /*Else and default design have not done.*/
55 /*Please confirm the STM and design else and default.*/
59 /****************************************/
60 /* Event appraisal function */
62 /* State : car_run( No 1 ) */
63 /****************************************/
64 static void ZCAR_CarStates1Event( void )
66 /*stt_accel_pedal_off*/
67 if( g_stm_crr_state.car_element[StmCarElementNoAccelPedal].state == StmAccelPedalSttNoOff )
73 /*Else and default design have not done.*/
74 /*Please confirm the STM and design else and default.*/
78 /****************************************/
79 /* Event call function */
81 /****************************************/
82 void stm_rns_event_call( void )
85 switch( ZCAR_CarStateState[ZCAR_CARSTATE] )
88 ZCAR_CarStates0Event();
91 ZCAR_CarStates1Event();
94 /*Not accessible to this else (default).*/
99 /****************************************/
100 /* Initial function */
102 /****************************************/
103 void stm_rns_initialize( void )
105 ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATES0;
106 stm_rns_start_activity_car_stop();
109 /****************************************/
110 /* Terminate function */
112 /****************************************/
113 void ZCAR_CarStateTerminate( void )
115 ZCAR_CarStateState[ZCAR_CARSTATE] = ( uint8_t )ZCAR_CARSTATETERMINATE;