expand15 2.1.0.0
expand15.h File Reference

This file contains API for Expand 15 Click Driver. More...

#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_i2c_master.h"

Go to the source code of this file.

Data Structures

struct  expand15_t
 Expand 15 Click context object. More...
 
struct  expand15_cfg_t
 Expand 15 Click configuration object. More...
 

Macros

#define EXPAND15_REG_INPUT_PORT_0   0x00
 Expand 15 description register.
 
#define EXPAND15_REG_INPUT_PORT_1   0x01
 
#define EXPAND15_REG_OUTPUT_PORT_0   0x02
 
#define EXPAND15_REG_OUTPUT_PORT_1   0x03
 
#define EXPAND15_REG_POLARITY_INVERSION_0   0x04
 
#define EXPAND15_REG_POLARITY_INVERSION_1   0x05
 
#define EXPAND15_REG_CONFIGURATION_0   0x06
 
#define EXPAND15_REG_CONFIGURATION_1   0x07
 
#define EXPAND15_REG_OUTPUT_DRV_STRENGTH_0_0   0x40
 
#define EXPAND15_REG_OUTPUT_DRV_STRENGTH_0_1   0x41
 
#define EXPAND15_REG_OUTPUT_DRV_STRENGTH_1_0   0x42
 
#define EXPAND15_REG_OUTPUT_DRV_STRENGTH_1_1   0x43
 
#define EXPAND15_REG_INPUT_LATCH_0   0x44
 
#define EXPAND15_REG_INPUT_LATCH_1   0x45
 
#define EXPAND15_REG_PULL_UP_DOWN_EN_0   0x46
 
#define EXPAND15_REG_PULL_UP_DOWN_EN_1   0x47
 
#define EXPAND15_REG_PULL_UP_DOWN_SELECT_0   0x48
 
#define EXPAND15_REG_PULL_UP_DOWN_SELECT_1   0x49
 
#define EXPAND15_REG_INTERRUPT_MASK_0   0x4A
 
#define EXPAND15_REG_INTERRUPT_MASK_1   0x4B
 
#define EXPAND15_REG_INTERRUPT_STATUS_0   0x4C
 
#define EXPAND15_REG_INTERRUPT_STATUS_1   0x4D
 
#define EXPAND15_REG_OUTPUT_PORT_CFG   0x4F
 
#define EXPAND15_PIN_00_MASK   0x01
 Expand 15 description setting.
 
#define EXPAND15_PIN_01_MASK   0x02
 
#define EXPAND15_PIN_02_MASK   0x04
 
#define EXPAND15_PIN_03_MASK   0x08
 
#define EXPAND15_PIN_04_MASK   0x10
 
#define EXPAND15_PIN_05_MASK   0x20
 
#define EXPAND15_PIN_06_MASK   0x40
 
#define EXPAND15_PIN_07_MASK   0x80
 
#define EXPAND15_PIN_10_MASK   0x01
 
#define EXPAND15_PIN_11_MASK   0x02
 
#define EXPAND15_PIN_12_MASK   0x04
 
#define EXPAND15_PIN_13_MASK   0x08
 
#define EXPAND15_PIN_14_MASK   0x10
 
#define EXPAND15_PIN_15_MASK   0x20
 
#define EXPAND15_PIN_16_MASK   0x40
 
#define EXPAND15_PIN_17_MASK   0x80
 
#define EXPAND15_PORT_0   0x00
 Expand 15 port selection setting.
 
#define EXPAND15_PORT_1   0x01
 
#define EXPAND15_OUTPUT_STRENGTH_FULL   0x03
 Expand 15 output pins strength setting.
 
#define EXPAND15_OUTPUT_STRENGTH_3_QUARTERS   0x02
 
#define EXPAND15_OUTPUT_STRENGTH_HALF   0x01
 
#define EXPAND15_OUTPUT_STRENGTH_1_QUARTER   0x00
 
#define EXPAND15_PORT_PUSH_PULL   0x00
 Expand 15 output port configuration setting.
 
#define EXPAND15_PORT_OPEN_DRAIN   0x01
 
#define EXPAND15_ALL_PINS_ON   0xFF
 Expand 15 pin selection setting.
 
#define EXPAND15_ALL_PINS_OFF   0x00
 
#define EXPAND15_DEVICE_ADDRESS_GND   0x20
 Expand 15 device address setting.
 
#define EXPAND15_DEVICE_ADDRESS_VCC   0x21
 
