STM CMSIS
I2C Private macros to check input parameters

Macros

#define IS_I2C_DUTY_CYCLE(CYCLE)
 
#define IS_I2C_ADDRESSING_MODE(ADDRESS)
 
#define IS_I2C_DUAL_ADDRESS(ADDRESS)
 
#define IS_I2C_GENERAL_CALL(CALL)
 
#define IS_I2C_NO_STRETCH(STRETCH)
 
#define IS_I2C_MEMADD_SIZE(SIZE)
 
#define IS_I2C_CLOCK_SPEED(SPEED)   (((SPEED) > 0) && ((SPEED) <= 400000U))
 
#define IS_I2C_OWN_ADDRESS1(ADDRESS1)   (((ADDRESS1) & (uint32_t)(0xFFFFFC00U)) == 0U)
 
#define IS_I2C_OWN_ADDRESS2(ADDRESS2)   (((ADDRESS2) & (uint32_t)(0xFFFFFF01U)) == 0U)
 
#define IS_I2C_TRANSFER_OPTIONS_REQUEST(REQUEST)
 

Detailed Description

Macro Definition Documentation

◆ IS_I2C_ADDRESSING_MODE

#define IS_I2C_ADDRESSING_MODE (   ADDRESS)
Value:
(((ADDRESS) == I2C_ADDRESSINGMODE_7BIT) || \
((ADDRESS) == I2C_ADDRESSINGMODE_10BIT))

◆ IS_I2C_DUAL_ADDRESS

#define IS_I2C_DUAL_ADDRESS (   ADDRESS)
Value:
(((ADDRESS) == I2C_DUALADDRESS_DISABLE) || \
((ADDRESS) == I2C_DUALADDRESS_ENABLE))

◆ IS_I2C_DUTY_CYCLE

#define IS_I2C_DUTY_CYCLE (   CYCLE)
Value:
(((CYCLE) == I2C_DUTYCYCLE_2) || \
((CYCLE) == I2C_DUTYCYCLE_16_9))

◆ IS_I2C_GENERAL_CALL

#define IS_I2C_GENERAL_CALL (   CALL)
Value:
(((CALL) == I2C_GENERALCALL_DISABLE) || \
((CALL) == I2C_GENERALCALL_ENABLE))

◆ IS_I2C_MEMADD_SIZE

#define IS_I2C_MEMADD_SIZE (   SIZE)
Value:
(((SIZE) == I2C_MEMADD_SIZE_8BIT) || \
((SIZE) == I2C_MEMADD_SIZE_16BIT))

◆ IS_I2C_NO_STRETCH

#define IS_I2C_NO_STRETCH (   STRETCH)
Value:
(((STRETCH) == I2C_NOSTRETCH_DISABLE) || \
((STRETCH) == I2C_NOSTRETCH_ENABLE))

◆ IS_I2C_TRANSFER_OPTIONS_REQUEST

#define IS_I2C_TRANSFER_OPTIONS_REQUEST (   REQUEST)
Value:
(((REQUEST) == I2C_FIRST_FRAME) || \
((REQUEST) == I2C_NEXT_FRAME) || \
((REQUEST) == I2C_FIRST_AND_LAST_FRAME) || \
((REQUEST) == I2C_LAST_FRAME))