18#ifndef __HAL_DRIVER_GPIO_I2C_H__
19#define __HAL_DRIVER_GPIO_I2C_H__
25#if (VSF_HAL_USE_I2C == ENABLED) && (VSF_HAL_USE_GPIO_I2C == ENABLED)
27#if defined(__VSF_HAL_GPIO_I2C_CLASS_IMPLEMENT)
28# define __VSF_CLASS_IMPLEMENT__
39#ifndef VSF_GPIO_I2C_CFG_MULTI_CLASS
40# define VSF_GPIO_I2C_CFG_MULTI_CLASS VSF_I2C_CFG_MULTI_CLASS
45#if VSF_GPIO_I2C_CFG_MULTI_CLASS == ENABLED
46# define __describe_gpio_i2c_op() .op = &vsf_gpio_i2c_op,
48# define __describe_gpio_i2c_op()
51#define __describe_gpio_i2c(__name, __gpio_port, __fn_delay, __scl_pin, __sda_pin)\
52 vsf_gpio_i2c_t __name = { \
53 __describe_gpio_i2c_op() \
54 .port = (__gpio_port), \
55 .fn_delay = (__fn_delay), \
56 .scl_pin = (__scl_pin), \
57 .sda_pin = (__sda_pin), \
60#define describe_gpio_i2c(__name, __gpio_port, __fn_delay, __scl_pin, __sda_pin)\
61 __describe_gpio_i2c(__name, (__gpio_port), (__fn_delay), (__scl_pin), (__sda_pin))
70#if VSF_GPIO_I2C_CFG_MULTI_CLASS == ENABLED
96#define VSF_I2C_CFG_DEC_PREFIX vsf_gpio
97#define VSF_I2C_CFG_DEC_UPCASE_PREFIX VSF_GPIO
98#define VSF_I2C_CFG_DEC_EXTERN_OP ENABLED
Definition vsf_gpio_i2c.h:69
unsigned short uint16_t
Definition lvgl.h:41
unsigned char uint8_t
Definition lvgl.h:40
#define vsf_dcl_class
Definition ooc_class.h:46
#define vsf_class(__name)
Definition ooc_class.h:48
const i_spi_t vsf_spi_irq_mask_t irq_mask
Definition spi_interface.h:38
Definition vsf_template_gpio.h:491
i2c configuration
Definition vsf_template_i2c.h:314
Definition vsf_template_i2c.h:334
void(* vsf_gpio_i2c_delay)(vsf_gpio_i2c_t *gpio_i2c_ptr)
Definition vsf_gpio_i2c.h:67
vsf_i2c_irq_mask_t
Definition vsf_template_i2c.h:194