CMSIS-Driver  Version 2.8.0
Peripheral Interface for Middleware and Application Code
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Driver_I2C.h File Reference

Data Structures

struct  ARM_I2C_STATUS
 I2C Status. More...
 
struct  ARM_I2C_CAPABILITIES
 I2C Driver Capabilities. More...
 
struct  ARM_DRIVER_I2C
 Access structure of the I2C Driver. More...
 

Macros

#define ARM_I2C_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,4) /* API version */
 
#define _ARM_Driver_I2C_(n)   Driver_I2C##n
 
#define ARM_Driver_I2C_(n)   _ARM_Driver_I2C_(n)
 
#define ARM_I2C_OWN_ADDRESS   (0x01UL)
 Set Own Slave Address; arg = address. More...
 
#define ARM_I2C_BUS_SPEED   (0x02UL)
 Set Bus Speed; arg = speed. More...
 
#define ARM_I2C_BUS_CLEAR   (0x03UL)
 Execute Bus clear: send nine clock pulses. More...
 
#define ARM_I2C_ABORT_TRANSFER   (0x04UL)
 Abort Master/Slave Transmit/Receive. More...
 
#define ARM_I2C_BUS_SPEED_STANDARD   (0x01UL)
 Standard Speed (100kHz) More...
 
#define ARM_I2C_BUS_SPEED_FAST   (0x02UL)
 Fast Speed (400kHz) More...
 
#define ARM_I2C_BUS_SPEED_FAST_PLUS   (0x03UL)
 Fast+ Speed ( 1MHz) More...
 
#define ARM_I2C_BUS_SPEED_HIGH   (0x04UL)
 High Speed (3.4MHz) More...
 
#define ARM_I2C_ADDRESS_10BIT   (0x0400UL)
 10-bit address flag More...
 
#define ARM_I2C_ADDRESS_GC   (0x8000UL)
 General Call flag. More...
 
#define ARM_I2C_EVENT_TRANSFER_DONE   (1UL << 0)
 Master/Slave Transmit/Receive finished. More...
 
#define ARM_I2C_EVENT_TRANSFER_INCOMPLETE   (1UL << 1)
 Master/Slave Transmit/Receive incomplete transfer. More...
 
#define ARM_I2C_EVENT_SLAVE_TRANSMIT   (1UL << 2)
 Addressed as Slave Transmitter but transmit operation is not set. More...
 
#define ARM_I2C_EVENT_SLAVE_RECEIVE   (1UL << 3)
 Addressed as Slave Receiver but receive operation is not set. More...
 
#define ARM_I2C_EVENT_ADDRESS_NACK   (1UL << 4)
 Address not acknowledged from Slave. More...
 
#define ARM_I2C_EVENT_GENERAL_CALL   (1UL << 5)
 Slave addressed with general call address. More...
 
#define ARM_I2C_EVENT_ARBITRATION_LOST   (1UL << 6)
 Master lost arbitration. More...
 
#define ARM_I2C_EVENT_BUS_ERROR   (1UL << 7)
 Bus error detected (START/STOP at illegal position) More...
 
#define ARM_I2C_EVENT_BUS_CLEAR   (1UL << 8)
 Bus clear finished. More...
 

Typedefs

typedef void(* ARM_I2C_SignalEvent_t )(uint32_t event)
 Pointer to ARM_I2C_SignalEvent : Signal I2C Event. More...
 

Macro Definition Documentation

#define ARM_I2C_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,4) /* API version */
#define _ARM_Driver_I2C_ (   n)    Driver_I2C##n
#define ARM_Driver_I2C_ (   n)    _ARM_Driver_I2C_(n)