iLLD_TC27xD  1.0
Collaboration diagram for CAN Nodes:

Functions

IFX_INLINE void IfxMultican_Node_activate (Ifx_CAN_N *hwNode)
 Activate the CAN Node. Participate in the CAN bus activities. More...
 
IFX_INLINE void IfxMultican_Node_deactivate (Ifx_CAN_N *hwNode)
 Deactivate the CAN Node. Take out from participation in the CAN bus activities. More...
 
IFX_INLINE void IfxMultican_Node_disableConfigurationChange (Ifx_CAN_N *hwNode)
 Disables the configuration changes for the Bit Timing Register, the Port Control Register, and the Error Counter Register of a CAN Node. More...
 
IFX_INLINE void IfxMultican_Node_enableConfigurationChange (Ifx_CAN_N *hwNode)
 Enables the configuration changes for the Bit Timing Register, the Port Control Register, and the Error Counter Register of a CAN Node. More...
 
IFX_INLINE Ifx_CAN_N * IfxMultican_Node_getPointer (Ifx_CAN *mcan, IfxMultican_NodeId node)
 Returns the base address to a given CAN node number. More...
 
IFX_INLINE void IfxMultican_Node_resetControlRegister (Ifx_CAN_N *hwNode)
 Resets the control register of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_resetErrorCounters (Ifx_CAN_N *hwNode)
 Resets the error counters of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_resetInterruptPointers (Ifx_CAN_N *hwNode)
 Resets the interrupt pointers of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_setAlertInterrupt (Ifx_CAN_N *hwNode, boolean enabled)
 Enables / Disables the alert interrupt of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setAlertInterruptPointer (Ifx_CAN_N *hwNode, IfxMultican_SrcId srcId)
 Selects the interrupt output line INT_Om (m = 0-15) for an alert interrupt of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_setAnalyzerMode (Ifx_CAN_N *hwNode, boolean mode)
 Enables / Disables the analyzer mode of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setErrorWarningLevel (Ifx_CAN_N *hwNode, uint8 level)
 Determines the threshold value (warning level, default 96) to be reached
in order to set the corresponding error warning bit EWRN. More...
 
IFX_INLINE void IfxMultican_Node_setFastNode (Ifx_CAN_N *hwNode, boolean enabled)
 Enables / Disables the flexible data rate of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setFrameCounterInterrupt (Ifx_CAN_N *hwNode, boolean enabled)
 Enables / Disables the CAN frame counter overflow interrupt of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setFrameCounterInterruptPointer (Ifx_CAN_N *hwNode, IfxMultican_SrcId srcId)
 Selects the interrupt output line INT_Om (m = 0-15) for a frame counter overflow interrupt of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_setFrameCounterMode (Ifx_CAN_N *hwNode, IfxMultican_FrameCounterMode mode)
 Sets the operation mode of the frame counter of the CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_setLastErrorCodeInterrupt (Ifx_CAN_N *hwNode, boolean enabled)
 Enables / Disables the last error code interrupt of CAN node x.
This interrupt is generated with each hardware update of bit field NSRx.LEC with LEC > 0 (CAN protocol error). More...
 
IFX_INLINE void IfxMultican_Node_setLastErrorCodeInterruptPointer (Ifx_CAN_N *hwNode, IfxMultican_SrcId srcId)
 Selects the interrupt output line INT_Om (m = 0-15) for an LEC interrupt of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_setLoopBackMode (Ifx_CAN_N *hwNode, boolean mode)
 Enables / Disables the loopback mode of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setReceiveErrorCounter (Ifx_CAN_N *hwNode, uint8 value)
 Sets the value of the receive error counter of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setTimerEventInterruptPointer (Ifx_CAN_N *hwNode, IfxMultican_SrcId srcId)
 Selects the interrupt output line INT_Om (m = 0-15) for a timer event interrupt of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_setTransceiverDelayCompensation (Ifx_CAN_N *hwNode, boolean enabled)
 Enables / Disables the transceiver delay compensation of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setTransceiverDelayCompensationOffset (Ifx_CAN_N *hwNode, uint16 value)
 Sets transceiver delay ompensation offset of CAN node x. More...
 
IFX_INLINE void IfxMultican_Node_setTransferInterrupt (Ifx_CAN_N *hwNode, boolean enabled)
 Enables / Disables the transfer interrupt of CAN node x.
