The most recent version of this page is a draft.DiffThis version (05 Feb 2014 19:02) was approved by larsc.The Previously approved version (13 Nov 2012 15:04) is available.Diff

This is an old revision of the document!

Supported Devices

Evaluation Boards


The AD7476/AD7477/AD7478 are, respectively, 12-bit, 10-bit, and 8-bit, high speed, low power, successive approximation ADCs. The parts operate from a single 2.35 V to 5.25 V power supply and feature throughput rates up to 1 MSPS. Each part contains a low noise, wide bandwidth track-and-hold amplifier that can handle input frequencies in excess of 6 MHz.

The conversion process and data acquisition are controlled using CS the serial clock, allowing the devices to interface with microprocessors or DSPs. The input signal is sampled on the falling edge of CS and the conversion is initiated at this point. There are no pipeline delays associated with these parts.

The AD7476/AD7477/AD7478 use advanced design techniques to achieve very low power dissipation at high throughput rates. The reference for the parts is taken internally from VDD. This allows the widest dynamic input range to the ADC. Thus, the analog input range for the parts are 0 V to VDD. The conversion rate is determined by the SCLK.

01 Oct 2012 13:41 · DragosB

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.

Driver Description

The driver contains two parts:

  • The driver for the AD74xx part, which may be used, without modifications, with any microcontroller.
  • The Communication Driver, where the specific communication functions for the desired type of processor and communication protocol have to be implemented. This driver implements the communication with the device and hides the actual details of the communication protocol to the ADI driver.

The Communication Driver has a standard interface, so the AD74xx driver can be used exactly as it is provided.

There are three functions which are called by the AD74xx driver:

  • SPI_Init() – initializes the communication peripheral.
  • SPI_Write() – writes data to the device.
  • SPI_Read() – reads data from the device.

SPI driver architecture

The following functions are implemented in this version of AD74xx driver:

Function Description
char AD74xx_Init(char partNumber) Initializes the device.
void AD74xx_PowerDown(void) Powers down the device.
void AD74xx_PowerUp(void) Powers up the device by performing a dummy read.
unsigned short AD74xx_GetRegisterValue(void) Reads the conversion value.
float AD74xx_ConvertToVolts(unsigned short rawValue, float vRef) Converts a raw sample to volts.
/srv/ · Last modified: 06 Feb 2014 11:28 by larsc