#ifndef AFS_CFG_H #define AFS_CFG_H // ***************************************************************************** // Filename : Afs_Cfg.h // // Project : // // Author : Mario.Wang // Owner : // // Date : 09.26.2022 // // Description : speed class for afs function // // (C) Automotive-Lighting - ALSH/EE-SW // No.685, Jujin Road, Pudong New District, Shanghai, China // ***************************************************************************** /* steer wheel angle, raw data of CAN signal, transmit to 0.1 degree value. output value unit : 0.1degree */ #define STEER_WHEEL_ANGLE_DEGREE_DECI(RawDataAngle) ((RawDataAngle)-7800u) /* vehicle speed, raw data of CAN signal transmit to 0.1 km/h value. output value unit : 0.1km/h */ #define VEHICLE_SPEED_KMPH_DECI(RawDataSpeed) (((RawDataSpeed) * (uint8)9u) >> (uint8)4u) /* steering wheel angle(degree) = ( BDCM_RT_31.EPS_PinionAg_1 * 0.1 -780 ), unit is degree */ /* When in speed class V1 mode, threshold degree is [40,70] */ #define SBL_THRSHOLD_UPPER_70DEGREE_RAW_L_SIGNAL (700+7800) #define SBL_THRSHOLD_LOWER_40DEGREE_RAW_L_SIGNAL (400+7800) #define SBL_THRSHOLD_UPPER_70DEGREE_RAW_R_SIGNAL (7800-700) #define SBL_THRSHOLD_LOWER_40DEGREE_RAW_R_SIGNAL (7800-400) /* When in speed class C mode, threshold degree is [30,50] */ #define SBL_THRSHOLD_UPPER_50DEGREE_RAW_L_SIGNAL (500+7800) #define SBL_THRSHOLD_LOWER_30DEGREE_RAW_L_SIGNAL (300+7800) #define SBL_THRSHOLD_UPPER_50DEGREE_RAW_R_SIGNAL (7800-500) #define SBL_THRSHOLD_LOWER_30DEGREE_RAW_R_SIGNAL (7800-300) #define SBL_NEUTRAL_DEGREE_RAW_SIGNAL 7800 #define SPD_CLASS_ZERO ( 0u) #define CODMCFG_NUM ( 10u) // vertical stepper offset definition for different AFS speed mode or travel mode #define SPD_CLASS_V1_STP_OFFSET (-57) /* -0.57 deg, class V1 */ #define SPD_CLASS_V2_STP_OFFSET (-57) /* -0.57 deg, class V2 */ #define SPD_CLASS_V3_STP_OFFSET (-57) /* -0.57 deg, class V3 */ #define SPD_CLASS_C1_STP_OFFSET (-57) /* -0.57 deg, class C1 */ #define SPD_CLASS_C2_STP_OFFSET (-57) /* -0.57 deg, class C2 */ #define SPD_CLASS_C3_STP_OFFSET (-57) /* -0.57 deg, class C3 */ #define SPD_CLASS_E1_STP_OFFSET (-46) /* -0.46 deg, class E1 */ #define SPD_CLASS_E2_STP_OFFSET (-46) /* -0.46 deg, class E2 */ #define SPD_CLASS_E3_STP_OFFSET (-46) /* -0.46 deg, class E3 */ #define SPD_CLASS_INACTIVE_STP_OFFSET (-57) /* -0.57 deg, class INACTIVE */ #define TURN_STEER_DEBOUNCE_TIME (100u) /* ms, debounce time for new Turn by steer */ #define SPEED_CLASS_DEBOUNCE_TIME (300u) /* ms, debounce time for new speed class */ //Fill in the AFS mode as required. Fill in the 0xff mode if not used #define AFS_SPD_CLASS_INACTIVE (0u) #define AFS_SPD_CLASS_V1 (1u) #define AFS_SPD_CLASS_V2 (2u) #define AFS_SPD_CLASS_V3 (0xff) #define AFS_SPD_CLASS_C1 (3u) #define AFS_SPD_CLASS_C2 (0xff) #define AFS_SPD_CLASS_C3 (0xff) #define AFS_SPD_CLASS_E1 (4u) #define AFS_SPD_CLASS_E2 (0xff) #define AFS_SPD_CLASS_E3 (0xff) #define AFS_SPD_CLASS_NUM (10u) #define ROMPARA_AFSCONFIG_AFSMODE_INACTIVE \ { \ 1, /* ModeEnable*/ \ 0, /* reserved1*/ \ 0, /* Speed_LowThreshold*/ \ 0, /* Speed_HighThreshold*/ \ 57, /* LWR_Offset*/ \ 0, /* SBLEnable*/ \ 0, /* SteeringAngle_On_Left*/ \ 0, /* SteeringAngle_Off_Left*/ \ 0, /* SteeringAngle_On_Right*/ \ 0, /* SteeringAngle_Off_Right*/ \ {0, 0} /* reserved2*/ \ } #define ROMPARA_AFSCONFIG_AFSMODE_INIT \ { \ 0, /* ModeEnable*/ \ 0, /* reserved1*/ \ 0, /* Speed_LowThreshold*/ \ 0, /* Speed_HighThreshold*/ \ 0, /* LWR_Offset*/ \ 0, /* SBLEnable*/ \ 0, /* SteeringAngle_On_Left*/ \ 0, /* SteeringAngle_Off_Left*/ \ 0, /* SteeringAngle_On_Right*/ \ 0, /* SteeringAngle_Off_Right*/ \ {0, 0} /* reserved2*/ \ } /* Please delete the micro-define after Util_Time.h is OK */ #define AFS_NORMAL_TIMER (1u) /*Defined validity of signal*/ #define SigQtyValid (0u) //Is switch on or off? #define Switch_ON (1u) #define Switch_OFF (0u) #define Power_ON (1u) #define Power_OFF (0u) #define LightKnob_Auto (1u) #define CLEnable (1u) #define CLDisable (0u) #endif // AFS_CFG_H