This interrupt is generated after the successful reception or transmission of a CAN frame in node x. More...
 
IFX_INLINE void IfxMultican_Node_setTransferInterruptPointer (Ifx_CAN_N *hwNode, IfxMultican_SrcId srcId)
 Selects the interrupt output line INT_Om (m = 0-15) for a transfer OK interrupt of CAN Node x. More...
 
IFX_INLINE void IfxMultican_Node_setTransmitErrorCounter (Ifx_CAN_N *hwNode, uint8 value)
 Sets the value of the transmit error counter of CAN node x. More...
 
IFX_EXTERN void IfxMultican_Node_deinit (Ifx_CAN_N *hwNode)
 Reset the CAN node. More...
 
IFX_EXTERN boolean IfxMultican_Node_initRxPin (Ifx_CAN_N *hwNode, IfxMultican_Rxd_In *rxd, IfxPort_InputMode mode)
 Select and initialise the CAN node receive pin. More...
 
IFX_EXTERN boolean IfxMultican_Node_initTxPin (Ifx_CAN_N *hwNode, IfxMultican_Txd_Out *txd, IfxPort_OutputMode mode)
 Select and initialise the CAN node transmit pin. More...
 
IFX_EXTERN IfxMultican_Status IfxMultican_Node_recoverBusOff (Ifx_CAN_N *hwNode)
 Recovers the CAN node from bus off. More...
 
IFX_EXTERN void IfxMultican_Node_setBitTiming (Ifx_CAN_N *hwNode, float32 moduleFreq, uint32 baudrate, uint16 samplePoint, uint16 synchJumpWidth)
 Calculates the best posible values and configures BTR register. More...
 
IFX_EXTERN void IfxMultican_calcTimingFromBTR (float32 moduleFreq, uint32 btr, uint32 *baudrate, uint16 *samplePoint, uint16 *synchJumpWidth)
 Returns the CAN node timing. More...
 

Detailed Description

Function Documentation

IFX_EXTERN void IfxMultican_calcTimingFromBTR ( float32  moduleFreq,
uint32  btr,
uint32 baudrate,
uint16 samplePoint,
uint16 synchJumpWidth 
)

Returns the CAN node timing.

Parameters
moduleFreqSpecifies the CAN module frequency
btrBTR
baudrateBaudrate
samplePointSample point
synchJumpWidthSync Jump Width
Returns
None

Definition at line 904 of file IfxMultican.c.

Referenced by IfxMultican_Can_Node_getConfig().

IFX_INLINE void IfxMultican_Node_activate ( Ifx_CAN_N *  hwNode)

Activate the CAN Node. Participate in the CAN bus activities.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 1321 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_activate(), IfxMultican_Can_Node_init(), and IfxMultican_Node_recoverBusOff().

IFX_INLINE void IfxMultican_Node_deactivate ( Ifx_CAN_N *  hwNode)

Deactivate the CAN Node. Take out from participation in the CAN bus activities.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 1327 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_deactivate(), and IfxMultican_Node_recoverBusOff().

IFX_EXTERN void IfxMultican_Node_deinit ( Ifx_CAN_N *  hwNode)

Reset the CAN node.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 540 of file IfxMultican.c.

Referenced by IfxMultican_Can_initModule(), IfxMultican_Can_Node_deinit(), and IfxMultican_deinit().

IFX_INLINE void IfxMultican_Node_disableConfigurationChange ( Ifx_CAN_N *  hwNode)

Disables the configuration changes for the Bit Timing Register, the Port Control Register, and the Error Counter Register of a CAN Node.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 1333 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_enableConfigurationChange ( Ifx_CAN_N *  hwNode)

Enables the configuration changes for the Bit Timing Register, the Port Control Register, and the Error Counter Register of a CAN Node.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 1339 of file IfxMultican.h.

IFX_INLINE Ifx_CAN_N * IfxMultican_Node_getPointer ( Ifx_CAN *  mcan,
IfxMultican_NodeId  node 
)

Returns the base address to a given CAN node number.

Parameters
mcanSpecifies the CAN module
nodeSpecifies the CAN node
Returns
base pointer to CAN node

