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

Header file of AD9434 Driver. More...

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

Go to the source code of this file.

Classes

struct  ad9434_dev
 
struct  ad9434_init_param
 

Macros

#define AD9434_REG_CHIP_PORT_CONF   0x00
 
#define AD9434_REG_CHIP_ID   0x01
 
#define AD9434_REG_CHIP_GRADE   0x02
 
#define AD9434_REG_CHAN_INDEX   0x05
 
#define AD9434_REG_TRANSFER   0xFF
 
#define AD9434_REG_MODES   0x08
 
#define AD9434_REG_TEST_IO   0x0D
 
#define AD9434_REG_ADC_INPUT   0x0F
 
#define AD9434_REG_OFFSET   0x10
 
#define AD9434_REG_OUTPUT_MODE   0x14
 
#define AD9434_REG_OUTPUT_ADJUST   0x15
 
#define AD9434_REG_OUTPUT_PHASE   0x16
 
#define AD9434_REG_OUTPUT_DELAY   0x17
 
#define AD9434_REG_VREF   0x18
 
#define AD9434_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 TESTMODE_USER_DEFINED   0x8
 
#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 AD9434_CHIP_ID   0x6A
 
#define AD9434_DEF_OUTPUT_MODE   0x00
 

Functions

int32_t ad9434_spi_read (struct ad9434_dev *dev, uint16_t reg_addr, uint8_t *reg_data)
 ad9434_spi_read More...
 
int32_t ad9434_spi_write (struct ad9434_dev *dev, uint16_t reg_addr, uint8_t reg_data)
 ad9434_spi_write More...
 
int32_t ad9434_testmode_set (struct ad9434_dev *dev, uint8_t mode)
 ad9434_testmode_set More...
 
int32_t ad9434_setup (struct ad9434_dev **device, struct ad9434_init_param init_param)
 ad9434_setup More...
 
int32_t ad9434_outputmode_set (struct ad9434_dev *dev, uint8_t mode)
 ad9434_setup More...
 
int32_t ad9434_remove (struct ad9434_dev *dev)
 ad9434_remove More...
 

Detailed Description

Header file of AD9434 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

◆ AD9434_CHIP_ID

#define AD9434_CHIP_ID   0x6A

◆ AD9434_DEF_OUTPUT_MODE

#define AD9434_DEF_OUTPUT_MODE   0x00

◆ AD9434_REG_ADC_INPUT

#define AD9434_REG_ADC_INPUT   0x0F

◆ AD9434_REG_ANALOG_INPUT

#define AD9434_REG_ANALOG_INPUT   0x2C

◆ AD9434_REG_CHAN_INDEX

#define AD9434_REG_CHAN_INDEX   0x05

◆ AD9434_REG_CHIP_GRADE

#define AD9434_REG_CHIP_GRADE   0x02

◆ AD9434_REG_CHIP_ID

#define AD9434_REG_CHIP_ID   0x01

◆ AD9434_REG_CHIP_PORT_CONF

#define AD9434_REG_CHIP_PORT_CONF   0x00

◆ AD9434_REG_MODES

#define AD9434_REG_MODES   0x08

◆ AD9434_REG_OFFSET

#define AD9434_REG_OFFSET   0x10

◆ AD9434_REG_OUTPUT_ADJUST

#define AD9434_REG_OUTPUT_ADJUST   0x15

◆ AD9434_REG_OUTPUT_DELAY

#define AD9434_REG_OUTPUT_DELAY   0x17

◆ AD9434_REG_OUTPUT_MODE

#define AD9434_REG_OUTPUT_MODE   0x14

◆ AD9434_REG_OUTPUT_PHASE

#define AD9434_REG_OUTPUT_PHASE   0x16

◆ AD9434_REG_TEST_IO

#define AD9434_REG_TEST_IO   0x0D

◆ AD9434_REG_TRANSFER

#define AD9434_REG_TRANSFER   0xFF

◆ AD9434_REG_VREF

#define AD9434_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

◆ TESTMODE_USER_DEFINED

#define TESTMODE_USER_DEFINED   0x8

◆ TRANSFER_SYNC

#define TRANSFER_SYNC   0x1

Function Documentation

◆ ad9434_outputmode_set()

int32_t ad9434_outputmode_set ( struct ad9434_dev dev,
uint8_t  mode 
)

ad9434_setup

Here is the caller graph for this function:

◆ ad9434_remove()

int32_t ad9434_remove ( struct ad9434_dev dev)

ad9434_remove

◆ ad9434_setup()

int32_t ad9434_setup ( struct ad9434_dev **  device,
struct ad9434_init_param  init_param 
)

ad9434_setup

Here is the caller graph for this function:

◆ ad9434_spi_read()

int32_t ad9434_spi_read ( struct ad9434_dev dev,
uint16_t  reg_addr,
uint8_t *  reg_data 
)

ad9434_spi_read

Here is the caller graph for this function:

◆ ad9434_spi_write()

int32_t ad9434_spi_write ( struct ad9434_dev dev,
uint16_t  reg_addr,
uint8_t  reg_data 
)

ad9434_spi_write

Here is the caller graph for this function:

◆ ad9434_testmode_set()

int32_t ad9434_testmode_set ( struct ad9434_dev dev,
uint8_t  mode 
)

ad9434_testmode_set

Here is the caller graph for this function: