diff --git a/Inc/mmr_can_message_id.h b/Inc/mmr_can_message_id.h index c7feee5..3d9598e 100644 --- a/Inc/mmr_can_message_id.h +++ b/Inc/mmr_can_message_id.h @@ -27,16 +27,26 @@ * * Ids scheme: * - * id | type | subtype - * -------|------|--------- - * SCS | 000 | xxxxxxx - * DRIVE | 001 | xxxxxxx + * id | type | subtype + * ----------------------------|-------|--------- + * SENSING | 00000 | xxxxx + * AUTONOMOUS_STATE | 00001 | + * MANUAL_MISSION | 00010 | + * AUTONOMOUS_MISSION | 00011 | + * AUTONOMOUS_MISSION_CONTROL | 00100 | + * DRIVE | 00101 | + * ECU_BOSCH | 00110 | */ typedef enum MmrCanMessageId MmrCanMessageId; typedef enum MmrCanMessageIdType { - MMR_CAN_MESSAGE_ID_TYPE_SCS = 0, - MMR_CAN_MESSAGE_ID_TYPE_DRIVE = 1, + MMR_CAN_MESSAGE_ID_TYPE_SENSING, + MMR_CAN_MESSAGE_ID_TYPE_AUTONOMOUS_STATE, + MMR_CAN_MESSAGE_ID_TYPE_MANUAL_MISSION, + MMR_CAN_MESSAGE_ID_TYPE_AUTONOMOUS_MISSION, + MMR_CAN_MESSAGE_ID_TYPE_AUTONOMOUS_MISSION_CONTROL, + MMR_CAN_MESSAGE_ID_TYPE_DRIVE, + MMR_CAN_MESSAGE_ID_TYPE_ECU_BOSCH, } MmrCanMessageIdType; @@ -65,36 +75,52 @@ bool MMR_CAN_IsMessageIdOfType(MmrCanMessageId msgId, MmrCanMessageIdType type); enum MmrCanMessageId { -// SCS - MMR_CAN_MESSAGE_ID_SCS_PPA = 0x1, - MMR_CAN_MESSAGE_ID_SCS_PLF, - MMR_CAN_MESSAGE_ID_SCS_LV12, - MMR_CAN_MESSAGE_ID_SCS_LV24, - MMR_CAN_MESSAGE_ID_SCS_PF, - MMR_CAN_MESSAGE_ID_SCS_FRBPS, - MMR_CAN_MESSAGE_ID_SCS_EBS, - MMR_CAN_MESSAGE_ID_SCS_APPS, - MMR_CAN_MESSAGE_ID_SCS_TPS, - - MMR_CAN_MESSAGE_ID_SCS_AS_R2D, - MMR_CAN_MESSAGE_ID_SCS_AS_TS, - MMR_CAN_MESSAGE_ID_SCS_AS_FINISHED, - MMR_CAN_MESSAGE_ID_SCS_AS_EMERGENCY, - MMR_CAN_MESSAGE_ID_SCS_AS_READY, - MMR_CAN_MESSAGE_ID_SCS_AS_DRIVING, - MMR_CAN_MESSAGE_ID_SCS_AS_OFF, - - MMR_CAN_MESSAGE_ID_SCS_AM_MANUAL_DRIVING, - MMR_CAN_MESSAGE_ID_SCS_AM_ACCELERATION, - MMR_CAN_MESSAGE_ID_SCS_AM_SKIDPAD, - MMR_CAN_MESSAGE_ID_SCS_AM_AUTOCROSS, - MMR_CAN_MESSAGE_ID_SCS_AM_TRACKDRIVE, - MMR_CAN_MESSAGE_ID_SCS_AM_EBS_TEST, - MMR_CAN_MESSAGE_ID_SCS_AM_INSPECTION = 0x17, -// !SCS +// SENSING + MMR_CAN_MESSAGE_ID_S_PPA = 0x0, + MMR_CAN_MESSAGE_ID_S_LV12, + MMR_CAN_MESSAGE_ID_S_LV24, + MMR_CAN_MESSAGE_ID_S_PF, + MMR_CAN_MESSAGE_ID_S_FRBPS, + MMR_CAN_MESSAGE_ID_S_EBS, + MMR_CAN_MESSAGE_ID_S_APPS, + MMR_CAN_MESSAGE_ID_S_TPS, + MMR_CAN_MESSAGE_ID_S_CLUTCH, +// !SENSING +// AUTONOMOUS_STATE + MMR_CAN_MESSAGE_ID_AS_R2D = 32, + MMR_CAN_MESSAGE_ID_AS_TS, + MMR_CAN_MESSAGE_ID_AS_FINISHED, + MMR_CAN_MESSAGE_ID_AS_EMERGENCY, + MMR_CAN_MESSAGE_ID_AS_READY, + MMR_CAN_MESSAGE_ID_AS_DRIVING, + MMR_CAN_MESSAGE_ID_AS_OFF, +// !AUTONOMOUS_STATE +// MANUAL_MISSION + MMR_CAN_MESSAGE_ID_MM_MANUAL = 64, +// !MANUAL_MISSION +// AUTONOMOUS_MISSION + MMR_CAN_MESSAGE_ID_AM_ACCELERATION = 96, + MMR_CAN_MESSAGE_ID_AM_SKIDPAD, + MMR_CAN_MESSAGE_ID_AM_AUTOCROSS, + MMR_CAN_MESSAGE_ID_AM_TRACKDRIVE, + MMR_CAN_MESSAGE_ID_AM_EBS_TEST, + MMR_CAN_MESSAGE_ID_AM_INSPECTION, +// !AUTONOMOUS_MISSION +// AUTONOMOUS_MISSION_CONTROL + MMR_CAN_MESSAGE_ID_AMC_MISSION_FINISHED = 128, + MMR_CAN_MESSAGE_ID_AMC_VEHICLE_STANDSTILL, + MMR_CAN_MESSAGE_ID_AMC_MISSION_SELECTED, + MMR_CAN_MESSAGE_ID_AMC_ASMS, + MMR_CAN_MESSAGE_ID_AMC_ASB, + MMR_CAN_MESSAGE_ID_AMC_TS, + MMR_CAN_MESSAGE_ID_AMC_BE, +// !AUTONOMOUS_MISSION_CONTROL // DRIVE - MMR_CAN_MESSAGE_ID_DRIVE_STEERING_ANGLE = 0x8A, + MMR_CAN_MESSAGE_ID_D_STEERING_ANGLE = 160, // !DRIVE +// ECU_BOSCH + MMR_CAN_MESSAGE_ID_ECU_BOSCH_ = 192, +// !ECU_BOSCH }; #endif // !INC_MMR_CAN_MESSAGE_ID_H_ diff --git a/Src/mmr_can_message_id.c b/Src/mmr_can_message_id.c index eeb4c0f..2acb7b0 100644 --- a/Src/mmr_can_message_id.c +++ b/Src/mmr_can_message_id.c @@ -11,9 +11,9 @@ bool MMR_CAN_IsMessageIdOfType( uint8_t MMR_CAN_GetMessageIdType(MmrCanMessageId msgId) { - return msgId >> 7; + return msgId >> 5; } uint8_t MMR_CAN_GetMessageIdSubtype(MmrCanMessageId msgId) { - return msgId & B8_(0111, 1111); + return msgId & B8_(0001, 1111); }