This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1258 SPI- Selecting a channel in Fixed Channel Mode

Other Parts Discussed in Thread: ADS1258

Hi,

ADS1258 provides me an option of AUTO SCAN mode and also Fixed Channel Mode.

And I am using the "Fixed Channel mode" to read a particular channel,  my understanding looking at the Data sheet is that I need to follow the below mentioned steps to set the channels in fixed channel mode:

  1. Send the command byte to select the register CONFIG 0 and set the bit "MUXMOD" to 1 
  2. Send a command to select the register "MUXSCH"

My question here is how do I select "One particular channel" using the register "MUXSCH"?

The datasheet tells me that I can select the analog input channel for positive as well as negative Input channel.

Is there any way I can only access the only AINP[3:0]?

  • Hi Vivek,

    Fixed channel mode does not support usage of the AINCOM pin requiring you to select both a positive and negative channel in order to make a differential measurement. The MUXSCH register uses the 4 MSBs to set the positive channel and 4 LSBs to set the negative channel. The decimal value from the 4 MSBs will set the positive channel and the decimal value from the LSBs will set the negative channel. In wanting single ended measurements, this would require that one of your 16 channels tied to GND. If you decide you want to use the converter in a single ended mode, having access to each of the 16 inputs, you could hard-wire ADCINn to ground and then cycle through the positive channels as desired. Most people who want to do this just go ahead and use auto-scan mode though.

    Regards,

    Tony Calabria

  • Thanks Tony.

    This cleared the doubt I had.

  • HI,

    I am using Auto Scan mode to read the data from ADS1258.

    I would like to know as to how the the ADC calibrated data can be obtained.

     

    Thanks,

    Vivek

  • Hi Vivek,

    If you enable the GAIN and OFFSET bits in the SYSRED register, auto scan mode will cycle through to perform these calibration techniques and output the corresponding data word on the data bus. Follow the channel priority index order on page 34 of the data sheet to see when the offset and gain values will be available on the data bus. Use the OFFSET and GAIN section in the datasheet to read more about the reading that is read back. You will need to use these values to do your own calibration in post processing.

    Regards,

    Tony Calabria

  • Hi Tony,

    My understanding as per your reply is that when bits OFFSET and GAIN in SYSRED are set  we obtain offset and gain data by reading the channel data.Store the 2's complement value obtained from the device for GAIN and OFFSET and use the same for my other channel data calibration by using the below formula for my calibration

    channel data = (channel data - offset)* gain

    Is that right?

    Thanks,

    Vivek

  • Hi Vivek,

    Page 26 in the datasheet shows the derivation of the GAIN error based off of the output code. The OFFSET is done doing an internal short and providing a code representing the offset error. This OFFSET reading does not take into account external chopping. Generally, enabling External Chop will remove most (if not all) of the offset error. If CHOP is enabled, you may not need to subtract the offset in the equation.

    Regards,

    Tony Calabria

  • Hi Tony,

    Thanks for your response .

    Could you please let me know whether the gain obtained is

     1) a float value(mantissa + exponential) or

     2) Signed value(negative/Positive).

    And can I directly multiply the output I get from reading the data for GAIN (after setting the GAIN bit and reading data with BITS CHID[4:0] being 1CH ) to my ADC output data to obtain calibrated data?

    Thanks,

    Vivek Shetty