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.

problem in communication with ADS8332

Other Parts Discussed in Thread: MSP430F6779, ADS1262, ADS8332

hello,

i am facing problem in communicating with ADC 8332. i am using msp430F6779 and try to communicate using SPI . i tried to code using timing diagram in datasheet but to every command on SDO line i am getting only 0xFF.

i  write CFR register using CMR register of ADC then try to read it for cross verification but my receiver buffer show different values.

Any suggestions

  • The CFR register is 12 bits, and CMR is 4 bits.  To write to the configuration register, you must first send the command to write to the configuration register.  So you need to send CMR = 0xE plus CFR = 0xXXX (12 bits).  Reading the CFR is a 4-bit command (0xC), and the next 12 clocks would be the CFR register values. 

    How are you getting back 0xFF?  That's only 8 bits.  Could you provide more details about how you are communicating with the ADC?

    Thanks!

  • hello bryan,

                         first of all thanks for your reply.

    1) yes to write in CFR i am sending 0xE4AF.

    2) to read it back i was sending 0xC000.

    3) 0xFF i was reading in Rx buffer(since it only shows 8 bit. its fifo is 1 byte) of msp controller through debugger, which should be 0xAF because that is last 8 bit i write with command 0xE4AF.

                                                           Bryan i  managed somehow to interface it correctly and able to read data of a  particular channel of adc, but while monitoring the USCI_A spi mode registers i notice that UCA0STAT register have value 0x21 or 0x20. UCBUSY bit i can understand but why i am getting over run flag(UCOE).

    1.  one more thing i want to know that i have only used CS ,SCLK, SDI, SDO these four pins .do i need other pins too as convst, EOC.
    2. it would be great if you can provide any example code of that ADC so that i can correct my self. 

     .

    BRYN i have a parallel task of interfacing  ADC (ADS1262 & ADS 1271) but i don't have much time to put in it, since i am already late in ads8332. CAN you provide a sample code(USING SPI) of these two. so i can get a kick start in that . my email id is aksps1974@gmail.com.

  • Hi Sasuke,

    I tried to send a sample code to you but failed:

    "Your message wasn't delivered because the recipient's e-mail provider rejected it."

    Can you please provide another email address? thanks.

    Best regards

    Dale Li

  • Hello Dale,

                          Please try this E-mail :  uchihasasuke2051@gmail.com

    Thanks

  • Hello Sasuke! 

    If you do not use a /CONVST signal, you must set CFR_D9 = 0 to take advantage of the Auto-Trigger mode.  See page 24 of the datasheet.  One of the advantages to using /CONVST is power savings, because the converter only converts when you want it to.

    The EOC pin lets you know when the conversion is complete and that the data can be read by the microcontroller.  If you do not use this pin, you could use External Clock mode (CFR_D10 = 0), so that you would know that a single conversion always takes 36 cycles of SClk to complete.  Alternately, you could simply wait for ample time after you start a conversion, then assume the conversion is complete.