iLLD_TC27xD  1.0
IfxMultican_Can.h File Reference

MULTICAN CAN details. More...

#include "Multican/Std/IfxMultican.h"
#include "Scu/Std/IfxScuCcu.h"
#include "IfxScu_regdef.h"

Go to the source code of this file.

Data Structures

struct  IfxMultican_Can_FdConfig
 Structure for CAN FD configuration. More...
 
struct  IfxMultican_Can_GatewayConfig
 Structure for gateway configuration. More...
 
struct  IfxMultican_Can_InterruptConfig
 Structure for interrupt configuration. More...
 
struct  IfxMultican_Can_InterruptSource
 Structure for interrupt source. More...
 
struct  IfxMultican_Can_MsgObjControl
 Message object control. More...
 
struct  IfxMultican_Can_Node
 CAN node handle data structure. More...
 
struct  IfxMultican_Can
 CAN handle data structure. More...
 
struct  IfxMultican_Can_Config
 CAN module configuration. More...
 
struct  IfxMultican_Can_MsgObj
 CAN message object handle data structure. More...
 
struct  IfxMultican_Can_MsgObjConfig
 CAN message object configuration. More...
 
struct  IfxMultican_Can_NodeConfig
 CAN Node configuration. More...
 

Functions

IFX_INLINE void IfxMultican_Can_deinit (IfxMultican_Can *mcan)
 Reset the CAN module.
Reset and disable the CAN module, inclusive message object and node registers. More...
 
IFX_EXTERN void IfxMultican_Can_getConfig (IfxMultican_Can *mcan, IfxMultican_Can_Config *config)
 Return the actual CAN module configuration. More...
 
IFX_EXTERN float32 IfxMultican_Can_getModuleFrequency (IfxMultican_Can *mcan)
 Get the module frequency. More...
 
IFX_EXTERN IfxMultican_Status IfxMultican_Can_initModule (IfxMultican_Can *mcan, const IfxMultican_Can_Config *config)
 Initialize the CAN module
The following configuration is used:
. More...
 
IFX_EXTERN void IfxMultican_Can_initModuleConfig (IfxMultican_Can_Config *config, Ifx_CAN *mcan)
 Return the default MULTICAN configuration. More...
 
IFX_INLINE void IfxMultican_Can_Node_activate (IfxMultican_Can_Node *node)
 Activate the CAN Node. Participate in the CAN bus activities. More...
 
IFX_INLINE void IfxMultican_Can_Node_deactivate (IfxMultican_Can_Node *node)
 Deactivate the CAN Node. Take out from participation in the CAN bus activities. More...
 
IFX_INLINE void IfxMultican_Can_Node_deinit (IfxMultican_Can_Node *node)
 Reset the CAN node. More...
 
IFX_INLINE IfxMultican_Status IfxMultican_Can_Node_recoverBusOff (IfxMultican_Can_Node *node)
 Recovers the CAN node from bus off. More...
 
IFX_EXTERN void IfxMultican_Can_Node_getConfig (IfxMultican_Can_Node *node, IfxMultican_Can_NodeConfig *config)
 Get the actual message object configuration. More...
 
IFX_EXTERN IfxMultican_Status IfxMultican_Can_Node_init (IfxMultican_Can_Node *node, const IfxMultican_Can_NodeConfig *config)
 Initialize the CAN node. More...
 
IFX_EXTERN void IfxMultican_Can_Node_initConfig (IfxMultican_Can_NodeConfig *config, IfxMultican_Can *mcan)
 Get default CAN node configuration. More...
 
IFX_EXTERN void IfxMultican_Can_Node_sendToBusOff (IfxMultican_Can_Node *node)
 Sends the CAN node into bus off. More...
 
IFX_INLINE boolean IfxMultican_Can_MsgObj_cancelSend (IfxMultican_Can_MsgObj *msgObj)
 Cancel pending TX request by invalidating the request
Only when frame transmission has not been started. More...
 
IFX_INLINE void IfxMultican_Can_MsgObj_clearRxPending (IfxMultican_Can_MsgObj *msgObj)
 Clear the RX pending flag of a message object. More...
 
IFX_INLINE void IfxMultican_Can_MsgObj_clearTxPending (IfxMultican_Can_MsgObj *msgObj)
 Clear the TX pending flag of a message object. More...
 
IFX_INLINE void IfxMultican_Can_MsgObj_deinit (IfxMultican_Can_MsgObj *msgObj)
 Reset the message object
Append the message object to the end of idle list and reset message object registers. More...
 
IFX_INLINE IfxMultican_MsgObjId IfxMultican_Can_MsgObj_getPendingId (IfxMultican_Can_MsgObj *msgObj, IfxMultican_MsgObjGroup msgObjGroup)
 Get message object ID which has TX/RX pending flag from a message object group. More...
 
IFX_INLINE IfxMultican_MsgObjStat IfxMultican_Can_MsgObj_getStatus (IfxMultican_Can_MsgObj *msgObj)
 Get the message object status. More...
 
IFX_INLINE IfxMultican_Status IfxMultican_Can_MsgObj_readLongFrame (IfxMultican_Can_MsgObj *msgObj, IfxMultican_Message *msg, uint32 *data)
 Read a received CAN message. More...
 
IFX_INLINE IfxMultican_Status IfxMultican_Can_MsgObj_sendLongFrame (IfxMultican_Can_MsgObj *msgObj, IfxMultican_Message *msg, uint32 *data)
 Read a received CAN message. More...
 
IFX_EXTERN void IfxMultican_Can_MsgObj_getConfig (IfxMultican_Can_MsgObj *msgObj, IfxMultican_Can_MsgObjConfig *config)
 Get the actual message object configuration. More...
 
IFX_EXTERN IfxMultican_Status IfxMultican_Can_MsgObj_init (IfxMultican_Can_MsgObj *msgObj, const IfxMultican_Can_MsgObjConfig *config)
 Initialize the message object. More...
 
IFX_EXTERN void IfxMultican_Can_MsgObj_initConfig (IfxMultican_Can_MsgObjConfig *config, IfxMultican_Can_Node *node)
 Initialise message config with default values and the given parameters. More...
 
IFX_EXTERN boolean IfxMultican_Can_MsgObj_isRxPending (IfxMultican_Can_MsgObj *msgObj)
 Returns the RX pending flag of a message object. More...
 
IFX_EXTERN boolean IfxMultican_Can_MsgObj_isTransmitRequested (IfxMultican_Can_MsgObj *msgObj)
 Returns the TX Request flag of a message object. More...
 
IFX_EXTERN boolean IfxMultican_Can_MsgObj_isTxPending (IfxMultican_Can_MsgObj *msgObj)
 Returns the TX pending flag of a message object. More...
 
IFX_EXTERN IfxMultican_Status IfxMultican_Can_MsgObj_readMessage (IfxMultican_Can_MsgObj *msgObj, IfxMultican_Message *msg)
 Read a received CAN message. More...
 
IFX_EXTERN IfxMultican_Status IfxMultican_Can_MsgObj_sendMessage (IfxMultican_Can_MsgObj *msgObj, const IfxMultican_Message *msg)
 Send a CAN message. More...
 

Detailed Description

MULTICAN CAN details.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file IfxMultican_Can.h.