iLLD_TC29x
1.0
|
ERAY basic functionality. More...
#include "_Impl/IfxEray_cfg.h"
#include "_PinMap/IfxEray_PinMap.h"
#include "IfxEray_reg.h"
#include "Src/Std/IfxSrc.h"
Go to the source code of this file.
Data Structures | |
struct | IfxEray_Header |
Header section in a frame. More... | |
struct | IfxEray_ReceivedHeader |
Received header in a frame. More... | |
struct | IfxEray_SlotConfig |
Transmit control structure. More... | |
Functions | |
IFX_INLINE void | IfxEray_clearErrorFlag (Ifx_ERAY *eray, IfxEray_ClearErrorFlag errorFlag) |
Clears the error flag requested. More... | |
IFX_INLINE void | IfxEray_clearStatusFlag (Ifx_ERAY *eray, IfxEray_ClearStatusFlag statusFlag) |
Clears the status flag requested. More... | |
IFX_INLINE Ifx_ERAY_EIR | IfxEray_getErrorInterrupts (Ifx_ERAY *eray) |
Gets the error interrupt flags. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getInputBufferBusySrcPtr (Ifx_ERAY *eray) |
Gets the IBUSY service request. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getInterruptLine0SrcPtr (Ifx_ERAY *eray) |
Gets the INT0 service request. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getInterruptLine1SrcPtr (Ifx_ERAY *eray) |
Gets the INT1 service request. More... | |
IFX_INLINE boolean | IfxEray_getMessageBufferInterruptStatus (Ifx_ERAY *eray, uint8 messageBuffer) |
Gets the message buffers interrupt status. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getMessageBufferStatus0SrcPtr (Ifx_ERAY *eray) |
Gets the MBSC0 service request. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getMessageBufferStatus1SrcPtr (Ifx_ERAY *eray) |
Gets the MBSC1 service request. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getNewDataInterrupt0SrcPtr (Ifx_ERAY *eray) |
Gets the NDAT0 service request. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getNewDataInterrupt1SrcPtr (Ifx_ERAY *eray) |
Gets the NDAT1 service request. More... | |
IFX_INLINE boolean | IfxEray_getNewDataInterruptStatus (Ifx_ERAY *eray, uint8 ndat) |
Gets the new data interrupt buffers status. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getOutputBufferBusySrcPtr (Ifx_ERAY *eray) |
Gets the OBUSY service request. More... | |
IFX_INLINE Ifx_ERAY_SIR | IfxEray_getStatusInterrupts (Ifx_ERAY *eray) |
Gets the status interrupt flags. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getTimerInterrupt0SrcPtr (Ifx_ERAY *eray) |
Gets the TINT0 service request. More... | |
IFX_INLINE volatile Ifx_SRC_SRCR * | IfxEray_getTimerInterrupt1SrcPtr (Ifx_ERAY *eray) |
Gets the TINT1 service request. More... | |
IFX_EXTERN void | IfxEray_clearAllFlags (Ifx_ERAY *eray) |
Clears all the error flags. More... | |
IFX_EXTERN void | IfxEray_enableInterruptLines (Ifx_ERAY *eray) |
Enables all the Interrupt lines. More... | |
IFX_EXTERN void | IfxEray_setMessageBufferInterruptDestination (Ifx_ERAY *eray, uint8 messageBuffer, uint8 messageBufferDestination) |
Selects between MBSC0 and MBSC1 interrupt destination. More... | |
IFX_EXTERN void | IfxEray_setNewDataInterruptDestination (Ifx_ERAY *eray, uint8 ndat, uint8 ndatDestination) |
Selects between NDAT0 and NDAT1 interrupt destination. More... | |
IFX_INLINE void | IfxEray_initRxPin (const IfxEray_Rxd_In *rx, IfxPort_InputMode rxMode) |
Initialises a RX pin. More... | |
IFX_INLINE void | IfxEray_initTxEnPin (const IfxEray_Txen_Out *txEn, IfxPort_OutputMode txEnMode, IfxPort_PadDriver padDriver) |
Initializes a TX Enable output. More... | |
IFX_INLINE void | IfxEray_initTxPin (const IfxEray_Txd_Out *tx, IfxPort_OutputMode txMode, IfxPort_PadDriver padDriver) |
Initializes a TX output. More... | |
IFX_INLINE void | IfxEray_enableModule (Ifx_ERAY *eray) |
Enables the ERAY module. More... | |
IFX_INLINE void | IfxEray_setSleepMode (Ifx_ERAY *eray, IfxEray_SleepMode mode) |
Sets the sensitivity of the module to sleep signal. More... | |
IFX_EXTERN void | IfxEray_resetModule (Ifx_ERAY *eray) |
Resets the ERAY kernel. More... | |
IFX_INLINE Ifx_ERAY_FSR | IfxEray_getFifoStatus (Ifx_ERAY *eray) |
Gets the FIFO status. More... | |
IFX_INLINE boolean | IfxEray_getInputBufferBusyHostStatus (Ifx_ERAY *eray) |
Gets the Input Buffer Host Busy status. More... | |
IFX_INLINE uint8 | IfxEray_getInputBufferBusyShadowStatus (Ifx_ERAY *eray) |
Gets the Input Buffer Shadow status. More... | |
IFX_INLINE uint8 | IfxEray_getOutputBuffer (Ifx_ERAY *eray) |
Gets the output buffer index. More... | |
IFX_INLINE boolean | IfxEray_getOutputBufferBusyShadowStatus (Ifx_ERAY *eray) |
Gets the Output Buffer Shadow status. More... | |
IFX_INLINE IfxEray_PocState | IfxEray_getPocState (Ifx_ERAY *eray) |
Gets the current POC state. More... | |
IFX_INLINE IfxEray_WakeupChannel | IfxEray_getWakeupPatternReceivedChannel (Ifx_ERAY *eray) |
Gets the received wakeup pattern channel. More... | |
IFX_INLINE void | IfxEray_waitForPocState (Ifx_ERAY *eray, IfxEray_PocState pocState) |
Waits until the controller enters required POC state. More... | |
IFX_EXTERN boolean | IfxEray_changePocState (Ifx_ERAY *eray, IfxEray_PocCommand pocCommand) |
Changes the Commmunication Controller state. More... | |
IFX_EXTERN void | IfxEray_setPocReady (Ifx_ERAY *eray) |
Sets the POC state to Ready state. More... | |
IFX_INLINE void | IfxEray_receiveHeader (Ifx_ERAY *eray, boolean headerReceived) |
request to receive header section from message buffer. More... | |
IFX_INLINE void | IfxEray_sendHeader (Ifx_ERAY *eray, boolean headerTransfered) |
sets the bit to send header in frame. More... | |
IFX_INLINE void | IfxEray_setActiveCyclePairs (Ifx_ERAY *eray, uint8 numberOfCyclePairsForActive) |
Sets number of cycle pairs for Active state. More... | |
IFX_INLINE void | IfxEray_setAutoDelayBuffers (Ifx_ERAY *eray) |
Sets auto delays between input, output buffers and message RAM. More... | |
IFX_INLINE void | IfxEray_setBaudrate (Ifx_ERAY *eray, IfxEray_Baudrate baudrate) |
Sets baudrate on Flexray bus. More... | |
IFX_INLINE void | IfxEray_setBufferReconfigSecure (Ifx_ERAY *eray, uint8 secureValue) |
Sets secured buffers in message RAM. More... | |
IFX_INLINE void | IfxEray_setChannelAInitialOffsets (Ifx_ERAY *eray, uint8 channelAMicrotickInitialOffset, uint8 channelAMacrotickInitialOffset) |
Sets channel A initial offstes. More... | |
IFX_INLINE void | IfxEray_setChannelBInitialOffsets (Ifx_ERAY *eray, uint8 channelBMicrotickInitialOffset, uint8 channelBMacrotickInitialOffset) |
Sets channel B initial offstes. More... | |
IFX_INLINE void | IfxEray_setChannelsReceiveDelay (Ifx_ERAY *eray, uint8 channelAReceptionDelay, uint8 channelBReceptionDelay) |
Sets receive delays on channels. More... | |
IFX_INLINE void | IfxEray_setClockCorrectionCycles (Ifx_ERAY *eray, uint8 clockCorrectionCyclesPassive, uint8 clockCorrectionCyclesHalt) |
Sets clock correction cycles for Passive and Halt. More... | |
IFX_INLINE void | IfxEray_setClockSynchErrorHalt (Ifx_ERAY *eray, boolean clockSyncErrorHalt) |
lead to halt state in clock synch error. More... | |
IFX_INLINE void | IfxEray_setClusterDriftValues (Ifx_ERAY *eray, uint8 clusterDrift, uint16 maxDriftOffset) |
Sets cluster drift values. More... | |
IFX_INLINE void | IfxEray_setClusterStartupDeviation (Ifx_ERAY *eray, uint16 acceptedStartupDeviation) |
Sets cluster startup deviation. More... | |
IFX_INLINE void | IfxEray_setCollisionAvoidanceDuration (Ifx_ERAY *eray, uint8 collisionAvoidanceDuration) |
Sets CAS symbol window duration. More... | |
IFX_INLINE void | IfxEray_setCycleDurationMacroticks (Ifx_ERAY *eray, uint16 macroticks) |
sets duration of the communication cycle in Macroticks. More... | |
IFX_INLINE void | IfxEray_setCycleDurationMicroticks (Ifx_ERAY *eray, uint32 microticks) |
sets duration of the communication cycle in Microticks. More... | |
IFX_INLINE void | IfxEray_setDecodingCorrectionValue (Ifx_ERAY *eray, uint8 decodingCorrection) |
Sets decoding correction value. More... | |
IFX_INLINE void | IfxEray_setDynamicSlots (Ifx_ERAY *eray, uint8 dynamicSlotLength, uint16 dynamicSlotCount, IfxEray_IdleDynamicSlots idleDynamicSlots) |
Sets dynamic slots count and length. More... | |
IFX_INLINE void | IfxEray_setExternalCorrectionControl (Ifx_ERAY *eray, IfxEray_ExternalOffset externalOffset, IfxEray_ExternalRate externalRate) |
Sets external correction controls. More... | |
IFX_INLINE void | IfxEray_setExternalCorrectionValues (Ifx_ERAY *eray, IfxEray_ExternalOffsetCorrection externalOffsetCorrection, IfxEray_ExternalRateCorrection externalRateCorrection) |
Sets external correction values. More... | |
IFX_INLINE void | IfxEray_setFifoBufferStartIndex (Ifx_ERAY *eray, uint8 fifoBufferStartIndex) |
Sets FIFO buffer start idex. More... | |
IFX_INLINE void | IfxEray_setFifoFilterConfigurations (Ifx_ERAY *eray, uint16 rejectedFrameId, uint8 filteredCycleNumber, boolean fifoNullFramesRejected, uint16 frameIdFilter) |
Sets FIFO filter configurations. More... | |
IFX_INLINE void | IfxEray_setFifoMessageBufferConfigurations (Ifx_ERAY *eray, IfxEray_ReceiveChannel receiveChannel, boolean staticFifoDisabled, uint8 fifoDepth) |
Sets FIFO configurations. More... | |
IFX_INLINE void | IfxEray_setFirstDynamicBuffer (Ifx_ERAY *eray, uint8 firstDynamicBuffer) |
Sets first dynamic buffer. More... | |
IFX_INLINE void | IfxEray_setListenTimeOuts (Ifx_ERAY *eray, uint32 listenTimeOut, IfxEray_ListenTimeOutNoise listenTimeOutNoise) |
Sets startup or wakeup listen timeouts. More... | |
IFX_INLINE void | IfxEray_setMaxColdStartAttempts (Ifx_ERAY *eray, uint8 maxColdStartAttempts) |
Sets the maximum cold start attempts for active state. More... | |
IFX_INLINE void | IfxEray_setMaxCorrectionValues (Ifx_ERAY *eray, uint16 maxOffsetCorrection, uint16 maxRateCorrection) |
Sets max limit correction values. More... | |
IFX_INLINE void | IfxEray_setMaxSynchFrames (Ifx_ERAY *eray, IfxEray_MaxSynchFrames maxSyncFrames) |
Sets maximum synch frames in a cluster. More... | |
IFX_INLINE void | IfxEray_setMessageBufferCount (Ifx_ERAY *eray, uint8 numberOfMessageBuffers) |
Sets number of message buffers. More... | |
IFX_INLINE void | IfxEray_setMessageHandlerConfigurations (Ifx_ERAY *eray, uint8 staticFramepayload, uint8 latestTransmissionStart) |
Sets Message Handler configurations. More... | |
IFX_INLINE void | IfxEray_setNetworkStartIdleTime (Ifx_ERAY *eray, uint16 networkStartIdleTime) |
Sets network start Idle time. More... | |
IFX_INLINE void | IfxEray_setNetworkVectorLength (Ifx_ERAY *eray, uint32 networkVectorLength) |
Sets network management vector length. More... | |
IFX_INLINE void | IfxEray_setNodeChannels (Ifx_ERAY *eray, boolean channelAConnectedNode, boolean channelBConnectedNode) |
Sets channels connected to node. More... | |
IFX_INLINE void | IfxEray_setOffsetCorrection (Ifx_ERAY *eray, uint16 correctionOffset) |
Sets offset correction starting point. More... | |
IFX_INLINE void | IfxEray_setReceiveRequest (Ifx_ERAY *eray, boolean receiveRequested) |
requests to receive the frame. More... | |
IFX_INLINE void | IfxEray_setReceiveWakeupTimes (Ifx_ERAY *eray, uint8 receiveWakeupTestDuration, uint8 receiveWakeupIdleTime, uint8 receiveWakeupLowTime) |
Sets receive wakeup times. More... | |
IFX_INLINE void | IfxEray_setRxBufferNumber (Ifx_ERAY *eray, uint8 bufferIndex) |
sets buffer number in which frame is received. More... | |
IFX_INLINE void | IfxEray_setSlotActionPoints (Ifx_ERAY *eray, uint8 staticActionPoint, uint8 dynamicActionPoint) |
Sets slots action points. More... | |
IFX_INLINE void | IfxEray_setStaticSlots (Ifx_ERAY *eray, uint16 staticSlotLength, uint16 staticSlotsCount) |
Sets static slots count and length. More... | |
IFX_INLINE void | IfxEray_setStrobePosition (Ifx_ERAY *eray, IfxEray_StrobePosition strobePosition) |
Sets sample point for strobing. More... | |
IFX_INLINE void | IfxEray_setSymbolChannels (Ifx_ERAY *eray, boolean channelASymbolTransmitted, boolean channelBSymbolTransmitted) |
Sets channels which transmits symbols. More... | |
IFX_INLINE void | IfxEray_setTransmissionSlotMode (Ifx_ERAY *eray, IfxEray_TransmissionSlotMode transmissionSlotMode) |
Sets the transmit slot mode. More... | |
IFX_INLINE void | IfxEray_setTransmissionStartTime (Ifx_ERAY *eray, uint16 transmissionStartTime) |
Sets transmission start time duration. More... | |
IFX_INLINE void | IfxEray_setTransmitRequest (Ifx_ERAY *eray, boolean transferRequested) |
Sets transfer request to send frame. More... | |
IFX_INLINE void | IfxEray_setTransmitWakeupTimes (Ifx_ERAY *eray, uint8 transmitWakeupRepetitions, uint8 transmitWakeupIdleTime, uint8 transmitWakeupLowTime) |
Sets transmit wakeup times. More... | |
IFX_INLINE void | IfxEray_setTransmittedFrames (Ifx_ERAY *eray, boolean startupFrameTransmitted, boolean synchFrameTransmitted) |
Configures transmitted frames for startup and synchronization. More... | |
IFX_INLINE void | IfxEray_setTxBufferNumber (Ifx_ERAY *eray, uint8 bufferIndex) |
Sets the transmit buffer number. More... | |
IFX_INLINE void | IfxEray_setViewData (Ifx_ERAY *eray, boolean swapRequested) |
Swaps the shadow and Host output registers. More... | |
IFX_INLINE void | IfxEray_setWakeupPatternChannel (Ifx_ERAY *eray, IfxEray_WakeupChannel wakeupPatternChannel) |
Sets the cluster wakeup channel. More... | |
IFX_INLINE void | IfxEray_receiveData (Ifx_ERAY *eray, boolean dataReceived) |
requests to receive data from message buffer. More... | |
IFX_INLINE void | IfxEray_sendData (Ifx_ERAY *eray, boolean dataTransfered) |
sets the bit to send data in frame. More... | |
IFX_EXTERN uint16 | IfxEray_calcHeaderCrc (uint8 payloadLength, uint16 frameId, boolean startupFrameIndicator, boolean syncFrameIndicator) |
Calculate and returns the CRC for frame. More... | |
IFX_EXTERN void | IfxEray_readData (Ifx_ERAY *eray, uint32 *data, uint8 payloadLength) |
Reads the received data from output registers. More... | |
IFX_EXTERN void | IfxEray_readFrame (Ifx_ERAY *eray, IfxEray_ReceivedHeader *header, uint32 *data, Ifx_SizeT maxPayloadLength) |
Reads header and data from output buffers. More... | |
IFX_EXTERN void | IfxEray_setSlot (Ifx_ERAY *eray, const IfxEray_Header *header, const uint32 *data, const IfxEray_SlotConfig *slotConfig) |
Writes header and data to Input buffers and set the slots. More... | |
IFX_EXTERN void | IfxEray_writeData (Ifx_ERAY *eray, const uint32 *data, uint8 payloadLength) |
Writes data section of a frame to input data registers. More... | |
IFX_INLINE uint8 | IfxEray_getFifoIndex (Ifx_ERAY *eray) |
Gets the FIFO index. More... | |
ERAY basic functionality.
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 IfxEray.h.
IFX_INLINE uint8 IfxEray_getFifoIndex | ( | Ifx_ERAY * | eray) |
Gets the FIFO index.
eray | pointer to ERAY module registers. |
Definition at line 1170 of file IfxEray.h.
Referenced by IfxEray_Eray_receiveFifoFrame().