Definition at line 1345 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_activate(), IfxMultican_Can_Node_deactivate(), IfxMultican_Can_Node_deinit(), IfxMultican_Can_Node_init(), IfxMultican_Can_Node_recoverBusOff(), and IfxMultican_deinit().

IFX_EXTERN boolean IfxMultican_Node_initRxPin ( Ifx_CAN_N *  hwNode,
IfxMultican_Rxd_In rxd,
IfxPort_InputMode  mode 
)

Select and initialise the CAN node receive pin.

Parameters
hwNodePointer to CAN Node registers
rxdRx pin
modeInput mode
Returns
TRUE: Returns TRUE if the operation was successful
FALSE: Returns FALSE if the operation was errorneous

Definition at line 552 of file IfxMultican.c.

Referenced by IfxMultican_Can_Node_init().

IFX_EXTERN boolean IfxMultican_Node_initTxPin ( Ifx_CAN_N *  hwNode,
IfxMultican_Txd_Out txd,
IfxPort_OutputMode  mode 
)

Select and initialise the CAN node transmit pin.

Parameters
hwNodePointer to CAN Node registers
txdTx pin
modeOutput mode
Returns
TRUE: Returns TRUE if the operation was successful
FALSE: Returns FALSE if the operation was errorneous

Definition at line 561 of file IfxMultican.c.

Referenced by IfxMultican_Can_Node_init().

IFX_EXTERN IfxMultican_Status IfxMultican_Node_recoverBusOff ( Ifx_CAN_N *  hwNode)

Recovers the CAN node from bus off.

Parameters
hwNodePointer to CAN Node registers
Returns
Status

Definition at line 570 of file IfxMultican.c.

Referenced by IfxMultican_Can_Node_recoverBusOff().

IFX_INLINE void IfxMultican_Node_resetControlRegister ( Ifx_CAN_N *  hwNode)

Resets the control register of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 1351 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_resetErrorCounters ( Ifx_CAN_N *  hwNode)

Resets the error counters of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 1357 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_resetInterruptPointers ( Ifx_CAN_N *  hwNode)

Resets the interrupt pointers of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
Returns
None

Definition at line 1363 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setAlertInterrupt ( Ifx_CAN_N *  hwNode,
boolean  enabled 
)

Enables / Disables the alert interrupt of CAN node x.

Parameters
hwNodePointer to CAN Node registers
enabledEnable / disable choice
Returns
None

Definition at line 1369 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setAlertInterruptPointer ( Ifx_CAN_N *  hwNode,
IfxMultican_SrcId  srcId 
)

Selects the interrupt output line INT_Om (m = 0-15) for an alert interrupt of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
srcIdService request ID
Returns
None

Definition at line 1375 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setAnalyzerMode ( Ifx_CAN_N *  hwNode,
boolean  mode 
)

Enables / Disables the analyzer mode of CAN node x.

Parameters
hwNodePointer to CAN Node registers
modeEnable / disable choice
Returns
None

Definition at line 1381 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_EXTERN void IfxMultican_Node_setBitTiming ( Ifx_CAN_N *  hwNode,
float32  moduleFreq,
uint32  baudrate,
uint16  samplePoint,
uint16  synchJumpWidth 
)

Calculates the best posible values and configures BTR register.

Parameters
hwNodePointer to CAN Node registers
moduleFreqSpecifies the CAN module frequency
baudrateSpecifies the node baud rate. Unit: baud
samplePointSpecifies the sample point. Range = [0, 10000] resp. [0%, 100%] of the total bit time.
synchJumpWidthsynchJumpWidth Specifies the re-synchronization jump width.
Range = [0, 10000] resp. [0%, 100%] of the total bit time.
Returns
None

Definition at line 615 of file IfxMultican.c.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setErrorWarningLevel ( Ifx_CAN_N *  hwNode,
uint8  level 
)

Determines the threshold value (warning level, default 96) to be reached
in order to set the corresponding error warning bit EWRN.

Parameters
hwNodePointer to CAN Node registers
levelError warning level
Returns
None

Definition at line 1387 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setFastNode ( Ifx_CAN_N *  hwNode,
boolean  enabled 
)

Enables / Disables the flexible data rate of CAN node x.

Parameters
hwNodePointer to CAN Node registers
enabledEnable / disable choice
Returns
None

