https://github.com/fedecastellaro/ad7124-4-implementation
AD7124-4 - 24-Bit ADC, 4-Channel , Sigma-Delta - PCB and software implementation
https://github.com/fedecastellaro/ad7124-4-implementation
24-bit-adc ad7124 ad7124-4 c kicad lpc1769 sigma-delta
Last synced: 10 months ago
JSON representation
AD7124-4 - 24-Bit ADC, 4-Channel , Sigma-Delta - PCB and software implementation
- Host: GitHub
- URL: https://github.com/fedecastellaro/ad7124-4-implementation
- Owner: fedecastellaro
- Created: 2021-11-14T22:21:30.000Z (over 4 years ago)
- Default Branch: ad
- Last Pushed: 2021-11-15T09:26:17.000Z (over 4 years ago)
- Last Synced: 2024-11-13T13:14:01.735Z (over 1 year ago)
- Topics: 24-bit-adc, ad7124, ad7124-4, c, kicad, lpc1769, sigma-delta
- Language: C
- Homepage:
- Size: 4.07 MB
- Stars: 3
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## AD7124 24 BITS ADC
Implementation for a AD7124-4 24 bits sigma delta ADC.
# Application Circuit
As a simple application circuit you can guide yourself with the following one:

This is a pressure sensor limited in bandwith (fc = 250Hz) connected directly to the AIN0 of the ADC. All the others inputs of the ADC were shorted to ground because they not used in this example.
# Code
Before starting, **please read the Disclaimer**.
You'll need to include in your directory the following files:
- ad7124.c
- ad7124.h
- ad7124_regs.c
- ad7124_regs.h
You can find them in the "software" folder.
# Setup:
Use the following lines to configure your AD7124:
- Ad7124Chip_setConfig (SETUP_0, RefInternal, Pga1, TRUE, BurnoutOff);
- Ad7124Chip_setChannel (CHANNEL_0, SETUP_0, AIN0Input, AIN1Input, FALSE);
- Ad7124Chip_setAdcControl (StandbyMode, FullPower, TRUE, InternalClk);
# Take a Sample:
- uint32_t sample = Ad7124Chip_read(CHANNEL_0);
You can find a full working code for a LPC1769 Cortex®-M3 microcontroler in the folder "AD7124_MYFUNC"
## Disclaimer:
Please take in mind that all the **functions in the file ad7124.c where modified to be used with a LPC1769 Cortex®-M3 microcontroler** using the LPCOpen standard APIs.
This means that in order to make it work in your uC **you'll need to set up your own SPI communication functions**.
In this code, you'll need to adapt the function:
- Chip_SSP_RWFrames_Blocking()
And the Macros:
- SSP_CS_LOW
- SSP_CS_HIGH