no-OS
|
Header file of ADGS1408 Driver. More...
Go to the source code of this file.
Classes | |
struct | adgs1408_rrobin_config |
struct | adgs1408_dev |
struct | adgs1408_init_param |
Enumerations | |
enum | adgs1408_type { ID_ADGS1408, ID_ADGS1409 } |
enum | adgs1408_state { ADGS1408_ENABLE, ADGS1408_DISABLE } |
Functions | |
uint8_t | adgs1408_compute_crc8 (uint8_t *data, uint8_t data_size) |
int32_t | adgs1408_spi_reg_read (struct adgs1408_dev *dev, uint8_t reg_addr, uint8_t *reg_data) |
int32_t | adgs1408_spi_reg_write (struct adgs1408_dev *dev, uint8_t reg_addr, uint8_t reg_data) |
int32_t | adgs1408_spi_reg_read_mask (struct adgs1408_dev *dev, uint8_t reg_addr, uint8_t mask, uint8_t *data) |
int32_t | adgs1408_spi_reg_write_mask (struct adgs1408_dev *dev, uint8_t reg_addr, uint8_t mask, uint8_t data) |
int32_t | adgs1408_do_soft_reset (struct adgs1408_dev *dev) |
int32_t | adgs1408_clear_err_flags (struct adgs1408_dev *dev) |
int32_t | adgs1408_enter_daisy_chain (struct adgs1408_dev *dev) |
int32_t | adgs1408_send_daisy_chain_cmds (struct adgs1408_dev *dev, uint8_t *cmds, uint8_t cmds_size) |
int32_t | adgs1408_enter_round_robin (struct adgs1408_dev *dev) |
int32_t | adgs1408_configure_round_robin (struct adgs1408_dev *dev, uint8_t cnv_polarity) |
int32_t | adgs1408_exit_round_robin (struct adgs1408_dev *dev) |
int32_t | adgs1408_init (struct adgs1408_dev **device, struct adgs1408_init_param init_param) |
int32_t | adgs1408_remove (struct adgs1408_dev *dev) |
Free the resources allocated by adgs1408_init(). More... | |
Header file of ADGS1408 Driver.
Copyright 2018(c) Analog Devices, Inc.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES, INC. “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES, INC. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define ADGS1408_ALIGNMENT 0x25 |
#define ADGS1408_BURST_MODE_EN (1 << 0) |
#define ADGS1408_CLR_1 0x6C |
#define ADGS1408_CLR_2 0xA9 |
#define ADGS1408_CNV_EDGE_RISING (1 << 0) |
#define ADGS1408_CRC8_POLY 0x07 |
#define ADGS1408_CRC_ERR_EN (1 << 0) |
#define ADGS1408_CRC_ERR_FLAG (1 << 0) |
#define ADGS1408_DAISY_CHAIN_1 0x25 |
#define ADGS1408_DAISY_CHAIN_2 0x00 |
#define ADGS1408_REG_BURST_EN 0x05 |
#define ADGS1408_REG_CNV_EDGE_SEL 0x09 |
#define ADGS1408_REG_ERR_CONFIG 0x02 |
#define ADGS1408_REG_ERR_FLAGS 0x03 |
#define ADGS1408_REG_ROUND_ROBIN_EN 0x06 |
#define ADGS1408_REG_RROBIN_CHANNEL_CONFIG 0x07 |
#define ADGS1408_REG_SOFT_RESETB 0x0B |
#define ADGS1408_REG_SW_DATA 0x01 |
#define ADGS1408_RESET_1 0xA3 |
#define ADGS1408_RESET_2 0x05 |
#define ADGS1408_ROUND_ROBIN_EN (1 << 0) |
#define ADGS1408_RROBIN_EXIT_1 0xA3 |
#define ADGS1408_RROBIN_EXIT_2 0x18 |
#define ADGS1408_RROBIN_EXIT_3 0xE3 |
#define ADGS1408_RROBIN_EXIT_4 0xB4 |
#define ADGS1408_RROBIN_SW1 | ( | x | ) | (((x) & 0x1) << 0) |
#define ADGS1408_RROBIN_SW1 | ( | x | ) | (((x) & 0x1) << 0) |
#define ADGS1408_RROBIN_SW2 | ( | x | ) | (((x) & 0x1) << 1) |
#define ADGS1408_RROBIN_SW2 | ( | x | ) | (((x) & 0x1) << 1) |
#define ADGS1408_RROBIN_SW3 | ( | x | ) | (((x) & 0x1) << 2) |
#define ADGS1408_RROBIN_SW3 | ( | x | ) | (((x) & 0x1) << 2) |
#define ADGS1408_RROBIN_SW4 | ( | x | ) | (((x) & 0x1) << 3) |
#define ADGS1408_RROBIN_SW4 | ( | x | ) | (((x) & 0x1) << 3) |
#define ADGS1408_RROBIN_SW5 | ( | x | ) | (((x) & 0x1) << 4) |
#define ADGS1408_RROBIN_SW6 | ( | x | ) | (((x) & 0x1) << 5) |
#define ADGS1408_RROBIN_SW7 | ( | x | ) | (((x) & 0x1) << 6) |
#define ADGS1408_RROBIN_SW8 | ( | x | ) | (((x) & 0x1) << 7) |
#define ADGS1408_RW_ERR_EN (1 << 2) |
#define ADGS1408_RW_ERR_FLAG (1 << 2) |
#define ADGS1408_SCLK_ERR_EN (1 << 1) |
#define ADGS1408_SCLK_ERR_FLAG (1 << 1) |
#define ADGS1408_SOFT_RESETB | ( | x | ) | (((x) & 0xFF) << 0) |
#define ADGS1408_SW1_EN 0x01 |
#define ADGS1408_SW2_EN 0x03 |
#define ADGS1408_SW3_EN 0x05 |
#define ADGS1408_SW4_EN 0x07 |
#define ADGS1408_SW5_EN 0x09 |
#define ADGS1408_SW6_EN 0x0B |
#define ADGS1408_SW7_EN 0x0D |
#define ADGS1408_SW8_EN 0x0F |
#define ADGS1409_SW1_EN 0x01 |
#define ADGS1409_SW2_EN 0x03 |
#define ADGS1409_SW3_EN 0x05 |
#define ADGS1409_SW4_EN 0x07 |
enum adgs1408_state |
enum adgs1408_type |
int32_t adgs1408_clear_err_flags | ( | struct adgs1408_dev * | dev | ) |
Clear the Error Flags Register.
dev | - The device structure. |
uint8_t adgs1408_compute_crc8 | ( | uint8_t * | data, |
uint8_t | data_size | ||
) |
Compute CRC8 checksum.
data | - The data buffer. |
data_size | - The size of the data buffer. |
int32_t adgs1408_configure_round_robin | ( | struct adgs1408_dev * | dev, |
uint8_t | cnv_polarity | ||
) |
Configure Round Robin Mode.
dev | - The device structure. |
cnv_polarity | - The CNV pin polarity. |
int32_t adgs1408_do_soft_reset | ( | struct adgs1408_dev * | dev | ) |
Do a software reset.
dev | - The device structure. |
int32_t adgs1408_enter_daisy_chain | ( | struct adgs1408_dev * | dev | ) |
Enter Daisy-Chain Mode.
dev | - The device structure. |
int32_t adgs1408_enter_round_robin | ( | struct adgs1408_dev * | dev | ) |
Enter Round Robin Mode.
dev | - The device structure. |
int32_t adgs1408_exit_round_robin | ( | struct adgs1408_dev * | dev | ) |
Exit Round Robin Mode.
dev | - The device structure. |
int32_t adgs1408_init | ( | struct adgs1408_dev ** | device, |
struct adgs1408_init_param | init_param | ||
) |
Initialize the device.
device | - The device structure. |
init_param | - The structure that contains the device initial parameters. |
int32_t adgs1408_remove | ( | struct adgs1408_dev * | dev | ) |
Free the resources allocated by adgs1408_init().
dev | - The device structure. |
int32_t adgs1408_send_daisy_chain_cmds | ( | struct adgs1408_dev * | dev, |
uint8_t * | cmds, | ||
uint8_t | cmds_size | ||
) |
Send Daisy-Chain commands.
dev | - The device structure. |
cmds | - The commands to be sent. |
cmds_size | - The number of commands. |
int32_t adgs1408_spi_reg_read | ( | struct adgs1408_dev * | dev, |
uint8_t | reg_addr, | ||
uint8_t * | reg_data | ||
) |
SPI register read from device.
dev | - The device structure. |
reg_addr | - The register address. |
reg_data | - The register data. |
int32_t adgs1408_spi_reg_read_mask | ( | struct adgs1408_dev * | dev, |
uint8_t | reg_addr, | ||
uint8_t | mask, | ||
uint8_t * | data | ||
) |
int32_t adgs1408_spi_reg_write | ( | struct adgs1408_dev * | dev, |
uint8_t | reg_addr, | ||
uint8_t | reg_data | ||
) |
SPI register write to device.
dev | - The device structure. |
reg_addr | - The register address. |
reg_data | - The register data. |
int32_t adgs1408_spi_reg_write_mask | ( | struct adgs1408_dev * | dev, |
uint8_t | reg_addr, | ||
uint8_t | mask, | ||
uint8_t | data | ||
) |
SPI internal register write to device using a mask.
dev | - The device structure. |
reg_addr | - The register address. |
mask | - The mask. |
data | - The register data. |