Linduino  1.3.0
Linear Technology Arduino-Compatible Demonstration Board

Library for LTC2657 Octal I2C 16-/12-Bit Rail-to-Rail DACs with 10ppm/C Max Reference. More...

Detailed Description

Library for LTC2657 Octal I2C 16-/12-Bit Rail-to-Rail DACs with 10ppm/C Max Reference.

Definition in file LTC2657.cpp.

Go to the source code of this file.

Functions

int8_t LTC2657_write (uint8_t i2c_address, uint8_t dac_command, uint8_t dac_address, uint16_t dac_code)
 Write a 16-bit dac_code to the LTC2657. More...
 
uint16_t LTC2657_voltage_to_code (float dac_voltage, float LTC2657_lsb, int16_t LTC2657_offset)
 Calculate a LTC2657 DAC code given the desired output voltage and DAC address (0-3) More...
 
float LTC2657_code_to_voltage (uint16_t dac_code, float LTC2657_lsb, int16_t LTC2657_offset)
 Calculate the LTC2657 DAC output voltage given the DAC code, offset, and LSB value. More...
 
void LTC2657_calibrate (uint16_t dac_code1, uint16_t dac_code2, float voltage1, float voltage2, float *LTC2657_lsb, int16_t *LTC2657_offset)
 Calculate the LTC2657 offset and LSB voltages given two measured voltages and their corresponding codes. More...
 

Function Documentation

◆ LTC2657_calibrate()

void LTC2657_calibrate ( uint16_t  dac_code1,
uint16_t  dac_code2,
float  voltage1,
float  voltage2,
float *  LTC2657_lsb,
int16_t *  LTC2657_offset 
)

Calculate the LTC2657 offset and LSB voltages given two measured voltages and their corresponding codes.

Returns
Void
Parameters
dac_code1First DAC code
dac_code2Second DAC code
voltage1First voltage
voltage2Second voltage
LTC2657_lsbReturns resulting LSB (volts)
LTC2657_offsetReturns resulting Offset (volts)

Definition at line 112 of file LTC2657.cpp.

◆ LTC2657_code_to_voltage()

float LTC2657_code_to_voltage ( uint16_t  dac_code,
float  LTC2657_lsb,
int16_t  LTC2657_offset 
)

Calculate the LTC2657 DAC output voltage given the DAC code, offset, and LSB value.

Returns
Calculated voltage
Parameters
dac_codeDAC code
LTC2657_lsbLSB value (volts)
LTC2657_offsetOffset (volts)

Definition at line 104 of file LTC2657.cpp.

◆ LTC2657_voltage_to_code()

uint16_t LTC2657_voltage_to_code ( float  dac_voltage,
float  LTC2657_lsb,
int16_t  LTC2657_offset 
)

Calculate a LTC2657 DAC code given the desired output voltage and DAC address (0-3)

Returns
The 16-bit code to send to the DAC
Parameters
dac_voltageVoltage to send to DAC
LTC2657_lsbLSB value (volts)
LTC2657_offsetOffset (volts)

Definition at line 91 of file LTC2657.cpp.

◆ LTC2657_write()

int8_t LTC2657_write ( uint8_t  i2c_address,
uint8_t  dac_command,
uint8_t  dac_address,
uint16_t  dac_code 
)

Write a 16-bit dac_code to the LTC2657.

Returns
ACK bit (0=acknowledge, 1=no acknowledge)
Parameters
i2c_addressI2C address of DAC
dac_commandCommand Nibble, left-justified, lower nibble set to zero
dac_addressDAC Address Nibble, right justified, upper nibble set to zero
dac_code16-bit DAC code

Definition at line 82 of file LTC2657.cpp.