#include <stdbool.h>#include <stdint.h>#include "kernel_defines.h"#include "periph/dac.h"#include "periph/gpio.h"#include "periph/i2c.h"
 Include dependency graph for mcp47xx.h:
 This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | mcp47xx_params_t | 
| MCP47xx device configuration parameters.  More... | |
| struct | mcp47xx_t | 
| MCP47xx device data structure type.  More... | |
| struct | mcp47xx_saul_dac_params_t | 
| MCP47xx configuration structure for mapping DAC channels to SAUL.  More... | |
Enumerations | |
| enum | mcp47xx_error_codes_t { MCP47XX_OK , MCP47XX_ERROR_I2C , MCP47XX_ERROR_NOT_AVAIL } | 
| MCP47xx driver error codes.  More... | |
| enum | mcp47xx_variant_t {  MCP4706 , MCP4716 , MCP4725 , MCP4726 , MCP4728 }  | 
| Supported MCP47xx variants.  More... | |
| enum | mcp47xx_gain_t { MCP47XX_GAIN_1X = 0 , MCP47XX_GAIN_2X = 1 } | 
| MCP47xx gain configuration type.  More... | |
| enum | mcp47xx_vref_t { MCP47XX_VREF_VDD = 0 , MCP47XX_VREF_INT = 1 , MCP47XX_VREF_PIN = 2 , MCP47XX_VREF_BUF = 3 } | 
| MCP47xx V_REF configuration type.  More... | |
| enum | mcp47xx_pd_mode_t { MCP47XX_NORMAL = 0 , MCP47XX_PD_SMALL = 1 , MCP47XX_PD_MEDIUM = 2 , MCP47XX_PD_LARGE = 3 } | 
| MCP47xx Power-down mode selection type.  More... | |
Functions | |
| int | mcp47xx_init (mcp47xx_t *dev, const mcp47xx_params_t *params) | 
| Initialize the MCP47xx DAC.  More... | |
| int | mcp47xx_dac_init (mcp47xx_t *dev, uint8_t chn) | 
| Initialize a MCP47xx DAC channel.  More... | |
| void | mcp47xx_dac_set (mcp47xx_t *dev, uint8_t chn, uint16_t value) | 
| Write a value to a MCP47xx DAC channel.  More... | |
| void | mcp47xx_dac_get (mcp47xx_t *dev, uint8_t chn, uint16_t *value) | 
| Get the current value of a MCP47xx DAC channel.  More... | |
| void | mcp47xx_dac_poweron (mcp47xx_t *dev, uint8_t chn) | 
| Enables the MCP47xx DAC device.  More... | |
| void | mcp47xx_dac_poweroff (mcp47xx_t *dev, uint8_t chn) | 
| Disables the MCP47xx DAC device.  More... | |
| uint8_t | mcp47xx_dac_channels (mcp47xx_t *dev) | 
| Returns the number of channels of MCP47xx DAC device.  More... | |
MCP47xx I2C slave addresses | |
MCP47xx I2C slave addresses are defined as an offset to a base address, which depends on the expander used. The address offset is in the range of 0 to 7.  | |
| #define | MCP47XX_BASE_ADDR (0x60) | 
| MCP47xx I2C slave base address.  More... | |
MCP47xx Channel number | |
| #define | MCP4706_CHN_NUM (1) | 
| MCP4706 has 1 channel.  | |
| #define | MCP4716_CHN_NUM (1) | 
| MCP4716 has 1 channel.  | |
| #define | MCP4725_CHN_NUM (1) | 
| MCP4725 has 1 channel.  | |
| #define | MCP4726_CHN_NUM (1) | 
| MCP4726 has 1 channel.  | |
| #define | MCP4728_CHN_NUM (4) | 
| MCP4728 has 4 channels.  | |
| #define | MCP47XX_CHN_NUM_MAX (4) | 
| maximum number of channels  | |