no-OS
Functions
ad5628.c File Reference

Implementation of AD5628 Driver. More...

#include <stdlib.h>
#include "ad5628.h"
#include "no_os_alloc.h"
Include dependency graph for ad5628.c:

Functions

int32_t ad5628_init (struct ad5628_dev **device, struct ad5628_init_param init_param)
 Initializes the communication peripheral and the initial Values for AD5628 Board and resets the device. More...
 
int32_t ad5628_remove (struct ad5628_dev *dev)
 Free the resources allocated by ad5628_init(). More...
 
void ad5628_power_mode (struct ad5628_dev *dev, uint8_t pwr_mode, uint8_t channel)
 Sets the device in a specific power mode. More...
 
void ad5628_reset (struct ad5628_dev *dev)
 Resets the device. More...
 
void ad5628_set_input_register (struct ad5628_dev *dev, uint32_t register_value)
 Writes a 32-bit data-word to the Input Register of the device. More...
 

Detailed Description

Implementation of AD5628 Driver.

Author
DNechita (Dan.N.nosp@m.echi.nosp@m.ta@an.nosp@m.alog.nosp@m..com)

Copyright 2012(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.

Function Documentation

◆ ad5628_init()

int32_t ad5628_init ( struct ad5628_dev **  device,
struct ad5628_init_param  init_param 
)

Initializes the communication peripheral and the initial Values for AD5628 Board and resets the device.

Parameters
device- The device structure.
init_param- The structure that contains the device initial parameters.
Returns
ret - The result of the initialization procedure. Example: -1 - SPI peripheral was not initialized or the device is not present. 0 - SPI peripheral was initialized and the device is present.

◆ ad5628_power_mode()

void ad5628_power_mode ( struct ad5628_dev dev,
uint8_t  pwr_mode,
uint8_t  channel 
)

Sets the device in a specific power mode.

Parameters
dev- The device structure.
pwr_mode- power mode of the device. Example: AD5628_PWRDN_NONE AD5628_PWRDN_1K AD5628_PWRDN_100K AD5628_PWRDN_3STATE
channel- The channel or channels that are being configured. Example: AD5628_ADDR_DAC_A AD5628_ADDR_DAC_B ... AD5628_ADDR_DAC_ALL
Returns
none.

◆ ad5628_remove()

int32_t ad5628_remove ( struct ad5628_dev dev)

Free the resources allocated by ad5628_init().

Parameters
dev- The device structure.
Returns
ret - The result of the remove procedure.

◆ ad5628_reset()

void ad5628_reset ( struct ad5628_dev dev)

Resets the device.

Parameters
dev- The device structure.
Returns
none.
Here is the caller graph for this function:

◆ ad5628_set_input_register()

void ad5628_set_input_register ( struct ad5628_dev dev,
uint32_t  register_value 
)

Writes a 32-bit data-word to the Input Register of the device.

Parameters
dev- The device structure.
register_value- Value of the register.
Returns
none.
Here is the caller graph for this function: