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.

PGA450-Q1 & External temperature sensor

Other Parts Discussed in Thread: PGA450-Q1, PGA450Q1EVM

Dear all,


We are experiencing difficulties in selecting the right IC for our application.
Can someone help us in this regard?

We need to measure distances from 50cm to 2m; and up to 15m for an extended range.

We had a look to the TDC10xx series but it seems to be limited to up to 1.5m which is insufficient.

PGA450 series seems to meet our requirements but we also need to have an external temperature sensor because of our product enclosure.

I assumed it was possible to program the OneWire bus protocol in the embedded 8051 MCU so that one GPIO pin can be used for that purpose.

A short discussion with the guy of firmware department leads us to believe the PGA450 series is not designed to use the embedded MCU as we intended to do.


Can you please confirm our assumption?  Can we, or can't we, use one GPIO pin for OneWire bus?
Whether yes, where can we find the programmer's guide.

If the PGA450 is not the right IC for our design, would you please make us some suggestion?

Another possibility, is to use an additional MCU on board to measure the external temperature; and than to compute the real distance based on the PGA450 output.
I hope we do have to proceed as is.

Anyway, the programmer's guide would be usefull for my colleague to have a closer eye to the issue we've met.

I thank you for your help,

Best regards,
Sebastien M.

  • Sebastien,
    To measure distances from 50cm to 2m, and possibly up to 15m for an extended range is enabled by the PGA450-Q1 rather than the TDC10xx series. Note, an open-top transducer is likely required for distances above 10m. Open-top transducers should only be used in a controlled environment since they are susceptible to dust, water, dirt, etc.

    You can program the OneWire bus protocol in the embedded 8051 MCU such that a single GPIO can be bit-banged for this purpose. Alternatively, consider a UART-to-OneWire line driver for protocol conversion.

    The programmer's guide for the PGA450-Q1 does not contain any direction on using OneWire specifically, so you'll need to implement the protocol yourself. The programmer's guide has been integrated into the latest version of the PGA450-Q1 datasheet (Rev. B): www.ti.com/.../pga450-q1

    The objective of the internal 8051 MCU is to eliminate the need for an external/redundant MCU when possible. Since you are only interfacing with a single temperature sensor, the internal 8051 should be sufficient for your application.
  • Hi Akeem,

    Thank you for your reply.

    There is obviously something unclear to me.
    The datasheet seems to assume I'm confident with OTP and so on. But, I'm not.

    For sure, I need to have a deeper reading of the datasheet and I will do.

    By the way, as I understand it until know, the datasheet describes how to interface the MCU for programming, gives known assembler instructions set and registrers map.

    Off course, this allows us to program the device.
    But, we were expecting to be able to program it in C; or any other higher level programming language.

    This information is not available within the datasheet. Indeed, this is not the purpose of a datasheet.
    I'm assuming this could be the purpose of a "Programming Reference Guide" or any other similar document.

    Is there any document as the one I'm describing?

    As the PGA450 embed an 8051 MCU, I'm assuming we should refer to this particular MCU documentation for further information.

    Do you confirm this assumption?
    Or would you please suggest us any interesting reading?

    Is there any C compiler we can use?

    As you maybe assume it, the difficulty we are facing to is not the OneWire protocol implementation; it is rather finding our way to programming tools and methods.

    Would you please help us finding our path?

    What document do you suggest us to read?

    Is there any C library we can use?
    Whether not, I'm assuming we have to write our own which is a lot of work and has a significant impact on our time-to-market.

    I really thank you for your time and your kindness.
    We appreciate it.

    Regards,
    Sebastien M.
  • Sebastien,
    I highly recommend that you read the PGA450Q1EVM User's Guide to help answer a majority of your questions that the datasheet does not address. The answers below are further discussed in the User's Guide:

    Use DEVRAM instead of OTP for your initial development and testing. OTP should only be used for your final product since OTP implies that the memory is one-time programmable, and the only means of erasing the data is thorough ultraviolet exposure (very inconvenient and time consuming process).

    To program the internal 8051 MCU in the C language, download the Keil uVision IDE (now integrated in the Keil C51 Development Tool for all 8051). The .HEX file that the compile and build process generates can be uploaded to the PGA450-Q1 using the PGA450Q1EVM-GUI and TIGER combination.

    I recommend that you start your programming experience with the firmware source code example made available for the PGA450Q1EVM. I am not aware general OneWire protocol C libraries for the 8051 at the moment, but I have seen specific examples available online.