Definition at line 1393 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setFrameCounterInterrupt ( Ifx_CAN_N *  hwNode,
boolean  enabled 
)

Enables / Disables the CAN frame counter overflow interrupt of CAN node x.

Parameters
hwNodePointer to CAN Node registers
enabledEnable / disable choice
Returns
None

Definition at line 1401 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setFrameCounterInterruptPointer ( Ifx_CAN_N *  hwNode,
IfxMultican_SrcId  srcId 
)

Selects the interrupt output line INT_Om (m = 0-15) for a frame counter overflow interrupt of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
srcIdService request ID
Returns
None

Definition at line 1407 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setFrameCounterMode ( Ifx_CAN_N *  hwNode,
IfxMultican_FrameCounterMode  mode 
)

Sets the operation mode of the frame counter of the CAN Node x.

Parameters
hwNodePointer to CAN Node registers
modeDetermines the operation mode of the frame counter
Returns
None

Definition at line 1413 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setLastErrorCodeInterrupt ( Ifx_CAN_N *  hwNode,
boolean  enabled 
)

Enables / Disables the last error code interrupt of CAN node x.
This interrupt is generated with each hardware update of bit field NSRx.LEC with LEC > 0 (CAN protocol error).

Parameters
hwNodePointer to CAN Node registers
enabledEnable / disable choice
Returns
None

Definition at line 1419 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setLastErrorCodeInterruptPointer ( Ifx_CAN_N *  hwNode,
IfxMultican_SrcId  srcId 
)

Selects the interrupt output line INT_Om (m = 0-15) for an LEC interrupt of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
srcIdService request ID
Returns
None

Definition at line 1425 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setLoopBackMode ( Ifx_CAN_N *  hwNode,
boolean  mode 
)

Enables / Disables the loopback mode of CAN node x.

Parameters
hwNodePointer to CAN Node registers
modeEnable / disable choice
Returns
None

Definition at line 1431 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setReceiveErrorCounter ( Ifx_CAN_N *  hwNode,
uint8  value 
)

Sets the value of the receive error counter of CAN node x.

Parameters
hwNodePointer to CAN Node registers
valueReceive error counter value
Returns
None

Definition at line 1437 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setTimerEventInterruptPointer ( Ifx_CAN_N *  hwNode,
IfxMultican_SrcId  srcId 
)

Selects the interrupt output line INT_Om (m = 0-15) for a timer event interrupt of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
srcIdService request ID
Returns
None

Definition at line 1443 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setTransceiverDelayCompensation ( Ifx_CAN_N *  hwNode,
boolean  enabled 
)

Enables / Disables the transceiver delay compensation of CAN node x.

Parameters
hwNodePointer to CAN Node registers
enabledEnable / disable choice
Returns
None

Definition at line 1449 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setTransceiverDelayCompensationOffset ( Ifx_CAN_N *  hwNode,
uint16  value 
)

Sets transceiver delay ompensation offset of CAN node x.

Parameters
hwNodePointer to CAN Node registers
valuetransceiver delay ompensation offset that is added to the measured transceiver delay. Range = [0, 15]
Returns
None

Definition at line 1455 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setTransferInterrupt ( Ifx_CAN_N *  hwNode,
boolean  enabled 
)

Enables / Disables the transfer interrupt of CAN node x.
This interrupt is generated after the successful reception or transmission of a CAN frame in node x.

Parameters
hwNodePointer to CAN Node registers
enabledEnable / disable choice
Returns
None

Definition at line 1461 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setTransferInterruptPointer ( Ifx_CAN_N *  hwNode,
IfxMultican_SrcId  srcId 
)

Selects the interrupt output line INT_Om (m = 0-15) for a transfer OK interrupt of CAN Node x.

Parameters
hwNodePointer to CAN Node registers
srcIdService request ID
Returns
None

Definition at line 1467 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().

IFX_INLINE void IfxMultican_Node_setTransmitErrorCounter ( Ifx_CAN_N *  hwNode,
uint8  value 
)

Sets the value of the transmit error counter of CAN node x.

Parameters
hwNodePointer to CAN Node registers
valueTransmit error counter value
Returns
None

Definition at line 1473 of file IfxMultican.h.

Referenced by IfxMultican_Can_Node_init().