Common functions and data structures used in every node in the CAN library.
More...
#include <stdint.h>
#include "common/freertos/freertos.h"
#include "common/phal/can.h"
#include "common/can_library/generated/can_router.h"
Go to the source code of this file.
|
|
#define | CAN_TX_BACKPRESSURE_MS (2) |
| |
|
#define | CAN_TX_QUEUE_LENGTH (64) |
| |
|
#define | CAN_RX_QUEUE_LENGTH (64) |
| |
|
#define | CAN_TX_MAILBOX_CNT (3) |
| |
|
#define | CAN_TX_TIMEOUT_MS (15) |
| |
|
#define | CAN_TX_BLOCK_TIMEOUT (30 * 16000) |
| |
|
#define | CAN_MAILBOX_HIGH_PRIO 0 |
| |
|
#define | CAN_MAILBOX_MED_PRIO 1 |
| |
|
#define | CAN_MAILBOX_LOW_PRIO 2 |
| |
|
#define | CAN_EFF_FLAG 0x80000000U /* EFF/SFF is set in the MSB */ |
| |
|
#define | CAN_RTR_FLAG 0x40000000U /* remote transmission request */ |
| |
|
#define | CAN_ERR_FLAG 0x20000000U /* error message frame */ |
| |
|
#define | CAN_SFF_MASK 0x000007FFU /* standard frame format (SFF) */ |
| |
|
#define | CAN_EFF_MASK 0x1FFFFFFFU /* extended frame format (EFF) */ |
| |
|
#define | CAN_ERR_MASK 0x1FFFFFFFU /* omit EFF, RTR, ERR flags */ |
| |
|
#define | CAN1_IDX 0 |
| |
|
#define | CAN2_IDX 1 |
| |
|
#define | CAN3_IDX 2 |
| |
| #define | GET_PERIPH_IDX(bus) |
| |
|
#define | NUM_CAN_PERIPHERALS_MAX 2 |
| |
|
|
void | CAN_enqueue_tx (CanMsgTypeDef_t *msg) |
| |
|
void | CAN_tx_update () |
| |
|
void | CAN_rx_update () |
| |
|
bool | CAN_library_init () |
| |
|
void | CAN_handle_irq (CAN_TypeDef *bus, uint8_t fifo) |
| |
|
|
can_stats_t | can_stats |
| |
|
volatile uint32_t | last_can_rx_time_ms |
| |
|
QueueHandle_t | q_rx_can |
| |
Common functions and data structures used in every node in the CAN library.
- Author
- Irving Wang (irvin.nosp@m.gw@p.nosp@m.urdue.nosp@m..edu)
-
Ronak Jain (jain7.nosp@m.17@p.nosp@m.urdue.nosp@m..edu)
◆ GET_PERIPH_IDX
| #define GET_PERIPH_IDX |
( |
| bus | ) |
|
Value:((bus == CAN1) ? CAN1_IDX : CAN2_IDX)