ChipSea CS1231 and CS1232 series 24-bit Sigma-Delta ADCs integrate a programmable gain amplifier (PGA) supporting gains from 1x to 128x. Proper PGA configuration is crucial for achieving high-precision measurements.

PGA Gain Selection Principles

Follow these principles for gain selection:

  • Maximize input signal range: Choose the minimum gain that fully utilizes the ADC's full-scale input range
  • Consider sensor output voltage: Sensor output range x PGA gain ≤ ADC reference voltage
  • Balance noise vs resolution: Higher gain amplifies noise; select based on application requirements
  • Typical Application Configurations

    Sensor TypeOutput RangeRecommended PGA GainReference Voltage
    Load Cell (2mV/V)±20mV64-1285V
    Thermocouple (K-type)±40mV32-643.3V
    Pressure Sensor0-100mV323.3V
    Temperature Sensor (PT100)0-1V4-85V

    Noise Optimization Strategies

    1. Power Supply Decoupling

    • Use 10μF + 0.1μF ceramic capacitors for AVDD and DVDD decoupling
    • Place decoupling capacitors close to IC pins, trace length <5mm
    • Use separate analog and digital grounds with single-point connection

    2. Reference Voltage Selection

    • Use low-noise, low-drift reference voltage source
    • Recommended: ChipSea CS6002 precision reference
    • Reference decoupling: 10μF tantalum + 0.1μF ceramic capacitor

    3. Input Filter Design

    • Add RC low-pass filter at ADC input
    • Set cutoff frequency to 1/10 of sampling rate
    • Resistor: 100Ω-1kΩ, Capacitor: 10nF-100nF

    4. PCB Layout Guidelines

    • Keep analog input traces away from digital signals
    • Use differential routing for analog signals
    • Maintain ground plane integrity: separate analog and digital ground areas

    Code Configuration Example

    ``c // CS1231 PGA configuration example void CS1231_Init(void) { // Configuration register settings // PGA gain = 64, Output data rate = 10Hz unsigned long config = 0; config |= (0x06 << 17); // PGA = 64 (011) config |= (0x03 << 14); // Data rate = 10Hz (0011) config |= (0x00 << 12); // Channel = AIN1 (00) config |= (0x00 << 11); // Temperature sensor off config |= (0x00 << 10); // Burnout current off config |= (0x01 << 9); // Reference monitor on config |= (0x00 << 8); // Filter = Sinc4 config |= (0x01 << 7); // Power monitor on config |= (0x00 << 4); // IDAC = off config |= (0x00 << 2); // IDAC1 = AIN0 config |= (0x00 << 0); // IDAC2 = AIN1 CS1231_WriteRegister(CONFIG_REG, config); } ``

    Common Troubleshooting

    Unstable Readings

    • Check if power supply ripple is excessive (should be <10mVpp)
    • Verify reference voltage stability
    • Check for interference on input signals
    • Confirm appropriate PGA gain setting

    Accuracy Issues

    • Calibrate ADC offset and gain errors
    • Check temperature drift effects
    • Verify reference voltage accuracy
    • Optimize PCB layout

    High Power Consumption

    • Reduce output data rate
    • Enter standby mode when not measuring
    • Optimize PGA gain to avoid unnecessary high gain settings