no-OS
Classes | Macros | Functions
ad9265.h File Reference

Header file of AD9265 Driver. More...

#include <stdint.h>
#include "no_os_delay.h"
#include "no_os_spi.h"
Include dependency graph for ad9265.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ad9265_init_param
 
struct  ad9265_dev
 

Macros

#define AD9265_REG_CHIP_PORT_CONF   0x00
 
#define AD9265_REG_CHIP_ID   0x01
 
#define AD9265_REG_CHIP_GRADE   0x02
 
#define AD9265_REG_CHAN_INDEX   0x05
 
#define AD9265_REG_TRANSFER   0xFF
 
#define AD9265_REG_MODES   0x08
 
#define AD9265_REG_TEST_IO   0x0D
 
#define AD9265_REG_ADC_INPUT   0x0F
 
#define AD9265_REG_OFFSET   0x10
 
#define AD9265_REG_OUTPUT_MODE   0x14
 
#define AD9265_REG_OUTPUT_ADJUST   0x15
 
#define AD9265_REG_OUTPUT_PHASE   0x16
 
#define AD9265_REG_OUTPUT_DELAY   0x17
 
#define AD9265_REG_VREF   0x18
 
#define AD9265_REG_ANALOG_INPUT   0x2C
 
#define TRANSFER_SYNC   0x1
 
#define TESTMODE_OFF   0x0
 
#define TESTMODE_MIDSCALE_SHORT   0x1
 
#define TESTMODE_POS_FULLSCALE   0x2
 
#define TESTMODE_NEG_FULLSCALE   0x3
 
#define TESTMODE_ALT_CHECKERBOARD   0x4
 
#define TESTMODE_PN23_SEQ   0x5
 
#define TESTMODE_PN9_SEQ   0x6
 
#define TESTMODE_ONE_ZERO_TOGGLE   0x7
 
#define OUTPUT_MODE_OFFSET_BINARY   0x0
 
#define OUTPUT_MODE_TWOS_COMPLEMENT   0x1
 
#define OUTPUT_MODE_GRAY_CODE   0x2
 
#define OUTPUT_EVEN_ODD_MODE_EN   0x20
 
#define INVERT_DCO_CLK   0x80
 
#define AD9265_CHIP_ID   0x64
 
#define AD9265_DEF_OUTPUT_MODE   0x40
 

Functions

int32_t ad9265_testmode_set (struct ad9265_dev *dev, uint8_t mode)
 ad9265_setup More...
 
int32_t ad9265_setup (struct ad9265_dev **device, struct ad9265_init_param init_param, struct axi_adc core)
 ad9265_setup More...
 
int32_t ad9265_remove (struct ad9265_dev *dev)
 ad9265_remove More...
 
int32_t ad9265_calibrate (struct ad9265_dev *dev, struct ad9265_init_param init_param, struct axi_adc core)
 ad9265_calibrate More...
 
int32_t ad9265_outputmode_set (struct ad9265_dev *dev, uint8_t mode)
 ad9265_setup More...
 
int32_t ad9265_spi_write (struct ad9265_dev *dev, uint16_t reg_addr, uint8_t reg_data)
 ad9265_spi_write More...
 
int32_t ad9265_spi_read (struct ad9265_dev *dev, uint16_t reg_addr, uint8_t *reg_data)
 ad9265_spi_read More...
 

Detailed Description

Header file of AD9265 Driver.

Author
DBogdan (drago.nosp@m.s.bo.nosp@m.gdan@.nosp@m.anal.nosp@m.og.co.nosp@m.m)

