mikroC

making it simple...

CANSPIInitialize

mikroC - C Compiler for Microchip PIC microcontrollers

Prototype

void CANSPIInitialize(char SJW, char BRP, char PHSEG1, char

 

PHSEG2, char PROPSEG, char CAN_CONFIG_FLAGS);

 

 

Description

Initializes CANSPI. All pending transmissions are aborted. Sets all mask registers to 0

 

to allow all messages.

 

 

 

Filter registers are set according to flag value:

 

 

if (CAN_CONFIG_FLAGS & CAN_CONFIG_VALID_XTD_MSG != 0)

 

// Set all filters to XTD_MSG

 

 

 

else if (config & CONFIG_VALID_STD_MSG != 0)

 

// Set all filters to STD_MSG

 

 

 

else

 

 

 

// Set half the filters to STD, and the rest to XTD_MSG

 

Parameters:

 

 

 

SJW as defined in 18XXX8 datasheet (1–4)

 

 

 

BRP as defined in 18XXX8 datasheet (1–64)

 

 

 

PHSEG1 as defined in 18XXX8 datasheet (1–8)

 

 

PHSEG2 as defined in 18XXX8 datasheet (1–8)

 

 

PROPSEG as defined in 18XXX8 datasheet (1–8)

 

 

CAN_CONFIG_FLAGS is formed from predefined constants (see CAN constants, page

 

145).

 

 

 

 

Requires

CANSPI must be in Config mode; otherwise the function will be ignored.

 

 

 

 

Example

init = CAN_CONFIG_SAMPLE_THRICE

&

 

 

CAN_CONFIG_PHSEG2_PRG_ON &

 

 

CAN_CONFIG_STD_MSG

&

 

 

CAN_CONFIG_DBL_BUFFER_ON &

 

 

CAN_CONFIG_VALID_XTD_MSG &

 

 

CAN_CONFIG_LINE_FILTER_OFF;

 

 

...

 

 

 

CANSPIInitialize(1, 1, 3, 3, 1, init);

// initialize CANSPI

 

 

 

 

 

 

page

 

MikroElektronika: Development tools - Books - Compilers

155