Datasheet

CANSPI_CONFIG_DBL_BUFFER_BIT = 0x10,
CANSPI_CONFIG_DBL_BUFFER_ON = 0xFF, // XXX1XXXX
CANSPI_CONFIG_DBL_BUFFER_OFF = 0xEF, // XXX0XXXX
CANSPI_CONFIG_MSG_BITS = 0x60,
CANSPI_CONFIG_ALL_MSG = 0xFF, // X11XXXXX
CANSPI_CONFIG_VALID_XTD_MSG = 0xDF, // X10XXXXX
CANSPI_CONFIG_VALID_STD_MSG = 0xBF, // X01XXXXX
CANSPI_CONFIG_ALL_VALID_MSG = 0x9F; // X00XXXXX
You may use bitwise AND (&) to form config byte out of these values. For example:
init = CANSPI_CONFIG_SAMPLE_THRICE &
CANSPI_CONFIG_PHSEG2_PRG_ON &
CANSPI_CONFIG_STD_MSG &
CANSPI_CONFIG_DBL_BUFFER_ON &
CANSPI_CONFIG_VALID_XTD_MSG &
CANSPI_CONFIG_LINE_FILTER_OFF;
...
CANSPIInitialize(1, 1, 3, 3, 1, init); // initialize CANSPI
CANSPI_TX_MSG_FLAGS
CANSPI_TX_MSG_FLAGS are flags related to transmission of a CAN message:
const char
CANSPI_TX_PRIORITY_BITS = 0x03,
CANSPI_TX_PRIORITY_0 = 0xFC, // XXXXXX00
CANSPI_TX_PRIORITY_1 = 0xFD, // XXXXXX01
CANSPI_TX_PRIORITY_2 = 0xFE, // XXXXXX10
CANSPI_TX_PRIORITY_3 = 0xFF, // XXXXXX11
CANSPI_TX_FRAME_BIT = 0x08,
CANSPI_TX_STD_FRAME = 0xFF, // XXXXX1XX
CANSPI_TX_XTD_FRAME = 0xF7, // XXXXX0XX
CANSPI_TX_RTR_BIT = 0x40,
CANSPI_TX_NO_RTR_FRAME = 0xFF, // X1XXXXXX
CANSPI_TX_RTR_FRAME = 0xBF; // X0XXXXXX
You may use bitwise AND (&) to adjust the appropriate flags. For example:
/* form value to be used as sending message flag : */
send_config = CANSPI_TX_PRIORITY_0 &
CANSPI_TX_XTD_FRAME &
CANSPI_TX_NO_RTR_FRAME;
...
CANSPIWrite(id, data, 1, send_config);
245
MIKROELEKTRONIKA - SOFTWARE AND HARDWARE SOLUTIONS FOR EMBEDDED WORLD
Libraries
mikroC PRO for AVR
CHAPTER 6