iLLD_TC27xC
1.0
|
I2C basic functionality. More...
Go to the source code of this file.
Data Structures | |
struct | IfxI2c_Pins |
Pin Structure. More... | |
Enumerations | |
enum | IfxI2c_BusStatus { IfxI2c_BusStatus_idle = 0, IfxI2c_BusStatus_started = 1, IfxI2c_BusStatus_busyMaster = 2, IfxI2c_BusStatus_remoteSlave = 3 } |
enum | IfxI2c_PinSelect { IfxI2c_PinSelect_a = 0, IfxI2c_PinSelect_b = 1, IfxI2c_PinSelect_c = 2, IfxI2c_PinSelect_d = 3, IfxI2c_PinSelect_e = 4, IfxI2c_PinSelect_f = 5, IfxI2c_PinSelect_g = 6, IfxI2c_PinSelect_h = 7 } |
Functions | |
IFX_INLINE boolean | IfxI2c_arbitrationLostFlag (Ifx_I2C *i2c) |
returns the Arbitration Lost Flag More... | |
IFX_INLINE boolean | IfxI2c_busIsFree (Ifx_I2C *i2c) |
Returns if the bus is free. More... | |
IFX_INLINE void | IfxI2c_clearArbitrationLostFlag (Ifx_I2C *i2c) |
Clears the Arbitration Lost Flag. More... | |
IFX_INLINE void | IfxI2c_clearErrorInterrupts (Ifx_I2C *i2c) |
IFX_INLINE void | IfxI2c_clearFifoRequests (Ifx_I2C *i2c) |
IFX_INLINE void | IfxI2c_clearProtocolInterrupts (Ifx_I2C *i2c) |
Clears the Protocol Interrupt Flags. More... | |
IFX_INLINE void | IfxI2c_clearReceivedNakFlag (Ifx_I2C *i2c) |
Clears the NAK Flag. More... | |
IFX_INLINE void | IfxI2c_clearTxEndInterrupt (Ifx_I2C *i2c) |
IFX_INLINE IfxI2c_BusStatus | IfxI2c_getBusStatus (Ifx_I2C *i2c) |
IFX_INLINE boolean | IfxI2c_isFifoRequest (Ifx_I2C *i2c) |
Returns if the Fifo is requesting new data. More... | |
IFX_INLINE boolean | IfxI2c_isTxEndInterrupt (Ifx_I2C *i2c) |
IFX_INLINE boolean | IfxI2c_receivedNakFlag (Ifx_I2C *i2c) |
returns the NAK Flag More... | |
IFX_INLINE void | IfxI2c_run (Ifx_I2C *i2c) |
IFX_INLINE void | IfxI2c_setPinSelection (Ifx_I2C *i2c, IfxI2c_PinSelect pisel) |
IFX_INLINE void | IfxI2c_setReceivePacketSize (Ifx_I2C *i2c, Ifx_SizeT size) |
Sets the number of bytes to be received. More... | |
IFX_INLINE void | IfxI2c_setSlaveDeviceAddress (Ifx_I2C *i2c, uint16 address) |
IFX_INLINE void | IfxI2c_setTransmitPacketSize (Ifx_I2C *i2c, Ifx_SizeT size) |
Sets the number of bytes to be tansmitted. More... | |
IFX_INLINE void | IfxI2c_stop (Ifx_I2C *i2c) |
IFX_INLINE void | IfxI2c_waitBusFree (Ifx_I2C *i2c) |
IFX_INLINE void | IfxI2c_writeFifo (Ifx_I2C *i2c, uint32 packet) |
Writes a packet (4 bytes) into the Fifo. More... | |
IFX_EXTERN void | IfxI2c_configureAsMaster (Ifx_I2C *i2c) |
Configures the Module as Master. More... | |
IFX_EXTERN void | IfxI2c_disableModule (Ifx_I2C *i2c) |
Disables the I2c Module. More... | |
IFX_EXTERN void | IfxI2c_enableModule (Ifx_I2C *i2c) |
Enables the I2c Module. More... | |
IFX_EXTERN float32 | IfxI2c_getBaudrate (Ifx_I2C *i2c) |
Returns the real Baudrate. More... | |
IFX_EXTERN void | IfxI2c_initSclSdaPin (const IfxI2c_Scl_InOut *scl, const IfxI2c_Sda_InOut *sda, IfxPort_PadDriver padDriver) |
IFX_EXTERN void | IfxI2c_releaseBus (Ifx_I2C *i2c) |
Releases the bus, i.e puts a stop condition on the bus. More... | |
IFX_EXTERN void | IfxI2c_resetFifo (Ifx_I2C *i2c) |
IFX_EXTERN void | IfxI2c_setBaudrate (Ifx_I2C *i2c, float32 baudrate) |
Calculates the desired baudrate. More... | |
I2C 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 IfxI2c.h.