Update header #8

Merged
cala-br merged 2 commits from header into master 2022-03-07 00:34:36 +01:00
2 changed files with 15 additions and 10 deletions
+8 -3
View File
@@ -27,14 +27,16 @@
* *
* Ids scheme: * Ids scheme:
* *
* id | type | subtype * id | type | subtype
* -----|------|--------- * -------|------|---------
* SCS | 000 | xxxxxxx * SCS | 000 | xxxxxxx
* DRIVE | 001 | xxxxxxx
*/ */
typedef enum MmrCanMessageId MmrCanMessageId; typedef enum MmrCanMessageId MmrCanMessageId;
typedef enum { typedef enum {
MMR_CAN_MESSAGE_ID_TYPE_SCS = 0, MMR_CAN_MESSAGE_ID_TYPE_SCS = 0,
MMR_CAN_MESSAGE_ID_TYPE_DRIVE = 1,
} MmrCanMessageIdType; } MmrCanMessageIdType;
@@ -90,6 +92,9 @@ enum MmrCanMessageId {
MMR_CAN_MESSAGE_ID_SCS_AM_EBS_TEST, MMR_CAN_MESSAGE_ID_SCS_AM_EBS_TEST,
MMR_CAN_MESSAGE_ID_SCS_AM_INSPECTION = 0x17, MMR_CAN_MESSAGE_ID_SCS_AM_INSPECTION = 0x17,
// !SCS // !SCS
// DRIVE
MMR_CAN_MESSAGE_ID_DRIVE_STEERING_ANGLE = 0x8A,
// !DRIVE
}; };
#endif // !INC_MMR_CAN_MESSAGE_ID_H_ #endif // !INC_MMR_CAN_MESSAGE_ID_H_
+7 -7
View File
@@ -4,18 +4,18 @@
uint32_t MMR_CAN_HeaderToBits(MmrCanHeader header) { uint32_t MMR_CAN_HeaderToBits(MmrCanHeader header) {
return 0 return 0
| ((uint32_t)header.priority << 26) | ((uint32_t)header.priority << 26)
| ((uint32_t)header.messageId << 23) | ((uint32_t)header.messageId << 16)
| ((uint32_t)header.senderId << 13) | ((uint32_t)header.senderId << 6)
| ((uint32_t)header.seqNumber << 3) | ((uint32_t)header.seqNumber << 3)
| ((uint32_t)header.messageType); | ((uint32_t)header.messageType);
} }
MmrCanHeader MMR_CAN_HeaderFromBits(uint32_t bits) { MmrCanHeader MMR_CAN_HeaderFromBits(uint32_t bits) {
return (MmrCanHeader) { return (MmrCanHeader) {
.priority = bits >> 26, .priority = bits >> 26,
.messageId = bits >> 23, .messageId = bits >> 16,
.senderId = bits >> 13, .senderId = bits >> 6,
.seqNumber = bits >> 3, .seqNumber = bits >> 3,
.messageType = bits, .messageType = bits,
}; };