//***************************************************************************** // (C) Automotive Lighting Reutlingen GmbH // Tuebinger Strasse 123, 72762 Reutlingen, Germany // // Automotive Lighting Reutlingen GmbH owns all the rights to this work. // This work shall not be copied, reproduced, used, modified, transferred // or its information shall not be disclosed without the prior written // authorization of Automotive Lighting Reutlingen GmbH. //***************************************************************************** ///---------------------------------------------------------------------------- /// \file CddMlcCan_Cfg.h /// /// \brief Can transmit, receive and clock map configuration /// /// \descr Can transmit, receive and clock map configuration /// //----------------------------------------------------------------------------- //============================================================================= // Includes //============================================================================= #include /****************************************************************************** * G E N E R A L O P T I O N S ******************************************************************************/ // F33613C //============================================================================= // Defines //============================================================================= #define RX_BUFF_0 0UL #define RX_BUFF_1 1UL #define RX_BUFF_2 2UL #define RX_BUFF_3 3UL #define RX_BUFF_4 4UL #define RX_BUFF_5 5UL #define RX_BUFF_6 6UL #define RX_BUFF_7 7UL #define RX_BUFF_8 8UL #define RX_BUFF_9 9UL #define RX_BUFF_10 10UL #define RX_BUFF_11 11UL #define RX_BUFF_12 12UL #define RX_BUFF_13 13UL #define RX_BUFF_14 14UL #define RX_BUFF_15 15UL #define RX_BUFF_16 16UL #define RX_BUFF_17 17UL #define RX_BUFF_18 18UL #define RX_BUFF_19 19UL #define RX_BUFF_20 20UL #define RX_BUFF_21 21UL #define RX_BUFF_22 22UL #define RX_BUFF_23 23UL #define RX_BUFF_24 24UL #define RX_BUFF_25 25UL #define RX_BUFF_26 26UL #define RX_BUFF_27 27UL #define RX_BUFF_28 28UL #define RX_BUFF_29 29UL #define RX_BUFF_30 30UL #define RX_BUFF_31 31UL // ... up to 64 buffers available (until RX_BUFF_63 0x63U) // RX_FIFO_0 and RX_FIFO_1 can also be used for storing up to 64 messages in each // Definition of the used clock speed in [Hz] of FCAN clock #define CAN_CLOCK_FCAN 40000000U #define CAN_MAX_CHANNELS 2U #define CAN_CHANNEL_PRIVATE 0U #define CAN_CHANNEL_SATELLITE 1U #define TX_BUFF_0 0x00U #define TX_BUFF_1 0x01U // ... up to 64 buffers available (until TX_BUFF_63 0x63U) /****************************************************************************** * C A L L B A C K F U N C T I O N D E C L A R A T I O N * * Declare all callback functions here * * RX MAP FORMAT: * void rx_fct(can_handle_type rx_handle, const uint8* data, uint8 dlc) * * TX MAP FORMAT: * void tx_fct(can_handle_type tx_handle) * * ERR MAP FORMAT: * void err_fct(uint8 channel, can_err_type error) * ******************************************************************************/ #if defined(CAN_MAC_DECL_FCT) void CddMlcNxp_ReceivedResponse(can_handle_type rx_handle, const uint8* data, uint8 dlc); void CddMlcCan_TxBptCallback(can_handle_type tx_handle); void CddMlcCan_ErrorHandle(uint8 channel, can_err_type error); #endif /****************************************************************************** * C A N H A N D L E S * * This list defines (and declares) all CAN message handles * ******************************************************************************/ BEGIN_CAN_HANDLE_DEF CAN_HANDLE(CAN_RX_MLC0_MSG) CAN_HANDLE(CAN_RX_MLC1_MSG) CAN_HANDLE(CAN_RX_MLC2_MSG) CAN_HANDLE(CAN_RX_MLC3_MSG) CAN_HANDLE(CAN_RX_MLC4_MSG) CAN_HANDLE(CAN_RX_MLC5_MSG) CAN_HANDLE(CAN_RX_MLC6_MSG) CAN_HANDLE(CAN_RX_MLC7_MSG) CAN_HANDLE(CAN_RX_MLC8_MSG) CAN_HANDLE(CAN_RX_MLC9_MSG) CAN_HANDLE(CAN_RX_MLC10_MSG) CAN_HANDLE(CAN_RX_MLC11_MSG) CAN_HANDLE(CAN_RX_MLC12_MSG) CAN_HANDLE(CAN_RX_MLC13_MSG) CAN_HANDLE(CAN_RX_MLC14_MSG) CAN_HANDLE(CAN_RX_MLC15_MSG) CAN_HANDLE(CAN_RX_MLC16_MSG) CAN_HANDLE(CAN_RX_MLC17_MSG) CAN_HANDLE(CAN_RX_MLC18_MSG) CAN_HANDLE(CAN_RX_MLC19_MSG) CAN_HANDLE(CAN_RX_MLC20_MSG) CAN_HANDLE(CAN_RX_MLC21_MSG) CAN_HANDLE(CAN_RX_MLC22_MSG) CAN_HANDLE(CAN_RX_MLC23_MSG) CAN_HANDLE(CAN_RX_MLC24_MSG) CAN_HANDLE(CAN_RX_MLC25_MSG) CAN_HANDLE(CAN_RX_MLC26_MSG) CAN_HANDLE(CAN_RX_MLC27_MSG) CAN_HANDLE(CAN_RX_MLC28_MSG) CAN_HANDLE(CAN_RX_MLC29_MSG) CAN_HANDLE(CAN_RX_MLC30_MSG) CAN_HANDLE(CAN_RX_MLC31_MSG) CAN_HANDLE(CAN_TX_MLC_MSG) END_CAN_HANDLE_DEF /****************************************************************************** * C A N R E C E I V E M A P * * This map defines which messages are received and assigns CAN buffers and callback * functions * * channel The interface the message should be received on * handle The handle of the message * can id The CAN ID, standard or extended format * mask All 1 bits in the mask are checked against the received ID, * normally the VALUE is CAN_MSG_ID_xxx_MASK_ALL - not implemented at the moment - TODO * flags Message flags, possible are * CAN_MSG_FRM_DATA : receive a data frame (default) * CAN_MSG_FRM_REMOTE : receive a remote frame (either data or remote must be used) - not implemented at the moment TODO * CAN_MSG_TX_MIRROR : receive a mirrored frame of the own transmission - not implemented at the moment - TODO * dlc Length to check, 0 to disable the length check * buffer Buffer number in which the message is stored (0 - 63 is valid for each channel) * RX_FIFO_0 and RX_FIFO_1 can also be used for storing up to 64 messages in each one (for each channel) * callback Called upon message reception - either on interrupt or task level * function format is void callback(can_handle_type rx_handle, const uint8* data, uint8 dlc); * * CAUTION: - If you use more than one CAN interface (channel) : Group channels * TOGETHER together in ASCENDING CHANNEL order! * - DO NOT use a buffer number twice!! Buffer numbers are globally here, * not on channel basis! * ******************************************************************************/ BEGIN_CAN_RX_MAP // CHANNEL HANDLE CAN ID MASK FLAGS DLC BUFFER CALLBACK CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC0_MSG, 0x7E0, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_0, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC1_MSG, 0x7E1, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_1, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC2_MSG, 0x7E2, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_2, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC3_MSG, 0x7E3, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_3, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC4_MSG, 0x7E4, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_4, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC5_MSG, 0x7E5, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_5, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC6_MSG, 0x7E6, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_6, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC7_MSG, 0x7E7, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_7, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC8_MSG, 0x7E8, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_8, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC9_MSG, 0x7E9, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_9, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC10_MSG, 0x7EA, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_10, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC11_MSG, 0x7EB, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_11, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC12_MSG, 0x7EC, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_12, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC13_MSG, 0x7ED, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_13, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC14_MSG, 0x7EE, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_14, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC15_MSG, 0x7EF, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_15, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC16_MSG, 0x7F0, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_16, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC17_MSG, 0x7F1, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_17, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC18_MSG, 0x7F2, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_18, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC19_MSG, 0x7F3, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_19, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC20_MSG, 0x7F4, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_20, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC21_MSG, 0x7F5, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_21, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC22_MSG, 0x7F6, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_22, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC23_MSG, 0x7F7, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_23, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC24_MSG, 0x7F8, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_24, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC25_MSG, 0x7F9, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_25, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC26_MSG, 0x7FA, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_26, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC27_MSG, 0x7FB, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_27, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC28_MSG, 0x7FC, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_28, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC29_MSG, 0x7FD, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_29, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC30_MSG, 0x7FE, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_30, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_PRIVATE, CAN_RX_MLC31_MSG, 0x7FF, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_31, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC0_MSG, 0x7E0, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_0, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC1_MSG, 0x7E1, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_1, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC2_MSG, 0x7E2, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_2, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC3_MSG, 0x7E3, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_3, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC4_MSG, 0x7E4, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_4, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC5_MSG, 0x7E5, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_5, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC6_MSG, 0x7E6, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_6, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC7_MSG, 0x7E7, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_7, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC8_MSG, 0x7E8, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_8, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC9_MSG, 0x7E9, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_9, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC10_MSG, 0x7EA, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_10, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC11_MSG, 0x7EB, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_11, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC12_MSG, 0x7EC, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_12, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC13_MSG, 0x7ED, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_13, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC14_MSG, 0x7EE, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_14, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC15_MSG, 0x7EF, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_15, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC16_MSG, 0x7F0, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_16, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC17_MSG, 0x7F1, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_17, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC18_MSG, 0x7F2, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_18, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC19_MSG, 0x7F3, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_19, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC20_MSG, 0x7F4, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_20, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC21_MSG, 0x7F5, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_21, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC22_MSG, 0x7F6, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_22, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC23_MSG, 0x7F7, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_23, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC24_MSG, 0x7F8, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_24, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC25_MSG, 0x7F9, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_25, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC26_MSG, 0x7FA, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_26, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC27_MSG, 0x7FB, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_27, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC28_MSG, 0x7FC, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_28, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC29_MSG, 0x7FD, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_29, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC30_MSG, 0x7FE, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_30, CddMlcNxp_ReceivedResponse) CAN_RX_MSG(CAN_CHANNEL_SATELLITE, CAN_RX_MLC31_MSG, 0x7FF, CAN_MSG_ID_STD_MASK_ALL, CAN_MSG_FRM_DATA, 8, RX_BUFF_31, CddMlcNxp_ReceivedResponse) END_CAN_RX_MAP /****************************************************************************** * C A N T R A N S M I T M A P S * * This map defines which messages are sent and assigns CAN buffers and callback * functions * * channel The interface on which the message should be transmitted * handle The handle of the message * can id The CAN ID, standard or extended format * flags Message flags (CAN_MSG_FRM_DATA, CAN_MSG_FRM_REMOTE) - not implemented at the moment for remote frame - TODO * dlc Message length (1 - 8 are valid) * buffer Buffer number in which the message is stored (0 - 63 are valid for every channel) * callback Called upon message transmitted - either on interrupt or task level * function format is void callback(can_handle_type tx_handle); * ******************************************************************************/ BEGIN_CAN_TX_MAP // CHANNEL HANDLE CAN ID FLAGS DLC BUFFER CALLBACK CAN_TX_MSG(CAN_CHANNEL_PRIVATE, CAN_TX_MLC_MSG, (CAN_MSG_ID_EXT | (0x555UL << 18UL)), CAN_MSG_FRM_DATA, 8, TX_BUFF_0, NULL) CAN_TX_MSG(CAN_CHANNEL_SATELLITE, CAN_TX_MLC_MSG, (CAN_MSG_ID_EXT | (0x555UL << 18UL)), CAN_MSG_FRM_DATA, 8, TX_BUFF_0, NULL) END_CAN_TX_MAP /****************************************************************************** * C A N E R R O R M A P * * This map defines the error handler functions * * channel The interface channel to configure * callback Called upon the error is detected * * Just edit your error handlers! ******************************************************************************/ //BEGIN_CAN_ERR_MAP // channel callback //CAN_ERR_FCT(CAN_CHANNEL_PRIVATE, NULL)//CddMlcCan_ErrorHandle ) //END_CAN_ERR_MAP /****************************************************************************** * C A N T I M I N G M A P * * This map defines the timing for the channels * * Complete timing of a bit cell is: | bit time | * | 1 + TSEG1 | TSEG2 | * The sample-point is here --------------^ * * Example : TSEG1 = 5, TSEG2 = 2 --> total time: 8 Tq, 75% sample point * * channel The interface channel to configure * speed The CAN bus baud-rate in [Hz] * TSEG1 TSEG1 time, see manual for setup * TSEG2 TSEG2 time, see manual for setup * SWJ SWJ time, normally 1, see manual for setup * ******************************************************************************/ BEGIN_CAN_TIMING_MAP // channel speed TSEG1 TSEG2 SWJ CAN_TIMING_DEF(CAN_CHANNEL_PRIVATE , 500000, 5, 2, 2) CAN_TIMING_DEF(CAN_CHANNEL_SATELLITE, 500000, 5, 2, 2) END_CAN_TIMING_MAP