mikroC - C Compiler for Microchip PIC microcontrollers
// ..continued
#define CAN_CONFIG_DBL_BUFFER_BIT
#define CAN_CONFIG_DBL_BUFFER_ON
#define CAN_CONFIG_DBL_BUFFER_OFF
#define CAN_CONFIG_MSG_BITS
#define CAN_CONFIG_ALL_MSG
#define CAN_CONFIG_VALID_XTD_MSG
#define CAN_CONFIG_VALID_STD_MSG
#define CAN_CONFIG_ALL_VALID_MSG
You may use bitwise AND (
ple:
init = CAN_CONFIG_SAMPLE_THRICE & CAN_CONFIG_PHSEG2_PRG_ON &
//...
CANInitialize(1, 1, 3, 3, 1, init);
CAN_TX_MSG_FLAGS
CAN_TX_MSG_FLAGS
#define CAN_TX_PRIORITY_BITS
#define CAN_TX_PRIORITY_0
#define CAN_TX_PRIORITY_1
#define CAN_TX_PRIORITY_2
#define CAN_TX_PRIORITY_3
#define CAN_TX_FRAME_BIT
#define CAN_TX_STD_FRAME
#define CAN_TX_XTD_FRAME
#define CAN_TX_RTR_BIT
#define CAN_TX_NO_RTR_FRAME
#define CAN_TX_RTR_FRAME
You may use bitwise AND (
/* form value to be used with CANSendMessage: */
send_config = CAN_TX_PRIORITY_0 && CAN_TX_XTD_FRAME &
//...
CANSendMessage(id, data, 1, send_config);
page
148
) to form config byte out of these values. For exam-
&
CAN_CONFIG_STD_MSG
CAN_CONFIG_VALID_XTD_MSG & CAN_CONFIG_LINE_FILTER_OFF;
are flags related to transmission of a CAN message:
) to adjust the appropriate flags. For example:
&
CAN_TX_NO_RTR_FRAME;
MikroElektronika: Development tools - Books - Compilers
0x10
0xFF
// XXX1XXXX
0xEF
// XXX0XXXX
0x60
0xFF
// X11XXXXX
0xDF
// X10XXXXX
0xBF
// X01XXXXX
// X00XXXXX
0x9F
& CAN_CONFIG_DBL_BUFFER_ON &
// initialize CAN
0x03
0xFC
// XXXXXX00
0xFD
// XXXXXX01
0xFE
// XXXXXX10
0xFF
// XXXXXX11
0x08
0xFF
// XXXXX1XX
// XXXXX0XX
0xF7
0x40
// X1XXXXXX
0xFF
// X0XXXXXX
0xBF
mikroC
making it simple...
Need help?
Do you have a question about the PIC Microcontrollers PIC12 and is the answer not in the manual?