Custom_Element 结构在 user_define.h 中定义。Custom_Element 也显示在 图 2-5 中。
来源标识符指示消息的来源。以下是示例(CAN_ID_LENGTH =0,UART_ID_LENGTH =4)。
- 示例 1 - CAN 接口接收和传输
- 当 CAN-UART 桥接器接收到 CAN 消息时,CAN 帧的 ID 是来源标识符,其指示消息的来源。
- 当 CAN-UART 桥接器传输 CAN 消息时,将忽略来源标识符(CAN_ID_LENGTH 默认设置为 0)。
- 示例 2 - UART 接口接收和传输(UART 协议传输)
- 当 CAN-UART 桥接器接收到 UART 消息(UART 协议传输)时,由于 UART 没有 ID,DEFAULT_UART_ORIGIN_ID 是来源标识符。
- 当 CAN-UART 桥接器传输 UART 消息(UART 协议传输)时,UART 数据中的来源标识符 将是 4 字节 ID(UART_ID_LENGTH 默认设置为 4),其指示消息来源。
- 示例 3 - UART 接口接收和传输(UART 透明传输)
- 当 CAN-UART 桥接器接收到 UART 消息(UART 透明传输)时,由于 UART 没有 ID,DEFAULT_UART_ORIGIN_ID 是来源标识符。
- 当 CAN-UART 桥接器传输 UART 消息(UART 透明传输)时,将忽略来源标识符(透明传输没有 ID 区域)。
目标标识符 指示消息的目标。以下是示例(CAN_ID_LENGTH =0,UART_ID_LENGTH =4)。
- 示例 1 - CAN 接口接收和传输
- 当 CAN-UART 桥接器接收 CAN 消息时,由于 CAN_ID_LENGTH 默认设置为 0,DEFAULT_CAN_DESTINATION_ID 是目标标识符。UART 传输不需要 ID。
- 当 CAN-UART 桥接器传输 CAN 消息时,目标标识符 将是 CAN 帧中的 CAN ID。在此示例中,11 位和 29 位均受支持。
- 示例 2 - UART 接口接收和传输(UART 协议传输)
- 当 CAN-UART 桥接器接收到 UART 消息(UART 协议传输)时,来自 UART 数据的 4 字节 ID 是目标标识符(UART_ID_LENGTH 默认设置为 4)。CAN 传输需要 ID 信息。
- 当 CAN-UART 桥接器传输 UART 消息(UART 协议传输)时,由于 UART 传输不需要 ID,将忽略目标标识符。
- 示例 3 - UART 接口接收和传输(UART 透明传输)
- 当 CAN-UART 桥接器接收 UART 消息(UART 透明传输)时,DEFAULT_UART_DESTINATION_ID 是目标标识符。(透明传输没有 ID 区域)。CAN 传输需要 ID 信息。
- 当 CAN-UART 桥接器传输 UART 消息(UART 透明传输)时,由于 UART 传输不需要 ID,将忽略目标标识符。
/*user-defined information storage structure */
typedef struct {
/*! Origin Identifier, indicating the origin of the message */
uint32_t origin_id;
/*! Destination Identifier, indicating the destination of the message */
uint32_t destination_id;
/*! Data Length Code */
uint8_t dlc;
/*! Data bytes */
uint8_t data[TRANSMIT_DATA_LENGTH];
} Custom_Element;