The AD7176-2 is a fast settling, highly accurate, high resolution, multiplexed Σ-Δ analog-to-digital converter (ADC) for low bandwidth input signals. Its inputs can be configured as two fully differential or four pseudo differential inputs via the integrated crosspoint multiplexer. An integrated precision, 2.5 V, low drift (2ppm/°C), band gap internal reference (with an output reference buffer) adds functionality and reduces the external component count.
The maximum channel scan data rate is 50 kSPS (with a settling time of 20 μs), resulting in fully settled data of 17 noise free bits. User-selectable output data rates range from 5 SPS to 250 kSPS. The resolution increases at lower speeds.
The AD7176-2 offers three key digital filters. The fast settling filter maximizes the channel scan rate. The Sinc3 filter maximizes the resolution for single-channel, low speed applications. For 50 Hz and 60 Hz environments, the AD7176-2 specific filter minimizes the settling times or maximizes the rejection of the line frequency. These enhanced filters enable simultaneous 50 Hz and 60 Hz rejection with a 27 SPS output data rate (with a settling time of 36 ms).
System offset and gain errors can be corrected on a per channel basis. This per channel configurability extends to the type of filter and output data rate used for each channel. All switching of the crosspoint multiplexer is controlled by the ADC and can be configured to automatically control an external multiplexer via the GPIO pins.
The specified operating temperature range is −40°C to +105°C. The AD7176-2 is housed in a 24-lead TSSOP package.
The goal of this project (Microcontroller No-OS) is to be able to provide reference projects for lower end processors, which can't run Linux, or aren't running a specific operating system, to help those customers using microcontrollers with ADI parts. Here you can find a generic driver which can be used as a base for any microcontroller platform and also specific drivers for different microcontroller platforms.
The driver contains two parts:
The Communication Driver has a standard interface, so the AD7176 driver can be used exactly as it is provided.
There are three functions which are called by the AD7176 driver:
SPI driver architecture
The following functions are implemented in this version of AD7176 driver:
|int32_t AD7176_ReadRegister(st_reg* pReg)||Reads the value of the specified register.|
|int32_t AD7176_WriteRegister(st_reg reg)||Writes the value of the specified register.|
|int32_t AD7176_Reset(void)||Resets the device.|
|int32_t AD7176_WaitForReady(uint32_t timeout)||Waits until a new conversion result is available.|
|int32_t AD7176_ReadData(int32_t* pData)||Reads the conversion result from the device.|
|uint8_t AD7176_ComputeCRC8(uint8_t* pBuf, uint8_t bufSize)||Computes the CRC checksum for a data buffer.|
|uint8_t AD7176_ComputeXOR8(uint8_t * pBuf, uint8_t bufSize)||Computes the XOR checksum for a data buffer.|
|void AD7176_UpdateCRCSetting(void)||Updates the CRC settings.|
|int32_t AD7176_Setup(void)||Initializes the AD7176.|
This section contains a description of the steps required to run the AD7176 demonstration project on a Renesas RL78G13 platform.
An EVAL-AD7176-2SDZ board has to be interfaced with the Renesas Demonstration Kit (RDK) for RL78G13:
EVAL-AD7176-2SDZ Pin T\CS -> YRDKRL78G13 J11 connector Pin 1 EVAL-AD7176-2SDZ Pin TDIN -> YRDKRL78G13 J11 connector Pin 2 EVAL-AD7176-2SDZ Pin TDOUT -> YRDKRL78G13 J11 connector Pin 3 EVAL-AD7176-2SDZ Pin TSCLK -> YRDKRL78G13 J11 connector Pin 4 EVAL-AD7176-2SDZ Pin GND1 -> YRDKRL78G13 J11 connector Pin 5
This section presents the steps for developing a software application that will run on the Renesas Demo Kit for RL78G13 for controlling and monitoring the operation of the ADI part.