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.

LMP8358MT usage with PGA117

Other Parts Discussed in Thread: PGA117, LMP8358

Hello,

I currently have 4 LMP8358MTs connected to CH1, CH2, CH3, and CH4 of the PGA117. I am currently trying to test my LMP8358MT by sending 0x3a and 0x01 to tell the PGA117 to set the gain to 1 on CH1. After this SPI write, I write to the LMP8358MT by sending 0x00 and 0x3b. The 3b represents the frequency compensation of 1xx and gain of 100. However, the reading that I get from Vout of the PGA117 is 5V, which suggests that I didn't write to the LMP8358MT properly. I have tested the channels of the PGA117 and verified that it was working but I'm unsure the bytes I need to send to the LMP8358MT and if the protocol that I use to write to both parts are the same. Any help would be appreciated. Thank you.

  • Hello,

    The LMP8358 uses the standard SPI format to communicate.  Sending 0x003b should set the gain to 100x and the compensation to 1xx.  Note that this needs to be sent as one group of 16 bits (the CS pin goes low only once), not two groups of 8 bits (the CS pin going low twice). 

    Here are a couple of things to check:

    The LMP8358 can communicate in either a serial or parallel mode.  To communicate over SPI it needs to be in serial mode.  To put it in serial mode set the VHSER/VLPAR pin high and the VLSER/VHPAR pin low.

    The LMP8358 needs a separate CS signal from the PGA117.  If they share the same CS signal when you write to the PGA117 it will also write to the LMP8358 and when you write to the LMP8358 it will also write to the PGA117.

    Mike

  • Hi Mike,

    Thank you for the reply. I see on that on page 11 of the datasheet that there is an extra bit clock signal being generated before the first bit (D15) is sent. When I try to send 0x0003, I observed that the gain is 1000 when it should be 100. I'm suspecting that the first bit I'm sending is being discarded before it gets to the SDI line. Is my suspicion correct and if so, how can I circumvent this issue?

    EDIT: Also on page 11, it shows that CSB goes high during the transmission of D0. How do I go about toggling during the transmission of this bit?

  • HI Edmond,

    I tried writing to the part on the bench and it looks like the LMP8358 does not like a pause between the two bytes. 

    See the pictures below.  (Green is clock, red is data, black is CS.)

    The LMP8358 will correctly read the first transmission but will misread the second transmission. 

    Please check that your waveform looks like the top picture.

    Mike