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.

ADS7924

Other Parts Discussed in Thread: ADS7924

I am trying to use the ADS7924 with an MSP430.  I would like to use the ADS7924 in the Auto-Burst Scan with Sleep Mode and set the interrupt to the busy signal.  When looking through the data sheet I see the interrupt can be tied to the busy signal.  For the Auto-Burst Scan with Sleep Mode the busy signal is high while the ADC is converting all for channels and then low when it going into sleep/awake mode.  I have tried setting this mode and I am receiving an interrupt from the ADC however the ADC is sending out 4 interrupts one for each of the times it converts and then sits high for the sleep time.  When looking at the data sheet this again should not interrupt me for each channel converted but only after each of the 4 channels was converted.  

I have tried reading through the data sheet to see if there is an "initialization" sequence, but only found the paragraph on setting the mode to awake each time you change modes.  I have done this and have not seen any difference in the behavior of the ADC.  Listed below are what I set the registers up as.

Mode Control: I set to awake mode 0x80 then after setting the other registers set to Auto-Burst Scan Mode 0xFC.

Interrupt Control: 0x00

Interrupt Configuration: Interrupt pin configuration to Busy: 0x1C

 Sleep Configuration: 320ms : 0x07

Acquire Config: Default 0x00

Power-Up Config: Default 0x00

Read this from ID Register: 0x18 so I2C communications are working.

Again it seems I am getting 4 interrupts triggering when I only expect one interrupt based on the mode selection.  I am able to read back values but they are not what I expect so this could also be apart of my setting up of the ADC.

Thanks

  • Hello Edward,

    I see that you are not getting back what you expect. What are you getting when you read back the registers?

    Regards,

    Michael 

  • Hi Edward,

    Did you ever get to the bottom of this issue?  If so, could you please let us know what the resolution was?  If not, please let me know and we'll be happy to look over your circuit and code.

  • Unfortunately I have not had the time to look into solving this issue properly.  I have not been able to get the Auto-Burst scan with Sleep mode working.  I did use a work around and I am currently using the Manual Scan mode with an internal timer interrupt on the MSP430.  This is working and I am seeing the correct values back on all four channels.  

    Again the problem is the fact that instead of getting an interrupt at the end of all four channels being acquired and converted I am receiving four individual interrupts.  The sleep time is working and the data values also seem to be correct.  My configuration for the ADC is posted above so maybe I have missed something in the configuration of the ADC.  

     

    Thanks

  • Edward,

    One thing to do when using the ADS7924 is to place the device in the AWAKE mode when reading/writing any registers.  So in your case, before turning on the Auto-Burst Scan with Sleep mode, write all the other registers first and then place the device in the desired mode.  You should also do this when reading the data, that is going to AWAKE and then read the data.  Following the data read, place the device back into the desired mode.

    Hope that helps.

    Best regards,

    Bob B