Copyright 2015(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

◆ AD9265_CHIP_ID

#define AD9265_CHIP_ID   0x64

◆ AD9265_DEF_OUTPUT_MODE

#define AD9265_DEF_OUTPUT_MODE   0x40

◆ AD9265_REG_ADC_INPUT

#define AD9265_REG_ADC_INPUT   0x0F

◆ AD9265_REG_ANALOG_INPUT

#define AD9265_REG_ANALOG_INPUT   0x2C

◆ AD9265_REG_CHAN_INDEX

#define AD9265_REG_CHAN_INDEX   0x05

◆ AD9265_REG_CHIP_GRADE

#define AD9265_REG_CHIP_GRADE   0x02

◆ AD9265_REG_CHIP_ID

#define AD9265_REG_CHIP_ID   0x01

◆ AD9265_REG_CHIP_PORT_CONF

#define AD9265_REG_CHIP_PORT_CONF   0x00

◆ AD9265_REG_MODES

#define AD9265_REG_MODES   0x08

◆ AD9265_REG_OFFSET

#define AD9265_REG_OFFSET   0x10

◆ AD9265_REG_OUTPUT_ADJUST

#define AD9265_REG_OUTPUT_ADJUST   0x15

◆ AD9265_REG_OUTPUT_DELAY

#define AD9265_REG_OUTPUT_DELAY   0x17

◆ AD9265_REG_OUTPUT_MODE

#define AD9265_REG_OUTPUT_MODE   0x14

◆ AD9265_REG_OUTPUT_PHASE

#define AD9265_REG_OUTPUT_PHASE   0x16

◆ AD9265_REG_TEST_IO

#define AD9265_REG_TEST_IO   0x0D

◆ AD9265_REG_TRANSFER

#define AD9265_REG_TRANSFER   0xFF

◆ AD9265_REG_VREF

#define AD9265_REG_VREF   0x18

◆ INVERT_DCO_CLK

#define INVERT_DCO_CLK   0x80

◆ OUTPUT_EVEN_ODD_MODE_EN

#define OUTPUT_EVEN_ODD_MODE_EN   0x20

◆ OUTPUT_MODE_GRAY_CODE

#define OUTPUT_MODE_GRAY_CODE   0x2

◆ OUTPUT_MODE_OFFSET_BINARY

#define OUTPUT_MODE_OFFSET_BINARY   0x0

◆ OUTPUT_MODE_TWOS_COMPLEMENT

#define OUTPUT_MODE_TWOS_COMPLEMENT   0x1

◆ TESTMODE_ALT_CHECKERBOARD

#define TESTMODE_ALT_CHECKERBOARD   0x4

◆ TESTMODE_MIDSCALE_SHORT

#define TESTMODE_MIDSCALE_SHORT   0x1

◆ TESTMODE_NEG_FULLSCALE

#define TESTMODE_NEG_FULLSCALE   0x3

◆ TESTMODE_OFF

#define TESTMODE_OFF   0x0

◆ TESTMODE_ONE_ZERO_TOGGLE

#define TESTMODE_ONE_ZERO_TOGGLE   0x7

◆ TESTMODE_PN23_SEQ

#define TESTMODE_PN23_SEQ   0x5

◆ TESTMODE_PN9_SEQ

#define TESTMODE_PN9_SEQ   0x6

◆ TESTMODE_POS_FULLSCALE

#define TESTMODE_POS_FULLSCALE   0x2

◆ TRANSFER_SYNC

#define TRANSFER_SYNC   0x1

Function Documentation

◆ ad9265_calibrate()

int32_t ad9265_calibrate ( struct ad9265_dev dev,
struct ad9265_init_param  init_param,
struct axi_adc  core 
)

ad9265_calibrate

Here is the caller graph for this function:

◆ ad9265_outputmode_set()

int32_t ad9265_outputmode_set ( struct ad9265_dev dev,
uint8_t  mode 
)

ad9265_setup

Here is the caller graph for this function:

◆ ad9265_remove()

int32_t ad9265_remove ( struct ad9265_dev dev)

ad9265_remove

◆ ad9265_setup()

int32_t ad9265_setup ( struct ad9265_dev **  device,
struct ad9265_init_param  init_param,
struct axi_adc  core 
)

ad9265_setup

Here is the caller graph for this function:

◆ ad9265_spi_read()

int32_t ad9265_spi_read ( struct ad9265_dev dev,
uint16_t  reg_addr,
uint8_t *  reg_data 
)

ad9265_spi_read

Here is the caller graph for this function:

◆ ad9265_spi_write()

int32_t ad9265_spi_write ( struct ad9265_dev dev,
uint16_t  reg_addr,
uint8_t  reg_data 
)

ad9265_spi_write

Here is the caller graph for this function:

◆ ad9265_testmode_set()

int32_t ad9265_testmode_set ( struct ad9265_dev dev,
uint8_t  mode 
)

ad9265_setup

Here is the caller graph for this function: