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.

PGA309 One-Wire Communication Issue

Other Parts Discussed in Thread: PGA309

HI I am currently using PGA309 in a new design. I do not have the evaluation board which I am sure would have been much helpful.

Issue: Unable to communicate with PGA309 using one-wire

Setup: I can safely say that the PGA309 is setup correctly. When the Test pin is held high, the PGA309 works as explained in the user manual. When Test Pin is held low, I can see the SCK pulses to the external EEPROM and EEPROM's response.

Questions: With the Test Pin help high, I am trying to communicate with the PGA309 using One-Wire. As a trial I am just trying to read register 2 from the PGA internal memory. But get no response.

OW_write_bit(0);   // Initialization Byte, with start and stop bits
OW_write_byte(0x55);
OW_write_bit(1);

OW_write_bit(0);    // PGA Address Pointer Command Byte, with start and stop bits
OW_write_byte(0x01);
OW_write_bit(1);

OW_write_bit(0);   // Address Byte, with start and stop bits
OW_write_byte(0x02);
OW_write_bit(1);

Delay10us(100);   // Delay before initiating next command (is this required?)

OW_write_bit(0);  // Initialization Byte, with start and stop bits
OW_write_byte(0x55);
OW_write_bit(1);

OW_write_bit(0);   // PGA Read Command Byte, with start and stop bits
OW_write_byte(0x10);
OW_write_bit(1);

Delay10us(70);   // 10 bit Delay 700usec

What now? does the PGA309 issue the start bit following which I read the byte and the stop bit? or do I send the Start bit and read the byte and then issue the stop bit. Page 78 Digital Interface - SBOU024B–August 2004–Revised January 2011 says driven by PGA for these bits? While the 1-wire protocol explains a different way for the master to read from the slave.

Additional Information: I have 70usec for each bit or 700usec for 10bits (byte), I have confirmed using the Oscilloscope that the timing of the PRG pin data is correct.

What am I doing wrong? 

Kindly help.

Usman Asif Ali

  • Hello Usman,

    I think the simplest solution would be to send you a PGA309EVM so you can observe what the 1W signal is doing on an oscilloscope and adjust your code as needed. Please contact me at ian@ti.com with your shipping address and phone number and I'll get the EVM sent to you right away.

    Best regards,

    Ian Williams
    Linear Applications Engineer
    Precision Analog - Op Amps