2023-01-21 22:33:27 +01:00

50 lines
963 B
C

/**
* @file
* @brief CAN driver message request types for use in C code.
*/
#ifndef STA_RTOS_C_API_CAN_MSG_H
#define STA_RTOS_C_API_CAN_MSG_H
#include <stdint.h>
/**
* @brief CAN message header.
*
* @ingroup STA_RTOS_CanBus
*/
struct CanMsgHeader
{
uint32_t sid; /**< Message SID */
uint32_t eid; /**< Message EID */
uint8_t format; /**< Message ID format */
uint8_t payloadLength; /**< Payload length */
};
/**
* @brief Element type for CAN data message queue.
*
* @ingroup STA_RTOS_CanBus
*/
struct CanDataMsg
{
struct CanMsgHeader header; /**< Message header data */
uint8_t payload[64]; /**< Message payload */
};
/**
* @brief Element type for CAN system message queue.
*
* @ingroup STA_RTOS_CanBus
*/
struct CanSysMsg
{
struct CanMsgHeader header; /**< Message header data */
uint8_t payload[8]; /**< Message payload */
};
#endif // STA_RTOS_C_API_CAN_MSG_H