no-OS
Loading...
Searching...
No Matches
adis16607.h File Reference

Implementation of adis16607.h. More...

#include "adis.h"
Include dependency graph for adis16607.h:

Macros

#define ADIS16607_USER_DATA_CFG_REG   0x34
 
#define ADIS16607_USER_SYNC_REG   0x33
 
#define ADIS16607_USER_GPIO_CFG_REG   0x2F
 
#define ADIS16607_DIAG_STAT_REG   0x05
 
#define ADIS16607_DATA_READY_GPIO_MASK   NO_OS_GENMASK(11, 9)
 
#define ADIS16607_SYNC_GPIO_MASK   NO_OS_GENMASK(8, 6)
 
#define ADIS16607_RESET_GPIO_MASK   NO_OS_GENMASK(2, 0)
 
#define ADIS16607_DATA_CNTR_EN_MASK   NO_OS_BIT(14)
 
#define ADIS16607_ID_NO_OFFSET(x)
 
#define ADIS16607_GPIO_FUNC_NO_OFFSET(x, y)
 
#define ADIS16607_I2C_ADDRESS_DOUTLOW_SCLKLOW   0x38
 
#define ADIS16607_I2C_ADDRESS_DOUTLOW_SCLKHIGH   0x39
 
#define ADIS16607_I2C_ADDRESS_DOUTHIGH_SCLKLOW   0x3A
 
#define ADIS16607_I2C_ADDRESS_DOUTHIGH_SCLKHIGH   0x3B
 
#define ADIS16607_SELF_TEST_DELAY_MS   10
 

Functions

int adis16607_fifo_enable (struct adis_dev *adis, bool enable, uint16_t thr, bool burst32)
 Enable or disable FIFO mode.
 
int adis16607_fifo_pop (struct adis_dev *adis, struct adis_burst_data *data)
 Pop one sample from the FIFO.
 

Variables

const struct adis_chip_info adis16607_chip_info
 

Detailed Description

Implementation of adis16607.h.

Author
Radu Sabau (radu..nosp@m.saba.nosp@m.u@ana.nosp@m.log..nosp@m.com)

Copyright 2026(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:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of Analog Devices, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

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.

Macro Definition Documentation

◆ ADIS16607_DATA_CNTR_EN_MASK

#define ADIS16607_DATA_CNTR_EN_MASK   NO_OS_BIT(14)

◆ ADIS16607_DATA_READY_GPIO_MASK

#define ADIS16607_DATA_READY_GPIO_MASK   NO_OS_GENMASK(11, 9)

◆ ADIS16607_DIAG_STAT_REG

#define ADIS16607_DIAG_STAT_REG   0x05

◆ ADIS16607_GPIO_FUNC_NO_OFFSET

#define ADIS16607_GPIO_FUNC_NO_OFFSET ( x,
y )
Value:
((x) - (y))

◆ ADIS16607_I2C_ADDRESS_DOUTHIGH_SCLKHIGH

#define ADIS16607_I2C_ADDRESS_DOUTHIGH_SCLKHIGH   0x3B

◆ ADIS16607_I2C_ADDRESS_DOUTHIGH_SCLKLOW

#define ADIS16607_I2C_ADDRESS_DOUTHIGH_SCLKLOW   0x3A

◆ ADIS16607_I2C_ADDRESS_DOUTLOW_SCLKHIGH

#define ADIS16607_I2C_ADDRESS_DOUTLOW_SCLKHIGH   0x39

◆ ADIS16607_I2C_ADDRESS_DOUTLOW_SCLKLOW

#define ADIS16607_I2C_ADDRESS_DOUTLOW_SCLKLOW   0x38

◆ ADIS16607_ID_NO_OFFSET

#define ADIS16607_ID_NO_OFFSET ( x)
Value:
((x) - ADIS16607_2)
@ ADIS16607_2
Definition adis.h:75

◆ ADIS16607_RESET_GPIO_MASK

#define ADIS16607_RESET_GPIO_MASK   NO_OS_GENMASK(2, 0)

◆ ADIS16607_SELF_TEST_DELAY_MS

#define ADIS16607_SELF_TEST_DELAY_MS   10

◆ ADIS16607_SYNC_GPIO_MASK

#define ADIS16607_SYNC_GPIO_MASK   NO_OS_GENMASK(8, 6)

◆ ADIS16607_USER_DATA_CFG_REG

#define ADIS16607_USER_DATA_CFG_REG   0x34

◆ ADIS16607_USER_GPIO_CFG_REG

#define ADIS16607_USER_GPIO_CFG_REG   0x2F

◆ ADIS16607_USER_SYNC_REG

#define ADIS16607_USER_SYNC_REG   0x33

Function Documentation

◆ adis16607_fifo_enable()

int adis16607_fifo_enable ( struct adis_dev * adis,
bool enable,
uint16_t thr,
bool burst32 )

Enable or disable FIFO mode.

Parameters
adis- The adis device.
enable- True to enable FIFO, false to disable.
thr- FIFO watermark threshold (1-1024). Ignored if enable is false.
burst32- True for 32-bit burst mode, false for 16-bit. Ignored if enable is false.
Returns
0 in case of success, error code otherwise.

◆ adis16607_fifo_pop()

int adis16607_fifo_pop ( struct adis_dev * adis,
struct adis_burst_data * data )

Pop one sample from the FIFO.

Parameters
adis- The adis device.
data- The burst read data structure to be populated.
Returns
0 in case of success, error code otherwise.

For I2C and SPI Half-Duplex: uses burst read with FIFO_DATA command. For SPI Full-Duplex: issues repeated read commands to FIFO_DATA register. Note: burst32 mode is configured via adis16607_fifo_enable().

Variable Documentation

◆ adis16607_chip_info

const struct adis_chip_info adis16607_chip_info
extern