#define EXPAND15_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  expand15_return_value_t { EXPAND15_OK = 0 , EXPAND15_ERROR = -1 }
 Expand 15 Click return value data. More...
 

Functions

void expand15_cfg_setup (expand15_cfg_t *cfg)
 Expand 15 configuration object setup function.
 
err_t expand15_init (expand15_t *ctx, expand15_cfg_t *cfg)
 Expand 15 initialization function.
 
err_t expand15_default_cfg (expand15_t *ctx)
 Expand 15 default configuration function.
 
err_t expand15_generic_write (expand15_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
 Expand 15 I2C writing function.
 
err_t expand15_generic_read (expand15_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
 Expand 15 I2C reading function.
 
uint8_t expand15_get_int_pin_state (expand15_t *ctx)
 Expand 15 get interrupt function.
 
void expand15_hw_reset (expand15_t *ctx)
 Expand 15 hardware reset function.
 
err_t expand15_get_in_pin_state (expand15_t *ctx, uint8_t port, uint8_t *pin_state)
 Expand 15 get input pin state function.
 
err_t expand15_get_out_pin_state (expand15_t *ctx, uint8_t port, uint8_t *pin_state)
 Expand 15 get output pin state function.
 
err_t expand15_set_out_pin_state (expand15_t *ctx, uint8_t port, uint8_t pin_state)
 Expand 15 set output pin state function.
 
err_t expand15_get_in_pin_polarity (expand15_t *ctx, uint8_t port, uint8_t *pin_polarity)
 Expand 15 get input pin polarity function.
 
err_t expand15_set_in_pin_polarity (expand15_t *ctx, uint8_t port, uint8_t pin_polarity)
 Expand 15 set input pin polarity function.
 
err_t expand15_get_pin_config (expand15_t *ctx, uint8_t port, uint8_t *pin_config)
 Expand 15 get pin configuration function.
 
err_t expand15_set_pin_as_in (expand15_t *ctx, uint8_t port, uint8_t pin_config)
 Expand 15 set pin as input function.
 
err_t expand15_set_pin_as_out (expand15_t *ctx, uint8_t port, uint8_t pin_config)
 Expand 15 set pin as output function.
 
err_t expand15_get_out_level (expand15_t *ctx, uint8_t port, uint16_t *pin_output_level)
 Expand 15 get output level function.
 
err_t expand15_set_out_level (expand15_t *ctx, uint8_t port, uint16_t pin_output_level)
 Expand 15 set output level function.
 
err_t expand15_set_out_pin_strength (expand15_t *ctx, uint8_t port, uint8_t pin, uint8_t strength)
 Expand 15 set pin output strength function.
 
err_t expand15_set_en_pull_up_down (expand15_t *ctx, uint8_t port, uint8_t port_config)
 Expand 15 set enable pull up/down function.
 
err_t expand15_get_en_pull_up_down (expand15_t *ctx, uint8_t port, uint8_t *port_config)
 Expand 15 get enable pull up/down function.
 
err_t expand15_set_pull_up_down (expand15_t *ctx, uint8_t port, uint8_t pin_config)
 Expand 15 set pull up/down function.
 
err_t expand15_get_pull_up_down (expand15_t *ctx, uint8_t port, uint8_t *pin_config)
 Expand 15 get pull up/down function.
 
err_t expand15_set_int_mask (expand15_t *ctx, uint8_t port, uint8_t int_config)
 Expand 15 set interrupt mask function.
 
err_t expand15_get_int_mask (expand15_t *ctx, uint8_t port, uint8_t *int_config)
 Expand 15 get interrupt mask function.
 
err_t expand15_get_int_status (expand15_t *ctx, uint8_t port, uint8_t *int_status)
 Expand 15 get interrupt status function.
 
err_t expand15_get_out_port_config (expand15_t *ctx, uint8_t *port0_cfg, uint8_t *port1_cfg)
 Expand 15 get output port configuration function.
 
err_t expand15_set_out_port_config (expand15_t *ctx, uint8_t port0_cfg, uint8_t port1_cfg)
 Expand 15 set output port configuration function.
 

Detailed Description

This file contains API for Expand 15 Click Driver.

Enumeration Type Documentation

◆ expand15_return_value_t

Expand 15 Click return value data.

Predefined enum values for driver return values.

Enumerator
EXPAND15_OK 
EXPAND15_ERROR