c1wireswitch 2.1.0.0
c1wireswitch.h File Reference

This file contains API for 1-Wire Switch Click Driver. More...

#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_one_wire.h"

Go to the source code of this file.

Data Structures

struct  c1wireswitch_t
 1-Wire Switch Click context object. More...
 
struct  c1wireswitch_cfg_t
 1-Wire Switch Click configuration object. More...
 

Macros

#define C1WIRESWITCH_CMD_WRITE_SCRATCHPAD   0x5A
 1-Wire Switch commands list.
 
#define C1WIRESWITCH_CMD_READ_SCRATCHPAD   0xF5
 
#define C1WIRESWITCH_CMD_WRITE_PIO   0x5A
 
#define C1WIRESWITCH_CMD_READ_PIO   0xF5
 
#define C1WIRESWITCH_PIOB_STATE_MASK   0x04
 1-Wire Switch PIO state masks.
 
#define C1WIRESWITCH_PIOA_STATE_MASK   0x01
 
#define C1WIRESWITCH_PIOB_LATCH_STATE_MASK   0x08
 
#define C1WIRESWITCH_PIOA_LATCH_STATE_MASK   0x02
 
#define C1WIRESWITCH_PIOA_HIGH   0x01
 1-Wire Switch PIO states.
 
#define C1WIRESWITCH_PIOA_LOW   0x00
 
#define C1WIRESWITCH_PIOB_HIGH   0x04
 
#define C1WIRESWITCH_PIOB_LOW   0x00
 
#define C1WIRESWITCH_PIOB_ON   0x02
 
#define C1WIRESWITCH_PIOB_OFF   0x00
 
#define C1WIRESWITCH_PIOA_ON   0x00
 
#define C1WIRESWITCH_PIOA_OFF   0x01
 
#define C1WIRESWITCH_PIOB_LATCH_LOW   0x00
 
#define C1WIRESWITCH_PIOB_LATCH_HIGH   0x08
 
#define C1WIRESWITCH_PIOA_LATCH_LOW   0x00
 
#define C1WIRESWITCH_PIOA_LATCH_HIGH   0x02
 
#define C1WIRESWITCH_FAMILY_CODE   0x3A
 1-Wire Switch family code value.
 
#define C1WIRESWITCH_ADDRESS   0x33
 1-Wire Switch address selection macros.
 
#define C1WIRESWITCH_ADDRESS_ALL   0xFF
 
#define C1WIRESWITCH_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  c1wireswitch_gpio_sel_t { C1WIRESWITCH_GPIO_0 , C1WIRESWITCH_GPIO_1 }
 1-Wire Switch Click gpio selector. More...
 
enum  c1wireswitch_return_value_t { C1WIRESWITCH_OK = 0 , C1WIRESWITCH_ERROR = -1 }
 1-Wire Switch Click return value data. More...
 

Functions

void c1wireswitch_cfg_setup (c1wireswitch_cfg_t *cfg)
 1-Wire Switch configuration object setup function.
 
void c1wireswitch_gpio_selection (c1wireswitch_cfg_t *cfg, c1wireswitch_gpio_sel_t gpio_sel)
 1-Wire Switch driver interface setup function.
 
err_t c1wireswitch_init (c1wireswitch_t *ctx, c1wireswitch_cfg_t *cfg)
 1-Wire Switch initialization function.
 
err_t c1wireswitch_default_cfg (c1wireswitch_t *ctx)
 1-Wire Switch default configuration function.
 
err_t c1wireswitch_check_communication (c1wireswitch_t *ctx)
 1-Wire Switch check communication function.
 
err_t c1wireswitch_select_device (c1wireswitch_t *ctx)
 1-Wire Switch select device function.
 
err_t c1wireswitch_read_scratchpad (c1wireswitch_t *ctx, uint8_t *scratchpad, uint8_t scratchpad_len)
 1-Wire Switch read scratchpad function.
 
err_t c1wireswitch_write_scratchpad (c1wireswitch_t *ctx, uint8_t *scratchpad, uint8_t scratchpad_len)
 1-Wire Switch write scratchpad function.
 
err_t c1wireswitch_write_pio (c1wireswitch_t *ctx, uint8_t state)
 1-Wire Switch write programmable I/O state function.
 
err_t c1wireswitch_read_pio (c1wireswitch_t *ctx, uint8_t *state)
 1-Wire Switch read programmable I/O state function.
 
err_t c1wireswitch_set_pio_state (c1wireswitch_t *ctx, uint8_t pio_a, uint8_t pio_b)
 1-Wire Switch write specific programmable I/O state function.
 
err_t c1wireswitch_get_pio_state (c1wireswitch_t *ctx, uint8_t *pio_a, uint8_t *pio_b)
 1-Wire Switch read specific programmable I/O state function.
 
err_t c1wireswitch_get_pio_latch_state (c1wireswitch_t *ctx, uint8_t *pio_a_latch, uint8_t *pio_b_latch)
 1-Wire Switch read programmable I/O latch state function.
 

Detailed Description

This file contains API for 1-Wire Switch Click Driver.

Enumeration Type Documentation

◆ c1wireswitch_gpio_sel_t

1-Wire Switch Click gpio selector.

Selects gpio pin of 1-Wire Switch Click driver.

Enumerator
C1WIRESWITCH_GPIO_0 

GPIO 0 pin.

C1WIRESWITCH_GPIO_1 

GPIO 1 pin.

◆ c1wireswitch_return_value_t

1-Wire Switch Click return value data.

Predefined enum values for driver return values.

Enumerator
C1WIRESWITCH_OK 
C1WIRESWITCH_ERROR