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.

PGA970: programming with FPGA

Part Number: PGA970
Other Parts Discussed in Thread: UNIFLASH

HI All,

I'm trying to program the PGA 970 with FPGA & I have some issues. I have activated the digital interface mode, turn on the reference voltage & turn off the Waveform generation. When I try to write the new waveform in the Waveform RAM, I have some issue. when I write 0x08 in DATA_WAVE_PAGE_ADDR register & read it, PGA970 returns the 0x00. Same issues with AMUX_CTRL register (write 0xF0, read 0x00). 

  • Hello Vahgan,

    Are you able to read and write other address properly through the digital interface? Which method are you using (I2C, SPI, OWI)? 

    Are you certain that you are using the correct page address to write to the registers? The datasheet includes some examples of waveform RAM writes using SPI:

    "The following sequence is an example to program 0x35 to WAVEFORM RAM memory address 0x1A6 using the

    SPI digital interface:

    1. Write 0x09 to DATA_WAVE_PAGE_ADDR register: 010 00011010 1 00001001 0000
    2. Write 0x35 to WAVEFORM RAM address 0xA6: 001 10100110 1 00110101 0000"

    Regards,

  • Hello Scott,

    I'm using the SPI mode. I tried write & read all registers in waveform generation example & I have issues only with this two registers. 

    About the waveform RAM write example, in example the DATA_WAVE_PAGE_ADDR offset address is 00011010  (0x1A), but in the datasheet the DATA_WAVE_PAGE_ADDR  offset address is 0x19 (maybe it's datasheet mistake), so, I'm using the 0x19 offset address.

    Best Regards,

    Vahagn

  • Hello Scott,

    I have found my mistake & fixed it. So I have more questions about PGA970. Should I write the firmware in PGA970 or it's written? if I should, can I do it with SPI. Can I read the lvdt sensor data, when PGA970 microprocessor is in reset mode?

    Thanks,

    Vahagn

  • Hello Vahagn,

    You can program the FRAM using SPI or by flashing it through the debugger using something like the UNIFLASH tool. 

    You can read the demodulator data when the PGA970 microcontroller is in reset mode, but this is not recommended. The update rate of the demodulator output is faster than you can read the full 24 bits through the digital interface, so by the time you read the last byte of the demodulator data it will already have updated to the next sample. In order to avoid this problem you will have to write firmware so that the microcontroller reads the demodulator data and stores it temporarily before outputting the full 24bits from each sample.

    Regards,

  • Hello Scott,

    Thank you.

    Best Regards,

    Vahagn